Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 27 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
27
Dung lượng
741,47 KB
Nội dung
BỘ THÔNG TIN VÀ TRUYỀN THÔNG HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THƠNG ******************************************** NGUYỄN TỒN THẮNG NGHIÊNCỨUXÂYDỰNGMỘTLỚPHÀMBĂMMỞRỘNGMỚIVÀKHẢNĂNGỨNGDỤNG Chuyên ngành : Kỹ thuật Điện tử Mã số : 62.52.02.03 TÓM TẮT LUẬN ÁN TIẾN SĨ KỸ THUẬT HÀ NỘI – 2017 Cơng trình hồn thành tại: HỌC VIỆN CƠNG NGHỆ BƯU CHÍNH VIỄN THÔNG Người hướng dẫn khoa học: GS.TSKH Nguyễn Xuân Quỳnh Phản biện 1: Phản biện 2: Phản biện 3: Luận án bảo vệ trước Hội đồng chấm luận án cấp Học viện họp tại: Vào hồi: ngày tháng năm Có thể tìm hiểu luận án tại: Thư viện Quốc gia Thư viện Học viện Cơng nghệ Bưu Viễn thông -1- MỞ ĐẦU Mở đầu Thông tin truyền mạng ngày chịu nhiều tác động, thám mã có mặt khắp nơi, ln rình rập để lấy cắp thông tin làm thay đổi thông tin cách có chủ đích Để bảo vệ tin, người ta cần tăng cường bảo vệ tính bí mật tính tồn vẹn liệu tin Bên cạnh nhiều thơng tin cần phải có tính xác thực Và với phát triển kỹ thuật mật mã hàmbăm đời Hàmbăm tạo mã băm sử dụng cho nhiều mục đích Các ứngdụng điển hình hàmbăm mật mã bao gồm: Xác thực, đảm bảo tính tồn vẹn liệu, tạo chữ ký số, Việc nghiêncứuxâydựnghàmbămmởrộng đưa ý tưởng khảứngdụng góp phần tăng tính bảo mật, tính xác thực, đảm bảo tính tồn vẹn, an tồn cho thơng tin liệu Tình hình nghiêncứu Trên giới nay, hàmbăm có nhiều loại, có loại đơn giản, có loại phức tạp, có hàmbăm đơn, có hàmbăm kép, có hàmbăm chuyên dụng, thương mại Một cách tổng quan, có sơ đồ hàmbăm phổ biến sau đây: * Hàmbăm có độ dài đơn: Sơ đồ M-M-O, sơ đồ D-M, sơ đồ M-P * Hàmbăm có độ dài kép: MDC-2, MDC-4 Các hàmbăm thông dụng giới hàmbăm họ MD họ SHS Họ MD có MD4, MD5, MD6, họ SHS có SHA-1, SHA-2, SHA-256, Ở nước ta nay, việc nghiêncứu hệ mật thực từ nhiều năm qua có số cơng trình nghiêncứu hệ mật có giá trị Tuy nhiên, việc sử dụng hệ mật cho lược đồ xâydựnghàmbăm vấn đề tương đối -2- Các cơng trình nghiêncứuhàmbăm chưa nhiều, số đồ án tốt nghiệp đại học, luận văn tốt nghiệp thạc sỹ có nghiên cứu, giới thiệu hàmbăm hầu hết tìm hiểu mang tính chất lý thuyết tổng quan Một số báo luận án tiến sĩ có đề cập đến hàmbăm chưa đề cập nhiều đến tính khuếch tán hàmbămmởrộng Lý chọn đề tài Hàmbăm có tính chất tính chất nén tính dễ dàng tính tốn, ngồi hàmbăm có tính chất khác bổ sung tính khó tìm nghịch ảnh, khó tìm nghịch ảnh thứ hai kháng va chạm Trong số tính chất hai tính chất dễ dàng tính tốn khó tìm nghịch ảnh gần với đặc điểm phép biến đổi mật mã, mật mã khối khố bí mật, việc dùng thuật tốn mật mã khối khố bí mật vào việc tạo hàmbăm hướng hiệu Việc phát triển theo hướng hàmbăm chuyên dụng họ MD, SHS thường tốn kém, cần tổ chức quốc tế với đội ngũ hùng hậu để thực thực nhiều năm Vì khó khăn tốn đó, NCS thấy hướng phát triển xâydựnghàmbămmởrộng dựa thuật toán mã hoá có sẵn phù hợp với khn khổ luận án tiến sỹ kỹ thuật Việt Nam Do u cầu tốn cơng ngày sinh nhật thường cần mã băm có độ dài 384-512 bit để chống lại thám mã nên việc tạo hàmbămmởrộng có độ dài bit lớn cần thiết Trong luận án này, NCS tập trung vào xâydựnghàmbămmởrộng mới, đồng thời đề xuất ý tưởng khảứngdụnghàmbăm Mục tiêu nghiêncứu - Xâydựng số hàmbăm (khảo sát trước xâydựnghàmbămmở rộng) -3- - Xâydựnglớphàmbămmởrộng (là lớphàmbăm có độ khuếch tán cao) với mục đích mởrộng chiều dài mã băm qua việc ghép móc xích để tạo phụ thuộc bít đầu với khối bít đầu vào (có kiểm chứng qua mơ phỏng) Đồng thời đề xuất khảứngdụnghàmbămmởrộngxâydựng Đối tượng nghiêncứu - Lý thuyết đại số (đa thức, kiểu phân hoạch vành đa thức, đa thức sinh, ma trận ,…) - Các thuật tốn mã hóa khóa bí mật, khóa công khai - Lý thuyết hàm băm, cấp số nhân cylic vành đa thức - Các ứngdụnghàmbăm Phương pháp nghiêncứu - Phương pháp giải tích - Phương pháp mơ - Phương pháp thực nghiệm Ý nghĩa khoa học thực tiễn đề tài Kết nghiêncứu luận án góp phần vào việc xâydựng phát triển hàm băm, đặc biệt hàmbămmởrộng Luận án đưa nhiều phương pháp xâydựnghàmbăm khác Hiện hàmbăm có nhiều loại chưa thực phong phú, cần xâydựng thêm hàmbăm để đáp ứngứngdụng đa dạng thực tế Bố cục luận án Luận án gồm: Phần mở đầu, chương nội dung, Phần kết luận, Phần phụ lục (trong có Chương trình phần mềm mô kết nghiên cứu) Chương I tập trung giới thiệu phương pháp xâydựng hệ -4- mật (khóa bí mật, khóa cơng khai), hàmbăm cấp số nhân cyclic Chương II trình bày số kết nghiêncứu sinh hàm băm, bao gồm: Hàmbăm dựa hệ mật theo sơ đồ Lai-Massey; Xâydựng hệ mật mã lai ghép sử dụng hệ mật Pohlig-Hellman kết hợp với sơ đồ Feistel đề xuất khả sử dụng hệ mật vào hàm băm; Xâydựnghàmbăm dựa sơ đồ MDC-2, với điểm dùng hệ mật sử dụng cấp số nhân cyclic vành xn + 1, với n = 2k, khóa dùng mật mã khối tạo từ cấp số nhân cyclic vành đa thức Chương III, sở kết khảo sát chương II, NCS đề xuất xâydựnglớphàmbămmởrộng mới: - Hămbăm MDC-3 với độ dài mã băm 384 bít (Dựa hệ mật mã khối với 128 bít vào 128 bít Sơ đồ hàmbăm gồm nhánh) - Hàmbăm MDC-4 với độ dài mã băm 512 bít (sơ đồ gồm nhánh, nhánh 128 bít) - Hàmbăm MDC-512 bít (sơ đồ gồm nhánh, nhánh 256 bít) Phần kết luận nêu đóng góp luận án hướng phát triển -5- CHƯƠNG TỔNG QUAN VỀ MẬT MÃ VÀHÀMBĂM 1.1 PHƯƠNG PHÁP XÂYDỰNG CÁC HỆ MẬT CƠ BẢN 1.1.1 Phương pháp xâydựng hệ mật khóa bí mật 1.1.1.1 Mã hoán vị 1.1.1.2 Mã thay Gồm mã dịch vòng mã thay 1.1.1.3 Các lưu đồ thông dụng Gồm lưu đồ Feistel lưu đồ Lai-Massey, lưu đồ sử dụng để xâydựnghàmbăm chương II chương III 1.1.1.4 Chuẩn mã liệu (DES) a) Mô tả DES DES thuật toán mã hoá xâu bit x rõ độ dài 64 bít khố 56 bit Bản mã nhận xâu bit có độ dài 64 bít b) Các chế độ hoạt động DES Có chế độ làm việc phát triển cho DES: Chế độ mã điện tử (ECB), chế độ phản hồi mã (CFB), chế độ liên kết khối mã (CBC) chế độ phản hồi đầu (OFB) 1.1.2 Phương pháp xâydựng hệ mật khóa cơng khai 1.1.2.1 Hệ mật RSA a) Tạo khóa Tóm lược: Mỗi đầu liên lạc cần tạo khố cơng khai khóa riêng tương ứng theo 05 bước b) Mã hố giải mã Tóm lược: B mã hố thơng báo m để gửi cho A mã c: c me mod n ; A giải mã cách tính: m cd mod n -6- 1.1.2.2 Hệ mật ELGAMAL 1.1.2.3 Hệ mật McEliece Hệ mật McEliece dựa toán giải mã cho mã tuyến tính (cũng tốn nhị phân đầy đủ) Bài toán nhị phân áp dụng toán giải mã cho mã sửa sai (nhị phân) tuyến tính nói chung Tuy nhiên, nhiều lớp mã đặc biệt tồn thuật toán giải mã với thời gian đa thức Mộtlớp mã mã Goppa, chúng dùng làm sở cho hệ mật McEliece 1.2 HÀMBĂM 1.2.1 Mô tả hàmbămHàmbămhàm có hai tính chất sau: Tính chất nén tính chất dễ dàng tính tốn Ngồi hai tính chất hàmbăm có số tính chất khác: Khó tìm nghịch ảnh; khó tìm nghịch ảnh thứ hai; kháng va chạm Ngồi ra, đặc tính quan trọng cần có hàmbăm tính khuếch tán Tính khuếch tán tối ưu đạt xấp xỉ nửa chiều dài mã băm 1.2.2 Phân loại hàmbămHàmbăm Có khóa Khơng có khóa MDC Các ứngdụng khác OWHF CRHF Các ứngdụng khác Hình 1.7 Phân loại hàmbăm MAC -7- 1.3 CẤP SỐ NHÂN CYCLIC 1.3.1 Nhóm nhân vành đa thức Nếu: g ( x); f ( x) G g ( x)* f ( x) d ( x) G Có tất 2n nhóm nhân cyclic cấp n nhóm nhân cyclic đơn vị I thuộc vào lớp nhóm nhân 1.3.2 Các cấp số nhân cyclic cấp n A(a,q) {a( x), a( x)q( x), a( x)q ( x), , a( x)q m1( x)} 1.3.3 Phân hoạch vành đa thức Phân hoạch vành đa thức thường chia thành loại: Phân hoạch chuẩn, phân hoạch cực đại, phân hoạch cực tiểu, KẾT LUẬN CHƯƠNG I Chương giới thiệu kiến thức có liên quan đến đề tài luận án, gồm phương pháp xâydựng hệ mật khóa bí mật, hệ mật khóa cơng khai: Mã hoán vị, mã thay thế, lưu đồ thuật toán Lai-Massey, Feistel, chuẩn mã liệu DES; Thuật toán RSA, thuật toán Elgama McEliece, Chương tập trung vào việc giới thiệu, mô tả hàm băm, loại hàmbăm thông dụng Các kiến thức nhóm nhân cyclic cấp số nhân cyclic, thuật toán dùng để xâydựnglớphàmbăm chương sau để cập đây, sở tảng lý thuyết để nghiêncứu sinh sử dụngxâydựnghàmbămmởrộng -8- CHƯƠNG XÂYDỰNG CÁC HÀMBĂMMỚI 2.1 HÀMBĂM DỰA TRÊN HỆ MẬT THEO SƠ ĐỒ LAI-MASSEY 2.1.1 Hệ mật sử dụng cấp số nhân cyclic theo LAI-MASSEY NCS đưa hệ mật mã khối xâydựng theo sơ đồ Lai-Massey, nhiên hàm mã hóa khóa xâydựng từ cấp số nhân cyclic vành đa thức Trên sở áp dụng hệ mật mã vào sơ đồ hàmbăm đơn 64 bit, tính tốn tính khuếch tán hàmbăm Lưu đồ thuật toán hệ mật Lai-Massey, khối mã hóa f sử dụng CGP vành đa thức 2[x] / xn với n 25 32 (k 5) Cấu trúc CGP tạo khối mã hóa f có dạng: A a( x).xi ; i 0,31 Mạch điện mã hoá phép cộng theo hệ số đa thức a( x) với n bước dịch vòng Thuật tốn giải mã thực tương tự với hệ số đa thức nghịch đảo b( x) (31) (4) (3) (2) (1) (0) Vào Ra Hình 0.1 Mạch điện mã hóa f với a( x) 1 x x2 Các khóa Ki tạo từ CGP chúng xâydựng vành đa thức có hai lớp kề cyclic Chọn vành đa thức có hai lớp kề cyclic x29 1 , 16 khóa Ki cho vòng mã hóa 16 phần tử CGP xâydựng sau: Ki Ka Koi mod x29 1; (i 0,15) (Để thuận tiện cho mạch điện mã hóa ta chọn (2.4) K0 x ) -11- 2.2 HÀMBĂM DỰA TRÊN HỆ MẬT MÃ LAI GHÉP Với mục đích kết hợp ưu điểm hệ mật sơ đồ mã hóa có, NCS đề xuất phương pháp xâydựng hệ mật mã lai ghép, hàm mã hóa sử dụng phép mã hóa hệ mật Pohlig-Hellman sơ đồ mã hóa theo mạng Feistel cân (có cải tiến) 2.2.1 Bài tốn Logarit rời rạc hệ mật POHLIG-HELLMAN Bài toán logarit rời rạc tốn khó, hệ mật Pohlig-Hellman hệ mật sử dụng toán logarit rời rạc Phép mã hóa thực theo phương trình đồng dư c me mod p , phép giải mã thực theo m ce mod p 2.2.2 Đề xuất phương pháp xâydựng hệ mật mã lai ghép Lược đồ mã hóa hệ mật thực theo sơ đồ Feistel cân Hàm mã hóa f sử dụng thuật tốn mã hóa hệ mật PohligHellman, thực theo hai cách sau: ci f (mi , ei ) miei mod p (2.15) ci f (mi , ei ) eimi mod p (2.16) e1 (32bit) e2 (32bit) e3 (32bit) e4 (32bit) Khóa bí mật K (128 bits) Hình 2.6 Tách khóa cho vòng mã hóa Tiến hành mơ tính khuếch tán hệ mật thay đổi liệu rõ M thay đổi khóa bí mật K Khoảng cách Hamming trung bình 64 lần thay đổi rõ (lần lượt từ bit đến 64) tính theo cơng thức sau: d H (tb) 64 d (C , C ) 64 j 1 H j Với trường hợp tính được: dH(tb) = 31,84 bít (2.20) (2.21) -12- Và trường hợp là: dH(tb) = 31,98 bít (2.22) Khoảng cách Hamming trung bình mã so với mã ban đầu thay đổi bit khóa K từ bit đến bit 128 tính theo công thức sau: d H (tb) 128 d (C , C ) 128 j 1 H j (2.23) Với trường hợp tính được: dH(tb) = 28,25 bít (2.24) Và trường hợp là: dH(tb) = 28,23 bít (2.25) Như vậy: Độ khuếch tán hệ mật thay đổi liệu đầu vào khóa đạt xấp xỉ nửa chiều dài mã băm 2.2.3 Khảxâydựnghàmbăm từ hệ mật Với hệ mật đề xuất mục 2.3.2, ta áp dụng vào việc xâydựnghàmbăm khơng khóa với số ưu điểm định sau: - Hệ mật sử dụng sơ đồ Feistel cân nên có độ khuếch tán tốt thay đổi liệu rõ thay đổi khóa - Hệ mật có độ an tồn tốt áp dụng tốn chiều logarit rời rạc vào làm hàm mã hóa, ngồi độ dài khóa 128 bit đảm bảo trước công vét cạn 2.3 HÀMBĂM SỬ DỤNG CÁC CẤP SỐ NHÂN CYCLIC 2.3.1 Mô tả hàmbăm MDC-2 sử dụng lưu đồ FEISTEL NCS tập trung xâydựnghàmbăm kép dạng MDC-2 với điểm sử dụng cấp số nhân cyclic làm hàm mã hóa (trên vành đa thức 2[ x]/ xn 1với n 25 32 ) tạo khóa (trên vành đa thức có hai lớp kề để đảm bảo số lượng khóa tạo lớn nhất) Mật mã E xâydựng theo 16 vòng mã hóa theo mơ hình mạng hốn vị thay Feistel 2.3.2 Xâydựnghàmbăm kết mơMơ tính tốn tương tự hàmbăm trước Tiến hành thay đổi bit từ bit đến bit 128 tin đầu vào M1 -13- đưa vào hàmbăm tính khoảng cách Hamming dH (MD1, MDi ) lần thay đổi, cuối tính khoảng cách Hamming trung bình giá trị băm với giá trị băm ban đầu là: d H (tb) 128 d H (MD1, MDi ) 64,12 128 i 1 (2.27) Tiếp tục tính tốn phân bố hàmbăm thay đổi khóa khởi tạo K, khóa khác với khóa bit Bản tin đầu vào gồm 10 khối 128 bit tạo ngẫu nhiên Chúng ta tính khoảng cách Hamming trung bình: d H (tb) 52 d H (MD0 , MDi ) 64, 40 52 i 1 (2.28) KẾT LUẬN CHƯƠNG II Trong chương này, NCS đề xuất số hệ mật hàmbăm mới: - Với hàmbămxâydựng dựa hệ mật theo sơ đồ Lai-Massey độ khuếch tán hàmbăm tạo đạt khoảng 32 bít (Khi độ dài mã băm tạo 64 bít) - Với hệ mật mã lai ghép để xâydựnghàmbăm 64 bít, hàm mã hóa sử dụng phép mã hóa hệ mật Pohlig-Hellman sơ đồ mã hóa theo mạng Feistel cân độ khuếch tán đạt xấp xỉ 32 bít - Hàmbăm dạng MDC-2 (128 bít) xâydựng với khối mật mã dựa cấp số nhân cyclic có độ khuếch tán tốt (xấp xỉ 64 bít) Tóm lại qua khảo sát lý thuyết mô phỏng, hệ mật hàmbăm tạo có nhiều ưu điểm: Số khóa nhiều; mạch điện phần cứng đơn giản, dễ dàng tính tốn thiết kế; hàmbăm có độ khuếch tán tốt, thể khoảng cách Hamming tính trường hợp xấp xỉ nửa chiều dài mã băm -14- CHƯƠNG XÂYDỰNGMỘTLỚP CÁC HÀMBĂMMỞRỘNGMỚI 3.1 XÂYDỰNGHÀMBĂMMỞRỘNGMỚI MDC-3 NCS đề xuất phương pháp xâydựnghàmbăm có độ dài đầu 384 bit dựa cấp số nhân cyclic vành đa thức, sơ đồ hình 3.1 xi g g E g E H2i-1 H1i-1 E H3i-1 A B A B A B A D A D A D Out H1i Out H2i Out H3i Hi Hình 3.1 Sơ đồ hàmbăm MDC-3 đề xuất Khối E mã hóa cho chuỗi bit có độ dài 128, xâydựng theo dạng mơ hình Feistel với số đổi mới, cải tiến Hàm mã hóa f xâydựng sở hệ mật sử dụng CGP vành đa thức 2[ x]/ xn với n 26 64 Các khóa Ki phần tử cấp số nhân xâydựng vành đa thức có hai lớp kề cyclic chọn sau: Ki Ka K0i mod x61 1;(i 16) (3.1) -15- Tiến hành thay đổi bit từ bit đến bit 384 khối tin M , tính khoảng cách Hamming dH (MD0 , MDi ) lần thay đổi, cuối tính khoảng cách Hamming trung bình giá trị băm: d H (tb) 384 d (MD0 , MDi ) 192, 26 384 i 1 H Ta thấy khoảng cách Hamming trung bình đạt xấp xỉ nửa (192 bit) độ dài hàmbăm Tiến hành thay đổi bit từ bit đến bit 60 khóa K1 , bit 61 khóa dùng để kiểm tra chẵn lẻ, sau tính khoảng cách Hamming trung bình giá trị băm với giá trị băm ban đầu sau: d H (tb) 60 d (MD0 , MDi ) 193, 43 i 60 1 H Như với mục đích tăng độ dài mã băm nhằm hạn chế phép công ngày sinh nhật, NCS đưa lược đồ hàmbăm (MDC-3) với độ dài mã băm 384 bit Hàm mật mã sử dụng lược đồ xâydựng theo cấp số nhân cyclic vành đa thức Các kết mô đánh giá hàmbăm đề xuất cho thấy độ khuếch tán tốt, đạt xấp xỉ nửa chiều dài mã băm ta thay đổi liệu vào thay đổi khóa (khoảng cách mã Hamming trung bình đạt xấp xỉ 192 bít) 3.2 HÀMBĂM DỰA TRÊN HỆ MẬT MÃ KHỐI KẾT HỢP SƠ ĐỒ LAIMASSEY VỚI SƠ ĐỒ FEISTEL 3.2.1 Hệ mật mã khối kết hợp sơ đồ LAI-MASSEY FEISTEL Với mục đích kết hợp ưu điểm hai sơ đồ này, NCS đề xuất hệ mật xâydựng theo sơ đồ kết hợp, mười sáu vòng mã hóa đan xen ln phiên sơ đồ Lai-Massey sơ đồ Feistel Các hàm mã hóa f sơ đồ sử dụng CGP vành đa thức [x]/ xn với n 2s , với hệ mật đề xuất, chọn n 26 64 f -16- hoạt động với khối 64 bit CGP có dạng sau: A a( x).xi ; i 0,63 (3.8) Sơ đồ mạch mã hóa với CGP có số hạng đầu đa thức a( x) 1 x x7 x35 x60 cơng bội x hình 3.5 Dịch 64 nhịp 64 bít (63) (60) (35) (7) (1) (0) Vào 64 bít Ra Hình 3.5 Mạch mã hóa f với a(x) 1 x x7 x35 x60 Các khóa ki tạo từ CGP vành đa thức có hai lớp kề cyclic Chọn vành đa thức có hai lớp kề cyclic x61 1, 16 khóa cho vòng mã 16 phần tử CGP xây dựng: ki Ka K0i mod x61 1;(i 0,1, ,15) (3.12) Tiến hành khảo sát tính khuếch tán hệ mật đề xuất thay đổi liệu đầu vào thay đổi khóa (bằng chương trình mơ phỏng) Khoảng cách Hamming trung bình mã 128 lần thay đổi bit liệu tính biểu thức (3.12): d H (tb ) 128 d H (C1 , Ci ) 64,5bit 128 i 1 (3.12) Độ khuếch tán trung bình mã thay đổi khóa: d H (tb ) 30 d H (C0 , Ci ) 62,53bit 30 i 1 (3.13) 3.2.2 Xâydựnghàmbăm sở hệ mật kết hợp 3.2.2.1 Sơ đồ hàmbăm Ở đây, nghiêncứu sinh đề xuất sơ đồ hàmbăm khơng khóa dạng MDC-4 với mã băm 512 bit mơ tả hình 3.6 -17- xi (512 bít) xi xi xi xi (128 bít) (128 bít) (128 bít) (128 bít) g g E g E H i31 H i21 H i11 g E E H i41 A1 B1 A2 B2 A3 B3 A4 B4 A1 B2 A2 B3 A3 B4 A4 B1 Hi Hi Hi Hi (128 bít) (128 bít) (128 bít) (128 bít) Hi (512 bít) Hình 0.2 Sơ đồ hàmbăm MDC-4 (512 bit) 3.2.2.2 Đánh giá tính khuếch tán hàmbăm Tương tự ta tiến hành tính tốn tính khuếch tán hàmbăm thay đổi liệu thay đổi khóa Dữ liệu băm 5120 bit bao gồm 10 khối 512 bit tạo ngẫu nhiên Tiến hành tính tốn độ khuếch tán nghìn lần băm thay đổi liệu băm, lần băm thay ngẫu nhiên bit 5120 bit liệu băm ban đầu Tất lần bămdùng chung khóa ban đầu Ka Sau lần băm ta tính khoảng cách Hamming mã băm so với mã băm ban đầu từ tính khoảng cách Hamming trung bình nghìn lần băm theo biểu thức (3.15) đây: d H (tb) 1000 d H (C0 , Ci ) 255,84bit 1000 i 1 (3.15) -18- Tương tự, tính tốn độ khuếch tán 60 lần băm thay đổi khóa băm khởi tạo Ka, lần băm thay đổi ngẫu nhiên bit số 60 bit khóa ban đầu (bit 61 để đảm bảo khóa có trọng số lẻ) Tất lần băm có liệu băm, ta tính độ khuếch tán trung bình 60 lần băm theo biểu thức (3.16) sau đây: d H (tb) 60 d H (C0 , Ci ) 256,57 bit 60 i 1 (3.16) Như vậy: Độ khuếch tán hàmbăm thay đổi liệu, thay đổi khóa cho kết tốt (xấp xỉ 254 bit so với mã băm 512 bit) 3.3 XÂYDỰNGHÀMBĂMMỞRỘNGMỚI MDC 512 BÍT 3.3.1 Mơ tả hệ mật mã khối 256 bít Sơ đồ mã hóa hệ mật mã khối dựa mạng Feistel bốn nhánh không cân (mỗi nhánh có độ dài 64 bít) Hàm mã hóa f có bốn đầu vào, ba đầu vào liệu ( bi , ci di ) đầu vào khóa ki Độ dài tất bốn đầu vào đầu 64 bit Việc mã hóa thực CGP vành đa thức [ x]/ xn 1 với n 26 64 Cấu trúc CGP sử dụnghàm f có dạng: Ai ki ( x).g j ( x) mod x64 1; j 1, 2, ,64 (3.19) Dịch 64 nhịp Khóa ki (64 bit) bi ci di (63) (62) (64 bits) p63 p62 (2) (1) p2 (0) p1 p0 MAJ mi = p0 + p1x + p2x2 + …+p62x62 + p63x63 Ra (64 bit) Hình 3.9 Mạch mã hóa hàm f 3.3.2 Đánh giá độ khuếch tán hệ mật Tiến hành tính tốn độ khuếch tán hệ mật thay đổi bit liệu rõ, đa thức sinh ka đa thức đầu k0 để tạo khóa hệ -19- mật giữ cố định, ta khoảng cách Hamming trung bình d H (tb) 256 d H (C0 , C j ) 127,19(bit ) 256 j 1 (3.26) Thực 10 lần tính tốn với tham số khóa k0 , ka giữ cố định Mỗi lần tính ta thay đổi bit từ đến 256 rõ ban đầu, kết có được: d H (tb) 10 d H (tb)t 127,84 10 t 1 (3.27) Tiến hành thay đổi bit khóa ban đầu k0 từ bit đến bit 63, ta tính độ khuếch tán cặp mã dH (C0 , C j ) lần thay đổi, sau tính giá trị trung bình sau: 63 d H (tb) d H (C0 , C j ) 127,02(bit ) 63 j 1 (3.28) 3.3.3 Xâydựnghàmbăm 512 bit sở hệ mật 3.3.3.1 Mô tả hàmbăm xi (512 bits) xi (2) xi (1) (256 bits) (256 bits) Hi-1 (1) g E E A1 B1 C1 D1 A2 B2 C2 D2 A1 B2 C1 D2 A2 B1 C2 D1 k0.j (1) k0.j (2) Hi (1) Hi-1 (2) g Hi (2) Hi (512 bits) Hình 3.11 Sơ đồ hàmbăm khơng khóa 512 bít -20- 3.3.3.2 Đánh giá độ khuếch tán hàmbăm Tiến hành tính tốn độ khuếch tán hàmbăm thay đổi liệu, khoảng cách Hamming trung bình 100 lần băm tính sau: d H (tb) 100 d H (C0 , Ci ) 243,48bit 100 i 1 (3.30) Tiến hành tính tốn 10 lần, lần với liệu đầu vào khác (chọn ngẫu nhiên), ta khoảng cách Hamming trung bình 10 lần: 10 d H (tb) d H (tb) 244,02(bit ) t 10 t 1 (3.31) Như vậy: Kết khuếch tán hàmbăm MDC-512 bít tốt, đạt tiệm cận tới nửa chiểu dài mã băm KẾT LUẬN CHƯƠNG III Trong chương này, nghiêncứu sinh tập trung vào xâydựnghàmbămmởrộng với độ dài mã băm từ 384 đến 512 bít: - Hàmbăm MDC-3 xâydựng với sơ đồ gồm nhánh, có tổng độ dài đầu 384 bit Hàmbămxâydựng theo dạng mơ hình mạng Feistel với số đổi mới, cải tiến - Hàmbăm MDC-4 có độ dài mã băm 512 bít, sơ đồ nhánh, nhánh 128 bít Sơ đồ hệ mật kết hợp sơ đồ Lai-Massey sơ đồ Feistel, hàm mã hóa khối tạo khóa hệ mật xâydựng từ cấp số nhân cyclic vành đa thức - Hàmbăm MDC 512 bít gồm nhánh, nhánh 256 bít Sơ đồ mã hóa xâydựng theo mạng Feistel bốn nhánh không cân bằng, Các kết nghiêncứumô cho thấy hàmbăm có độ khuếch tán tốt, đạt xấp xỉ nửa chiều dài mã băm ta thay đổi liệu đầu vào thay đổi khóa Số lượng khóa tạo nhiều, mạch điện phần cứng đơn giản -21- CHƯƠNG KHẢNĂNGỨNGDỤNG CỦA HÀMBĂMXÂYDỰNGMỚI 4.1 CHỮ KÝ SỐ Thông tin đặt hàng (OI) Thông tin chi trả (PI) HàmbămmởrộngHàmbămmởrộng Bản tóm lược OI Bản tóm lược PI (OIMD) (PIMD) Hàmbămmởrộng Bản tóm lược (POMD) Mã hóa RSA Khóa khách hàng Chữ ký kép (DS) Hình 4.8 Lược đồ tạo chữ ký kép với hàmbămmởrộng -22- Các hàmbămmởrộng mà nghiêncứu sinh xâydựngứngdụng vào sơ đồ chữ ký kép theo sơ đồ hình 4.8 4.2 KIỂM TRA TÍNH TỒN VẸN CỦA THƠNG ĐIỆP Với hàmbăm mà nghiêncứu sinh xâydựng luận án, việc ứngdụng vào thực tế với mục đích để đảm bảo tính tồn vẹn thông điệp khả quan Các hàmbămmởrộng luận án sử dụng để đảm bảo tính tồn vẹn thơng điệp đặc tính quan trọng có tính khuếch cao, cần có thay đổi nhỏ đầu vào dẫn đến thay đổi lớn đầu ra, thay đổi, việc bị thám mã dễ bị phát Mộtkhảứngdụng minh họa với việc cắt mẩu tin gắn nhãn thời gian đây: Hình 0.1 Ứngdụng gắn nhãn mã bămhàmbămmởrộng Các hàmbăm mà nghiêncứu sinh đề xuất sử dụng phương pháp băm có ưu điểm vượt trội mặt giá thành triển khai ứng dụng, mặt khác với độ khuếch tán đạt tốt (đã tính tốn, phân tích với nhiều lưu đồ kết mơ phỏng) việc lựa chọn hàmbăm để sử dụng cho việc kiểm tra, đảm bảo tính tồn vẹn thơng điệp mang lại kết khả quan -23- 4.3 BẢO VỆ MẬT KHẨU Với hàmbăm tạo luận án việc ứngdụng chúng vào bảo vệ mật điều khả thi Lưu đồ cụ thể ứngdụng đề xuất hình 4.10: Mật (text) Lưu trữ Mật (text) Hàmbămmởrộng Mã bămHàmbămmởrộng Mã băm Lưu trữ So sánh Mã băm Hình 4.10 Dùnghàmbămmởrộng để lưu trữ kiểm tra mật Khi người dùng đăng nhập vào hệ thống thơng qua form đăng nhập mật băm so sánh với giá trị băm lưu trữ sở liệu Do tính chất chống trùng tính chất khuếch tán hàmbăm luận án, tức có mật có giá trị băm tương ứng, nên khơng khác ngồi người sử dụng biết mật đăng nhập vào hệ thống KẾT LUẬN CHƯƠNG IV Lớphàmbămnghiêncứu sinh xâydựng luận án, gồm nhiều hàmbăm có độ dài khác (từ hàmbăm đơn đến hàmbăm kép hàmbămmở rộng), có hàmbămmởrộng (với độ dài mã băm 384-512 bít) hứa hẹn mang lại hiệu ứngdụng cao độ dài mã băm lớn; ngồi tính chất hàmbăm thông thường, hàmbămmởrộng có tính khuếch tán tốt, mạch điện phần cứng đơn giản dễ thiết kế, số lượng khóa tạo nhiều có nhiều hội lựa chọn cho ứngdụng -24- KẾT LUẬN VÀ KIẾN NGHỊ KẾT LUẬN Luận án “Nghiên cứuxâydựnglớphàmbămmởrộngkhảứng dụng” có 02 kết nghiêncứu sau đây: - Xâydựnglớphàmbămhàmbămmởrộng có tính khuếch tán cao: Các hàmbăm MDC-64 bít, hàmbăm MDC-2, MDC-3, MDC-4, MDC-512 bit, Các hệ mật tạo nên hàmbăm sử dụng lưu đồ Feistel, Lai-Massey, Lai-Massey kết hợp với Feistel với số điểm mới, cải tiến - Xâydựng thuật toán để tạo nên hàm đó, đồng thời đề xuất khảứngdụnghàmbămxâydựng vào số lĩnh vực mật mã học như: Chữ ký số, kiểm tra tính tồn vẹn thơng điệp, bảo vệ mật Tất hàmbămxâydựng có tính khuếch tán tốt, đạt xấp xỉ nửa chiều dài mã băm (được tính tốn mơ luận án) Ngồi hàmbăm có ưu điểm là: tốc độ tính tốn nhanh, số lượng khóa tạo nhiều; mạch điện phần cứng thiết kế, chế tạo cách đơn giản, dễ ứngdụng thực tế KIẾN NGHỊ HƯỚNG PHÁT TRIỂN - Cần nghiêncứuxâydựng thêm hàmbăm có độ dài lớn tốc độ xử lý máy tính ngày tăng nhanh nên việc bẻ khóa, thám mã ngày thuận lợi - Luận án chủ yếu tập trung vào tính khuếch tán hệ mật hàmbăm Để hoàn chỉnh nữa, cần tiếp tục nghiêncứu tính chất khó tìm nghịch ảnh, tính kháng va chạm hàm băm, - Luận án dừng lại mức độ lý thuyết, ý tưởng ứngdụng đưa tạo thành ứngdụng thực tế Hướng luận án thiết kế, thử nghiệm mạch điện phần cứng đưa hàmbăm vào sử dụng DANH MỤC CÁC CƠNG TRÌNH CƠNG BỐ CỦA TÁC GIẢ [1] Nguyễn Tồn Thắng, Ngô Đức Thiện, Hồ Quang Bửu (2012), “Xây dựnghàmbămmởrộng cấp số nhân cyclic”, Hội thảo Điện tử - Truyền thơng An tồn thơng tin, ATC/REV 2012, tháng 10-2012, tr 52 - 57 [2] Ngơ Đức Thiện, Nguyễn Tồn Thắng (2013), “Một phương pháp xâydựng hệ mật mã khối theo sơ đồ Lai-Massey khảứngdụng vào hàm băm”, Tạp chí Khoa học Cơng nghệ, Viện hàn lâm Khoa học Công nghệ Việt Nam, tập 51 số 4A, tháng 9-2013, tr 126 - 134, ISSN 0866 708X [3] Ngơ Đức Thiện, Nguyễn Hương Thảo, Nguyễn Tồn Thắng (2013), “Một phương pháp xâydựnghàmbăm sử dụng cấp số nhân vành đa thức”, Hội nghị khoa học kỷ niệm 15 năm ngày truyền thống Học viện Cơng nghệ Bưu Viễn thơng, tháng 9-2013, tr 25 - 29 [4] Ngô Đức Thiện, Nguyễn Trung Hiếu, Nguyễn Toàn Thắng, Đặng Hoài Bắc (2013), “Một phương pháp xâydựng hệ mật mã khối kết hợp sơ đồ LaiMassey với sơ đồ Feistel ứngdụng vào hàm băm”, Hội nghị Quốc gia Điện tử - Truyền thông, REV 2013, tháng 12-2013, tr 75 - 80 [5] Nguyễn Tồn Thắng, Ngơ Đức Thiện (2015), “Về phương pháp xâydựng hệ mật mã lai ghép”, Hội thảo Quốc gia Điện tử, Truyền thông Công nghệ thông tin, ECIT, tháng 12-2015, tr 227 - 231 [6] Nguyễn Tồn Thắng, Ngơ Đức Thiện, Nguyễn Trung Hiếu (2017), “Về phương pháp xâydựnghàmbăm khơng khóa vành đa thức chẵn”, Tạp chí Khoa học Cơng nghệ trường Đại học Kỹ thuật, số 121, tháng 9-2017, tr 64 - 69 ... cứu - Xây dựng số hàm băm (khảo sát trước xây dựng hàm băm mở rộng) -3- - Xây dựng lớp hàm băm mở rộng (là lớp hàm băm có độ khuếch tán cao) với mục đích mở rộng chiều dài mã băm qua việc ghép... dài mã băm -14- CHƯƠNG XÂY DỰNG MỘT LỚP CÁC HÀM BĂM MỞ RỘNG MỚI 3.1 XÂY DỰNG HÀM BĂM MỞ RỘNG MỚI MDC-3 NCS đề xuất phương pháp xây dựng hàm băm có độ dài đầu 384 bit dựa cấp số nhân cyclic vành... tạo hàm băm mở rộng có độ dài bit lớn cần thiết Trong luận án này, NCS tập trung vào xây dựng hàm băm mở rộng mới, đồng thời đề xuất ý tưởng khả ứng dụng hàm băm Mục tiêu nghiên cứu - Xây dựng