Internet: Penyulitan dan Kunci Awam
Hai nama saya Mia Gil-Epner, jurusan saya ialah
Sains Komputer di UC Berkeley dan saya bekerja
di Jabatan Pertahanan, saya berusaha untuk
menjaga keselamatan maklumat. Internet adalah
satu sistem terbuka dan awam. Kita menghantar dan
menerima maklumat melalui wayar dan sambungan yang
dikongsi. Walaupun ia adalah sismtem terbuka
kita masih bertukar banyak data peribadi
Perkara seperti nombor kad kredit, maklumat
bank, kata laluan, dan e-mel. Jadi
bagaimana semua perkara peribadi ini dirahsiakan?
Semua data boleh dirahsiakan melalui satu
proses yang dikenali sebagai penyulitan, pencampuran
atau penukar mesej untuk menyembunyikan teks
asal. Penyahsulitan adalah proses
supaya ia boleh dibaca semula. Ia adalah
idea yang mudah, dan orang telah melakukannya
selama berabad-abad. Salah satu kaedah
penyulitan terkenal adalah Caesar's Cipher.
Dinamakan sempena Julius Caesar, jeneral Rom
yang menyulitkan perintah ketenteraannya untuk
memastikan bahawa jika mesej dipintas oleh
musuh, mereka tidak dapat membacanya.
Caesar Cipher adalah Algoritma yang menggantikan
setiap huruf dalam mesej asal dengan
huruf lain pada kedudukan tertentu.
Jika nombor kedudukan tersebut adalah sesuatu yang
pengirim dan penerima sahaja tahu, maka ia dipanggil
kunci. Ia membenarkan pembaca membuka
mesej rahsia. Contohnya, jika mesej asal
adalah 'HELLO', gunakan algoritma Caesar
Cipher dengan kunci 5 mesej yang disulitkan
adalah ini... Untuk menyahsulit mesej,
penerima gunakan kunci untuk terbalikkan
proses. Tapi terdapat masalah besar dengan
Caesar Cipher, sesiapa sahaja boleh membuka
mesej tersulit dengan mudah, dengan mencuba
setiap kunci, dan dalam Bahasa Inggeris
hanya terdapat 26 huruf, ini bermakna
hanya 26 kunci perlu digunakan untuk
menyahsulit mesej. Mencuba 26 kemungkinan kunci
bukannya terlalu sukar, hanya perlukan 1 atau 2
jam. Kami akan menyukarkannya. Sebalik
menukar setiap huruf dengan jumlah yang sama,
kita menukar setiap huruf dengan jumlah yang berbeza.
Contohnya kunci sepuluh digit menunjukkan jumlah
kedudukan setiap huruf berturut-turut akan ditukar
untuk menyulitkan mesej yang lebih panjang. Ia sukar
untuk diteka. Menggunakan 10 digit penyulitan
akan menghasilkan 10 bilion kunci yang mungkin.
Jelas sekali ini sesuatu yang sukar untuk manusia
selesaikan, ia akan mengambil masa berabad-abad.
Tetapi komputer hari ini, mungkin mengambil beberapa
saat untuk mencuba semua 10 bilion kemungkinan.
Dalam dunia moden di mana penjahat
mempunyai komputer dan bukan pensel
bagaimana anda menyulitkan mesej
supaya ia sukar dibuka? Terlalu sukar
bermaksud terlalu banyak kemungkinan untuk
diselesaikan dalam masa yang munasabah. Komunikasi
selamat kini disulitkan dengan kunci 256 bit.
Ini bermakna komputer penjahat yang
memintas mesej anda perlu cuba
begitu banyak pilihan... sehingga menemui
kunci dan membuka mesej. Walaupun anda
mempunyai 100,000 super komputer dan setiap
satu boleh mencuba sejuta bilion kunci sesaat
ia akan mengambil bertrilion-trilion tahun
untuk,mencuba setiap pilihan, hanya untuk membuka
satu mesej yang dilindungi dengan penyulitan 256 bit.
Sudah tentu cip komputer menjadi dua kali
lebih cepat dan lebih kecil setiap tahun. Jika
kadar kemajuan eksponen berterusan, masalah yang
mustahil hari ini dapat diselesaikan dalam masa
beberapa ratus tahun pada masa depan, maka
256 bit tidak cukup selamat. Sebenarnya
kita telah meningkatkan standard ukuran
kunci untuk mengejar kemajuan komputer.
Berita baiknya adalah kunci panjang
tidak akan menyukarkan penyulitan tetapi
ia secara eksponen meningkatkan bilangan
tekaan untuk membuka cipher. Apabila
penghantar dan penerima berkongsi kunci sama untuk
penyulitan atau penyahsulitan mesej ia dipanggil
Penyulitan Symmetric. Dengan Penyulitan Symmetric,
seperti Caesar Cipher, kunci rahsia perlu
dipersetujui terdahulu oleh dua orang secara
peribadi. Bagus untuk manusia, tetapi internet
adalah terbuka dan awam jadi ia tidak mungkin
untuk dua komputer "berjumpa" secara peribadi dan
bersetuju pada kunci rahsia. Komputer gunakan
kunci Penyulitan Asimetri, kunci awam yang boleh
ditukar dengan sesiapa sahaja dan kunci peribadi
yang tidak dikongsi. Kunci Awam menyulitkan
data dan sesiapa yang gunakannya boleh cipta
mesej sulit, tetapi penyahsulitan hanya boleh
dilakukan oleh komputer dengan kunci peribadi.
Ini dilakukan dengan menggunakan matematik.
Contoh, bayangkan anda mempunyai
peti mel peribadi,
di mana sesiapa sahaja dengan kunci
boleh deposit surat. Anda boleh membuat
banyak salinan kunci deposit dan memberi
rakan anda atau menjadikannya awam. Rakan
anda atau orang luar boleh gunakan kunci awam
untuk mengakses slot deposit anda dan masukkan
mesej, Tetapi hanya anda boleh membuka peti mel
dengan kunci peribadi anda, untuk mengakses semua
mesej rahsia yang diterima. Dan anda boleh
menghantar mesej selamat kembali ke rakan anda
menggunakan kunci deposit awam ke peti mel mereka.
Cara ini orang boleh bertukar mesej dengan selamat
tanpa memerlukan persetujuan kunci peribadi.
Kriptografi Kunci Awam adalah asas
semua pemesejan selamat di internet
terbuka. Termasuk Protokol Keselamatan
SSL dan TLS, yang melindungi kita apabila
melayari web. Komputer anda menggunakannya,
apabila anda melihat mangga kunci kecil atau
huruf https dalam bar alamat pelayar anda.
Ini bermakna komputer anda menggunakan penyulitan
kunci awam untuk menukar data secara selamat
di laman web. Semakin ramai orang menggunakan
internet semakin banyak data peribadi
akan dihantar, dan keperluan untuk memastikan
bahawa data selamat akan menjadi lebih penting.
Dan apabila komputer menjadi lebih pantas kita
harus mencari kaedah baru untuk membuat penyulitan
lebih sukar untuk komputer buka. Inilah
kerja saya dan ia sentiasa berubah.