Thuật toán Số dòng lệnh trong C Thông lượng (Kbps) Kích thước bộ nhớ (KB) AES-256 488 62,5 17 SHA-512 500 135 17 RSA 66 0,29 2 RLE 120 247 5
85
4.2.2. Giải mã và xác th c b ng ph n c ng ự ằ ầ ứ
Ở trong phần này, luận án này chọn thực hiện các bộ giải mã AES-256 và bộ xác thực
SHA-512 trong phần cứng Bộ giải nén RLE và thuật toán RSA vẫn được thực hiện trong .
phần mềm nhúng. Để thực hiện phần cứng, luận án này sử dụng lõi IP AES-256 và SHA- 512 được cung cấp từ OpenCores [113], và đã nhiều lần sửa đổi, bổ sung và tối ưu cho phù hợp với hệ thống của mình.
Kết quả về tài nguyên sử dụng và tốc độ thực hiện được thể hiện tương ứng trong các
Bảng 4.4 và ảng 4.5. Kết quả này cho thấy tài nguyên phần cứng sử dụng cho bộ giả mã B AES-256 và bộ xác thực SHA 512 là tương đối lớn, chiếm lần lượt 18,95- % và 12,48 tài %
nguyên Slice của FPGA Spartan 6 LX45. Tuy nhiên, thông lượng của hệ thống là tăng -
đáng kể so với việc sử dụng bằng phần mềm nh ưđã nêu trên.
Bảng 4.4 S d ng tài nguyên ph n c ng c a AES-256 và SHA-512 (Atlys Spartan-6) ử ụ ầ ứ ủ
Lõi IP Tài nguyên s dử ụng
Registers LUTs Slice AES-256 3.096 (5,67%) 3.751 (13,74 %) 1.293 (18,95 %)
SHA-512 2.246 (4,11 %) 2.299 (8,42 %) 848 (12,48 %) Bảng 4.5 Hiệu năng thực hiện trên FPGA Atlys Spartan-6.
Thuật toán Thông lượng
AES-256 13,8 Mbps
SHA-512 30 Mbps
T phân tích ên, gừ tr iải pháp mà luận án này đề xuất là thực hiện các bộ mã hóa AES- 512 và b ộ xác thực SHA-512 trong khu vực cấu hình lại được từng phần sẽ giải quyết được hai vấn đề sau:
- Tiết kiệm tài nguyên hệ thống bằng cách giải phóng các bộ mã hóa và xác thực khi
không cần dùng đến Đối. với h thệ ống ử ụng s d FPGA chi phí thấp nh FPGA Spartan-ư
6 LX45 thì t nguyên slice s ài ẽgiải phóng lên đến 31,43% t nguyên c c FPGA. ài ủa ả
- Nâng cao hiệu năng và tính an toàn của hệ thống so với việc thực hiện bằng phần mềm. ă C n c v sứ ào ố liệu trong Bảng 4.3 và Bảng 4.5, thông lượng ủa c AES-256 s ẽ
t ng lên g khoă ấp ảng 220 l và ông lần th ượng ủa c SHA-512 s t ng lên g khoẽ ă ấp ảng 222 l . ần
86
Luận án này ũng c tiến hành thực hiện bằng ph n cầ ứng ên FPGA ML605 Virtex-6 tr XC6VLX240T và k qu ết ả đạt được nh ư thể ện trong Bảng hi 3.4 và Bảng 3.5. K qu n ết ả ày
cho ta thấy, các bộ mã hóa và xác thực chiếm một phần rất nhỏ trong tổng số tài nguyên của FPGA Virtex 6 của Xilinx, trong l- úc đó tốc độ thực hiện cũng nhanh hơn r nhiều. ất Nguyên nhân chính để có được kế quả này là tài nguyên sẵn có và tốc độ của các FPGA
Virtex-6 cao hơn nhiều so với FPGA Spartan-6.
Như vậy, với các hệ thống nhúng cấu hình lại được từng phần dựa trên các FPGA có t cao và t nguyên ốc độ ài lớn, việc thêm các tính năng bảo mật là dễ dàng hơn nhiều. Do đó, các hệ thống nhúng dựa ên FPGA lotr ại n ày cho phép chúng ta cân nhắc thực hiện các thuật mậtmã an toàn hơn, phức tạp hơn để có mức độ bảo mật cao hơn.
4.2.3. Giải pháp k t h p ph n c ng và ph n m m ế ợ ầ ứ ầ ề
Trên nguyên tắc, trong quy trình thực hiện cập nhật hệ thống, ứng dụng nào có thể là lựa chọn không bắt buộc và không ảnh hưởng nhiều đến tính bảo mật và tốc độ của hệ thống thì được thực hiện trong phần mềm. Ngược lại sẽ được thực hiện trong phần cứng. Với các bộ mã hóa, xác thực, nén được luận án này xây dựng thành các lõi IP, việc kế hợp t
giữa phần cứng và phần mềm sẽ là giải pháp thật linh hoạt và d dàng thễ ực hiện. Cu ối
cùng, việc thiết kế và thực hiện bảo mật bitstream cho các hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA ẽ đư s ợc quyếtđịnh ởi b t nguyên c h ài ủa ệ thống sẵn có và nhu c b m c ầu ảo ật ủa người ử ụng s d .
4.3 K t luế ận chƣơng
Luận án này xây dựng và triển khai hệ thống thử nghiệm đối với một hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA. Hệ thống đã thể hiện một mô hình hoàn chỉnh cho việc bảo mật bitstream của FPGA khi cập nhật t xa qua mừ ạng Internet.
Hệ thống của luận án này cho phép kết hợp linh hoạt các bộ mã hóa, xác thực và nén
bitstream bằng phần cứng hoặc phần mềm nhúng. Tùy thuộc vào tài nguyên hệ thống và nhu cầu của người dùng mà có quyết định thích hợp để thực hiện việc bảo vệ bitstream hoặc hệ thống của mình một cách linh hoạt mà vẫn đạt được hiệu năng cao nhất có thể.
Mô hình thực hiện trên của luận án này chỉ dừng lại ở việc thực thi các thuật toán cho
việc cấu hình lại từng phần dựa trên FPGA với một bộ vi xử lý nhúng. Việc nghiên cứu tiếp theo là thực hiện bài toán trên với các nền tảng nhúng vớivi xử lýđa lõi, đa luồng.
87 K t luế ận và hƣớng phát tri n ể
Đóng góp khoa học c a lu n án ủ ậ
Nội dung của luận án là một chủ đề xuyên suốt bắt đầu từ các khảo sát về bảo mật, tổng quan về lý thuyết, đề xuất giải pháp và xây dựng mô hình mẫu để đánh giá việcbảo mật bitstream của hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA. Mô hình
nghiên cứu và thực hiện như thể hiện trong Hình 5.1.
Hình 5.1 Mô hình nghiên cứu và thực hiện của luận án
Các nội dung được ch ỉ ra sau đây lần đầu tiên được đềxuất và th c hi n trong lu n án ự ệ ậ này. Đây cũng chính là các đóng góp khoa học c a lu n án. ủ ậ
Đề xuất một Framework end- -to end cho việc cập nhật an toàn từ xa đối với hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA.
Nội dung của đề xuất này được trình bày trong Chương 2 và đã công bố trong các bài
báo hội nghị quốc tế ICCE 2012 và tạp chí quốc tế IJCDS số 3 năm 2014.
Xây dựng bộ giao thức đảm bảo an toàn và linh động khi cập nhật hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA qua mạng Internet.
Nội dung của đóng góp này được trình bày trong Chương 2 và đã công bố trong các bài báo hội nghị quốc tế ICCAIS 2013, chuyên san Bưu chính Viễn thông năm , 2014
và tạp chí đại học Đà Nẵng, năm 2014.
Đề xuất giải pháp sử dụng linh hoạt các thuật toán bảo mật được xây dựng trong phần cứng và phần mềm, kết hợp với thuật toán nén bitstream để tăng tốc và giảm tài nguyên của các hệ thống nhúng cấu hình lại được từng phần khi thực hiện chức năng cập nhật từ xa.
88
Nội dung của đề xuất này được trình bày trong Chương 3 và đã công bố trong các bài
báo hội nghị quốc tế ICBSBE 2012, ComManTel 2013, tập chí đại học Đà Nẵng số
12(61) năm 2012, tạp chí nghiên cứu Khoa học và công nghệ quân sự ố s 31, n m 2014 ă và tạp chí quốc tế AJESA, USA, số 2 năm 2014.
Hƣớng phát tri n trong th i gian t i ể ờ ớ
Toàn b n i dung và các k t qu ộ ộ ế ả đạt được c a ủ luận án chỉ ra r ng nghiên c u v bằ ứ ề ảo m t các h ậ ệ thống nhúng c u hình lấ ại được là r t c n thi t, kh thi và có nhi u ng d ng ấ ầ ế ả ề ứ ụ
tiềm năng. Hướng phát tri n là tri n khai ể ể thử nghiệm và thực hiện các phương pháp đã đề xuất trên h th ng v i các b vi x ệ ố ớ ộ ử lý đa lõi đa luồng, đây là xu hướng công ngh vi x lý ệ ử đang và sẽ được áp d ng r ng rãi trong c hụ ộ ác ệ th ng nhúng c u hình l i ố ấ ạ đượ ừc t ng ph n ầ
89
Danh m c các công trình khoa hụ ọc đã công bố ủa luậ c n án
Hội thảo quố ếc t
1. Tran Thanh, Pham Ngoc Nam, Tran Hoang Vu, Nguyen Van Cuong, “A Framework for Secure Remote Updating of Bitstream on Runtime Reconfigurable Embedded Platforms,” In Proceeding of the fourth International Conference on Communications and Electronics (ICCE 2012), Hue, Vietnam, 2012. pp. 471 476. -
2. Tran Thanh, Tran Hoang Vu, Pham Ngoc Nam, Nguyen Van Cuong, “A Novel Approach to Protect Intellectual Property Core of FPGA-Based Partially Reconfigurable Systems,” The 2012 International Conference on BioSciences and BioElectronics, Danang, Vietnam, 2012, pp. 42-45.
3. Tran Thanh, Vu Huu Tiep, Tran Hoang Vu, Pham Ngoc Nam, Nguyen Van Cuong, “Secure Remote Updating of Bitstream in Partial Reconfigurable Embedded Systems based on FPGA,” In Proceeding of The International Conference on Computing, Management and Telecommunications (ComManTel 2013), Tp HCM, Vietnam, 2013,
pp. 225-229.
4. Tran Thanh, Tran Hoang Vu, Nguyen Van Cuong, Pham Ngoc Nam, “A Protocol for Secure Remote Update of Run-time Partially Reconfigurable Systems Based on FPGA,” The Second International Conference on Control, Automation and Information Sciences (ICCAIS 2013 , Nha Trang, Vietnam, №vember, 2013, pp. 225-)
229.
Tạp chí trong và ngoài nước
5. Tran Thanh, Tran Hoang Vu, Pham Ngoc Nam, Nguyen Van Cuong, “A Novel Approach to Protect Intellectual Property Core of FPGA-Based Partially
Reconfigurable Systems,” Journal of Science and Technology, The
University of Danang. Danang, Vietnam, Vol. 1, №. 12(61), pp 112-118, 2012. 6. Tran Thanh, Tran Hoang Vu, Nguyen Van Cuong, Pham Ngoc Nam, “Protecting
FPGA-based Partially Reconfigurable Embedded Systems and IP Cores from Remote Update,” International Journal of Computing and Digital Systems (IJCDS), Vol.3, pp 21-27, University of Bahrain, January, 2014.
7. Tran Thanh, Tran Hoang Vu, Nguyen Duy Phuong, Do Son Tung, Cuong Nguyen- Van, Nguyen Van Cuong, Pham Ngoc Nam, “Enhance Performance in Implementing
the Security of Partially Reconfigurable Embedded Systems,” American Journal of Embedded Systems and Applications (AJESA), Vol. 2(1), pp 1-5, USA, February, 2014.
8. Vu Huy The, Tran Thanh, Pham Ngoc Nam, Pham Ngoc Thang, “Nén Bitstream Sử Dụng Run Length Encoding Trên Nền Tảng Hệ Nh- úng FPGA,” Tạp chí Nghiên cứu
90 9. Tran Thanh, Tran Hoang Vu, Pham Ngoc Nam, Nguyen Van Cuong, “A Secure Protocol to Exchange Security Key for Updating the Partially Reconfigurable Embedded System,” Journal of Science and Technology, The University of Danang. Danang, Vietnam, Vol. 1, №. 6(79), 2014.
10.Tran Thanh, Tran Hoang Vu, Pham Ngoc Nam, Nguyen Van Cuong, “Implementing
the Secure Protocol for Exchanging the Symmetric Key of FPGA-based Embedded Systems,” Journal on Informations Technologies and Communications, Vietnam Ministry of Information and Communications, Vietnam, Vol. E-3, №. 7(11), October, 2014.
91 Tài li u tham kh o ệ ả
[1] M. Clive, FPGAs: Instant Access. Newnes, 2008, p. 217.
[2] M. J. S. Smith, Application Specific Integrated Circuits. Pearson Education, 1997, p. 1038.
[3] Xilinx Inc., “WP435(v1.0): Xilinx UltraScale : The Next-Generation Architecture for Your Next-Generation Architecture,” 2013.
[4] Xilinx Inc., “WP434(v1.0): Xilinx UltraScale Architecture for High-Performance ,
Smarter Systems,” 2013.
[5] D. McGrath, “Gartner Dataquest Analyst Gives ASIC, FPGA Markets Clean Bill of Health,” EE Times. 2005.
[6] GBI, “Field Programmable Gate Array (FPGA) Market to 2020 - Increasing Preference for FPGAs over Application Specific Integrated Circuits (ASICs) will
Drive Demand,” Global Information, 2011. [Online]. Available:
http://www.giiresearch.com/report/gbi203754-field-programmable-gate-array-fpga- market-2020.html.
[7] M. Keating and P. Bricaud, Reuse Methodology Manual for System-on-a-Chip Designs. Kluwer Academic Publishers, 2002, p. 312.
[8] Xilinx Inc., “Xilinx Design Reuse Methodology for ASIC and FPGA Designers,”
2006.
[9] T. Dewey, IP Reuse for FPGA Design, no. October. Mentor Graphics, 2002, pp. 1–
13.
[10] Xilinx Inc., “WP365(v1.2): Solving Today‟s Design Security Concerns,” 2012.
[11] S. Drimer, “Volatile FPGA design security – a survey,” J. Eng. Comput. Lab. Univ. Cambridge, Version 0.96, pp. 1 51, 2008. –
[12] F. Durvaux, S. Kerckhof, F. Regazzoni, and F.-X. Standaert, “A Survey of Recent Results in FPGA Security and Intellectual Property Protection,” in Secure Smart Embedded Devices, Platforms and Applications SE - 9, K. Markantonakis and K. Mayes, Eds. Springer New York, 2014, pp. 201 224. –
[13] T. Wollinger, J. Guajardo, and C. Paar, “Security on FPGAs: State-of-the-art
Implementations and Attacks,” ACM Trans. Embed. Comput. Syst., vol. 3, no. 3, pp. 534 574, Aug. 2004. –
[14] S. Ravi, A. Raghunathan, and P. Kocher, “Security in Embedded Systems : Design Challenges,” ACM Trans. Embed. Comput. Syst., vol. 3, no. 3, pp. 461 491, 2004. –
92 [15] L. Yuan, G. Qu, L. Ghout, and A. Bouridane, “VLSI Design IP Protection:
Solutions, New Challenges, and Opportunities,” First NASA/ESA Conf. Adapt. Hardw. Syst., pp. 469 476, 2006. –
[16] W. Liang, D. Zhang, Z. You, W. Li, and H. Osama, “A Survey of Techniques for VLSI IP Protection,” Inf. Technol. J., vol. 12, no. 12, pp. 2324 2331, 2013. –
[17] T. Kean, “Secure Configuration of Field Programmable Gate Arrays,” in Proceedings of the 11th International Conference on Field-Programmable Logic and Applications, 2001, pp. 142 151. –
[18] L. Bossuet, G. Gogniat, and W. Burleson, “Dynamically Configurable Security for SRAM FPGA Bitstreams,” in Proceedings of the 18th International Parallel and Distributed Processing Symposium (IPDPS’04), 2004, vol. 00, no. C, pp. 146 154. –
[19] Y. Hori, T. Katashita, H. Sakane, and K. Toda, “Bitstream Protection in Dynamic Partial Reconfiguration Systems,” IEICE Trans. Inf. Syst., vol. E96-D, no. 11, pp. 2333 2343, 2013. –
[20] G. Gogniat, T. Wolf, and W. Burleson, “Reconfigurable Security Support for
Embedded Systems,” in Proceedings of the 39th Annual Hawaii International Conference on System Sciences (HICSS’06), 2006, p. 250a 250a. –
[21] T. Kean, “Cryptographic rights management of FPGA intellectual property cores,”
in Proceedings of the 2002 ACM/SIGDA tenth international symposium on Field- programmable gate arrays - FPGA ’02, 2002, pp. 113 118. –
[22] J. P. Acle, M. S. Reorda, and M. Violante, “Implementing a safe embedded
computing system in SRAM-based FPGAs using IP cores: A case study based on the Altera NIOS-II soft processor,” 2011 IEEE Second Lat. Am. Symp. Circuits Syst., pp. 1 5, 2011. –
[23] R. Maes, D. Schellekens, and I. Verbauwhede, “A Pay-per-Use Licensing Scheme for Hardware IP Cores in Recent SRAM-Based FPGAs,” IEEE Transactions on Information Forensics and Security, vol. 7, no. 1. pp. 98 108, 2012. –
[24] N. C. N. Couture and K. B. K. K. B. Kent, “Periodic licensing of FPGA based intellectual property,” in 2006 IEEE International Conference on Field
Programmable Technology, 2006, pp. 357 360. –
[25] W. Adi, R. Ernst, S. Bassel, and A. Hanoun, “VLSI design exchange with
intellectual property protection in FPGA environment using both secret and public-
key cryptography,” Emerg. VLSI …, vol. 00, pp. 24 32, 2006. –
[26] T. Guneysu, B. Moller, and C. Paar, “Dynamic Intellectual Property Protection for
Reconfigurable Devices,” 2007 Int. Conf. Field-Programmable Technol., 2007. [27] J. Castillo, P. Huerta, and J. I. Martínez, “Secure IP downloading for SRAM
93 [28] K. Kepa, F. Morgan, and K. Kosciuszkiewicz, “IP protection in partially
reconfigurable FPGAs,” in Field Programmable Logic and Applications, 2009. FPL 2009. International Conference on, 2009, pp. 403 409. –
[29] K. Kepa, F. Morgan, K. Kosciuszkiewicz, and T. Surmacz, “SeReCon: A Secure Dynamic Partial Reconfiguration Controller,” 2008 IEEE Comput. Soc. Annu. Symp. VLSI, pp. 292 297, 2008. –
[30] F. Devic, L. Torres, and B. Badrignans, “Secure Protocol Implementation for
Remote Bitstream Update Preventing Replay Attacks on FPGA,” in 2010
International Conference on Field Programmable Logic and Applications, 2010, pp. 179 182. –
[31] S. Drimer, “A protocol for secure remote updates of FPGA configurations,” Lect. Notes Comput. Sci., vol. 5453, pp. 50 61, 2009. –
[32] A. Braeken, J. Genoe, S. Kubera, N. Mentens, A. Touhafi, I. Verbauwhede, Y.
Verbelen, J. Vliegen, and K. Wouters, “Secure remote reconfiguration of an FPGA-
based embedded system,” in 6th International Workshop on Reconfigurable Communication-Centric Systems-on-Chip (ReCoSoC), 2011, pp. 1 6. –
[33] A. K. Jain, L. Yuan, P. R. Pari, and G. Qu, “Zero overhead watermarking technique for FPGA designs,” in Proceedings of the 13th ACM Great Lakes Symposium on VLSI - GLSVLSI ’03, 2003, pp. 147 152. –
[34] J. Zhang, Y. Lin, Q. Wu, and W. Che, “Watermarking FPGA Bitfile for Intellectual Property Protection,” Radioengineering, pp. 764 771, 2012. –
[35] L. G. Bertrand and L. Bossuet, “Automatic low-cost IP watermarking technique based on output mark insertions,” Des. Autom. Embed. Syst., vol. 16, no. 2, pp. 71–
92, May 2012.
[36] NIST., “SP800 12: An Introduction to Computer Security,” 1995.-
[37] W. Stallings, Cryptography And Network Security: Principles and Practices, 5th ed. Prentice Hall, 2006.
[38] NIST., “FIPS 46 3: Data Encryption Standard (DES),” 2009.-
[39] R. L. Rivest, “The RC5 Encryption Algorithm,” in Proceedings of the Second