Internet: Enkripsi dan Kunci Publik Halo, namaku Mia Gil-Epner, aku mengambil jurusan Ilmu Komputer di UC Berkeley dan bekerja untuk Departemen Pertahanan, di mana aku mencoba menjaga keamanan informasi. Internet adalah sistem terbuka dan publik. Kita semua mengirim dan menerima informasi melalui kawat dan koneksi bersama. Meskipun sistem terbuka, kita masih membagikan banyak sekali data pribadi. Hal-hal seperti nomor kartu kredit, informasi bank, kata sandi, dan surel. Jadi bagaimana cara semua hal pribadi ini disembunyikan? Berbagai jenis data dapat disembunyikan melalui proses bernama enkripsi, pengacakan atau pengubahan pesan untuk menyembunyikan teks aslinya. Sekarang dekripsi adalah proses penyusunan pesan tersebut untuk membuatnya dapat dibaca. Ini adalah ide sederhana, dan orang-orang telah melakukannya selama berabad-abad. Salah satu metode enkripsi pertama yang paling dikenal adalah Caesar's Cipher. Berasal dari Julius Caesar, jenderal Romawi yang mengenkripsi perintah militernya untuk memastikan apabila sebuah pesan direbut oleh musuh, mereka tidak akan bisa membacanya. Caesar Cipher merupakan Algoritma yang menggantikan setiap huruf pada pesan asli dengan huruf yang berjarak beberapa langkah di bawahnya. Jika angka tersebut hanya diketahui oleh pengirim dan penerima, maka itu disebut kunci. Kunci tersebut memungkinkan pembaca untuk membuka pesan rahasia. Contohnya, jika pesan asli Kau adalah 'HELLO', maka menggunakan algoritma Caesar Cipher dengan kunci senilai 5, pesan terenkripsi tersebut akan menjadi seperti ini... Untuk dekripsi pesan, penerima hanya perlu menggunakan kunci untuk membalikkan prosesnya. Namun ada masalah besar dengan Caesar Cipher, siapa pun dapat dengan mudah membobol atau memecah pesan terenkripsi, dengan mencoba semua kemungkinan kunci, dan dalam alfabet bahasa inggris hanya ada 26 huruf, artinya kau hanya perlu mencoba paling banyak 26 kunci untuk mendekripsi pesan. Sekarang mencoba 26 kemungkinan kunci tidak begitu sulit, paling lama membutuhkan waktu satu atau dua jam. Jadi ayo kita bikin lebih sulit. Alih-alih mengubah setiap huruf dengan jumlah yang sama, ayo kita ubah setiap huruf dengan jumlah yang berbeda. Dalam contoh ini, kunci sepuluh digit menunjukkan berapa banyak posisi tiap huruf berurutan yang akan diubah untuk mengenkripsi pesan yang lebih panjang. Menebak kunci ini akan sangat sulit. Dengan menggunakan enkripsi 10 digit, ada 10 miliar kemungkinan solusi kunci. Jelas sekali itu lebih banyak dari yang bisa dipecahkan manusia, akan butuh waktu berabad-abad. Namun komputer rata-rata saat ini, hanya akan membutuhkan beberapa detik untuk mencoba seluruh 10 miliar kemungkinan. Jadi di dunia modern di mana orang jahat dipersenjatai dengan komputer dan bukan pensil, bagaimana caramu mengenkripsi pesan begitu aman hingga terlalu sulit untuk dipecahkan? Terlalu sulit berarti ada terlalu banyak kemungkinan untuk dihitung dalam waktu yang masuk akal. Komunikasi aman saat ini dienkripsi menggunakan kunci 256 bit. Itu artinya komputer penjahat yang merebut pesanmu akan perlu mencoba sekian kemungkinan opsi... hingga mereka menemukan kuncinya dan memecahkan pesannya. Bahkan jika kau memiliki 100.000 komputer super dan setiap komputer mampu mencoba satu juta miliar kunci setiap detiknya, akan membutuhkan bertriliun-triliun tahun untuk mencoba setiap opsi, hanya untuk memecahkan pesan tunggal yang dilindungi dengan enkripsi 256 bit. Tentu saja chip komputer menjadi dua kali lebih cepat dan setengah ukuran sebelumnya setiap tahunnya. Jika laju perkembangan pesatnya berlanjut, masalah yang mustahil saat ini akan dapat dipecahkan hanya dalam beberapa ratus tahun di masa depan dan 256 bit tidak akan cukup aman. Sejujurnya, kami sudah harus meningkatkan panjang kunci standar untuk mengejar kecepatan komputer. Kabar baiknya adalah menggunakan kunci yang lebih panjang tidak membuat enkripsi pesan menjadi jauh lebih sulit, namun meningkatkan jumlah tebakan yang diperlukan untuk memecahkan cipher dengan pesat. Saat pengirim dan penerima berbagi kunci yang sama untuk mengacak dan menyusun sebuah pesan, itu disebut Enkripsi Simetris. Dengan menggunakan Enkripsi Simetris, seperti Caesar Cipher, kunci rahasia harus disetujui terlebih dahulu oleh dua orang secara pribadi. Jadi itu baik bagi semua orang, namun internet itu terbuka dan publik, jadi mustahil bagi dua komputer untuk "bertemu" secara pribadi untuk menyetujui kunci rahasia. Alih-alih komputer menggunakan kunci Enkripsi Asimetris, kunci publik yang dapat ditukarkan dengan siapa pun dan kunci pribadi yang tidak dibagikan. Kunci Publik digunakan untuk mengenkripsi data dan siapa pun dapat menggunakannya untuk membuat pesan rahasia, namun rahasia tersebut hanya dapat didekripsi oleh komputer dengan akses menuju kunci pribadi tersebut. Cara kerjanya adalah dengan perhitungan matematika yang tidak akan kita bahas saat ini. Anggap seperti ini, bayangkan kau memiliki kotak surat pribadi, di mana siapa pun dapat memasukkan surat tapi mereka memerlukan kunci untuk melakukannya. Sekarang kau dapat menggandakan banyak kunci deposit dan mengirimnya untuk temanmu atau bahkan membuatnya tersedia untuk publik. Temanmu atau bahkan orang asing dapat menggunakan kunci publik untuk mengakses slot depositmu dan memasukkan surat, namun hanya kau yang dapat membuka kotak pesan tersebut dengan kunci pribadimu, utnuk mengakses semua pesan rahasia yang kau terima. Dan kau dapat mengirimkan pesan yang aman kembali ke temanmu dengan menggunakan kunci deposit publik ke kotak surat mereka. Dengan begini, semua orang dapat bertukar pesan secara aman tanpa perlu menyetujui kunci pribadi. Kriptografi Kunci Publik adalah dasar dari seluruh pertukaran pesan yang aman di internet yang terbuka ini. Termasuk Protokol Keamanan yang dikenal dengan SSL dan TLS, yang melindungi kita saat kita menelusuri web. Komputermu menggunakannya saat ini, kapan pun kau melihat gembok kecil atau huruf https di bilah alamat browser-mu. Ini berarti komputermu menggunakan enkripsi kunci publik untuk bertukar data secara aman dengan situs web yang kau kunjungi. Semakin banyak orang yang memanfaatkan internet, semakin banyak pula data pribadi yang akan dipancarkan, dan kebutuhan untuk mengamankan data tersebut akan jadi jauh lebih penting. Dan seiring komputer menjadi semakin cepat dan semakin cepat, kami harus mengembangkan cara baru untuk membuat enkripsi yang terlalu sulit untuk dibobol oleh komputer. Ini pekerjaanku dan ini selalu berubah.