
Versi aslinya dari cerita ini muncul di Majalah Quanta.
Selama ribuan tahun, jika Anda ingin mengirim pesan rahasia, pada dasarnya ada satu cara untuk melakukannya. Anda akan mengacak pesan menggunakan aturan khusus, yang hanya diketahui oleh Anda dan audiens yang Anda tuju. Aturan ini bertindak seperti kunci gembok. Jika Anda memiliki kuncinya, Anda dapat menguraikan pesannya; jika tidak, Anda harus mengambil kuncinya. Beberapa kunci sangat efektif sehingga tidak dapat dibuka, bahkan dengan waktu dan sumber daya yang tidak terbatas. Namun skema tersebut pun mengalami kelemahan yang sama yang menimpa semua sistem enkripsi: Bagaimana Anda bisa mendapatkan kunci tersebut di tangan yang tepat dan menjaganya agar tidak jatuh ke tangan yang salah?
Solusi yang berlawanan dengan intuisi, yang dikenal sebagai kriptografi kunci publik, tidak bergantung pada menjaga rahasia kunci namun lebih pada membuatnya tersedia secara luas. Caranya adalah dengan juga menggunakan kunci kedua yang tidak pernah Anda bagikan kepada siapa pun, bahkan dengan orang yang Anda ajak berkomunikasi. Hanya dengan menggunakan kombinasi dua kunci ini—satu publik, satu pribadi—seseorang dapat mengacak dan menguraikan pesan.
Untuk memahami cara kerjanya, lebih mudah untuk membayangkan “kunci” bukan sebagai benda yang dapat dimasukkan ke dalam gembok, namun sebagai dua bahan yang saling melengkapi dalam tinta yang tidak terlihat. Bahan pertama membuat pesan hilang, dan bahan kedua membuatnya muncul kembali. Jika mata-mata bernama Boris ingin mengirim pesan rahasia kepada rekannya Natasha, dia menulis pesan dan kemudian menggunakan bahan pertama untuk membuatnya tidak terlihat di halaman. (Ini mudah dilakukannya: Natasha telah menerbitkan formula yang mudah dan terkenal untuk menghilangkan tinta.) Saat Natasha menerima kertas itu melalui pos, dia menerapkan bahan kedua yang membuat pesan Boris muncul kembali.
Dalam skema ini, siapa pun dapat membuat pesan menjadi tidak terlihat, tetapi hanya Natasha yang dapat membuatnya terlihat kembali. Dan karena dia tidak pernah membagikan formula bahan kedua tersebut kepada siapa pun—termasuk Boris—dia yakin pesannya belum terbaca selama ini. Ketika Boris ingin menerima pesan rahasia, dia hanya melakukan prosedur yang sama: Dia menerbitkan resep mudah untuk menghilangkan pesan (yang dapat digunakan oleh Natasha atau orang lain), sambil menyimpan pesan lain hanya untuk dirinya sendiri yang membuatnya muncul kembali.
Dalam kriptografi kunci publik, kunci “publik” dan “pribadi” bekerja seperti bahan pertama dan kedua dalam tinta khusus yang tidak terlihat ini: Yang satu mengenkripsi pesan, yang lain mendekripsinya. Namun alih-alih menggunakan bahan kimia, kriptografi kunci publik menggunakan teka-teki matematika yang disebut fungsi pintu jebakan. Fungsi-fungsi ini mudah dihitung dalam satu arah dan sangat sulit untuk dibalik. Namun mereka juga mengandung “pintu jebakan”, potongan informasi yang, jika diketahui, membuat fungsi-fungsi tersebut mudah dihitung dalam dua arah.
Salah satu fungsi pintu jebakan yang umum melibatkan perkalian dua bilangan prima besar, sebuah operasi yang mudah dilakukan. Namun membalikkannya—yaitu, memulai dengan hasil kali dan mencari setiap faktor prima—secara komputasi tidak praktis. Untuk membuat kunci publik, mulailah dengan dua bilangan prima besar. Ini adalah pintu jebakanmu. Lipat gandakan kedua angka tersebut, lalu lakukan beberapa operasi matematika tambahan. Kunci publik ini sekarang dapat mengenkripsi pesan. Untuk mendekripsinya, Anda memerlukan kunci privat yang sesuai, yang berisi faktor prima—pintu jebakan yang diperlukan. Dengan nomor-nomor itu, mudah untuk mendekripsi pesan tersebut. Rahasiakan kedua faktor utama tersebut, dan pesannya akan tetap rahasia.