Máºt mã khóa công khai được đánh giá là má»™t bÆ°á»›c phát triển vượt báºc Ä‘Æ°a máºt mã từ má»™t nghệ thuáºt thà nh má»™t ngà nh khoa há»c phát triển. Những nghiên cứu, phát kiến trong máºt mã khóa công khai có ảnh hưởng lá»›n đến rất nhiá»u ngà nh khoa há»c khác nhÆ°: là m cầu nối giữa lý thuyết số và khoa há»c máy tÃnh thông qua lý thuyết số tÃnh toán; thúc đẩy các các thuáºt toán xác suất phát triển…
Khái niệm máºt mã hóa công khai
Máºt mã hóa khóa công khai là dạng máºt mã hóa cho phép ngÆ°á»i dùng trao đổi các thông tin máºt mà không cần phải trao đổi các khóa chung bà máºt trÆ°á»›c đó. NgÆ°á»i dùng sẽ thá»±c hiện trao đổi thông tin bằng cách sá» má»™t má»™t cặp các khóa có mối quan hệ toán há»c vá»›i nhau là khóa cá nhân và khóa công khai.
Trong đó, khóa cá nhân phải được giữ bà máºt ngược lại khóa công khai được phổ biến công khai. Trong 2 khóa cá nhân và khóa công khai sẽ có má»™t khóa dùng để mã hóa, má»™t khóa dùng để giải mã. Sẽ không thể tìm ra khóa bà máºt nếu chỉ biết khóa công khai.
Máºt mã hóa công khai thÆ°á»ng được sá» dụng để:
- Mã hóa: Thông tin Ä‘á»±c mã hóa được giữ bà máºt và chỉ có ngÆ°á»i có khóa bà máºt má»›i có thể giải được.
- Tạo chữ ký số: Mã hóa công khai cho phép kiểm tra văn bản để biết rằng văn bản nà y có phải đã được tạo vá»›i má»™t khóa bà máºt hay không?
- Thá»a thuáºn khóa: Cho phép ngÆ°á»i dùng thiết láºp khóa dùng để trao đổi thông tin cần bảo máºt giữa 2 bên.
Lịch sá» máºt mã hóa công khai
Mã hóa công khai đã được ra Ä‘á»i từ khá lâu. Năm 1874, nhà khoa há»c William Stanley Jevons đã xuất bản má»™t cuốn sách có ná»™i dung mô tả mối quan hệ giữa các hà m má»™t chiá»u vá»›i máºt mã há»c và đi sâu và o bà i toán phân tÃch ra thừa số nguyên tố.
Tháng 7 năm 1996, má»™t nhà nghiên cứu khác đã bình luáºn vá» cuốn sách của nhà khoa há»c nhà khoa há»c William Stanley Jevons nhÆ° sau:
Trong cuốn sách có tá»±a Ä‘á» The Principles of Science: A Treatise on Logic and Scientific Method được xuất bản và o năm 1890, William S. Jevons đã phát hiện ra nhiá»u phép toán rất dá»… thá»±c hiện theo má»™t chiá»u nhÆ°ng lại rất khó để thá»±c hiện theo chiá»u ngược lại.
Một và dụ đã chứng minh mã hóa rất dễ dà ng nhưng khi giải mã thì lại không dễ dà ng.
CÅ©ng trong phần nói trên ở chÆ°Æ¡ng 7 (Giá»›i thiệu vá» phép tÃnh ngược) tác giả đã Ä‘á» cáºp đến nguyên lý: Chúng ta dá»… dà ng nhân các số tá»± nhiên nhÆ°ng để phân tÃch kết quả ra thừa số nguyên tố thì không Ä‘Æ¡n giản. Äây chÃnh là nguyên tắc cÆ¡ bản của máºt mã hóa khóa công khai dù tác giả không phải là ngÆ°á»i phát minh ra thuáºt toán nà y.
Thuáºt toán máºt mã hóa khóa công khai được tìm ra đầu tiên bởi James H. Ellis, Clifford Cocks, và Malcolm Williamson tại GCHQ (Anh) và o đầu tháºp ká»· 1970. Sau đó, thuáºt toán nà y được phát triển và biết dÆ°á»›i cái tên Diffie-Hellman. Tuy nhiên những thông tin vá» thuáºt toán nà y chỉ chÃnh thức được tiết lá»™ và o năm 1997.
Năm 1976, Whitfield Diffie và Martin Hellman đã công bố má»™t hệ thống máºt mã hóa khóa bất đối xứng trong đó có nêu ra phÆ°Æ¡ng pháp trao đổi khóa công khai. Nghiên cứu nà y chịu sá»± ảnh hưởng của từ cuốn sách đã xuất bản của Ralph Merkle vá» phân phối khóa công khai.
Nghiên cứu trao đổi khóa của Diffie-Hellman là phÆ°Æ¡ng pháp có khả năng áp dụng trên thá»±c tế đầu tiên để phân phối khóa bà máºt thông qua má»™t kênh thông tin không an toà n.
Năm 1977, Rivest, Shamir và Adleman tìm ra thuáºt toán đầu tiên và công bố nó và o năm 1978. Thuáºt toán nà y được đặt tên là RSA. RSA cho phép sá» dụng tÃnh toán hà m mô-Ä‘un để mã hóa và giải mã cÅ©ng nhÆ° tạo [chữ ký số].
Từ tháºp ká»· 1970 đã có nhiá»u thuáºt toán, tạo chữ ký số… được tìm ra và phát triển.
Ứng dụng của máºt mã khóa công khai
Máºt mã khóa công khai được ứng dụng rất Ä‘a dạng và phong phú nhÆ°ng phổ biến nhất chÃnh là bảo máºt. NgÆ°á»i dùng máºt mã khóa công khai để bảo máºt má»™t văn bản thì chỉ có thể giải mã văn bản đó bằng khóa bà máºt của chÃnh ngÆ°á»i dùng.
Các thuáºt toán tạo chữ kà số khóa công khai có thể dùng để nháºn thá»±c. Cụ thể, má»™t ngÆ°á»i dùng có thể mã hóa văn bản vá»›i khóa bà máºt của mình. Nếu má»™t ngÆ°á»i khác có thể giải mã vá»›i khóa công khai của ngÆ°á»i gá»i đến thì văn bản thá»±c sá»± xuất phát từ ngÆ°á»i gắn vá»›i khóa công khai đó.
Ngoà i ra, máºt mã khóa công khai còn được ứng dụng trong các lÄ©nh vá»±c nhÆ° tiá»n Ä‘iện tá», thá»a thuáºn khóa…
Xem thêm: Khóa cá»a máºt mã – má»™t ứng dụng gần gÅ©i của máºt mã há»c.