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.