02 co so ly thuyet mat ma

209 15 0
02 co so ly thuyet mat ma

Đ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

BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ GS NGUYỄN BÌNH, ThS HỒNG THU PHƯƠNG GIÁO TRÌNH CƠ SỞ LÍ THUYẾT MẬT MÃ HÀ NỘI, 2013 BAN CƠ YẾU CHÍNH PHỦ HỌC VIỆN KỸ THUẬT MẬT MÃ GS NGUYỄN BÌNH, ThS HỒNG THU PHƯƠNG GIÁO TRÌNH CƠ SỞ LÍ THUYẾT MẬT MÃ HÀ NỘI, 2013 MỤC LỤC Mục lục .ii Danh mục từ viết tắt iii Danh mục bảng iv Danh mục hình vẽ .v Lời nói đầu .vii Chương Nhập môn mật mã học .1 Chương Các hệ mật khóa bí mật 55 Chương Các hệ mật khóa công khai 131 Chương hàm băm, xác thực chữ kí số 169 Tài liệu tham khảo 199 ii DANH MỤC TỪ VIẾT TẮT AES Advanced Encryption Standard Chuẩn mã liệu tiên tiến CBC Cipher Block Chaining Chế độ liên kết khối mã CFB Cipher Feedback Chế độ phản hồi mã CRHF Collission Function DES DSS Data Encryption Standard ECB Electronic Code Book Chế độ mã điện tử LAN Local Area Network Mạng cục LFSR Linear Feedback Register LSB Least Signification Bit Bít thấp (có giá trị nhỏ nhất) MAC Massage Authentication Code Mã xác thực thông báo MDC Manipulation Detection Code Mã phát sửa đổi Resistant Hash Hàm băm kháng va chạm Chuẩn mã liệu Chuẩn chữ kí số Sequence Thanh ghi hồi tiếp tuyến tính MDV Mã dịch vịng MHV Mã hốn vị MTT Mã thay OWHF One Way Hash Function Hàm băm chiều OTP One Time Pad Hệ mật khóa dùng lần RSA Rivest – Shamir - Adleman Thuật toán RSA iii DANH MỤC BẢNG Bảng 1-1 Cấp phần tử Z*21 37 Bảng 1-2 Thuật toán Euclide mở rộng giá trị vào a = 4864, b = 3458 42 Bảng 1-3 Tính 44 Bảng 1-4 Độ phức tạp bit phép toán 44 Bảng 1-5 Các ký hiệu Jacobi phần tử 49 Bảng 3-6 Kết tính bước thuật toán Pollard .136 Bảng 3-7 Giá trị y tương ứng với x Z23 158 Bảng 3-8 Bảng tính kP 161 iv DANH MỤC HÌNH VẼ Hình 1-1 Sơ đồ khối hệ thống thông tin số .1 Hình 2-2 Sơ đồ khối hệ truyền tin mật 55 Hình 2-3 Mã dịch vòng 56 Hình 2-4 Mã Affine 62 Hình 2-5 Mã thay 63 Hình 2-6 Hệ mật Vigenere 65 Hình 2-7 Mật mã Hill 71 Hình 2-8 Mật mã khóa tự sinh .75 Hình 2-9 Hệ mật OTP .76 Hình 2-10 Mã hốn vị .79 Hình 2-11 Mã nhân 80 Hình 2-12 Một vịng DES 84 Hình 2-13 Hàm f DES 86 Hình 2-14 Tính bảng khóa DES .91 Hình 2-15 Chế độ ECB 102 Hình 2-16 Chế độ CBC 103 Hình 2-17 Chế độ CFB 103 Hình 2-18 Chế độ OFB 104 Hình 2-19 Des bội hai 106 Hình 2-20 Mã hóa giải mã TDES với hai khóa 107 Hình 2-21 Thuật tốn mã hóa GDES 110 Hình 2-22 Thám mã vi sai vịng DES 113 Hình 2-23 Thám mã tuyến tính vịng DES 117 Hình 2-24 Quan hệ vào hộp thay S5 (bắt đầu) 118 Hình 2-25 Quan hệ vào hộp thay S5 (kết thúc) .119 Hình 2-26 Số vịng mã hóa AES 122 Hình 3-27 Hệ mật Mc Elice 154 Hình 3-28 Các đường cong y2 = x3 + 2x + y2 = x3 – 2x + .156 Hình 3-29 Nhóm E23 (1, 1) 159 v Hình 4-30 Phân loại hàm băm .172 Hình 4-31 MDC độ dài đơn 173 Hình 4-32 Thuật tốn MDC – 176 Hình 4-33 Thuật tốn MDC – 177 Hình 4-34 Thuật toán MAC dùng CBC 178 Hình 4-35 Xác thực thơng báo dùng sơ đồ chữ kí 179 Hình 4-36 Vịng nén chữ kí 187 Hình 4-37 Sơ đồ chữ kí D – L (đầu phát) 189 Hình 4-38 Kiểm tra chữ kí D – L (đầu thu) 190 Hình 4-39 Tạo thơng báo có kí chữ 191 Hình 4-40 Các bước kiểm tra thơng báo kí 192 Hình 4-41 Sơ đồ kí số RSA (khơng bí mật tin) 192 Hình 4-42 Sơ đồ chữ ký số RSA (có bí mật tin) 193 Hình 4-43 Chuẩn chữ kí số 197 vi LỜI NĨI ĐẦU Đảm bảo an tồn tiêu chất lượng hệ thống truyền tin số Ngoài việc đảm bảo hệ thống khả dụng (có đủ tài nguyên cần thiết cho dịch vụ tương ứng) có ba loại dịch vụ phải thực hiện: - Bí mật (Confidential) - Xác thực (Authentication) - Đảm bảo tính tồn vẹn (Intergrity) Các dịch vụ thực thông qua việc kết hợp thuật toán mật mã học Giáo trình giáo trình sở giúp cho sinh viên bước đầu tìm hiểu vấn đề thuật toán mật mã học nhằm thực dịch vụ Nội dung giáo trình bao gồm chương: Chương 1: Nhập mơn mật mã học: Trình bày số khái niệm, định nghĩa sở lý thuyết thông tin áp dụng cho hệ mật Chương II: Mật mã khóa bí mật: Trình bày thuật tốn mật mã khố bí mật bao gồm thuật tốn hốn vị, thay thuật toán kết hợp mà chủ yếu DES AES Chương III: Mật mã khóa cơng khai: Trình bày thuật tốn mật mã khóa cơng khai bao gồm các hệ mật RSA, Merkle-Hellman, Rabin, ElGamal, hệ mật đường cong Elliptic hệ mật McEliece Chương IV: Hàm băm, xác thực chữ ký số: Trình bày khái niệm hàm băm ứng dụng việc xác thực đảm bảo tính tồn vẹn liệu vii Sau chương có tập nhằm giúp cho sinh viên nắm, hiểu cụ thể sâu sắc vấn đề lý thuyết trình bày Với kinh nghiệm thời gian hạn chế, việc chọn lọc trình bày vấn đề khơng thể tránh khỏi thiếu sót định Rất mong nhận ý kiến đóng góp quý báu độc giả CÁC TÁC GIẢ GS TS NGUYỄN BÌNH ThS HỒNG THU PHƯƠNG viii CHƯƠNG NHẬP MÔN MẬT MÃ HỌC 1.1 SƠ ĐỒ KHỐI CHỨC NĂNG CỦA MỘT HỆ THỐNG THÔNG TIN SỐ Đầu vào rõ Bản rõ Biến đổi A/D Nguồn tin (tương tự – số) tương tự Biến đổi D/A (số Nhận tin tương tự) Bản mã Mã kênh Mã bảo mật Mã nguồn Từ mã truyền Kênh truyền (tạp âm, đa đường, giao thoa, nhiễu, nghe trộm …) Giải mã nguồn Đầu số Giải mã mật Bản rõ Giải mã kênh Bản mã Hình 1-1 Sơ đồ khối hệ thống thông tin số Trường hợp nguồn tin đầu vào nguồn tin số khơng cần biến đổi A/D đầu vào biến đổi D/A đầu Trong hệ thống khối mã bảo mật có chức bảo vệ cho thông tin không bị khai thác bất hợp pháp, chống lại công sau: K A = −( k A ) mod n A = −( 5) − mod 27 ( ) = − −1 mod 27 = −(11) mod 27 = − 121mod 27 = 14 Khi thơng tin khóa cơng khai ( K A , n A ) = (14,27 ) Sau A chọn cặp số ngẫu nhiên R A với điều kiện ( R A , n A ) = tính cặp chữ ký S = (S1, S2 ) từ R A thông báo M (với điều kiện ( M, n A ) = ) Chẳng hạn R A = 13 M = 25 S1 = −1 [(MR ) + R ]mod n −1 A A A = 14[ ( 25.25) + 13] mod 27 = 14.638 mod 27 = 8932 mod 27 = 22 [( ] ) S2 = −1 k A MR −A1 − R A mod n A = 14.5[ ( 25.25) − 13] mod 27 = 70.612 mod 27 = 42840 mod 27 = 18 (Ta có −1 mod 27 = 14 13−1 mod 27 = 25 ) Sau cặp S = (S1, S2 ) = ( 22, 18) gửi qua mạng tới người nhận B B kiểm tra tính xác thực thơng báo khóa công khai A cặp ( K A , n A ) = (14,27) B tính : ( ) ( ) S12 + K AS22 mod n A = 22 + 14.18 mod 27 = 484 + 14.324 mod 27 = 5020 mod 27 = 25 = M 4.4 CÁC CHỮ KÍ SỐ CĨ NÉN Trong thực tế, tin vài trang văn file liệu lớn Trong phần ta thấy chữ ký cho thơng báo có độ lớn 186 thân tin Trong phần ta mô tả số sơ đồ chữ ký số mà độ lớn thường nhỏ khơng phụ thuộc vào độ lớn tin Đó chữ ký số có nén 4.4.1 Nén chữ kí Hình 4.7 phương pháp nén chữ kí S1 = E K ( M1 ) S2 = E K ( M ⊕ S1 )  ( SJ = E K M J ⊕ SJ −1 ) Theo cách ta tạo chữ ký Sk ( M ) SK ( M ) = E K ( M1 ⊕ M ⊕  ⊕ M J ⊕ SJ ) M1 M2 MJ … EEKK SS ⊕ E EK K … EEK K S2 K … K SSJ −1 E ⊕ EK K J-1 K SS J ⊕EKK SK E ( M) J K K Hình 4-36 Vịng nén chữ kí 4.4.2 Sơ đồ Diffie – Lamport Trong sơ đồ chữ ký số cho n bít tin tạo sau: (1) Chọn n cặp khóa ngẫu nhiên (chẳng hạn khóa 56 bít DES) gửi bí mật: 187 (K1,0 , K1,1 ) (K 2,0 , K 2,1 ) i =1 ⇒ i=2 ⇒  (K n,0 , K n,1 ) i=n ⇒ (2) Chọn dãy S gồm n cặp véctơ ngẫu nhiên (chẳng hạn khối đầu vào 64 bít DES), dãy đưa công khai: {( )( ) ( S = S1,0 , S1,1 , S2,0 , S2,1 , , Sn ,0 , Sn ,1 )} (3) Tính R dãy khóa mã (chẳng hạn dãy DES) {( )( ) ( R = R1,0 , R1,1 , R 2,0 , R 2,1 , , R n ,0 , R n ,1 ( ) )} Trong : R ij = E K i , j Si, j với ≤ i ≤ n j = 0,1 Dãy R đưa công khai Chữ ký SG(M) tin n bít M = ( m1 , m , , m n ) dãy khóa sau: M =  K1,i , K 2,i , , K n ,i  số khóa i j = m j  n  Ví dụ : Nếu thông báo M : M = m1 m M= m3 m  m n −1 m n  1 K 2,i Thì chữ ký SG(M) là: SG ( M ) = K1,i SG ( M ) = K1,1 K 2,0 K 3,i K 3,0 K 4,i K 4,1  K n −1,i n −1  K n −1,1 Sơ đồ chữ ký Diffie-Lamport mô tả hình sau: 188 K n,i n K n ,1 Bản tin n bít M Khối nén Các khóa Chọn khóa S1,0 , S1,1 , S 2,0 , S 2,1  , S r ,0 , S r ,1 S G(M) E K ( S) R 0,1, R1,1, R 2,0 , R 2,1  , R r,0 , R r,1 R Hình 4-37 Sơ đồ chữ kí D – L (đầu phát) Bản tin M chữ ký SG(M) gửi tới nơi thu Bản tin kiểm tra tính xác thực thơng báo việc mã hóa véctơ tương ứng dãy S biết với chữ ký SG(M) nhận so sánh mã tạo với dãy R biết EK EK EK ?  S  = R 1, i1  1, i1 1,i   S 2, i 2 ,i   ?  = R 2,i  ?  S  n , i n  = R n ,i n n ,i n  Nếu dãy n véctơ chữ ký xem xác thực 189  R , R , , R n , i  1,i1 2,i n  = E  S , , E  S  K , i K n,i n   1,i1   n ,i n    Cần ý sơ đồ chữ ký D-L mở rộng độ dài chữ ký nén ! Nếu DES sử dụng tin n bít cần chữ ký số SG(M) có độ dài 56.n bít Vì vậy, để khắc phục nhược điểm tin n cần nén thành tóm lược thơng báo r bít ( r

Ngày đăng: 02/10/2021, 19:49

Mục lục

  • 1.2. Các chỉ tiêu chất lượng cơ bản của một hệ thống thông tin số

  • 1.3. Độ mật hoàn thiện

  • 1.4.2. Các tính chất của Entropy

  • 1.5. Các khóa giả và khoảng giải mã duy nhất

  • 1.6. Phân tích mật mã và độ phức tạp tính toán

    • 1.6.1. Phân tích mật mã

    • 1.6.2. Độ phức tạp tính toán

      • 1.6.2.1. Khái niệm về độ phức tạp tính toán

      • 1.6.2.3. Độ phức tạp tính toán

      • 1.7.4. Thuật toán nghịch đảo

      • 1.7.5.2. Các tính chất của kí hiệu Legendre

      • 1.7.5.4. Các tính chất của kí hiệu Jacobi

      • 1.7.5.5. Thuật toán tính toán kí hiệu Jacobi (và kí hiệu Legendre)

      • 1.7.5.6. Nhận xét (tìm các thặng dư bậc hai theo modulo của số nguyên tố p)

      • 1.7.5.7. Ví dụ tính toán kí hiệu Jacobi

      • 1.7.5.8. Ví dụ (các thặng dư bậc 2 và không thặng dư bậc 2)

      • 1.7.7. Các số nguyên Blum

      • 1.8. Câu hỏi ôn tập

      • Chương 2 Các hệ mật khóa bí mật

        • 2.1. Sơ đồ khối của một hề truyền tin mật

        • 2.2. Các hệ mật thay thế đơn giản

          • 2.2.1. Các hệ mật thay thế đơn biểu

            • 2.2.1.1. Mã dịch vòng (MDV)

            • 2.2.2. Các phép thay thế đơn giản khác

            • 2.4. Các hệ mật thay thế không tuần hoàn

              • 2.4.1. Hệ mật khóa tự sinh

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

Tài liệu liên quan