Banyak protokol komunikasi menggunakan enkripsi untuk memastikan koneksi Anda aman. Memahami apa yang sebenarnya dilakukan enkripsi dan mengapa penting bagi semua orang adalah ide yang bagus, jadi Anda tahu apa yang dapat melindungi Anda dari, dan apa yang tidak.
Enkripsi adalah proses matematika mengacak data menggunakan enkripsi cipher dan kunci enkripsi. Data terenkripsi atau ciphertext hanya dapat didekripsi kembali ke bentuk “plaintext” aslinya melalui penggunaan kunci dekripsi.
Dengan algoritma enkripsi yang baik, ciphertext harus dapat dibedakan dari noise acak, atau nilai yang tidak berarti. Hal ini membuat tidak mungkin untuk mengetahui apakah data tersebut merupakan ciphertext, atau hanya noise. Desain ini membuatnya lebih sulit untuk menganalisis ciphertext dalam upaya untuk mendekripsi tanpa memerlukan kunci dekripsi melalui proses yang disebut cryptanalysis.
Tip: Kebisingan adalah statis latar belakang acak, seperti salju atau statis yang terlihat di beberapa TV lama saat tidak ada sinyal.
Simetris vs asimetris
Untuk beberapa kelas algoritma enkripsi, kunci dekripsi akan sama dengan kunci enkripsi, di lain dua kunci yang berbeda. Ketika kunci dekripsi sama dengan kunci enkripsi, itu disebut enkripsi simetris. Dalam hal ini, kunci enkripsi dapat dianggap sebagai kata sandi, dan siapa pun yang memiliki kata sandi dapat mengenkripsi atau mendekripsi data. AES adalah contoh yang baik dari algoritma enkripsi simetris, karena salah satu kegunaannya adalah untuk mengamankan komunikasi HTTPS di internet.
Tip: HTTPS atau Hypertext Transfer Protocol Secure, adalah protokol komunikasi terenkripsi utama yang digunakan di internet.
Enkripsi asimetris menggunakan kunci enkripsi dan dekripsi yang terpisah, sering juga disebut sebagai kriptografi kunci publik. Kunci enkripsi dikenal sebagai kunci publik, diterbitkan untuk digunakan siapa saja untuk mengenkripsi data. Kunci dekripsi dikenal sebagai kunci pribadi, dan seperti namanya, itu dirahasiakan.
Bentuk enkripsi ini dapat digunakan untuk memastikan bahwa hanya penerima yang dituju yang dapat mendekripsi dan membaca pesan terenkripsi. Contoh umum dari algoritma enkripsi kunci publik adalah RSA. RSA juga biasa digunakan dalam koneksi HTTPS tetapi hanya agar kedua komputer dapat dengan aman menyetujui kunci enkripsi simetris untuk digunakan.
Tip: Algoritme enkripsi asimetris lebih lambat digunakan daripada algoritma simetris yang memberikan tingkat keamanan serupa. Oleh karena itu, enkripsi asimetris hanya digunakan untuk menyetujui kunci enkripsi simetris dalam protokol yang membutuhkan kecepatan dan efisiensi seperti HTTPS.
Tip: Satu hal yang tidak dilakukan HTTPS adalah menjamin bahwa Anda terhubung ke situs web yang Anda maksud. Apa yang dilakukannya adalah menjamin bahwa Anda menghubungkan situs web yang Anda masukkan di bilah pencarian. Jika Anda salah ketik dan secara tidak sengaja menjelajah ke exanple.com daripada example.com, HTTPS akan mengonfirmasi bahwa Anda terhubung dengan aman ke exanple.com. HTTPS hanya memverifikasi bahwa koneksi Anda ke server web aman. HTTPS juga tidak menyiratkan bahwa situs web yang Anda sambungkan tidak mengandung virus atau perangkat lunak berbahaya lainnya.
Tingkat keamanan
Keamanan algoritma enkripsi diukur dalam bit. Bit keamanan mengacu pada ukuran kunci enkripsi yang digunakan dan oleh karena itu betapa sulitnya menebaknya. Sayangnya, tidak mungkin untuk secara langsung membandingkan keamanan algoritma simetris dan asimetris dengan cara ini.
Algoritme enkripsi simetris seperti AES perlu menggunakan setidaknya kunci enkripsi 128-bit agar dianggap aman, meskipun kunci 256-bit direkomendasikan. Algoritme asimetris perlu menggunakan setidaknya kunci 2048-bit agar dianggap aman.
Kunci enkripsi 256-bit memiliki kemungkinan 2^256 kombinasi, itu dua dikalikan dengan dirinya sendiri 256 kali. Ditulis secara lengkap, ada: 115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936 kemungkinan kombinasi kunci enkripsi 256-bit. Jumlah ini sangat besar sehingga kira-kira sama dengan jumlah atom yang diprediksi para ilmuwan ada di alam semesta yang terlihat.
Sangat sulit untuk menebak dengan benar kunci yang diperlukan untuk mendekripsi data yang dienkripsi dengan kunci 256-bit. Bahkan jika Anda memiliki akses khusus ke superkomputer tercepat dan berabad-abad, Anda masih tidak mungkin menebak kunci dekripsi dengan benar.
Mengapa itu penting?
Saat masuk ke situs web, Anda mengirimkan nama pengguna dan kata sandi Anda, atau detail bank Anda. Detail ini bersifat pribadi dan sensitif, jika orang lain memilikinya, mereka dapat mengakses akun Anda, meniru identitas Anda, mencuri uang dari Anda, dan banyak lagi.
Saat menggunakan protokol HTTP teks biasa, siapa pun di jaringan antara Anda dan server web dapat mencegat dan membaca komunikasi yang Anda kirim dan terima. Ini termasuk kata sandi Anda dan detail sensitif lainnya. Pengguna lain di jaringan rumah Anda, ISP Anda, dan pengguna lain di hotspot Wi-Fi publik mana pun yang Anda sambungkan dapat berada dalam posisi untuk melakukan jenis serangan ini.
Jika Anda menggunakan HTTPS melindungi komunikasi ke dan dari server web, detail Anda dienkripsi dan tidak dapat dibaca oleh orang lain. Enkripsi ini akan menjaga keamanan kata sandi Anda dan data pribadi lainnya saat menjelajah internet.
Enkripsi tidak hanya penting untuk data pribadi atau sensitif; itu juga merupakan alat privasi yang berguna. Misalnya, dapat menghentikan ISP Anda misalnya dari mengintip kebiasaan browsing web Anda.
Mengenkripsi sebanyak mungkin komunikasi Anda membuatnya kurang jelas di mana data sensitif disembunyikan yang mungkin ingin coba dicuri oleh penyerang. Karena itu, pada umumnya disarankan agar Anda menggunakan enkripsi sedapat mungkin untuk mengamankan semua yang Anda lakukan.
Dengan perangkat keras modern dan algoritme enkripsi, enkripsi hanya menambahkan penundaan yang tidak terlihat, jadi Anda juga tidak perlu khawatir akan memperlambat koneksi internet Anda.