Hiện nay họ thuật toán CRYPT D hiện đang được nghiên cứu và ứng dụng. Trong phạm vi của đồ án của mình thì em xin trình bày về thuật toán và các đặc trưng thống kê của nó... Các đặ
Trang 1BÁO CÁO TỐT NGHIỆP
Đề tài
Nghiên cứu và đánh giá các đặc trưng thống
kê thuật toán mã hóa CRYPT(D) 64
Giáo viên hướng dẫn:
Trang 2Nội dung chính
Trang 3 Hiện nay họ thuật toán CRYPT (D) hiện đang được nghiên cứu và ứng dụng.
Trong phạm vi của đồ án của mình thì em xin trình bày
về thuật toán và các đặc trưng thống kê của nó.
Trang 4 Thuật toán mới CRYPT(D)-64 được thiết kế cho việc
mã hoá các khối dữ liệu có độ dài 64-bit, sử dụng khoá mật 128-bit và 256-bit.
Thuật toán được xây dựng trên cơ sở kết hợp mạng
chuyển vị - thay thế điều khiển được CSPN (Controlled
Substitution-Permutation Network) với mạng chuyển vị
- thay thế cố định SPN (Substitution-Permutation
Network)
Để thuật toán có tốc độ thực hiện cao và tích hợp hiệu quả trên VLSI như ASIC/FPGA, việc xây dựng CSPN
sẽ được thực hiện trên phần tử điều khiển được - CE
(Controlled Element) có kích thước tối thiểu F2/1
Đặt vấn đề
Trang 5 Các đặc trưng thống kê là yếu tố quyết định tạo nên độ bền vững của thuật toán mật mã khối (block cipher), việc đánh giá các đặc trưng thống kê là một yêu cầu cần thiết khi thiết
kế một thuật toán mới
Thuật toán CRYPT(D)-64 được thiết kế cho mục đích cài đặt
trên thiết bị phần cứng như ASIC/FPGA, đáp ứng cho các yêu về thiết kế - chế tạo các thiết bị bảo mật thông tin trong nước, phục vụ trong lĩnh vực An ninh - Quốc phòng cũng như trong các lĩnh vực hoạt động Kinh tế - Xã hội khác
Kết quả đánh giá các đặc trưng thống kê của CRYPT(D)-64
là điều kiện cần bảo đảm cho thuật toán có thể sử dụng
được trong các ứng dụng thực tế.
Đặt vấn đề
Trang 6Cơ sở xây dựng thuật toán
Thuật toán CRYPT (D) được xây dựng trên cơ sở kết hợp hai mạng:
CSPN
Trang 7SPN
Cấu trúc của mạng chuyển vị thay thế cố định:
Trang 8SPN
Trang 9SPN – Hộp S
Trang 10SPN – Hộp S
Trang 12Cấu tạo chung của mạng thay thế điều khiển được
(Controlled element) hay còn gọi là các hộp điều chỉnh cơ sở
phần từ điều khiển được PN (Permutation Network)
Trang 13SPN - CE
Trang 14CSPN - CE
Trang 15CSPN - CE
Trang 16CSPN - Pn/m
1 2
) 2 ( 1 ) 1 ( )
(
s V
V V
m
P
Trang 17Thuật toán CRYPT(D)
Trang 18Khối toán tử F32/112 thuận
Trang 1906/16/24
Trang 21Các hoán vị cố định
I0= (1)(2,5)(3,17)(4,21)(6)(7,18)(8,22)(9)(10,13) (11,25)(12,29)(14)(15,26)(16,30)(19)(20,23) (24)(27)(28,31)(32)
I1 = (1)(2,9)(3,17)(4,25)(5)(6,13)(7,21)(8,29)(10)
(11,18)(12,26)(14)(15,22)(16,30)(19)(20,27) (23)(24,31)(28)(32)
I2 = (1)(2,5)(3,9)(4,13)(6)(7,10)(8,14)(11)(12,15)(16)
Trang 22Hộp mở rộng E
khối toán tử F64/192 và hôp F64/192 nghịc đảo được hình thành với sự trợ giúp của khối mở rộng E
Trang 23Thời gian biểu sử dụng khóa
Ki {0, 1} , i = 1, 2, , 4 được lựa chọn trực
256-bit, các khoá vòng Q j (khi mã hóa) và Qj
(khi giải mã)
Trang 24Thời gian biểu sử dụng khóa
Trang 25Cấu trúc chương trình
hiện như sau:
1 For j = 1 to 7 do: {(L, R) Crypt(L, R, Qj );
(L, R) (R, L)}.
Trang 26Các đặc trưng thống kê của CRYPT(D) 64
nên độ bền vững của thuật toán mật mã khối
CRYPT(D)-64 là điều kiện cần bảo đảm cho
thuật toán có thể sử dụng được trong các ứng dụng thực tế
Trang 27Theo NESSIE, các đặc trưng thống kê của thuật toán mật mã khối cần được đánh giá theo các tiêu chuẩn sau:
1 Số lượng trung bình các bit đầu ra thay đổi khi thay đổi một bit đầu vào
2 Mức độ biến đổi hoàn toàn
Trang 28Việc đánh giá các đặc trưng thống kê theo các tiêu chuẩn trên được thực hiện như sau:
Với mỗi vector nhị phân u =(u 1 , u 2 , …, u n ) , giả sử: u( i ) là vector nhị phân nhận được bằng cách đảo ngược bit thứ i của u (đối với i =
1, 2, …, n) Khi đó vector nhị phân được gọi là vector thác lũ theo thành phần i
Trọng số Hamming w(u) là số lượng các thành
Các đặc trưng thống kê của CRYPT(D) 64
Trang 29 Hàm biến đổi n-bit đầu vào thành
m-bit đầu ra được coi là có mức độ biến đổi
hoàn toàn tốt, nếu mỗi bit đầu ra đều phụ thuộc
mỗi bit đầu vào, tức là:
Các đặc trưng thống kê của CRYPT(D) 64
Trang 30 Hàm f: được coi là có hiệu ứng thác
lũ tốt, nếu trung bình có số bit đầu ra thay đổi
mỗi khi có một bit đầu vào thay đổi, tức là:
Trong đó i = 1, 2, …, n
Các đặc trưng thống kê của CRYPT(D) 64
2
)) ( )
(
( 2
1
)) 2 ( (
)
u f u
f
w
n
GF u
i
Trang 31 Hàm phù hợp theo tiêu chuẩn
thác lũ chặt chẽ, nếu mỗi bit đầu ra thay đổi
với xác suất bằng mỗi khi có một bit đầu vào thay đổi, tức là:
Các đặc trưng thống kê của CRYPT(D) 64
Trang 32 Ma trận phụ thuộc của hàm là
ma trận A bậc n m của các phần tử aij, nó thể hiện sự phụ thuộc của bit thứ j của vector đầu ra vào bit thứ i của vector đầu vào, nói cách khác nếu bit đầu vào thứ i thay đổi, kết quả sẽ làm thay đổi bit thứ j đầu ra, tức là:
Các đặc trưng thống kê của CRYPT(D) 64
Trang 34 Để đánh giá sự ảnh hưởng của khoá và dữ liệu đầu vào
tới sự biến đổi của dữ liệu ở đầu ra, ta xét: U = X || K (X - bản rõ, K – khoá)
Trong trường hợp xét ảnh hưởng của dữ liệu đầu vào tới sự biến đổi của dữ liệu đầu ra:
Còn trường hợp cần xét ảnh hưởng của khoá tới sự biến đổi của dữ liệu đầu ra:
Các đặc trưng thống kê của CRYPT(D) 64
Trang 351 Số lượng trung bình các bit đầu ra thay đổi khi thay đổi một bit đầu vào
2 Mức độ biến đổi hoàn toàn
Trong các công thức trên N = #U - là bậc
của tập U (số lượng phần tử trong tập U)
Các đặc trưng thống kê của CRYPT(D) 64
Trang 363 Mức độ của hiệu ứng thác lũ.
4 Mức độ phù hợp với tiêu chuẩn hiệu ứng thác lũ chặt chẽ
Hàm f được coi là có các đặc tính biến đổi
Các đặc trưng thống kê của CRYPT(D) 64
Trang 37trong mã hóa
Hướng phát triển
Trang 38Tài liệu tham khảo
[1] Lưu Hồng Dũng, Nguyễn Hiếu Minh / Nghiên cứu xây dựng thuật toán mật mã tốc độ cao // Tạp chí Khoa học và Kỹ thuật, số 116, III – 2006, Học viện KTQS.
[2] Nikolay A.Moldovyan, Alaxander A.Moldovyan
“DATA – DRIVEN BLOCK CIPHERS FOR FAST
TELECOMMUNICATION SYSTEMS” Auerbach Publiccation.
[3] “NESSIE New European Schemes for Signatures, Integrity, and Encryption”,
https://www.cosic.esat.kuleuven.ac.be/nessie/
Trang 3906/16/24