Tài liệu: Vì sao có những mật mã đã công khai cách đặt mã mà bí mật vẫn không bị lộ?

Tài liệu
Vì sao có những mật mã đã công khai cách đặt mã mà bí mật vẫn không bị lộ?

Nội dung

VÌ SAO CÓ NHỮNG MẬT MÃ ĐÃ CÔNG KHAI

CÁCH ĐẶT MÃ MÀ BÍ MẬT VẪN KHÔNG BỊ LỘ?

 

Công khai phương pháp đặt mật mã cho mọi người mà vẫn đảm bảo được bí mật, các chuyên gia bảo mật quả thật đã phát minh ra một hệ thống mật mã đặt mã “công khai!” do Diper & Herman đưa ra lần đầu vào năm 1976. Ý tưởng chính của hệ thống này là: mỗi hướng truyền tin đều có một chìa khoá đặt mã và một chìa khoá giải mã, chìa khoá đặt mà là công khai rồi, nhưng chìa khoá giải mã được bảo vệ một cách nghiêm ngặt chỉ có người trong cuộc mới biết.

Mật mã học truyền thống, nếu chìa khoá đặt mã bị người thứ ba biết, vậy thì chìa khoá giải mã lập tức cũng bị tiết lộ, nhưng trong hệ thống mật mã công khai chìa khoá đặt mã và chìa khoá giải mã không giống nhau, dù có biết được chìa khoá đặt mã cũng không có cách nào phá và dịch được mật mã.

Hiện nay, hệ thống mật mã công khai chìa khoá mật mã công khai chìa khoá đặt mã có 2 loại: một loại là ba lô và một loại là RSA.

Hệ thống mật mã ba lô và ''vấn đề ba lô'' trong toán học cố liên quan với nhau. Cái gọi là ''vấn đề ba lô'' là như sau: chiếc ba lô của mật nhà du lịch cớ dung tích là M, ông ta có một số vật dụng, dung tích lần lượt là a1, a2, ...an  ba lô không thể chứa hết được những vật dụng mà ông ta có, vì thế ông ta phải chọn trong số đó những vận dụng có thể nhét vào ba lô được, nhưng chọn thế nào đây để nhét các đồ vật vào ba lô để ba lô không còn một khoảng trống nào?

''Vấn đề ba lô'' cho đến nay vẫn chưa tìm được cách giải quyết hoàn chỉnh, nhưng đối với những thứ đơn giản thì vấn đề cũng không khó giải quyết. Ví dụ, dung tích ba lô là 14, dung tích đồ vật là a1= l, a2=3, a3=5, a4= 10, a5=21, vậy thì chúng ta có thể chọn al, a3, a4, 3 vật này được nhét vào ba lô là được. Nếu viết những vật phẩm được chọn là 1, đồ vật không được chọn là 0, vậy thì thứ tự là 11010, con số này cũng chính là lời giải của vấn đề ba lô. Chúng ta có thể xem 11010 là một chữ số dễ hiểu, rõ ràng. Đem nhân 1 và 0 trong đó lần lượt với a1=1, a2=3, a3=5, a4=10, a5=21 cộng lại được kết quả là 14. Quá trình này có thể coi là đặt mật mã, kết quả 14 có được chính là mật mã. Nếu người thứ ba biết được mật mã là 14, cũng biết luôn tổ hợp chữ số a1,a2,...,a5 thì nhanh chóng biết được hệ thống số đếm nhị phân 11010, bởi vì vấn đề ba lô đơn giản này rất dễ bị giải. Cách biên soạn mã này cũng không còn giá trị nữa. Vì thế các chuyên gia mật mã dựa trên cơ sở này tiến thêm một bước nữa. Ví dụ nhân mỗi số trong dãy a1, a2, ...,a5 với 7, sau đó trừ đi 45, kết quả thu được là b1=7, b2=21, b3=35, b4=25, b5=12. Sau đó lấy từng con số trong dãy 11010 nhân lần lượt với b1,b2,...,b5 ta được: 1x7 + 1x21 + 0x35 + 1x25 + 0x12 = 53, kết quả thu được là 53 (mật mã). Người thứ ba có biết được mật mã này cũng tìm ra được al, a2,...,a5 nhưng rất khó mới tìm ra được dãy số 11010, bởi vì đây là vấn đề ba lô rất khó giải quyết. Nhưng người nhận tín hiệu A nhờ biết 2 con số 7 và 45 chìa khoá giả mã, lại rất dễ dàng từ a1, a2, .. an tìm ra bl, b2,...b5 từ đó tìm ra dãy số 11010.

Đối với những số nguyên rất lớn, cho đến nay con người vẫn chưa tìm ra được một phương pháp hoàn chỉnh có đủ khả năng để phân giải thành những số nguyên tố dễ nhận được. Hệ thống RSA chính là lợi dụng điểm đó. Hệ thống RSA có ý tưởng cơ bản là: lấy 2 số nguyên tố thường lấy 2 số nguyên tố rất lớn có 60, 70 vị trí, sau khi giản hoá rồi thì sẽ thu được số rất nhỏ, giả sử 2 số nguyên tố đó là p = 5, q = 11. Nhân chúng lại được n=55, sau đó tính l=(p- 1)(q- 1) = 40, lại lấy một số e hỗ trợ cho là giả dụ e=7, n và e có thể là chìa khoá đặc mã công khai rồi.

Nếu người truyền tin A, muốn truyền tin ''3'' bằng ngôn ngữ thường cho người B, vậy thì lợi dụng chìa khoá đặt mã n, e của người B để đặt mã, lấy e3, sau đó trừ n được số 42. Số ''42'' chính là ngôn ngữ mật mã. Sau khi B nhận được số 42, dùng chìa khoá giải mã mà chỉ mình mình biết d=23 để giả mã, tìm ra luỹ thừa d của 42, trừ đi n, số còn lại là 3 (ngôn ngữ thường). Nếu người thứ ba có nhận được chìa khoá của B là n và e cũng không có cách nào phá hay dịch được mật mã. Bởi vì khi giải mã cần dùng d, mà muốn có d, nhất định phải phân tích n thành tích của p và q, nếu biết n là số rất lớn, muốn phân tích nó thì không phải là dễ. Vì thế, người thứ ba chỉ còn cách ''nhìn số mà than'' thôi.

Dự đoán vấn đề phân tích những con số lớn trong mấy chục năm tới vẫn còn rất khó giải quyết. Vì thế hệ thống RSA có thể vẫn còn được sử dụng một thời gian nữa. Còn hệ thống ba lô thì đã trở nên ngày một không an toàn. Đương nhiên mỗi một phương pháp bảo mật thì chỉ có tình tương đối, cùng với sự phát triển của khoa học kỹ thuật, phương pháp bảo mật cũ nhất định sẽ không còn bảo mật nữa, vì thế nhất định sẽ có những hệ thống bảo mật mới ra ra đời.




Nguồn: bachkhoatrithuc.vn/encyclopedia/207-26-633360951821196268/Toan-hoc/Vi-sao-co-nhung-mat-ma-da-cong-kh...


Chưa có phản hồi
Bạn vui lòng Đăng nhập để bình luận