Từ mật mã đối xứng đến không đối xứng.
Mật mã là nghệ thuật của những con số và tạo ra một thông điệp không thể hiểu được bởi người dân. Có bằng chứng về việc sử dụng nó từ thời cổ đại (được gọi là mã của Caesar, dịch chuyển bảng chữ cái theo một số bước nhất định và thay thế các chữ cái gốc để có được thông điệp được mã hóa).
Tuy nhiên, để gọi đây là "symmetrical" (vì cùng một khóa được sử dụng để mã hóa và giải mã) là không đủ vì hai lý do.
Đầu tiên, nó không đảm bảo tính xác thực, làm thế nào để chắc chắn rằng người gửi là người họ nói?
Mặt khác, nó cũng không cho phép xác minh tính toàn vẹn của thông điệp, tức là làm thế nào để đảm bảo rằng thông tin không bị thay đổi trong quá trình truyền tải? Đúng vậy, bất kỳ ai phát hiện ra phương pháp mã hóa đều có thể chặn tin nhắn, giải mã, sửa đổi, mã hóa lại và chuyển tiếp đến người nhận.
Ngoài ra, mật mã đối xứng yêu cầu trao đổi trước một khóa (ở đây là số lượng các ký tự còn thiếu) giữa người gửi và người nhận, đây là một rủi ro bổ sung trong trường hợp bị chặn.
Qua nhiều thế kỷ, các phương pháp đã được cải tiến, nhưng luôn dựa trên hai nguyên tắc này: thay thế thủ công các chữ cái bằng các chữ cái khác và nhu cầu trao đổi khóa giữa người gửi và người nhận.
Cho đến Thế chiến thứ hai, không có quy trình nào có thể chịu được những kẻ phá mã, chủ yếu là các nhà ngôn ngữ học. Sau đó là cơ khí hóa mật mã với sự phát triển của cỗ máy Enigma nổi tiếng. Ở đây, mỗi chữ cái của tin nhắn gốc được mã hóa bằng một chữ cái khác đi qua một cơ chế được tạo thành từ các rôto và các kết nối của dây cáp cung cấp hàng triệu tổ hợp mã hóa.
Lợi thế của cơ giới hóa: nó làm tăng đáng kể tốc độ và cực kỳ khó bị phá vỡ. Tuy nhiên, các nhà toán học (kể cả nhà toán học Turing) đã tìm cách giải mã các thông điệp Enigma bằng cách phát triển các máy tính cơ điện đầu tiên.
Enigma - mật mã đã được cách mạng hóa nhưng nó cũng gặp phải những vấn đề tương tự như mật mã của Caesar: nhiệm vụ trao đổi sổ khóa (sự sắp xếp hàng ngày của các rôto và kết nối) và các rủi ro liên quan cũng như không có khả năng xác minh tính xác thực và tính toàn vẹn của các thông điệp.
Vào những năm 1980, Internet, email và thương mại trực tuyến đã làm gia tăng đáng kể nhu cầu trao đổi thông tin an toàn, nhưng các phương pháp mật mã truyền thống không cho phép điều này.
Nếu lần đầu tiên bạn cần trao đổi, làm thế nào bạn có thể trao đổi thành công giữa 2 người trên mạng không quen biết nhau, giữa 2 máy, giữa 1 người và 1 máy chủ?
Diffie và Helman và đặc biệt là Rivest, Shamir và Adleman (được biết đến nhiều hơn với từ viết tắt RSA) vào năm 1977 sẽ cách mạng hóa mật mã bằng cách phát minh ra một hệ thống vẫn đang được sử dụng, không yêu cầu hai bên liên quan phải trao đổi khóa trước cuộc trò chuyện của họ.
Mỗi người tham gia phải tạo trước một cặp khóa (1 khóa công khai được mọi người chia sẻ và truy cập và một khóa riêng được giữ bí mật). Đây là lý do tại sao kỹ thuật này được gọi là mật mã không đối xứng.
Liên kết toán học giữa các khóa này là gì?
Hãy tưởng tượng 2 số nguyên tố: 3 và 7 (p và q)
• Khóa công khai "n = p * q" là 21
• Khóa riêng là cặp số 3 và số 7
Nói một cách điện tử, phép nhân 'p' và 'q' rất dễ dàng và nhanh chóng, trong khi ngược lại, việc phân tích nhân tử của 'n' đòi hỏi phải kiểm tra tất cả các kết hợp có thể có và do đó tốn nhiều thời gian và CPU.
Rõ ràng, việc phân tích thừa số '21' không phức tạp lắm, nhưng trong mật mã hiện đại, người ta xử lý các số có thứ tự là 3,10 ^ 616 (đối với các khóa 2048 bit). Để đưa ra thứ tự về độ lớn, sẽ có khoảng 10 ^ 82 nguyên tử trong vũ trụ…
Tóm lại, sự khác biệt giữa mật mã đối xứng và không đối xứng là mã hóa đối xứng sử dụng một khóa cho cả mã hóa và giải mã, còn mã hóa không đối xứng sử dụng khóa công khai để mã hóa và khóa riêng tư để giải mã.
Bạn thấy cái nào là tốt nhất?
Nguồn: Ban Cơ yếu chính phủ