Báo cáo an toàn thông tin và lập trình

15 240 4
Báo cáo an toàn thông tin và lập trình

Đ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

sdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFsdassssssssssssssssssfafAFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF

ĐẠI HỌC THÁI NGUYÊN ĐẠI HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG -  - BÁO CÁO BÀI TẬP LỚN MÔN HỌC AN TỒN VÀ BẢO MẬT THƠN TIN ĐỀ TÀI HỆ MÃ HÓA GOST Giáo viên hướng dẫn: Th.s Trịnh Minh Đức Nhóm 6: STT Thành viên Phùng Văn Hạnh Nguyễn Văn Hoàn Triệu Quý Thọ Phùng Ngọc Thịnh CHƯƠNG I: GIỚI THIỆU VỀ GOST 1.1 Giới thiệu Theo tiêu chuẩn GOST R 34.12-2015, thuật tốn mã hóa khối GOST 28147-89 đặt tên chuẩn mã khối Magma Đây thuật toán phát triển vào năm 1970 phân loại “tối mật”, sau hạ xuống “mật” vào năm 1990 Đến năm 1994, thuật toán công bố công khai Magma thuật tốn mã hóa khối đối xứng theo kiến trúc mạng Feistel đơn giản, xử lý với khối rõ/ mã có kích cỡ 64 bit khóa có kích cỡ 256 bit Với chi phí cài đặt thấp, Magma cài đặt sử dụng phổ biến Nó sử dụng thành phần cấu trúc đơn giản hộp S với kích cỡ đầu vào/ bit, phép cộng module 2^32, phép dịch vòng trái lược đồ khóa đơn giản Khối liệu chia thành nửa khối biến đổi qua 32 vòng mã hóa ( hàm vòng) Trong vòng, vế phải thơng điệp rõ xử lý qua hàm F(hàm vòng) Dữ liệu biến đổi phép tính mật mã: cộng trừ theo module 2^32 liệu với khóa con, thay liệu hộp S dịch vòng sang trái 11 vị trí Đầu hàm F cộng modulo ( cộng XOR) với nửa bên trái rõ, sau đổi chỗ bên trái phải vòng Ở vòng cuối cùng, thuật tốn khơng đổi chỗ hai nửa bên trái bên phải Hình 1: Sơ đồ mã hóa tổng thể thuật tốn mã hóa Magma Khóa bí mật gồm 256 bit biểu diễn dãy từ (word) 32 bit: k 1, k2, k3, k4, k5, k6, k7 k8 Trong vòng mã hóa, word 32 bit sử dụng khóa Ngun tắc tính khóa vòng sau: từ vòng tới vòng 24 thứ tự thẳng, nghĩa sử dụng cách lặp lại (k 1, k2, k3,k4, k5, k6, k7, k8, k1, k2, k3, k4, k5, k6, k7, k8, k1, k2, k3, k4, k5, k6, k7, k8), từ vòng 25 tới vòng 32 thứ tự đảo ngược (k 8, k7, k6, k5, k4, k3, k2, k1) Các S-box chấp nhận đầu vào bốn bit tạo đầu bốn bit Sự thay hộp S chức tròn bao gồm tám hộp × S Các hộp S phụ thuộc vào việc triển khai thực - bên muốn bảo mật thông tin liên lạc họ GOST phải sử dụng hộp S Để bảo mật hơn, hộp S giữ bí mật Trong tiêu chuẩn ban đầu mà GOST định, khơng có S-box đưa ra, chúng cung cấp cách Điều dẫn đến suy đốn tổ chức mà phủ muốn theo dõi đưa hộp S yếu Một nhà sản xuất chip GOST báo cáo ông tự tạo hộp S cách sử dụng tạo số giả ngẫu nhiên Ví dụ: Ngân hàng Trung ương Liên bang Nga sử dụng hộp S sau: # S-Box 10 13 14 11 12 15 14 11 12 13 15 10 13 10 14 15 12 11 13 10 15 14 12 11 5 12 15 13 10 14 11 11 10 13 12 15 14 13 11 15 10 14 12 số 15 13 10 14 11 12 Tuy nhiên, phiên tiêu chuẩn, GOST R 34.12-2015 , bổ sung thêm thơng số kỹ thuật S-Box thiếu định nghĩa sau # GOST R 34.12-2015 S-Box C462A5B9E 8D703F1 A C E BD F B FADE C C D F 0A5 E9 B F A D EB C DF CAB E E CF B DA số ED FA CB 1.2- Các định nghĩa liên quan 1.2.1-Kiến trúc mạng Feistel Trong mật mã , Feistel cấu trúc đối xứng sử dụng việc xây dựng thuật tốn mã hóa khối , đặt theo tên nhà vật lý – nhà mật mã người Đức Horst Feistel người nghiên cứu tiên phong làm việc cho IBM (Mỹ); thường gọi mạng Feistel Một tỷ lệ lớn mật mã khối sử dụng lược đồ, bao gồm Tiêu chuẩn mã hóa liệu (DES) Cấu trúc Feistel có lợi hoạt động mã hóa giải mã giống nhau, chí giống hệt số trường hợp, yêu cầu đảo ngược thứ tự khóa Do đó, kích thước mã mạch cần thiết để thực mật mã gần nửa Một mạng Feistel thuật tốn mã hóa lặp với hàm bên gọi hàm tròn Nhiều mật mã khối đối xứng đại có số thuật tốn khối đối xứng cũ dựa mạng Feistel (ví dụ: mật mã khối GOST 28147-89 ), cấu trúc tính chất mật mã Feistel nhà mật mã khám phá rộng rãi **Chi tiết xây dựng mạng feistel: Để cho F hàm lặp; K0,K1,…Kn khóa phụ cho vòng 0,1,…n tương ứng Sau đó, thao tác sau: Tách rõ thành hai phần nhau, (Lo, Ro) Với vòng i=0,1 n, tính tốn Li+1=Ri Ri+1= Li XOR F(Ri,Ki) Sau đó, mã (Rn+1,Ln+1) Giải mã mã (Rn+1,Ln+1) thực cách tính i=n, n-1, …., Ri= Li+1 Li=Ri+1 XOR F(Li+1,Ki) Sau (L0,R0) lại rõ Hình 2: Sơ đồ minh họa mã hóa giải mã Lưu ý việc đảo ngược thứ tự khóa để giải mã; khác biệt mã hóa giải mã 1.2.2.Phép cộng modulo Phép toán modulo phép toán tìm số dư phép chia số (đơi gọi modulus) Cho hai số dương, (số bị chia) a (số chia) n, a modulo n (viết tắt a mod n) số dư phép chia có dư Euclid a cho n Ví dụ, biểu thức "5 mod 2" chia cho có thương số dư 1, "9 mod 3" chia có thương số số dư 0; Công thức cộng modulo: Nếu a=b(mod n) x=y(mod n) a+x=b+y(mod n) Cái giống phép cộng thường làm, tức a=b x=y a+x=b+y Ở đây, ta việc bỏ thêm modulo n vào mà thơi Ví dụ, từ 13=1(mod4) 2=6(mod4) có 15=7(mod4) 1.2.3.Phép dịch vòng trái Trong dịch chuyển số học, bit dịch chuyển khỏi đầu đuôi bị loại bỏ Trong phép dịch chuyển số học bên trái, số dịch chuyển vào bên phải; phép dịch chuyển số học bên phải, bit thể dấu thêm vào bên trái, dấu số giữ nguyên Ví dụ sử dụng ghi 8-bit: 00010111 (số thập phân +23) Dịch chuyển trái = 00101110 (số thập phân +46) Hình 3: Dịch chuyển số học trái Những số tận bên trái dịch chuyển khỏi ghi, số thêm vào cuối bên phải ghi Dịch chuyển số học bên trái n lần tương đương nhân với 2n (nếu giá trị khơng gây tràn nhớ) 1.2.4- Phép thao tác bit XOR Phép toán thao tác bit XOR lấy hai dãy bit có độ dài thực phép toán logic bao hàm XOR cặp bit tương ứng Kết vị trí bit bit thứ hai 1, hai hai Ở ta thực phép so sánh hai bit, kết hai bit khác hai bit giống Ví dụ: 0101 (số thập phân 5) XOR 0011 (số thập phân 3) 0110 (số thập phân 6) (cách nhớ dễ là: bit giống trả 0, bit khác trả 1) Bảng chân trị cho XOR: A B A XOR B 0 0 1 1 1 CHƯƠNG 2: VÍ DỤ THUẬT TỐN GOST Thuật tốn GOST +Quy trình thuật tốn thực 32 vòng lặp +Sử dụng thuật tốn mã hóa khối 64- bit với khóa 256 bit +Sử dụng S-box khác toán tử XOR Circular Shift Left Cấu trúc GOST: +Bộ lưu trữ khóa ( KSU) lưu trữ chuỗi 256bit ghi 32 bit ( K0,K1,…,K7) +Hai số 32 bit đăng ký (R1, R2) +Bộ cộng 32 bit modulo 232 (CM1) +Toán tử thao tác bit XOR +Khối thay (S) , 64 bit S-Box +Thanh ghi dịch chuyển xoay trái (R), 11 bit 2.1-CẤU TRÚC CỦA KHĨA Q trình cấu trúc khóa kỹ thuật soạn mật để mã hóa rõ Quá trình xem sau Khóa đầu vào, khóa 256 bit (k1, k2, k3, k4,…, k256) Tạo tám KSU K0 = (k32, …, k1) K1 = (k64, …, k33) K2 = (k96, …, k65) K3 = (k128, …, k97) K4 = (k160, …, k129) K5 = (k192, …, k161) K6 = (k224, …, k193) K7 = (k256, …, k225) A Sinh khóa Q trình hình thành khóa yêu cầu đầu vào liệu với độ dài khóa 256 bit 64 chữ số thập lục phân 32 ký tự Quá trình nhìn thấy ví dụ sau: Giả sử khóa: "Nguyen Van Hoan GOST Cipher 2018", sau q trình hình thành khóa khóa bảng sau ST T Coordinat e N g u y e n X Y 78 10 117 12 10 110 32 01001110 01100111 01110101 01111001 01100101 01101110 0010000 10 11 V a n 86 97 110 32 12 H 72 13 14 15 16 o A N 111 97 110 32 17 18 19 20 G O S T 71 79 83 84 21 32 22 23 C I 24 25 P H 26 E 27 28 R 29 30 31 32 67 10 112 10 10 114 32 50 48 49 56 01010110 01100001 01101110 0010000 0100100 01101111 01100001 01101110 0010000 01000111 01001111 01010011 0101010 0010000 01000011 01101001 01110000 01101000 01100101 01110010 0010000 00110010 00110000 00110001 00111000 Trong Bảng 1, có 32 mẩu ký tự chuyển đổi thành chữ số nhị phân Nó sử dụng chìa khóa để xử lý mã hóa thuật tốn GOST Việc chuyển đổi sang khóa nhị phân 256-bit sau: 0100111001100111011101010111100101100101011011100010000001010110011000010 1101110001000000100100001101111011000010110111000100000010001110100111101 0100110101010000100000010000110110100101110000011010000110010101110010001 0000000110010001100000011000100111000 Khóa chia thành tám phần K[0]: 01001110011001110111010101111001 K[1]: 01100101011011100010000001010110 K[2]: 01100001011011100010000001001000 K[3]: 01101111011000010110111000100000 K[4]: 01000111010011110101001101010100 K[5]: 00100000010000110110100101110000 K[6]: 01101000011001010111001000100000 K[7]: 00110010001100000011000100111000 B Qúa trình mã hóa Quy trình mã hóa GOST phương thức xử lý liệu văn túy đầu vào 64 bit 16 chữ số thập lục phân ký tự đến 32 giai đoạn lặp (vòng) Giả sử chọn khóa hình chữ "ATVABMTT", sau q trình mã hóa sau: MÃ HĨA, VỊNG Bản rõ : ATVABMTT Chuyển sang nhị phân: 01000001010101000101011001000001 01000010010011010101010001010100 L(0)= 00101010001010101011001001000010 R(0) = 10000010011010100010101010000010 R(0) + K(0) mod 232 R(0)= 2187995778 K(0)= 1315403129 R= 3503398907 mod 2^32 = 3503398907 = 11010000110100011001111111111011 Chia thành phần đưa vào SBox 1101=13 = S-Box(0)=15= 1111 0000=0 = S-Box(1)=14 =1110 1101=13 = S-Box(2)=0 =0000 0001=1 = S-Box(3)=13 =1101 1001=9 = S-Box(4)=10 =1010 1111=15 = S-Box(5)=14 =1110 1111=15 = S-Box(6)=12 =1100 1011=11 = S-Box(7)=14 =1110 Nối Xoay Trái Shift 11 lần 11111110000011011010111011001110  RLS(11) = 00110110101110110011101111111000 R(1) = R(0) XOR L(0) R(0)=00110110101110110011101111111000 L(0)= 00101010001010101011001001000010 XOR R(1)= 00011100100100011000100110111010 L(1) = R(0) trước xử lý L(1) = 10000010011010100010101010000010 MÃ HĨA, VỊNG 1 L(1) = 10000010011010100010101010000010 R(1) = 00011100100100011000100110111010 R(1) + K(1) mod 232 R(1) = 479300026 K(1) =1701716054 R= 2181016080 mod 2^32 = 2181016080=1000.0001.1111.1111.1010.1010.0001.0000 Chia thành phần đưa vào S-Box 1000=8 = S-Box(0)=6= 0110 0001=1 = S-Box(1) = 11= 1011 1111= 15 = S-Box(2) =11= 1011 1111=15 = S-Box(3)= = 0011 1010 = 10 = S-Box(4) = = 1001 1010=10=S-Box(5)= = 1000 0001 = = S-Box(6) = 11= 1101 0000=0=S-Box(7) =1= 0001 Nối Xoay Trái Shift 11 lần 01101011101100111001100011010001  RLS(11) = 10011100110001101000101101011101 R(2) = R(1) XOR L(1) R(1)= 10011100110001101000101101011101 L(1)= 10000010011010100010101010000010 XOR R(2)=00011110101011001010000111011111 L(2) = R(1) trước xử lý L(2) = 00011100100100011000100110111010 Quá trình tiếp tục Vòng 31 CHƯƠNG III Độ an tồn ứng dụng GOST 3.1- Độ an toàn GOST Từ công bố công khai năm 1994, Magma cộng đồng mật mã giới quan tâm, phân tích đánh giá Vào năm 2010, GOST đệ trình lên ISO 18033,trở thành tiêu chuẩn mã hóa cơng nghiệp tồn giới Cho đến năm 2011 nhà nghiên cứu trí GOST an tồn, tóm tắt vào năm 2010 từ này: “mặc dù nỗ lực mã hóa đáng kể chi tiêu 20 năm qua, GOST chưa bị phá vỡ ” Không may, gần phát GOST bị phá vỡ mật mã thiếu sót sâu sắc Việc giải mã GOST cho thấy khơng an tồn ý nghĩa lý thuyết Trong thực tế,độ phức tạp liệu nhớ công công bố tốt đạt đến mức độ thực tế, độ phức tạp thời gian công tốt 192 có sẵn 64 liệu Từ năm 2007, số công phát triển chống lại việc triển khai GOST với việc giảm số lượng khóa vòng and / or , thêm thuộc tính đặc biệt Vào năm 2011, số tác giả phát nhiều lỗ hổng quan trọng thuật tốn GOST, có khả cơng GOST 32 vòng đầy đủ với phím tùy ý lần Nó chí gọi "mật mã thiếu sót sâu sắc" Nicolas Courtois Các cơng giảm thời gian phức tạp từ 256 xuống 228 với chi phí yêu cầu nhớ khổng lồ, sau chúng cải thiện tới 178 độ phức tạp (với chi phí 70 nhớ 64 liệu) Trong tháng 12 năm 2012, Courtois, Gawinecki, Song cải thiện công GOST cách tính có 101 vòng GOST Isobe cơng bố đòn cơng mật mã GOST đầy đủ, mà Dinur, Dunkelman Shamir cải thiện, đạt độ phức tạp 2222 lần cho 32 liệu nhớ 236 , độ phức tạp 192 cho 64 liệu Kể từ công làm giảm sức mạnh dự kiến từ 256 (chiều dài khóa) đến 178 vậy, mật mã coi bị phá vỡ Tuy nhiên, mật mã khối có kích thước khối n bit, số lượng tối đa rõ mã hóa trước nhập lại phải diễn n / khối, birthday paradox , khơng có cơng nói yêu cầu 32 liệu Một số kết thám mã vi sai Cho tới nay, có số kết bật việc áp dụng thám mã vi sai lên thuật toán GOST 28147-89 sau: Kết Seki Kaneko [4]: Nhóm tác giả khả công GOST 28147-89 với số vòng rút gọn sử dụng tập đặc trưng vi sai Trong trường hợp sử dụng S-hộp xác định cho Ngân hàng Trung ương Liên bang Nga, trung bình cần 251 rõ lựa chọn nhận khóa 13 vòng GOST 28147-89 Trường hợp mà khóa tạo xác suất đặc trưng vi sai cao nhất, GOST 28147-89 17 vòng bị cơng Với 256 rõ lựa chọn, ta khơi phục khóa GOST 28147-89 21 vòng Các tác giả cơng áp dụng với S-hộp sinh ngẫu nhiên Trung bình 12 vòng GOST bị cơng với tập đặc trưng vi sai 19 vòng GOST bị cơng kết hợp với cơng khóa quan hệ Kết Babenko cộng [1]: Babenko cộng thực phân tích tìm kiếm đặc trưng vi sai có xác suất cao cho mã pháp GOST 28147-89 Nhóm tác giả đưa chiến lược tìm kiếm cách hạn chế khơng gian tìm kiếm Một khẳng định quan trọng đóng vai trò sở cho cơng sai khác qua phép cộng modulo 232 không thay đổi với xác suất ½ Tấn cơng vi sai cải tiến Courtois Misztal [2]: Nhóm Courtois cộng nghiên cứu đưa khái niệm rộng vi sai gộp (Aggregated Differential) tập đặc trưng vi sai mà có sai khác đầu vào a sai khác đầu b Xác suất gắn với xác suất cao đặc trưng tập (thỏa mãn theo mẫu sai khác đầu vào sai khác đầu cụ thể) Khi đó, việc tìm kiếm đặc trưng vi sai hạn chế với việc tìm xác suất lớn cho vi sai gộp Courtois hạn chế với vi sai gộp dạng (∆, ∆) tập sai khác lên 64 bit có từ - 14 bit tích cực theo mẫu mặt che Có tổng số 214 - sai khác tập Các đặc trưng vi sai mà Courtois Misztal tìm có xác suất cao so với kết trước Thêm vào đó, tác giả đề xuất sử dụng cơng vi sai bội (nghĩa sử dụng nhiều vi sai mà có mẫu sai khác vi sai gộp) lên GOST 28147-89 Như vậy, khả công hiệu Tuy nhiên, cơng chưa cộng đồng giới đánh giá cao tính xác thực tế Bởi với tập vi sai cụ thể (ví dụ: 0x70707070, 0x07070707) theo đánh giá lý thuyết có giá trị xác suất 2-160 qua 32 vòng mã, theo đánh giá Courtois giá trị 2-40 Dẫn tới, có nhiều dự tuyển nhầm (false positives) Trong thực tế, công xử lý với trường hợp Một số kết mã thám vi sai khóa có quan hệ Các khóa cơng có quan hệ mơ hình cơng khơng thực tế , vi chúng đòi hỏi nắm quan hệ cặp khóa sử dụng Tuy nhiên, theo giả thiết Tấn công Isobe [10] Isobe người đưa phương pháp thám mã lên GOST mà khơng sử dụng lớp khóa yếu (chỉ dùng khóa mã) Tấn cơng gặp sở lên vòng GOST: Giả sử ta có hai cặp đầu vào/ra vòng GOST ( I , O) ( I *, O*) Tấn cơng MITM sở lên vòng GOST sử dụng hai cặp sau: Bước 1: Với giá trị khóa k1 − k4 (có tất 2128 giá trị) tính: U = FK [1, 4]( I ) U * = FK [1, 4]( I *) Lưu U U* vào danh sách, xếp chúng tương ứng với 128 bit khóa k1 − k4 sử dụng Gọi phần tử danh sách (U , U*)k –k Số phần tử danh sách 128 phần tử Bước 2: Với giá trị k5 − k8 , tính V  FK −1[5,8](O) V *  FK −1[5,8](O*) Ở đây, phép Fk −1[5,8](O) phép giải mã O, Fk −1[5,8](O*) phép giải mã O* Lưu V V* vào danh sách, xếp chúng tương ứng với 128 bit khóa k5 − k8 sử dụng Gọi phần tử danh sách (V, V *)k5 −k8 Số phần phần tử danh sách 2128 tử Bước 3: So sánh (so khớp) giá trị (U , U*)k1 −k4 thu bước (V, V *)k5 −k8 thu bước Nếu (U , U*)k1 − k4 = (V, V *)k5 − k8 thu đề xuất cho khóa đầy đủ 256 bit k1 – k8 ứng với hai giá trị Khơi phục lại khóa xác cách sử dụng thêm số cặp rõ/mã 32 vòng biết Độ phức tạp thời gian: Tổng độ phức tạp thời gian công cỡ O(2128) Độ phức tạp nhớ: độ phức tạp nhớ công khoảng 2128 từ (word) 256 bit, dùng để lưu 2128 giá trị (U , U*)k1 −k4 bước 1, 2128 giá trị (V, V *)k −k bước Tấn công phản xạ - gặp (R-MITM): Dựa ý tưởng công phản xạ Kara, Isobe đưa công kết hợp phản xạ gặp (tấn công R-MITM) Ở đây, ta giả sử áp dụng công phản xạ để đoán mã trung gian vòng, ta áp dụng cơng gặp với vòng phía trước phía sau Giả sử ta có cặp đầu vào đầu vòng, với lần đốn giá trị khóa k – k2, ta tính giá trị trung gian sau vòng thứ tìm khóa k – k4 mà thỏa mãn cặp đầu vào/ra Trong [11], Dinur gọi khóa khóa tương đương Có tất 264 giá trị khóa k1 – k2 mà tạo cặp đầu vào/ra vòng 3.2- Ứng dụng GOST Được triển khai sử dụng rộng rãi trong: -Crypto++ -Mở SSL -RSA Labs, -Ngân hàng trung ương LB Nga -Các ngân hàng lớn khác Nga CHƯƠNG 4: CÀI ĐẶT 4.1- Môi trường cài đặt +Sử dụng Open Source +Phần mềm cài đặt: NetBeans +Ngôn ngữ: Java ... trình tiếp tục Vòng 31 CHƯƠNG III Độ an tồn ứng dụng GOST 3.1- Độ an toàn GOST Từ công bố công khai năm 1994, Magma cộng đồng mật mã giới quan tâm, phân tích đánh giá Vào năm 2010, GOST đệ trình. .. Quá trình hình thành khóa u cầu đầu vào liệu với độ dài khóa 256 bit 64 chữ số thập lục phân 32 ký tự Quá trình nhìn thấy ví dụ sau: Giả sử khóa: "Nguyen Van Hoan GOST Cipher 2018", sau q trình. .. Các S-box chấp nhận đầu vào bốn bit tạo đầu bốn bit Sự thay hộp S chức tròn bao gồm tám hộp × S Các hộp S phụ thuộc vào việc triển khai thực - bên muốn bảo mật thông tin liên lạc họ GOST phải

Ngày đăng: 07/11/2018, 21:30

Từ khóa liên quan

Tài liệu cùng người dùng

Tài liệu liên quan