1. Trang chủ
  2. » Luận Văn - Báo Cáo

tóm tắt luận án bảo mật bitstream FPGA

27 290 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 27
Dung lượng 1,32 MB

Nội dung

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ậ

Trang 1

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

Trang 2

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

Trang 3

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)

Trang 4

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

Trang 5

 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

Trang 6

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ầnm 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)

( )

k

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

( )

k

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ã

Trang 7

Để 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

(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

Trang 8

Độ 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

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.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:

Trang 9

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 mại hiện nay vì hai lợi thế chính của nó:

- Khả năng tái lập trình và sử dụng các công nghệ xử lý CMOS chuẩn

- Chất lượng và số lượng lập trình lại là gần như vô hạn

Tuy nhiên đối với các FPGA công nghệ lập trình SRAM-based có một số nhược điểm sau:

Kích thước lớn; Sự bay hơi; Các vấn đề về bảo mật

1.2.3.2 Công nghệ lập trình dựa trên flash

Một thay thế để giải quyết một số nhược điểm của công nghệ lập trình dựa trên SRAM là công nghệ lập trình dựa vào các tế bào bộ nhớ flash Những tế bào này không bay hơi Chúng không bị mất thông tin khi thiết bị bị mất nguồn

1.2.3.3 Công nghệ lập trình dựa trên antifuse

Ưu điểm chính của công nghệ lập trình dựa trên cầu chì nghịch (antifuse) là sự tiêu tốn tài nguyên của nó nhỏ Với liên kết kim loại-kim loại, không có vùng silicon

để thực hiện các kết nối nên giảm được chi phí tài nguyên lập trình Sự không bay hơi cũng làm cho các thiết bị dựa trên công nghệ lập trình cầu chì nghịch hoạt động ngay lập tức mỗi khi mở nguồn Cuối cùng, việc nạp dữ liệu cấu hình cho FPGA chỉ được thực hiện một lần, điều này có thể được thực hiện trong một môi trường an toàn giúp cải thiện sự bảo mật của các thiết kế trên FPGA

1.3 Hệ thống nhúng

1.3.1 Giới thiệu

Hệ thống nhúng là một hệ thống xử lý được nhúng vào trong một môi trường hay một hệ thống lớn hơn Đó là các hệ thống tích hợp cả phần cứng và phần mềm phục vụ các bài toán chuyên dụng trong nhiều lĩnh vực công nghiệp, tự động hoá điều khiển, quan trắc và truyền tin Đặc điểm của các hệ thống nhúng là hoạt động ổn định

và có tính năng tự động hoá cao

Như đã biết, mục tiêu của thiết kế một hệ thống nhúng là tính hiệu quả cao, do

đó thiết kế phần mềm không thể được thực hiện độc lập với phần cứng Vì vậy, cần phải tìm một thỏa hiệp tốt nhất giữa tính hiệu quả và tính linh hoạt Điều này là khó khăn, vì phương pháp tiếp cận tích hợp như vậy đòi hỏi người thiết kế cần có kiến thức về phần cứng lẫn phần mềm

Trang 10

1.4 Kết luận chương

Thực tế cho thấy, các FPGA với các bộ vi xử lý nhúng và khả năng tái lập trình lại được sẽ cho phép xây dựng các hệ thống có hiệu suất cao Chúng trở thành nền tảng phần cứng quan trọng, đáp ứng các mục tiêu về độ tin cậy và hiệu xuất mà một

Qua phần lý thuyết tổng quan về bảo mật, FPGA và hệ thống nhúng, chúng ta nhận thức được rằng: trong thời đại công nghiệp số hiện nay, thực hiện bảo mật là hết sức quan trọng để bảo vệ hệ thống và bảo vệ tài sản trí tuệ của người chủ sở hữu

Chương 2 Framework và giao thức cập nhật an toàn từ xa

Giới thiệu: Chương này trình bày framework và giao thức mà tác giả đề xuất để

đảm bảo tính an toàn và tính linh hoạt khi cập nhật bitstream từ xa 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 Trong framework này tác giả xem xét giải quyết các vấn đề khác nhau về bảo mật bao gồm việc trao đổi, quản lý,

mã hóa, xác thực và nén bitstream

2.1 Xây dựng và mô tả cấu trúc của Framework

Để xây dựng framework và giao thức cho hệ thống nhúng cấu hình lại được từng phần, chúng ta tìm hiểu chức năng, nhiệm vụ và mối quan hệ của các chủ thể khác nhau trong quá trình trao đổi, cập nhật và bảo vệ quyền sở hữu trí tuệ các lõi IP sau đây

Nhà tích hợp hệ thống (SysInt - System Integrator): Đây là nhà thiết kế hệ

thống dựa trên FPGA và cung cấp nó cho người dùng

Nhà cung cấp lõi IP (IPVend - IP Vendor): Đây là các công ty chuyên cung

cấp các lõi IP có thể tái sử dụng cùng với các tài liệu liên quan

Cơ quan đáng tin cậy hay trung tâm xác thực (TAut-Trusted Authority) là cơ

quan được các bên tin tưởng ủy quyền cung cấp và xác thực khóa hoặc giấy chứng nhận bản quyền

Người sử dụng hay người dùng (User): là khách hàng cuối cùng sử dụng hệ

Trang 11

Hình 2.1 Cấu trúc của Framework bảo mật

2.1.1 Các thành phần phía nhà cung cấp dịch vụ

- Cơ sở dữ liệu hồ sơ người sử dụng (User Profile Database) lưu trữ thông tin về

tất cả người dùng đã đăng ký bao gồm cả số định danh của FPGA, phiên bản của bitstream, kích thước phân vùng cấu hình lại và thuật toán mã hóa

- Lưu trữ (Repository): Kho lưu trữ bitstream và các thành phần chức năng được

sử dụng để cấu hình lại phần cứng cấu hình lại được thời gian chạy có thể được cài đặt và thực hiện trên vi xử lý nhúng của hệ thống người dùng

- Trình quản lý cập nhật của máy chủ (SuM - Server Update Manager): là

trình quản lý cập nhật, thuật toán mã hóa và phần mềm

- Các bộ mã hóa, xác thực và nén: chịu trách nhiệm mã hóa, xác thực và nén

bitstream

2.1.2 Các thành phần phía

người dùng

Trình quản lý cập nhật của máy

trạm (CuM - Client Update Manager):

chịu trách nhiệm quản lý việc tải xuống và

cấu hình lại hệ thống Nó chịu trách

nhiệm giao tiếp với các nhà cung cấp dịch

vụ và duy trì các thông tin về hồ sơ cá

nhân của hệ thống người dùng cuối

2.2 Giao thức cập nhập

Giao thức cập nhật xác định một

cuộc tương tác trao đổi giữa một trình

quản lý cập nhật máy chủ SuM của bên

cung cấp dịch vụ, là thực thể phụ trách

việc phân phối bitstreams mới tới các hệ

thống nhúng dựa trên FPGA, và một trình Hình 2.2 Lưu đồ giao thức cập nhật an toàn

Trang 12

quản lý cập nhật máy khách CuM của phía người sử dụng

Hình 2.2 mô tả thông tin liên lạc giữa SuM và CuM Mỗi phiên giao dịch bắt đầu với một bản tin "GetUpdate" ban đầu từ SuM và một bản tin phản hồi

"ResUpdate" từ CuM Trong các bản tin "GetUpdate" và "ResUpdate", hai bên trao đổi các tham số cần thiết cho một phiên cập nhật an toàn, ví dụ như số chỉ dùng một

lần "Nonces", số định danh FPGA F, phiên bản bitstream V, số giấy phép bản quyền

N PiLS, v.v Sau đó, các tham số này được chuyển đổi một cách gián tiếp vào trong các

mã xác thực bản tin MAC thông qua việc thực hiện hàm băm SHA Điều này đảm bảo rằng việc xác thực sự tươi mới của dữ liệu nhận được tiếp theo trong phiên giao dịch chỉ đơn giản là dùng mỗi giá trị MAC mà không cần phải lặp lại các tham số và

dữ liệu cũ của đã trao đổi trước đó

2.2.1 Giao thức cập nhật từ xa an toàn

Giao thức cập nhật từ xa an toàn bao gồm hai thuật toán tương ứng với hai phía của một hệ thống: Thuật toán 1 cho phía FPGA (tức là phía người sử dụng) và thuật toán 2 cho phía nhà cung cấp dịch vụ Đầu tiên, chúng ta tập trung thảo luận về các thuật toán 1 ở phía FPGA, đây là thuật toán chạy trên thiết bị với nhiều hạn chế về tài nguyên phần cứng

Các tham số trong giao thức được lưu trữ trong cơ sở dữ liệu hồ sơ người dùng của nhà cung cấp dịch vụ và bên phía người sử dụng Các tham số đó là:

SK S : Khóa bảo mật được chia sẻ bởi SuM

F: Số định danh của FPGA

P i : Số định danh của phân vùng cấu hình lại được trong FPGA

V Pi : Số phiên bản của bitstream hiện đang hoạt động

L max : Độ dài tối đa của bitstream từng phần của phân vùng P i

A E : Thuật toán mã hóa được sử dụng

A C : Thuật toán nén được sử dụng

V PiNVM : Số phiên bản bitsream lưu trữ trong bộ nhớ không bay hơi

N CuM : Giá trị bộ đếm lưu trong bộ nhớ không bay hơi của CuM

L PiU : Độ dài bitstream từng phần được tải lên

N PiLS : Số bản quyền của bitstream từng phần

V PiU : Số phiên bản của bitstream được tải lên

N SuM : Số Nonce được tạo bởi SuM

F e , P e, V e : Giá trị được mong đợi của F, P i ,V Pi

N max : Giới hạn trên của N NVM

PB: Bitstream từng phần ở dạng nén

M x : Các giá trị MACs

2.2.2.1 Thuật toán 1 - Thuật toán bên phía người dùng FPGA

1 Start:

2 Receive(C, F e , P i , V Pie , L PiU , N max , N SuM , M 0)

3 if L PiU L max then goto 34

4 if C ≠ “GetUpdate” then goto Start:

5 V PiNVM := V Pi

6 ReadNVM(N CuM)

Trang 13

7 M’ 0 = MAC(C, F e , P i , V Pie , L PiU , N max , N SuM)

8 S := (M 0 = M’ 0)  (V Pie = V Pi)  (F e = F) (N CuM < N max)

16 M 1 := MAC(“ResUpdate”, F, P i , V Pi , L max , N CuM , A E , A C , M K , M LS , M 0)

17 Send(“ResUpdate”, F, P i , V Pi , L max , N CuM , A E , A C , M K , M LS , M 1)

32 if C= “Abort” then goto Start:

33 UpUserprofile(F, P i , V Pi , L max , N CuM , A E , A C)

34 Warn(“Resize your partial reconfigurable partition”)

Trong đó:

- GetUpdate, Update, UpFinish, Abort là các bản tin được gửi từ máy chủ cập nhật

- ResUpdate, UpConfirm là các bản tin được gửi từ FPGA đến máy chủ cập nhật

- Decrypt(), Decompress(), ReconfCtr() là các hàm giải mã, giải nén và cấu hình lại

- UpUserprofile là chỉ thị lệnh cập nhật hồ sơ người dùng

2.2.2 Phân tích bảo mật

2.2.3.1 Tính bí mật và tính xác thực

Trong giao thức đã đề xuất, ở phía FPGA, bộ giải mã và bộ xác thực luôn luôn được thực hiện và có thể thực hiện trong phần cứng hoặc phần mềm nhúng Do vậy, bitstream một phần được chuyển giao thông qua Internet luôn được mã hóa để chống lại các cuộc tấn công nhân bản hoặc kỹ thuật đảo ngược Các bước trong quá trình trao đổi này luôn được xác thực để đảm bảo tính tươi mới, tính toàn vẹn và tính chính gốc của bitstream, nhằm ngăn chặn các cuộc tấn công phát lại

2.2.3.2 Giá trị của các tham số

N SuM là số ngẫu nhiên đủ lớn để việc tái hiện lại nó thông thực tế là không thể

Việc sử dụng một từ 64-bit cho N SuM sẽ đảm bảo rằng một kẻ tấn công với năng lực thực hiện 103

truy vấn mỗi giây phải mất vài thập kỷ để tìm ra một giá trị trùng lặp

Ngày đăng: 29/10/2014, 17:28

HÌNH ẢNH LIÊN QUAN

Hình 1.1 Tam giác các yêu cầu về bảo mật CIA - tóm tắt luận án bảo mật bitstream FPGA
Hình 1.1 Tam giác các yêu cầu về bảo mật CIA (Trang 5)
Hình 1.2 Hai bước của quá trình mật mã hóa - tóm tắt luận án bảo mật bitstream FPGA
Hình 1.2 Hai bước của quá trình mật mã hóa (Trang 6)
Bảng 1.1 Chiều dài khóa tối thiểu cho thuật toán mã mật - tóm tắt luận án bảo mật bitstream FPGA
Bảng 1.1 Chiều dài khóa tối thiểu cho thuật toán mã mật (Trang 7)
Hình 2.1 Cấu trúc của Framework bảo mật - tóm tắt luận án bảo mật bitstream FPGA
Hình 2.1 Cấu trúc của Framework bảo mật (Trang 11)
Hình 2.3 Giao thức trao đổi khóa không qua trung tâm xác thực - tóm tắt luận án bảo mật bitstream FPGA
Hình 2.3 Giao thức trao đổi khóa không qua trung tâm xác thực (Trang 15)
Bảng 2.1 So sánh các thực hiện trên bitstream và hệ thống - tóm tắt luận án bảo mật bitstream FPGA
Bảng 2.1 So sánh các thực hiện trên bitstream và hệ thống (Trang 17)
Hình 3.1 Ví dụ về một hệ thống cấu hình - tóm tắt luận án bảo mật bitstream FPGA
Hình 3.1 Ví dụ về một hệ thống cấu hình (Trang 18)
Bảng 3.2 Kết quả giải nén bitstream trên hệ nhúng dựa trên FPGA - tóm tắt luận án bảo mật bitstream FPGA
Bảng 3.2 Kết quả giải nén bitstream trên hệ nhúng dựa trên FPGA (Trang 20)
Bảng  3.2 thể hiện  mối  quan  hệ giữa  thời  gian  giải  nén  và  kích  thước  của  các  bitstream đã nén - tóm tắt luận án bảo mật bitstream FPGA
ng 3.2 thể hiện mối quan hệ giữa thời gian giải nén và kích thước của các bitstream đã nén (Trang 20)
Bảng 3.4 Sử dụng phần cứng của AES-256 và SHA-512 - tóm tắt luận án bảo mật bitstream FPGA
Bảng 3.4 Sử dụng phần cứng của AES-256 và SHA-512 (Trang 21)
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 - tóm tắt luận án bảo mật bitstream FPGA
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 (Trang 22)
Hình 4.1 Hệ thống mẫu thử nghiệm - tóm tắt luận án bảo mật bitstream FPGA
Hình 4.1 Hệ thống mẫu thử nghiệm (Trang 23)
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) - tóm tắt luận án bảo mật bitstream FPGA
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) (Trang 24)
Hình 5.1 Mô hình nghiên cứu và thực hiện của luận án - tóm tắt luận án bảo mật bitstream FPGA
Hình 5.1 Mô hình nghiên cứu và thực hiện của luận án (Trang 25)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w