Bài giảng Mật mã ứng dụng: Bài toán logarit rời rạc và Diffie-Hellman - Đại học Bách khoa Hà Nội
Số trang: 50
Loại file: pdf
Dung lượng: 2.10 MB
Lượt xem: 15
Lượt tải: 0
Xem trước 5 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Bài giảng "Mật mã ứng dụng: Bài toán logarit rời rạc và Diffie-Hellman" trình bày các nội dung chính sau đây: Định nghĩa Nhóm; Cấp của một phần tử trong nhóm; Hàm logarit rời rạc và hàm mũ; Bài toán Logarit rời rạc;... Mời các bạn cùng tham khảo!
Nội dung trích xuất từ tài liệu:
Bài giảng Mật mã ứng dụng: Bài toán logarit rời rạc và Diffie-Hellman - Đại học Bách khoa Hà NộiMật mã ứng dụngBài toán logarit rời rạc và Diffie-HellmanNội dung• Bài toán Logarit rời rạc• Bài toán Diffie-HellmanĐịnh nghĩa NhómMột nhóm Abel (,⋅) thoả mãn các tính chất sau: 1. Có phần tử đơn vị: 1 ∈ # thoả mãn ∀% ∈ #, % ⋅ 1 = 1 ⋅ % = % 2. Mọi phần tử đều khả nghịch: ∀% ∈ #, ∃* ∈ # thoả mãn % ⋅ * = 1 3. Kết hợp: ∀%, *, + ∈ # ta có % ⋅ (* ⋅ +) = (% ⋅ *) ⋅ + 4. Giao hoán: ∀%, * ∈ # ta có % ⋅ * = * ⋅ %Cấp của một phần tử trong nhóm• Cấp của phần tử !, ký hiệu ord(a), là số > 0 nhỏ nhất thoả mãn !! = 1 ∈ (.• Định lý Lagrange: Trong nhóm hữu hạn ( với lực lượng ), ta có ∀! ∈ (, ord(!) ∣ ).• Hệ quả: Trong nhóm hữu hạn ( với lực lượng ), ta có ∀! ∈ (, ! = 1.• Ký hiệu: ⟨!⟩ = {!# ∣ 2 ≥ 0} là nhóm con sinh bởi !.Nhóm vòng• Ký hiệu ⟨⟩ = {! ∣ ≥ 0} là nhóm con sinh bởi .• Nếu ⟨⟩ = + thì là một phần tử sinh của +.• Khẳng định: |⟨⟩| = ord().• Định nghĩa: G là nhóm vòng nếu có g thoả mãn ⟨/⟩ = +Hàm logarit rời rạc và hàm mũ• Khẳng định: Nếu + là nhóm vòng cấp 0 và / là phần tử sinh, thì quan hệ 1 ↔ / là 1-to-1 giữa {0,1, … , 0 − 1} và +.• Hàm mũ x à gx• Hàm logarit rời rạc gx à xTính ngẫu nhiên của lũy thừa 627x (mod 941)Bài toán Logarit rời rạc• Xét / là một phần tử sinh của ℤ∗ và ℎ ∈ ℤ∗ . # #• Bài toán Logarit rời rạc (DLP) là bài toán tìm một số mũ 1 thỏa mãn / ≡ ℎ mod ;.• Số 1 được gọi là logarit rời rạc cơ sở / của ℎ và ký hiệu Dlog% (ℎ).Bài tậpHãy tính các logarit rời rạc sau.1. Dlog& (13) trong modun nguyên tố 232. Dlog( (22) trong modun nguyên tố ; = 47.3. Dlog)&* (608) trong modun nguyên tố ; = 941.Tính Logarit rời rạc• Xét số nguyên tố ; = 56509, và ta có thể kiểm tra / = 2 là một căn nguyên thủy modun ;.• Làm thế nào để tính log& (38679)?• Một phương pháp là tính 2( , 2 , 2& , 2+ , ⋯ mod 56509 cho đến khi được lũy thừa bằng 38679.• Bạn có thể kiểm tra rằng 2&+, ≡ 38679 mod 56509.Nội dung• Bài toán Logarit rời rạc• Bài toán Diffie-Hellman Bài tập ∗Hãy tính hai giá trị sau trong ℤ+ .• DH* (10,5)• DH& (12,9)biết rằng ⟨2⟩ = {1, 2, 4, 8, 3, 6, 12, 11, 9, 5, 10, 7} ⟨7⟩ = {1, 7, 10, 5, 9, 11, 12, 6, 3, 8, 4, 2} DHg(ga, gb) = gab (mod p)Nhắc lại: Giao thức Diffie-Hellman (1977)Xét nhóm vòng G (e.g G = (Zp)* ) với cấp nLấy một phần tử sinh g thuộc G (i.e. G = {1, g, g2, g3, … , gn-1 } )Alice BobChọn ngẫu nhiên a in {1,…,n} Chọn ngẫu nhiên b trong {1,…,n} A = ga B = gbBa (g b)a ab (g a)b = Ab = = kAB =g =Bài tập• Alice và Bob dùng số nguyên tố ; = 1373 và cơ sở / = 2 để trao đổi khóa.• Alice gửi Bob giá trị F = 974.• Bob chọn số bí mật G = 871.• Bob nên gửi cho Alice giá trị gì, và khóa bí mật họ chia sẻ là gì?• Bạn có thể đoán được số bí mật của Alice không?Một câu hỏi mở• Nếu ta có thể giải bài toán Logarit rời rạc, vậy ta có thể giải bài toán Diffie-Hellman. Tại sao?• Nhưng nếu ta có thể giải được bài toán Diffie-Hellman, vậy liệu ta có thể giải được bài toán logarit rời rạc không?Một số nhóm hay được dùng• Nhóm ℤ∗ = {1, … , 1 − 1} với 1 nguyên tố !• Nhóm thặng dư bình phương ℚ! = {%# ∣ % ∈ ℤ∗ } !• Nhóm ℤ∗ = {% ∈ {1, … , 6 − 1} ∣ gcd(%, 6) = 1}. $ Hệ RSA sử dụng ℤ!% với 1, 7 là các số nguyên tố ngẫu nhiên lớn.• Nhóm ℚ$ = {%# ∣ % ∈ ℤ∗ } $• Nhóm điểm trên đường cong EllipticMật mã ứng dụngHệ mật mã dựa trên đường cong EllipticNội dung1. Đường cong Elliptic (Elliptic Curve, EC)2. Bài toán Logarit rời rạc trên EC3. Giao thức trao đổi khoá Diffie-Hellman trên EC gnificantly smaller, yet still twice as long as symmetric ciphers with the samryptographic strength. Vấn đề: Tìm hệ mật với tham số ngắn hơnable 6.1 Bit lengths of public-key algorithms for different security levels Algorithm Family Cryptosystems Security Level (bit) 80 128 192 256 Integer factorization RSA 1024 bit 3072 bit 7680 bit 15360 bit Discrete logarithm DH, DSA, Elgamal 1024 bit 3072 bit 7680 bit 15360 bit Elliptic curves ECDH, ECDSA 160 bit 256 bit 384 bit 512 bit Symmetric-key AES, 3DES 80 bit 128 bit 192 bit 256 bit Kích thước theo bit của các hệ mật mã khoá công khai ở ...
Nội dung trích xuất từ tài liệu:
Bài giảng Mật mã ứng dụng: Bài toán logarit rời rạc và Diffie-Hellman - Đại học Bách khoa Hà NộiMật mã ứng dụngBài toán logarit rời rạc và Diffie-HellmanNội dung• Bài toán Logarit rời rạc• Bài toán Diffie-HellmanĐịnh nghĩa NhómMột nhóm Abel (,⋅) thoả mãn các tính chất sau: 1. Có phần tử đơn vị: 1 ∈ # thoả mãn ∀% ∈ #, % ⋅ 1 = 1 ⋅ % = % 2. Mọi phần tử đều khả nghịch: ∀% ∈ #, ∃* ∈ # thoả mãn % ⋅ * = 1 3. Kết hợp: ∀%, *, + ∈ # ta có % ⋅ (* ⋅ +) = (% ⋅ *) ⋅ + 4. Giao hoán: ∀%, * ∈ # ta có % ⋅ * = * ⋅ %Cấp của một phần tử trong nhóm• Cấp của phần tử !, ký hiệu ord(a), là số > 0 nhỏ nhất thoả mãn !! = 1 ∈ (.• Định lý Lagrange: Trong nhóm hữu hạn ( với lực lượng ), ta có ∀! ∈ (, ord(!) ∣ ).• Hệ quả: Trong nhóm hữu hạn ( với lực lượng ), ta có ∀! ∈ (, ! = 1.• Ký hiệu: ⟨!⟩ = {!# ∣ 2 ≥ 0} là nhóm con sinh bởi !.Nhóm vòng• Ký hiệu ⟨⟩ = {! ∣ ≥ 0} là nhóm con sinh bởi .• Nếu ⟨⟩ = + thì là một phần tử sinh của +.• Khẳng định: |⟨⟩| = ord().• Định nghĩa: G là nhóm vòng nếu có g thoả mãn ⟨/⟩ = +Hàm logarit rời rạc và hàm mũ• Khẳng định: Nếu + là nhóm vòng cấp 0 và / là phần tử sinh, thì quan hệ 1 ↔ / là 1-to-1 giữa {0,1, … , 0 − 1} và +.• Hàm mũ x à gx• Hàm logarit rời rạc gx à xTính ngẫu nhiên của lũy thừa 627x (mod 941)Bài toán Logarit rời rạc• Xét / là một phần tử sinh của ℤ∗ và ℎ ∈ ℤ∗ . # #• Bài toán Logarit rời rạc (DLP) là bài toán tìm một số mũ 1 thỏa mãn / ≡ ℎ mod ;.• Số 1 được gọi là logarit rời rạc cơ sở / của ℎ và ký hiệu Dlog% (ℎ).Bài tậpHãy tính các logarit rời rạc sau.1. Dlog& (13) trong modun nguyên tố 232. Dlog( (22) trong modun nguyên tố ; = 47.3. Dlog)&* (608) trong modun nguyên tố ; = 941.Tính Logarit rời rạc• Xét số nguyên tố ; = 56509, và ta có thể kiểm tra / = 2 là một căn nguyên thủy modun ;.• Làm thế nào để tính log& (38679)?• Một phương pháp là tính 2( , 2 , 2& , 2+ , ⋯ mod 56509 cho đến khi được lũy thừa bằng 38679.• Bạn có thể kiểm tra rằng 2&+, ≡ 38679 mod 56509.Nội dung• Bài toán Logarit rời rạc• Bài toán Diffie-Hellman Bài tập ∗Hãy tính hai giá trị sau trong ℤ+ .• DH* (10,5)• DH& (12,9)biết rằng ⟨2⟩ = {1, 2, 4, 8, 3, 6, 12, 11, 9, 5, 10, 7} ⟨7⟩ = {1, 7, 10, 5, 9, 11, 12, 6, 3, 8, 4, 2} DHg(ga, gb) = gab (mod p)Nhắc lại: Giao thức Diffie-Hellman (1977)Xét nhóm vòng G (e.g G = (Zp)* ) với cấp nLấy một phần tử sinh g thuộc G (i.e. G = {1, g, g2, g3, … , gn-1 } )Alice BobChọn ngẫu nhiên a in {1,…,n} Chọn ngẫu nhiên b trong {1,…,n} A = ga B = gbBa (g b)a ab (g a)b = Ab = = kAB =g =Bài tập• Alice và Bob dùng số nguyên tố ; = 1373 và cơ sở / = 2 để trao đổi khóa.• Alice gửi Bob giá trị F = 974.• Bob chọn số bí mật G = 871.• Bob nên gửi cho Alice giá trị gì, và khóa bí mật họ chia sẻ là gì?• Bạn có thể đoán được số bí mật của Alice không?Một câu hỏi mở• Nếu ta có thể giải bài toán Logarit rời rạc, vậy ta có thể giải bài toán Diffie-Hellman. Tại sao?• Nhưng nếu ta có thể giải được bài toán Diffie-Hellman, vậy liệu ta có thể giải được bài toán logarit rời rạc không?Một số nhóm hay được dùng• Nhóm ℤ∗ = {1, … , 1 − 1} với 1 nguyên tố !• Nhóm thặng dư bình phương ℚ! = {%# ∣ % ∈ ℤ∗ } !• Nhóm ℤ∗ = {% ∈ {1, … , 6 − 1} ∣ gcd(%, 6) = 1}. $ Hệ RSA sử dụng ℤ!% với 1, 7 là các số nguyên tố ngẫu nhiên lớn.• Nhóm ℚ$ = {%# ∣ % ∈ ℤ∗ } $• Nhóm điểm trên đường cong EllipticMật mã ứng dụngHệ mật mã dựa trên đường cong EllipticNội dung1. Đường cong Elliptic (Elliptic Curve, EC)2. Bài toán Logarit rời rạc trên EC3. Giao thức trao đổi khoá Diffie-Hellman trên EC gnificantly smaller, yet still twice as long as symmetric ciphers with the samryptographic strength. Vấn đề: Tìm hệ mật với tham số ngắn hơnable 6.1 Bit lengths of public-key algorithms for different security levels Algorithm Family Cryptosystems Security Level (bit) 80 128 192 256 Integer factorization RSA 1024 bit 3072 bit 7680 bit 15360 bit Discrete logarithm DH, DSA, Elgamal 1024 bit 3072 bit 7680 bit 15360 bit Elliptic curves ECDH, ECDSA 160 bit 256 bit 384 bit 512 bit Symmetric-key AES, 3DES 80 bit 128 bit 192 bit 256 bit Kích thước theo bit của các hệ mật mã khoá công khai ở ...
Tìm kiếm theo từ khóa liên quan:
Bài giảng Mật mã ứng dụng Mật mã ứng dụng Bài toán logarit rời rạc Bài toán Diffie-Hellman Hàm logarit rời rạc Tính Logarit rời rạc Giao thức Diffie-HellmanGợi ý tài liệu liên quan:
-
Xây dựng lược đồ chữ ký số dựa trên bài toán logarit rời rạc kết hợp khai căn trên Zp
5 trang 68 0 0 -
Phát triển thuật toán mật mã khóa công khai dựa trên bài toán logarit rời rạc
7 trang 29 0 0 -
123 trang 29 0 0
-
PHƯƠNG PHÁP XÂY DỰNG THUẬT TOÁN CHỮ KÝ SỐ DỰA TRÊN MỘT DẠNG BÀI TOÁN KHÓ MỚI
9 trang 26 0 0 -
Tóm tắt Luận án tiến sĩ Toán học: Nghiên cứu, phát triển một số lược đồ chữ ký số hướng tới nhóm
27 trang 25 0 0 -
Một phương pháp xây dựng lược đồ chữ ký số dựa trên bài toán logarit rời rạc
6 trang 24 0 0 -
Lược đồ chữ ký số mù phát triển dựa trên bài toán logarit rời rạc
9 trang 24 0 0 -
Mã mạng an toàn dựa trên hai hệ mật Omura-Massey và Elgamal trên vành số
7 trang 23 0 0 -
Bài giảng Mật mã ứng dụng: Giới thiệu sơ lược về mật mã và tiền mật mã - Đại học Bách khoa Hà Nội
74 trang 22 0 0 -
Một phương pháp xây dựng hệ mật Pohlig-hellman trên vành đa thức
6 trang 21 0 0