Tóm tắt Luận án Bảo mật Bitstream Fpga

Bảo mật là quá trình đảm bảo tính bí mật, tính toàn vẹn và tính khả dụng tài

nguyên của hệ thống thông tin trong môi trường có nhiều tác nhân để đảm bảo rằng

chỉ những người có quyền hợp pháp mới truy nhập được. Hiện nay, bảo mật là một

ngành khoa học được các công ty, tập đoàn, và các quốc gia đầu tư rất mạnh mẽ, nhất

là sau các sự cố nghe lén ở tầm quốc gia trong những năm vừa qua.

Trong bảo mật hiện đại, ngoài các chính sách, các thuật toán thì các thiết bị điện

tử đóng một vai trò hết sức quan trọng, bởi vì nó là đối tượng để thực hiện các thuật

toán, trao đổi và lưu trữ các thông tin bảo mật. Một trong các thiết bị điện tử đó là các

hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA, đây là nền tảng công

nghệ đang phát triển mạnh mẽ và thay đổi rất nhanh.

Vấn đề bảo mật của các hệ thống dựa trên FPGA có thể chia thành ba dạng

chính sau:

- Hệ thống bảo mật sử dụng FPGA

- Bảo mật dữ liệu trên FPGA

- Bảo mật thiết kế FPGA

Nội dung của luận án này tập trung nghiên cứu ở dạng thứ ba, tức là nghiên cứu

và thực hiện bảo mật thiết kế các lõi sở hữu trí tuệ IP thông qua việc bảo vệ các file

dữ liệu cấu hình (file bitstream) khi truyền thông qua mạng Internet của các hệ thống

nhúng cấu hình lại được từng phần dựa trên FPGA.

pdf 27 trang dienloan 2900
Bạn đang xem 20 trang mẫu của tài liệu "Tóm tắt Luận án Bảo mật Bitstream Fpga", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

Tóm tắt nội dung tài liệu: Tóm tắt Luận án Bảo mật Bitstream Fpga

Tóm tắt Luận án Bảo mật Bitstream Fpga
BỘ GIÁO DỤC VÀ ĐÀO TẠO 
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI 
TRẦN THANH 
BẢO MẬT BITSTREAM FPGA 
Chuyên nghành: Kỹ thuật Điện tử 
Mã số: 62520203 
TÓM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT ĐIỆN TỬ 
HÀ NỘI - 2014 
Công trình này được hoàn thành tại: 
Trường Đại học Bách Khoa Hà Nội 
Tập thể hướng dẫn khoa học: 1. PGS. TS. Phạm Ngọc Nam 
 2. TS. Nguyễn Văn Cường 
Phản biện 1: TS. Hồ Khánh Lâm 
Phản biện 2: PGS. TS. Trần Xuân Tú 
Phản biện 3: PGS. TS. Đặng Văn Chuyết 
 Luận án sẽ được bảo vệ trước Hội đồng chấm luận án tiến sĩ cấp trường 
họp tại Trường Đại học Bách khoa Hà Nội. 
Vào hồi .. giờ, ngày  tháng. năm . 
Có thể tìm hiểu luận án tại: 
1. Thư viện Tạ Quang Bửu, Trường ĐHBK Hà Nội 
2. Thư viện Quốc gia Việt Nam 
1 
Mở đầu 
Bảo mật là quá trình đảm bảo tính bí mật, tính toàn vẹn và tính khả dụng tài 
nguyên của hệ thống thông tin trong môi trường có nhiều tác nhân để đảm bảo rằng 
chỉ những người có quyền hợp pháp mới truy nhập được. Hiện nay, bảo mật là một 
ngành khoa học được các công ty, tập đoàn, và các quốc gia đầu tư rất mạnh mẽ, nhất 
là sau các sự cố nghe lén ở tầm quốc gia trong những năm vừa qua. 
Trong bảo mật hiện đại, ngoài các chính sách, các thuật toán thì các thiết bị điện 
tử đóng một vai trò hết sức quan trọng, bởi vì nó là đối tượng để thực hiện các thuật 
toán, trao đổi và lưu trữ các thông tin bảo mật. Một trong các thiết bị điện tử đó là các 
hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA, đây là nền tảng công 
nghệ đang phát triển mạnh mẽ và thay đổi rất nhanh. 
Vấn đề bảo mật của các hệ thống dựa trên FPGA có thể chia thành ba dạng 
chính sau: 
- Hệ thống bảo mật sử dụng FPGA 
- Bảo mật dữ liệu trên FPGA 
- Bảo mật thiết kế FPGA 
Nội dung của luận án này tập trung nghiên cứu ở dạng thứ ba, tức là nghiên cứu 
và thực hiện bảo mật thiết kế các lõi sở hữu trí tuệ IP thông qua việc bảo vệ các file 
dữ liệu cấu hình (file bitstream) khi truyền thông qua mạng Internet của các hệ thống 
nhúng cấu hình lại được từng phần dựa trên FPGA. 
Xu hướng phát triển và các ứng dụng rộng rãi của FPGA. 
FPGA hiện nay có khả năng tái lập trình lại được từng phần khi vẫn còn đang 
hoạt động. Điều này đã làm cho nó trở thành lựa chọn hàng đầu so với các mạch tích 
hợp chuyên dụng ASIC, đặc biệt là đối với các thiết kế yêu cầu chi phí thấp, số lượng 
có hạn và thời gian phát triển ngắn. Trong bản báo cáo “Thị trường FPGA đến năm 
2020 - Ưu tiên tăng trưởng FPGA hơn là ASICs sẽ làm chuyển hướng nhu cầu” của 
hãng nghiên cứu thị trường GBI cung cấp một cái nhìn sâu sắc về thị trường FPGA 
trên toàn thế giới đến năm 2020. Trong dự báo cho biết, thị trường FPGA được tiêu 
thụ mạnh mẽ ở khu vực Châu Á -Thái Bình Dương, đặc biệt là Trung Quốc chiếm 
gần 40% lượng tiêu thụ của cả khu vực. 
Nguy cơ đe dọa bảo mật và tính cấp thiết bảo mật thiết kế hệ thống dựa 
trên FPGA 
 Các nguy cơ bảo mật 
Có rất nhiều các nguy cơ liên quan đến bảo mật thiết kế, mỗi một mối nguy cơ 
có những tác động riêng của nó. Một số liên quan đến lợi ích tài chính của một công 
ty, trong khi các mối nguy cơ khác có thể đe dọa đến an toàn cá nhân hoặc thậm chí 
là an ninh của một quốc gia. Các mối nguy cơ này dẫn đến các tình huống vi phạm 
bản quyền khác nhau: 
Kỹ thuật đảo ngược (Reverse engineering); Nhân bản (Cloning); Làm vượt quá 
số lượng (Overbuilding); Giả mạo (Tampering). 
2 
 Các tấn công vào thiết kế FPGA 
Tấn công vào thiết kế FPGA là khi kẻ tấn công khai thác lỗ hỗng bảo mật để 
truy cập vào hệ thống nhằm trộm cắp thông tin hoặc phá hoại hệ thống. Một số dạng 
tấn công vào hệ thống FPGA dựa trên SRAM tiêu biểu như sau: 
Giải mã bitstream; Tấn công phát lại; Giả danh; Chèn lỗi. 
 Các giải pháp bảo mật bitsream 
Các giải pháp bảo mật nhằm hạn chế tấn công khai thác bitstream là mã hóa, xác 
thực hoặc bổ sung các tham số đặc biệt trong các giao thức cập hệ thống từ xa qua 
mạng Internet. 
 Các tồn tại, yếm kém 
Lỗ hổng bảo mật của hệ thống hình thành từ nhiều nguyên nhân khác khau. Một 
số lỗ hổng do nguyên nhân khách quan nhưng cũng có một số sinh ra do lỗi chủ quan 
của con người. Các nguyên nhân đó là: 
Tính tự thỏa mãn; Biện pháp an ninh không đầy đủ; Cửa quay lại; Các khiếm 
khuyết của thiết kế; Các khiếm khuyết của thiết bị; 
Trong các nghiên cứu gần đây, đa số các tác giả tập trung giải quyết một vấn đề 
cụ thể như tăng tính bảo mật, tăng tốc độ cấu hình, giảm tài nguyên hệ thống, truyền 
thông an toàn. Nhưng đối với hệ thống nhúng cấu hình lại được từng phần dựa trên 
FPGA thì chưa có một công trình nào trình bày framework thật đầy đủ. 
Hệ thống nhúng cấu hình lại được từng phần dựa trên FPGA đang phát triển và 
thay đổi rất nhanh. Tấn công mạng ngày càng phức tạp và đa dạng. Do đó các giải 
pháp bảo mật cũ có thể không còn phù hợp và không hiệu quả. 
Giải pháp cứng hóa các thuật toán bảo mật trên thiết bị sẽ tiêu tốn tài nguyên hệ 
thống và không linh hoạt trong thay thế và nâng cấp. 
 Tình hình nghiên cứu bảo mật trên thế giới và mục tiêu nghiên cứu của luận 
án. 
Nhận thức được rằng, công nghệ FPGA đang ngày càng phát triển và thay đổi 
liên tục dẫn đến các chính sách và các biện pháp an ninh sẵn có có thể không còn phù 
hợp. Dưới sự hướng dẫn của PGS.TS Phạm Ngọc Nam và TS. Nguyễn Văn Cường, 
tác giả chọn vấn đề “bảo mật bitstream trên hệ thống nhúng cấu hình lại được từng 
phần dựa trên FPGA” làm đề tài nghiên cứu của mình. 
Xuất phát từ việc phân tích về những vấn đề khách quan trong các hệ thống 
nhúng dựa trên FPGA và những tồn tại chủ quan trong nghiên cứu ở trên, luận án sẽ 
tập trung nghiên cứu và thực hiện bốn nội dung khoa học chính như sau đây: 
 Đề 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. 
 Xây dựng bộ giao thức với các tham số đảm bảo an toàn và linh động khi cập 
nhật từ xa qua mạng Internet. 
 Đề 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 hiệu năng 
và tối ưu tài nguyên của các hệ thống nhúng cấu hình lại được từng phần dựa 
trên FPGA. 
3 
 Xây dựng mô hình mẫu trên các FPGA của Xilinx để nghiên cứu, kiểm tra và 
đánh giá về tính bảo mật bitstream và hiệu năng của hệ thống nhúng cấu hình lại 
được từng phần như các đề xuất và giải pháp đã đưa ra. 
 Đối tượng, phạm vi và phương pháp tiếp cận trong nghiên cứu 
Đối tượng và phạm vi nghiên cứu là nghiên cứu và thực hiện các giải pháp bảo 
mật bitstream trên các hệ thống nhúng cấu hình lại được từng phần dựa vào FPGA 
công nghệ SRAM khi cập nhật từ xa qua môi trường mạng công cộng (ví dụ như 
mạng Internet). 
Phương pháp tiếp cận là xây dựng các khối chức năng bằng phần cứng cấu 
hình lại được hoặc bằng phần mềm, tích hợp vào hệ thống của nhà phát, cho phép cập 
nhật thay đổi các giải pháp bảo mật bất cứ lúc nào, bất cứ ở đâu. 
Tổ chức nội dung của luận án 
Nội dung luận án bao gồm bốn chương. Kiến thức nền tảng được trình bày trong 
Chương 1. Các nội dung đề xuất và thực hiện được trình bày trong Chương 2 và 
Chương 3. Chương 4 trình bày một mô hình mẫu cho việc kiểm tra đánh giá kết quả 
của các đề xuất trên. Cuối cùng là kết luận với các đóng góp khoa học của luận án và 
hướng phát triển nghiên cứu trong thời gian tới. 
Chương 1 
Lý thuyết về bảo mật, FPGA và hệ thống nhúng 
Giới thiệu: Chương này gồm bốn phần. Phần một trình bày lý thuyết tổng quan về 
bảo mật và các thuật toán bảo mật mà luận án chọn để thực hiện trong đề tài nghiên 
cứu của mình. Phần hai trình bày về công nghệ FPGA. Phần ba trình bày về hệ thống 
nhúng cấu hình lại được từng phần dựa trên FPGA. Cuối cùng là phần kết luận 
chương. 
1.1 Bảo mật. 
1.1.1. Các khái niệm và thuật ngữ 
Bảo mật (Security) là quá trình đảm bảo tính bí mật, tính toàn vẹn và tính khả 
dụng tài nguyên của hệ thống thông tin, bao gồm phần cứng, phần mềm, dữ liệu và 
truyền thông. Tính bí mật, tính toàn vẹn và tính khả dụng của thông tin là ba đối 
tượng chính của mô hình bảo mật và được gọi là tam giác CIA (Confidentiality, 
Integrity, Availability), xem Hình 1.1. 
Trong đó: 
 Tính bí mật (Confidentiality) là tính 
giới hạn về đối tượng được quyền 
truy xuất đến thông tin. 
 Tính toàn vẹn (Integrity) là tính tồn 
tại nguyên vẹn của thông tin. 
 Tính khả dụng (Availability) là tính 
sẵn sàng của thông tin cho các nhu 
cầu truy xuất hợp lệ. 
Hình 1.1 Tam giác các yêu cầu về bảo mật CIA 
4 
Ngoài ra, tính toàn vẹn thông tin trong mật mã hóa hiện đại được mở rộng với 
tính xác thực và tính chịu trách nhiệm: 
 Tính xác thực (Authenticity) là sự đảm bảo rằng các dữ liệu, giao dịch, thông 
tin liên lạc, tài liệu (điện tử hoặc vật lý) là chính gốc. 
 Tính chịu trách nhiệm (Accountability) hay tính không thể chối bỏ. 
Mật mã (Cryptography) là kỹ thuật và nghệ thuật che giấu thông tin để giải 
quyết bài toán an toàn truyền thông khi có sự hiện diện của một bên thứ ba. Trong 
mật mã hiện đại, một hệ mật mã thường bao gồm năm thành phần , , , ,m c k E D . Và quá 
trình mật mã thông tin bao gồm hai bước: Mã hóa và giải mã, xem Hình 1.2. 
Hình 1.2 Hai bước của quá trình mật mã hóa 
Trong đó: 
 Mã hóa mật E (Encryption) là quá trình biến đổi thông tin gốc (plaintext) m 
(viết tắt của message) cùng với một khóa k (key) thành dữ liệu mã hóa c 
(ciphertext). 
( )kc E m (1.1) 
 Giải mã mật D (Decryption) là quá trình ngược lại, nó chuyển đổi dữ liệu mã 
hóa c cùng với một khóa k thành thông tin gốc m. 
( )km D c (1.2) 
1.1.2. Các tiêu chí đặc trưng của một hệ thống mã mật 
Một hệ thống mã mật bất kỳ được đặc trưng bởi ba tiêu chí sau đây: 
1. Phương pháp mã; 2. Số khóa sử dụng; 3. Cách xử lý thông tin gốc 
1.1.3. Các thuật toán mã mật 
1.1.3.1. Phân loại thuật toán mã mật 
Có một số cách phân loại thuật toán mã mật khác nhau như phân loại theo 
phương pháp mã hay phân loại theo số khóa sử dụng. Tương ứng với nội dung của 
luận án này, các thuật toán mã hóa sẽ được phân loại dựa trên số lượng các khóa 
được sử dụng để mã hóa và giải mã dữ liệu: 
Mã hóa khóa bí mật; Mã hóa khóa công khai và Hàm băm bảo mật 
1.1.3.2. Độ an toàn của các thuật toán mã mật 
Độ an toàn của thuật toán mã mật được xem xét trên hai khía cạnh: Độ phức tạp 
của thuật toán và Độ dài của khóa mã. 
5 
Để thấy được giá trị của độ dài khóa mã trong việc ngăn ngừa các tấn công dò 
khóa, từ đó bảo vệ được thông tin bảo mật, chúng ta xem xét số liệu trong hai bảng 
Bảng 1.1 sau đây. 
Bảng 1.1 Chiều dài khóa tối thiểu cho thuật toán mã mật 
Kẻ tấn công Ngân sách Công cụ 
Thời gian và chi phí trên 
mỗi khóa phục hồi được 
Độ dài khóa cần 
thiết sau năm 1995 
40 bit 56 bit 
Hacker 
thường 
Nhỏ Máy tính 1 tuần Không khả thi 45 bit 
400$ FPGA 
5 giờ 
(0,08$) 
38 years 
(5.000$) 
50 bit 
Công ty nhỏ 10.000$ FPGA 
12 phút 
(0,08$) 
18 tháng 
(5.000$) 
55 bit 
Công ty vừa 300.000$ 
FPGA 
24 giây 
(0,08$) 
19 ngày 
(5.000$) 
60 bit 
ASIC 
0,18 giây 
(0,001$) 
3 giờ 
(38$) 
Công ty lớn 10.000.000$ 
FPGA 
7 giây 
(0,08$) 
13 giờ 
(5.000$) 
70 bit 
ASIC 
0,005 giây 
(0,001$) 
6 phút 
(38$) 
Tổ chức 
thông minh 
300.000.000$ ASIC 
0,0002 
giây 
(0,001$) 
12 giây 
(38$) 
75 bit 
Số liệu trong Bảng 1.1 được tính toán dựa trên kỹ thuật và công nghệ của những 
năm 1995. Qua đấy ta thấy, việc tìm khóa với độ dài khóa từ 56 bit trở lên là khó 
khăn đối với các kẻ tấn công đơn lẻ, nhưng đối với các công ty và đặc biệt là các tổ 
chức có sự đầu tư lớn về tài chính và công cụ phân tích khóa mã tinh vi thì hoàn toàn 
có thể và dễ dàng. 
1.1.3.3. Thuật toán mã hóa khóa bí mật AES 
Thuật toán mã hóa tiên tiến AES là một thuật toán mã khóa bí mật được Viện 
tiêu chuẩn và công nghệ quốc gia Hoa kỳ NIST chọn làm tiêu chuẩn liên bang, có 
hiệu lực từ ngày 26 tháng 5 năm 2002. 
 Độ phức tạp của AES: 
Về các nguyên lý thiết kế mật mã khối, người ta đã ghi nhận 2 nguyên tắc cơ sở 
sau để có độ bảo mật cao, đó là việc tạo ra tính hỗn loạn và tính khuếch tán. 
 Độ an toàn của AES: 
Theo số liệu trong Bảng 1.2 ta thấy, thiết kế AES với các chiều dài khóa là 128, 
192 hoặc 256 bit mang đến cho thuật toán này một độ an toàn rất cao đối với các tấn 
công và khả năng tính toán của máy tính hiện nay. 
1.1.3.4. Thuật toán mã hóa khóa công khai RSA 
Thuật toán mã hóa RSA là một thuật toán điển hình về mã hóa khóa công khai. 
RSA được xây dựng bởi các tác giả Ron Rivest, Adi Shamir và Len Adleman tại học 
viện MIT vào năm 1977. Cũng như các thuật toán mã hóa công khai khác, nguyên lý 
của RSA dựa chủ yếu trên lý thuyết số chứ không dựa trên các thao tác xử lý bit. 
6 
 Độ phức tạp của thuật toán RSA: 
Có hai vấn đề về độ phức tạp tính toán trong thuật toán RSA. Đó là Phép tính 
mã hóa mật và giải mã, và Phép tính sinh khóa. 
 Độ an toàn của thuật toán RSA: 
Độ an toàn của thuật toán RSA dựa trên độ khó của bài toán phân tích một số 
thành nhân tử. Theo lý thuyết, hệ thống RSA có thể bị tấn công bằng những phương 
thức sau đây: 
Vét cạn khóa (thử tuần tự); Phương pháp toán học; Đo thời gian 
Bảng 1.2 Thử nghiệm độ bảo mật của RSA 
Số bit của N Số thao tác Thời gian 
100 9,6 x 10
8 
16 phút 
200 3,3 x 10
12 
38 ngày 
300 1,3 x 10
15 41 năm 
400 1,7 x 10
17 5.313 năm 
500 1,1 x 10
19 
3,3 x 10
5
 năm 
1024 1,3 x 10
26 
4,2 x 10
12 năm 
2048 1,5 x 10
35 
4,9 x 10
21năm 
1.1.3.5. Hàm băm bảo mật SHA 
Hàm băm là một thuật toán không sử dụng khóa. Kết quả của hàm băm là một 
giá trị băm dài cố định được tính toán dựa trên bản rõ. Từ một giá trị băm quá khó để 
phục hồi được bản rõ. Vì vậy hàm băm đôi khi còn được gọi là hàm rút gọn bản tin 
(message digest) hay hàm một chiều (one-way function). Các thuật toán băm thường 
được sử dụng để xác thực rằng các bản tin không bị thay đổi bởi một hành động chủ 
quan hoặc khách quan trên đường truyền từ nơi gửi đến nơi nhận. 
1.2. FPGA 
1.2.1. Giới thiệu 
FPGA là thiết bị bán dẫn được sản xuất trước (pre-fabricated) có thể được lập 
trình bên ngoài nhà máy để tạo ra gần như bất kỳ loại mạch hay hệ thống kỹ thuật số 
nào. 
1.2.2. Các lĩnh vực ứng dụng của FPGA 
Do tính chất có thể lập trình và lập trình lại được từng phần nên FPGA là rất lý 
tưởng cho việc phát triển nhiều thị trường ứng dụng khác nhau: 
Quốc phòng và hàng không vũ trụ; Tiền thiết kế mẫu ASICs; Điện tử ô tô; Phát 
thanh; Điện tử tiêu dùng; Trung tâm dữ liệu; Tính toán hiệu năng cao và lưu trữ dữ 
liệu; Công nghiệp; Y tế; Bảo mật; Xử lý hình ảnh và video; Truyền thông không dây. 
1.2.3. Công nghệ lập trình FPGA 
Mỗi một FPGA dựa trên một công nghệ lập trình cơ bản để điều khiển các 
chuyển mạch đại diện cho khả năng lập trình của chúng. Có một số công nghệ lập 
trình và sự khác biệt của chúng ảnh hưởng đáng kể đến kiến trúc logic của FPGA. 
Chúng ta xem xét ba công nghệ lập trình cơ bản sau: 
7 
1.2.3.1. Công nghệ lập trình dựa trên SRAM 
Công nghệ lập trình SRAM-based đã trở thành phương pháp tiếp cận chủ đạo 
cho FPGA thương ... t và hiệu năng thực hiện. Sự 
đóng góp chính của mục này là việc áp dụng hệ thống kiến trúc bus AXI4 tốc độ cao 
cho phép đọc ghi bitstream giữa các khối và xây dựng bộ AXI-master giúp tăng tốc 
độ thực hiện các thuật toán mật mã và cấu hính lại hệ thống. 
3.3.1. Xây dựng hệ thống 
Để nâng cao hiệu năng của hệ thống, tác 
giả thiết kế và bố trí các khối chức năng 
như miêu tả trong Hình 3.3 dưới đây. 
Trong đó các khối mã hóa và xác thực 
được thực hiện trong khu vực cấu hình lại 
được từng phần và giao tiếp với DDRAM 
thông qua hai FIFO được quản lý bởi khối 
AXI Master. 
3.3.2. Thực hiện và đánh giá kết 
quả 
Kết quả thực nghiệm được xây dựng trên 
FPGA Xilinx Virtex-6. Tài nguyên phần 
cứng được sử dụng cho mã hóa AES-256 
và SHA-512 chỉ chiếm một phần rất nhỏ tài 
nguyên hệ thống, xem Bảng 3.4. 
Nhờ sử dụng AXI Master với hai bộ đệm 
dữ liệu FIFO, hiệu suất thực hiện của AES-256 và SHA-512 được cải thiện khoảng 
bốn lần nhanh hơn, như thể hiện trong Bảng 3.5. 
Bảng 3.4 Sử dụng phần cứng của AES-256 và SHA-512 
Lõi IP 
Tài nguyên sử dụng 
Registers LUTs Slice 
AES-256 3.096 (1,02%) 3.751 (2,38%) 1.293 (3,43%) 
SHA-512 2.246 (0,74%) 2.299 (1,46%) 843 (2,25%) 
AXI-Master 443 (0,15%) 1.387 (0,92%) 455 (1,19%) 
Bảng 3.5 Hiệu năng thực hiện của SHA-512 và AES-256 
Lõi IP 
Thông lượng 
Không có AXI-Master Có AXI-Master 
SHA-512 73,8 Mbps 309,9 Mbps 
AES-256 126,4 Mbps 492,9 Mbps 
3.4 Đánh giá và so sánh với các nghiên cứu liên quan 
Giải pháp của tác giả là thực hiện các khối AES và SHA trong vùng logic cấu 
hình lại được từng phần để tăng tính linh hoạt và khi thay đổi và lựa chọn các thuật 
toán mã. Vấn đề tài nguyên (slice) hệ thống tuy có nhiều hơn nhưng được giải quyết 
bằng các giải phóng các bộ mã hóa này khi không sử dụng đến. Vấn đề tốc độ thực 
hiện cũng được cải thiện hơn nhiều so với việc sử dụng vi xử lý nhúng. Tuy không 
Hình 3.3 Sơ đồ khối của hệ thống 
20 
đạt được tốc độ cao như phương pháp của Hori và đồng sự (do các tác giả này thực 
hiện bộ AES-GCM trong vùng logic tĩnh), nhưng như chỉ ra ở Bảng 3.6, ta thấy kết 
quả là gần tương đương (do chúng tôi sử dụng các bộ AES-256 và SHA-512 thay vì 
AES-128 và SHA-256). Đối với ứng dụng bảo mật trong cập nhật từ xa, thường xảy 
ra không thường xuyên, thì tính linh động trong thực hiện được xem là lựa chọn ưu 
tiên hàng đầu. 
Bảng 3.6 So sánh hiệu năng các bộ mã hóa trong các hệ thống bảo mật 
Hệ thống FPGA Thuật toán Slice Thông lượng 
Hori và đồng sự XC5VLX50T 
AES-128 
SHA-256 
AES-GCM 
675 (10%) 
567 (7%) 
1,226 (16%) 
1.164 Mbps 
701 Mbps 
1.067 Mbps 
Hệ thống của 
chúng tôi 
XC6VLX240T 
AES-256 
SHA-512 
1.293 (3,43%) 
843(2,25%) 
492,9 Mbps 
309,9 Mbps 
3.5 Kết luận chương 
Trong chương này, với mục tiêu là tăng hiệu năng, tính linh hoạt và tối ưu tài 
nguyên hệ thống 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 
các giải pháp bảo mật như đã đề xuất trong chương 2, tác giả đã đề xuất và thực hiện: 
- Sử dụng các thuật toán mã hóa và xác thực trong khu vực cấu hình lại được, 
đảm bảo tất cả các file bitstream từng phần luôn luôn được mã hóa và xác thực 
trước khi trao đổi qua mạng và cập nhật lại hệ thống. Việc thêm bộ giải mã 
AES-256 và bộ xác thực SHA-512 làm cho hệ thống an toàn hơn, tốc độ thực 
hiện nhanh hơn mà không làm tăng đáng kể tài nguyên của hệ thống. 
- Sử dụng thuật toán nén RLE để nén bitstream. Thuật toán cho một kết quả tốt 
thể hiện ở tỉ số nén và giải pháp giải nén thực hiện dễ dàng trên hệ thống nhúng 
dựa trên FPGA. Kỹ thuật nén này kết hợp với khả năng cấu hình lại được từng 
phần của FPGA sẽ đem đến một giải pháp hiệu quả trong việc giảm dung lượng 
bộ nhớ lưu trữ và làm giảm thời gian cập nhật hệ thống. 
- Giải pháp sử dụng lõi AXI-Master với hai bộ đệm dữ liệu FIFO đã giải quyết 
vấn đề băng thông giữa bộ vi xử lý nhúng và phần logic cấu hình. Như vậy, 
trong một hệ thống nhúng dựa trên FPGA, với các lõi tăng tốc có sẵn có thể 
được sử dụng để tăng thông lượng cho các ứng dụng bảo mật. 
Chương 4 
Mô hình thử nghiệm hệ thống cấu hình lại được từng phần dựa trên 
FPGA 
Giới thiệu: Chương này trình bày các bước, các công cụ để xây dựng mô hình mẫu 
trên thiết bị FPGA ML605 Virtex-6 XC6VLX240T của Xilinx và FPGA Atlys Spartan-
6 LX45 của Digilent giúp cho việc kiểm tra và đánh giá về bảo mật hệ thống nhúng 
cấu hình lại được như đã đề xuất ở chương 2 và 3. Mô hình này cùng với các các mã 
thuật toán được cung cấp đầy đủ sẽ là một cơ sở dữ liệu quan trọng cho các nghiên 
cứu kế thừa về sau. 
21 
4.1 Xây dựng hệ thống 
4.1.1. Cài đặt hệ thống 
Tác giả đã xây dựng một hệ thống mẫu thử nghiệm bao gồm một nền tảng 
nhúng cấu hình lại được dựa trên board phát triển FPGA ML605 Virtex-6 
XC6VLX240T của Xilinx và một máy tính xách tay đóng vai trò của nhà cung cấp 
dịch vụ (Hình 4.1). Board FPGA ML605 Virtex-6 XC6VLX240T và máy tính xách 
tay được kết nối với nhau thông qua một kết nối Ethernet. Một hệ thống tương tự 
cũng được thực hiện để so sánh hiệu năng và tài nguyên hệ thống trên board phát 
triển FPGA Atlys Spartan-6 LX45. 
Hình 4.1 Hệ thống mẫu thử nghiệm 
Việc tác giả chọn hai dòng FPGA khác nhau giúp cho việc khảo sát và đánh giá 
đầy đủ hơn và để giúp cho các nhà thiết kế bảo mật có những lựa chọn phù hợp hơn. 
4.2 Kết quả và đánh giá 
Để thể hiện tính linh hoạt và tính đa dạng trong thực hiện bảo mật bitstream như 
framework đã đề xuất, tác giả xây dựng các khối mã hóa và xác thực theo hai cách 
như sau: 
- Hoàn toàn bằng phần mềm 
- Kết hợp cả phần cứng và phần mềm. 
Việc mã hóa và xác thực bitstream là bắt buộc trong framework và giao thức an 
toàn cập nhật của tác giả cũng như trong các hệ thống bảo mật hiện đại. Vì vậy, tốc 
độ thực hiện của các bộ mã hóa và xác thực có yếu tố quyết định trong toàn bộ quá 
trình cập nhật hệ thống. Tùy thuộc vào từng thiết bị, việc lựa chọn thực hiện bằng 
phần cứng hay phần mềm sẽ cho một kết quả thích hợp. 
4.2.1. Giải pháp bằng phần mềm 
Bảng 4.3 tóm tắt kết quả thực hiện bằng phần mềm của các thuật toán được xem 
xét trong hai tham số: kích thước bộ nhớ và thông lượng của từng thuật toán. 
Bảng 4.1 Kết quả thực hiện bằng phần mềm với FPGA Atlys Spartan-6 
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 
22 
Mặc dù việc thực hiện bằng phần mềm là chậm hơn so với việc thực hiện bằng 
phần cứng, nhưng nó không tiêu thụ thêm bất kỳ nguồn tài nguyên phần cứng nào của 
FPGA. Trong khi việc thực hiện bằng phần cứng chiếm xấp xỉ 31,5% tài nguyên 
Slice của FPGA Spartan-6 LX45, xem Bảng 4.2. 
4.2.2. Giải mã và xác thực bằng phần cứng 
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.2 và 4.3. Kết quả này cho thấy tài nguyên phần cứng sử dụng cho 
bộ giả mã 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. 
Bảng 4.2 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.3 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 
Giải pháp mà tác giả đề xuất là thực hiện các bộ mã hóa và xác thực này trong 
khu vực cấu hình lại được từng phần sẽ giải quyết được hai vấn đề: 
- 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. 
- 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. 
Bảng 4.4 Sử dụng tài nguyên phần cứng của AES-256 và SHA-512 (Xilinx Virtex-6) 
Lõi IP 
Tài nguyên sử dụng 
Registers LUTs Slice 
AES-256 3.096 (1,02%) 3.751 (2,38%) 1.293 (3,43%) 
SHA-512 2.246 (0,74%) 2.299 (1,46%) 848 (2,25%) 
Bảng 4.5 Hiệu năng thực hiện trên FPGA Xilinx Virtex-6. 
Thuật toán Thông lượng 
AES-256 492,9 Mbps 
SHA-512 309,9 Mbps 
Bảng 4.4 và 4.5 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. Và tốc độ thực hiện cũng 
23 
nhanh hơn nhiều. 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 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 với lượng tài nguyên lớn, tốc độ nhanh cho phép chúng ta cân nhắc thực 
hiện các thuật mã 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. 
4.3 Kết luận chương 
Luận án 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 các bitstream của FPGA. 
Mô hình thực hiện trên của tác giả 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 đa vi xử lý, đa luồng. 
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à cuối cùng là xây dựng và thực hiện 
trên mô hình mẫu để đánh giá hệ thống bả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 
24 
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 sử dụng 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. 
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ự, 
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 luận vă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 trong thời gian tới đó là triển khai thực hiện và thử 
nghiệm 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ý nhúng đang và sẽ được áp dụng rộng rãi trong 
tương lai. 
Danh mục các công trình khoa học đã công bố của luậ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, November, 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, No. 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 
Khoa học và Công nghệ quân sự, số 31, trang 126-132, tháng 6, 2014. 
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, No. 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, No. 7(11), 2014. 

File đính kèm:

  • pdftom_tat_luan_an_bao_mat_bitstream_fpga.pdf