Vào năm 1976, một hệ thống có kiểu mã hoá mới gọi là hệ thống mật mã khoá công khai được đưa ra bởi các nhà khoa học Whitfield Diffie, Martin Hellman và Ralph Merkle [1], [7]. Nhưng trong khi hai nhà nghiên cứu đầu tiên đã công bố những phát minh của mình vào thời điểm đó và nhận được nhiều sự quan tâm của đồng nghiệp, thì Ralph Merkle lại thiếu may mắn hơn. Chính vì vậy mà những nghiên cứu của ông mãi đến năm 1978 mới được công bố. Ngày nay người ta đều công nhận rằng tất cả các nhà khoa học trên là cha đẻ của hệ mật mã khoá công khai.
Độ an toàn của hệ thống mật mã mới này, không phải được đo bằng độ phức tạp của các thuật toán mã hoá, mà nó dựa vào một khám phá mới vô cùng quan trọng ngành khoa học máy tính, gọi là lý thuyết độ phức tạp tính toán. lý thuyết độ phức tạp chủ yếu đề cập đến sự phân tích các thuật toán và đặc biệt là số các bước tính toán cần thiết để hoàn thành thuật toán. Từ đó xác định độ an toàn của bất kì hệ mật mã khoá công khai nào, đều được đo bằng tổng thời gian cần dùng cho một máy tính có thể bẻ gẫy hệ mật mã đó.
Trong hệ mật mã khoá công khai, khóa mã hoá ke (khoá công khai) và khoá giải mã kd (khoá riêng) là hoàn toàn khác nhau. Người sử dụng có thể công bố phương pháp mã hoá Eke của mình mà không sợ bị tiết lộ thông tin. Điều này có nghĩa rằng, người thám mã cũng biết được Eke do đó về mặt lý thuyết thì họ có thể biết được phương pháp giải mã Dkd bởi vì hai quá trình này là nghịch đảo lẫn nhau. Tuy nhiên, trên thực tế người thám mã rất khó tìm được Dkd từ Eke. Vì vậy, việc mã hoá thông tin (bản rõ) bằng phương pháp mã hoá Eke vẫn giữ được độ an toàn cho những thông tin bí mật.