papillon_1411

New Member

Download miễn phí Đề tài Tìm hiểu khả năng công nghệ để cứng hoá các thuật toán mật mã





Mục lục
Mở đầu 1
Phần 1. So sánh thực hiện mật mã bằng phần cứng và phần mềm 3
1.1 Các platform Hardware, Software và Firmware 3
1.2 Chọn platform nào đối với thiết kế nói chung 4
1.3 Chọn platform nào đối với thiết kế mật mã 5
1.4 So sánh về độ an toàn 7
1.4.1 Sử dụng chung không gian nhớ RAM 8
1.4.2 Bảo đảm toàn vẹn 9
1.4.3 Thám ngược thiết kế 9
1.4.4 Tấn công phân tích năng lượng 9
1.4.5 Vấn đề lưu trữ khóa dài hạn 10
1.4.6 Phụ thuộc vào độ an toàn của hệ điều hành 11
Phần 2. Lựa chọn công nghệ cho cứng hóa mật mã 13
2.1 Phân tích các công nghệ hiện nay 13
2.1.1 Công nghệ ASIC 16
2.1.2 Công nghệ ASSP 17
2.1.3 Công nghệ Configurable Processor 17
2.1.4 Công nghệ DSP 18
2.1.5 Công nghệ FPGA 19
2.1.6 Công nghệ MCU 20
2.1.7 Công nghệ RISC/GP 21
2.1.8 Sử dụng DSP trong mật mã 23
2.2 Công nghệ FPGA 24
2.2.1 Cấu trúc FPGA 26
2.2.2 Khả năng cấu hình lại của FPGA 26
2.2.3 Những ưu điểm của FPGA đối với mật mã 27
2.3 Thực hiện mật mã bằng FPGA 29
2.3.1 Thực hiện mật mã đối xứng bằng FPGA 29
2.3.2 Thực hiện mật mã không đối xứng bằng FPGA 29
2.3.3 Thực hiện AES bằng FPGA 35
2.3.3.1 Yêu cầu chip FPGA để thực hiện AES 35
2.3.3.2 Cấu trúc hardware FPGA để thực hiện AES 36
2.3.3.3 Một số đánh giá AES khi thiết kế trên FPGA 39
2.3.4 Thực hiện mật mã trên đường Elliptic bằng FPGA 43
2.3.5 Thực hiện hàm hash bằng FPGA 44
2.3.6 Thực hiện sinh số ngẫu nhiên bằng FPGA 45
2.4 An toàn mật mã dựa trên hardware 46
2.4.1 Tấn công lên hardware nói chung 46
2.4.2 Tấn công lên FPGA 49
2.4.2.1 Tấn công kiểu Hộp đen 49
2.4.2.2 Tấn công kiểu Đọc lại 49
2.4.2.3 Tấn công nhái lại SRAM FPGA 50
2.4.2.4 Thám ngược thiết kế từ chuỗi bit 50
2.4.2.5 Tấn công vật lý 51
2.4.2.6 Tấn công Side channel 53
Phần 3. Chuẩn bị để cứng hóa mật mã 57
3.1 Các kiến thức cần thiết để thực hiện FPGA 57
3.1.1 Kiến thức về toán 57
3.1.2 Kiến thức về kỹ thuật 57
3.1.3 Kiến thức về công nghệ 58
3.1.4 Kiến thức về công nghệ và thị trường vi mạch 58
3.2 Công cụ cần thiết để thực hiện FPGA 59
3.2.1 Công cụ thiết kế 59
3.2.2 Thiết bị 60
3.2.3 Nhân lực 60
3.3 Các hãng sản xuất FPGA 60
3.4 Tương lai của FPGA 61
Kết luận 63
Tài liệu tham khảo 64



Để tải bản Đầy Đủ của tài liệu, xin Trả lời bài viết này, Mods sẽ gửi Link download cho bạn sớm nhất qua hòm tin nhắn.
Ai cần download tài liệu gì mà không tìm thấy ở đây, thì đăng yêu cầu down tại đây nhé:
Nhận download tài liệu miễn phí

Tóm tắt nội dung tài liệu:

ày chúng
tui muốn đề cập đến các công nghệ tự nó đã mang những thuộc tính thích
hợp nhất cho mật mã mà không phải các thiết kế đặc biệt hỗ trợ thêm.
Nh− Phần 2.1 đã cho thấy, mặc dù DSP, RISC/GPP, MCU và các
Bộ xử lý có thể cấu hình rất mạnh về xử lý tín hiệu thời gian thực, nh−ng
dùng để thiết kế crypto module thì không thích hợp ở khía cạnh an toàn
mật mã. Còn ASIC, ASSP và FPGA tự nó đã mang những thuộc tính thích
hợp cho an toàn mật mã (nh− cấu trúc chip đ−ợc đốt vật lý, bảo đảm toàn
vẹn, chống tấn công thám thiết kế, không phụ thuộc vào hệ điều hành
nào...). Bởi vậy chúng ta sẽ giới hạn xem xét ở 3 công nghệ này. Có các
24
ngữ cảnh cụ thể nh− sau:
• Đối với những sản phẩm đang trong quá trình nghiên cứu phát
triển: tiêu chí Dễ phát triển góp phần đáng kể rút ngắn thời gian
nghiên cứu phát triển cũng nh− hạ giá thành tổng thể cho các sản
phẩm loạt nhỏ và vừa → FPGA là thích hợp.
• Đối với những sản phẩm cần khả năng cấu hình lại (nh− thay thế
thuật toán) thì Tính mềm dẻo cần chú trọng → FPGA là thích hợp.
• Đối với những sản phẩm cần tiêu thụ năng l−ợng thấp (nh− trong
các thiết bị mang xách) và không đòi hỏi tính mềm dẻo → ASSP là
thích hợp.
• Đối với những sản phẩm đã xong về thiết kế, không đòi hỏi tính
mềm dẻo và sản xuất loạt lớn → ASIC là thích hợp.
Đối với ngành mật mã thì Tính mềm dẻo cũng là một tiêu chí phải
xếp lên hàng đầu bởi thuật toán sinh khóa/mã hóa có thể thay đổi theo
từng phiên liên lạc hay khi chuyển mạng. Bởi vậy công nghệ thích hợp
nhất để cứng hóa mật mã để lựa chọn chính là FPGA với những −u
điểm chính là:
• Tốc độ cao vì nó thực sự là hardware
• An toàn mật mã cao
• Mềm dẻo
• Dễ phát triển
2.2.1 Cấu trúc FPGA
FPGA gồm dãy các phần tử mạch độc lập gọi là các khối logic, và
25
các đ−ờng nối các khối đó với nhau [3], [7]. Các khối logic và các đ−ờng
nối giữa chúng đ−ợc gọi là tài nguyên. Mỗi khối logic chứa Boolean logic
và các thanh ghi. Có thể lập trình cho mỗi khối logic để đ−ợc các chức
năng khác nhau. Các đ−ờng nối giữa các khối cũng đ−ợc lập trình. Thiết
lập cấu hình cho FPGA, hiểu một cách đại thể, là lập trình nối các khối
logic theo cách nào đó để đ−ợc một cấu trúc mạch thực hiện thuật toán đã
cho. Công việc này do ng−ời dùng cuối làm bằng cách lập trình. Hình 2
minh họa cấu trúc của một FPGA điển hình.
Hình 2. Cấu trúc FPGA
2.2.2 khả năng cấu hình lại của FPGA
FPGA thuộc về các chip có thể lập trình theo yêu cầu [7]. Chúng
gồm ba loại chính: đơn giản (SPLD), phức tạp (CPLD) và chuỗi các cổng
có thể lập trình theo nhu cầu Field-Programmable Gate Arrays (FPGAs),
trong đó FPGA là loại mạnh nhất, nhiều tài nguyên, có thể thực hiện các
bài toán phức tạp trong mật mã và có Khả năng cấu hình lại. Một chip
FPGA có thể đóng các vai trò khác nhau tùy theo file cấu hình nào đ−ợc
nạp vào cho nó [11]. Hình 3 minh họa khả năng cấu hình lại của FPGA.
26
Hình 3. Minh họa khả năng cấu hình lại của FPGA
2.2.3 Những −u điểm của FPGA đối với mật mã
Những đặc tính của FPGA cùng khả năng cấu hình lại làm PPGA
trở nên thuận lợi lớn khi thực hiện các thuật toán mật mã [3], [19]. Đó là:
1. Dễ dàng chuyển thuật toán: Các giao thức mật mã hiện đại là các
thuật toán độc lập, rất đa dạng, thay đổi theo mỗi phiên (chẳng
hạn nh− DES, 3DES, Blowfish, CAST, IDEA, RC4, RC6, AES...).
Với khả năng cấu hình lại, FPGA cho phép các thuật toán, sau khi
đã cứng hóa, vẫn có khả năng thay đổi ngay trong khi đang chạy
mà không làm tăng giá thành.
2. Dễ dàng upgrade thuật toán: upgrade thuật toán cần thiết trong
các tr−ờng hợp sau: khi thuật toán hiện tại đã bị phá (ví dụ DES);
khi thuật toán đã quá hạn (ví dụ DES); khi ra đời thuật toán mới
(ví dụ AES); khi danh sách các giao thức độc lập về thuật toán
đ−ợc mở rộng; khi đối tác liên lạc xa nh− thông tin vệ tinh.
3. Mang lại hiệu quả về cấu trúc: trong tr−ờng hợp nhất định, một
cấu trúc hardware có thể hiệu quả hơn nhiều nếu nó đ−ợc thiết kế
với một bộ các thông số xác định. Chẳng hạn phép nhân hằng (của
27
các số nguyên trong tr−ờng Galois) hiệu quả hơn các phép nhân
thông th−ờng nhiều. Với FPGA có thể thiết kế để tối −u cấu trúc
cho bộ tham số xác định của từng thuật toán khác nhau
Ví dụ 1: Cấu trúc khóa xác định: với khóa cố định thì thao tác
chính trong IDEA suy biến thành các phép nhân hằng hiệu quả hơn
phép nhân th−ờng nhiều.
Ví dụ 2: Phép toán số học trên tr−ờng Galois cố định: Phép toán
số học trên tr−ờng Galois hiệu quả hơn nhiều nếu bậc của tr−ờng và
đa thức bất khả quy đ−ợc cố định. Việc này FPGA giải quyết tốt.
Ví dụ: Phép bình ph−ơng trong GF(2m) chiếm m/2 chu kỳ với cấu
trúc thông th−ờng. Nh−ng với cấu trúc một tr−ờng cố định thì chỉ
cần 1 chu kỳ.
4. Hiệu quả về tài nguyên: Có thể cấu hình lại FPGA để cùng một
chip nh−ng mỗi thời điểm thực hiện một thuật toán khác nhau. Ví
dụ trong một phiên liên lạc, khi thiết lập khóa chung FPGA có cấu
trúc để thực hiện thuật toán khóa công khai; khi thực hiện mã
dịch, FPGA có cấu trúc để thực hiện mã dịch sử dụng thuật toán
khóa riêng.
5. Khả năng modify thuật toán: với ngành mật mã chúng ta thì yêu
cầu modify thuật toán là bắt buộc, ví dụ thay các module S-box
hay các hoán vị chuẩn bằng các S-boxes hay hoán vị độc quyền;
một số ứng dụng khác lại cần thay đổi chế độ làm việc (chế độ hối
tiếp, chế độ đếm...); còn các máy tìm khóa trong mã thám cho
phép sử dụng phiên bản khác chút ít với thuật toán. Với FPGA, tất
cả những điều đó đều dễ dàng thực hiện.
Hai đặc điểm d−ới đây không chỉ với mật mã mà chung cho mọi
28
lĩnh vực khác:
6. Thông l−ợng: mặc dù so với ASIC thì FPGA chậm hơn, nh−ng
nhanh hơn rất nhiều so với software.
7. Hiệu quả về giá thành: thời gian và giá thành phát triển của FPGA
thấp hơn so với ASIC. (Tuy nhiên với số l−ợng lớn thì ASIC có giá
thành thấp hơn).
2.3 Thực hiện mật mã bằng FPGA
2.3.1 Thực hiện mật mã đối xứng bằng FPGA
Mật mã khóa đối xứng phụ thuộc vào khóa riêng. Phép mã hóa có
thể chỉ bằng phép XOR đơn giản. Trong tr−ờng hợp khóa trong thì khóa
riêng sẽ do thuật toán sinh ra. Nhiều thuật toán sinh khóa có cấu trúc gồm
các thanh ghi dịch phản hồi phối hợp với nhau theo hàm phi tuyến nào đó.
Hoạt động của các thanh ghi dịch, nếu bằng giải pháp software, th−ờng
chiếm khá nhiều chu kỳ lệnh do giới hạn số bit của từ xử lý của các CPU.
Với giải pháp hardware nói chung và FPGA nói riêng, có thể thiết kế
thanh ghi dịch có độ dài theo yêu cầu, chỉ với một chu kỳ đồng hồ là cho
ra một bít. [8] đã đ−a ra kết quả thực hiện một thuật toán mã dòng bằng
FPGA đạt tốc độ 4.6 Gbps.
2.3.2 Thực hiện mật mã không đối xứng bằng FPGA
Tâm điểm của mật mã không đối xứng là các phép toán số học mũ
hóa modular với số nguyên lớn, điển hình là thuật toán trao đổi khóa
Diffie-Hellman, mã/giải mã R...
 
Các chủ đề có liên quan khác
Tạo bởi Tiêu đề Blog Lượt trả lời Ngày
L Xác định thành phần của bã bùn từ hệ thống xử lý nước thải Công ty Giấy Bãi Bằng và tìm hiểu khả năn Luận văn Sư phạm 0
O Tìm hiểu khả năng tiếp cận giáo dục của học sinh cuối tiểu học ở khu vực miền núi phía Bắc Văn hóa, Xã hội 0
G Tìm hiểu khả năng nhận diện từ Hán - Việt của sinh viên ngữ văn cao đẳng Văn hóa, Xã hội 0
D Tìm hiểu trách nhiệm của doanh nghiệp bảo hiểm nhằm đảm bảo khả năng thanh toán số tiền bảo hiểm cho Luận văn Luật 0
D Nghiên cứu điều tra nguồn Ribonuclease từ nội tạng của động vật nhằm tìm hiểu khả năng khai thác để Tài liệu chưa phân loại 0
N Nghiên cứu sự hút thu Cu, Pb, Zn và tìm hiểu khả năng sử dụng phân bón để giảm thiểu sự tích lũy chú Tài liệu chưa phân loại 0
T MỘT SỐ DỰ ĐOÁN VỀ MẶT ĐỊNH TÍNH ĐỐI VỚI LƯU VỰC SÔNG VÀM CỎ ĐÔNG THÔNG QUA VIỆC TÌM HIỂU KHẢ NĂNG CH Khoa học kỹ thuật 0
T Đồ án Tìm hiểu về bộ điều khiển khả trình PLC, họ PLC S7-300 Tài liệu chưa phân loại 0
S Tìm hiểu khả năng ứng dụng WiMAX tại Việt Nam Tài liệu chưa phân loại 0
M Tìm hiểu về công nghệ ADSL cùng khả năng ứng dụng ADSL2+ Tài liệu chưa phân loại 0

Các chủ đề có liên quan khác

Top