Enkripsi adalah proses mengubah data teks biasa yang normal menjadi kode rahasia yang hanya dapat dipahami oleh mereka yang tahu cara mendekripsinya.
Tujuan enkripsi adalah untuk mencegah orang yang tidak diinginkan membaca pesan Anda.
VPN menggunakan enkripsi untuk menyembunyikan detail aktivitas penelusuran Anda saat ditransmisikan dari perangkat ke server VPN.
Penggunaan VPN mencegah ISP, pemerintah, administrator Wi-Fi, peretas, dan pihak ketiga pengintai yang berupaya memata-matai koneksi Anda.
Namun, bagaimana sebenarnya cara kerja VPN? Bagaimana cara VPN mengenkripsi dan mengamankan data Anda?
Di bagian setelah ini, kita akan melihat lebih dekat berbagai komponen dan proses yang menghasilkan enkripsi VPN, dimulai dengan sandi enkripsi.
Sandi Enkripsi

Untuk mengubah aktivitas online Anda menjadi kode yang tidak dapat dipahami, VPN perlu menggunakan sandi enkripsi.
Sandi hanyalah sebuah algoritma (yaitu seperangkat aturan) yang mengenkripsi dan mendekripsi data.
CONTOH: Sandi yang sangat sederhana dapat mengenkripsi data Anda menggunakan aturan ‘tukar setiap huruf dalam pesan dengan huruf sebelumnya dalam urutan alfabet’. Misalnya, privacy
akan menjadi oqhuzbx
.
Sandi biasanya dipasangkan dengan key length (panjang kunci) tertentu. Umumnya, semakin panjang kuncinya, semakin aman enkripsinya. Misalnya, AES-256 dianggap lebih aman daripada AES-128.
Sandi yang paling umum digunakan dalam layanan VPN antara lain:
1Advanced Encryption Standard (AES)
Advanced Encryption Standard (AES) adalah salah satu sandi paling aman yang tersedia. Sandi ini merupakan standar terbaik untuk protokol enkripsi online dan banyak digunakan dalam industri VPN.
AES dibuat oleh National Institute of Standards and Technology (NIST) AS pada tahun 2001 dan kadang juga dikenal sebagai algoritma Rijndael. Sandi ini dirancang untuk menangani file yang lebih besar daripada sandi lain, seperti Blowfish, karena ukuran bloknya yang lebih besar.
AES biasanya tersedia dalam panjang kunci 128-bit dan 256-bit. Meskipun AES-128 masih dianggap aman, kami menyadari bahwa sejumlah organisasi seperti NSA selalu berusaha untuk melemahkan standar enkripsi. Oleh karena itu, AES-256 lebih baik karena bisa menawarkan perlindungan yang jauh lebih besar.
Saat Anda membaca tentang enkripsi ‘level militer‘ atau ‘level perbankan‘ di situs web sebuah layanan VPN, umumnya label tersebut mengacu pada penggunaan AES-256. Pemerintah AS menggunakan enkripsi AES-256 untuk mengamankan data sensitifnya sendiri, dan enkripsi inilah yang kami cari saat menguji dan mengulas VPN.
2Blowfish
Blowfish adalah sandi yang dirancang oleh kriptografer Amerika, Bruce Schneier, pada tahun 1993. Sebelumnya, Blowfish adalah sandi default yang digunakan di sebagian besar koneksi VPN, tetapi kini sebagian besar telah digantikan oleh AES-256.
Biasanya, Anda akan melihat Blowfish digunakan dengan panjang kunci 128-bit meskipun dapat berkisar antara 32 bit hingga 448 bit.
Blowfish memiliki beberapa kelemahan. Yang paling terkenal adalah kerentanannya terhadap serangan kriptografi yang dikenal sebagai ‘birthday attack‘. Karena itulah, Blowfish hanya boleh digunakan sebagai alternatif untuk AES-256.
3ChaCha20
Diluncurkan pada tahun 2008 oleh Daniel Bernstein, ChaCha20 adalah sandi enkripsi VPN yang relatif baru. Walaupun demikian, ChaCha20 makin populer karena merupakan satu-satunya sandi yang kompatibel dengan protokol WireGuard yang baru muncul.
Seperti AES, ChaCha20 menggunakan panjang kunci 256-bit yang dinilai sangat aman. Sejumlah laporan juga menunjukkan bahwa ChaCha20 tiga kali lebih cepat daripada AES.
Hingga saat ini, belum ditemukan kerentanan pada ChaCha20. Oleh sebab itu, sandi ini menjadi alternatif untuk AES yang disambut positif mengingat teknologi enkripsi bersiap menghadapi tantangan komputasi kuantum dalam waktu yang tidak lama lagi.
4Camellia
Camellia adalah sandi yang sangat mirip dengan AES dalam segi keamanan dan kecepatan. Walaupun menggunakan opsi panjang kunci yang lebih kecil (128 bit), mengingat perkembangan teknologi saat ini, sandi ini dianggap tidak mungkin dipecahkan dengan serangan brute-force. Hingga kini, belum ada serangan yang efektif melemahkan sandi Camellia.
Perbedaan utamanya dengan AES adalah Camellia tidak disertifikasi oleh NIST, lembaga AS yang menciptakan AES.
Walau selalu terdapat argumen untuk menggunakan sandi yang tidak terkait dengan pemerintah AS, Camellia jarang tersedia di perangkat lunak VPN dan juga belum teruji secara menyeluruh seperti AES.
RINGKASAN: VPN sebaiknya tidak menggunakan sandi dengan kualitas di bawah AES-256 untuk mengenkripsi data Anda. ChaCha20 dan Camellia adalah alternatif yang aman, tetapi VPN Anda setidaknya harus menawarkan pilihan AES.
Protokol VPN
Protokol VPN adalah serangkaian aturan dan proses yang diikuti perangkat Anda untuk membuat koneksi yang aman dengan server VPN.
Dengan kata lain, protokol VPN menentukan cara terowongan VPN dibuat, sedangkan sandi enkripsi digunakan untuk mengenkripsi data yang ditransmisikan melalui terowongan tersebut.
VPN akan memiliki kecepatan, kemampuan, dan kerentanan yang berbeda tergantung pada protokol yang digunakan. Sebagian besar layanan VPN mengizinkan Anda memilih protokol yang ingin digunakan di pengaturan aplikasi.
Terdapat beberapa protokol VPN yang tersedia, tetapi tidak semuanya aman untuk digunakan. Berikut ini gambaran umum singkat tentang protokol yang paling umum:
- OpenVPN: Sumber terbuka, sangat aman, dan kompatibel dengan hampir semua perangkat yang mendukung VPN.
- WireGuard: Sangat cepat dan efisien, tetapi belum dipercaya oleh industri VPN sepenuhnya karena rilisnya masih relatif baru.
- IKEv2/IPsec: Protokol sumber tertutup yang luar biasa untuk pengguna VPN seluler, tetapi diduga telah disusupi oleh NSA.
- SoftEther: Tidak didukung oleh banyak layanan VPN, tetapi cepat, aman, dan bagus untuk melewati penyensoran.
- L2TP/IPsec: Protokol lebih lambat yang juga diduga telah diretas oleh NSA.
- SSTP: Mengatasi firewall dengan baik, tetapi berprotokol sumber tertutup dan berpotensi rentan terhadap serangan MITM (Man-in-the-Middle).
- PPTP: Usang, tidak aman, dan bagaimanapun juga harus dihindari.
PELAJARI SELENGKAPNYA: Untuk ulasan lebih mendalam tentang berbagai jenis protokol VPN dan untuk mengetahui opsi yang terbaik, baca panduan lengkap protokol VPN dari kami.
Handshake VPN
Selain protokol dan sandi, VPN juga menggunakan proses yang dikenal sebagai handshake dan autentikasi hash untuk lebih mengamankan dan mengautentikasi koneksi Anda.
Handshake mengacu pada koneksi awal antara dua komputer. Proses ini adalah semacam perkenalan antara kedua komputer untuk mengautentikasi satu sama lain serta ditetapkannya aturan untuk berkomunikasi.
Selama proses handshake, klien VPN (yaitu perangkat Anda) akan menjalin koneksi awal dengan server VPN.
Koneksi ini kemudian digunakan untuk berbagi kunci enkripsi dengan aman antara klien dan server. Kunci inilah yang digunakan untuk mengenkripsi dan mendekripsi data di kedua ujung terowongan VPN di seluruh sesi penelusuran Anda.

Handshake VPN cenderung menggunakan algoritma RSA (Rivest-Shamir-Adleman). RSA telah menjadi basis untuk keamanan internet selama dua dekade terakhir.
Meskipun belum ada bukti kuat telah dibobol, RSA-1024 umumnya dianggap menimbulkan risiko keamanan mengingat daya pemrosesannya yang tersedia saat ini.
RSA-2048 adalah alternatif yang jauh lebih aman dan memiliki perlambatan komputasi yang relatif kecil. Dengan begitu, sebagian besar layanan VPN telah berpaling dari RSA-1024.
Anda sebaiknya hanya memercayai layanan VPN yang menggunakan RSA-2048 atau RSA-4096.
Meskipun proses handshake berjalan dengan baik dan menghasilkan enkripsi yang aman, setiap sesi yang dihasilkan bisa didekripsi dengan kunci privat yang digunakan dalam handshake RSA. Artinya, RSA adalah seperti ‘kunci master’.
Jika pernah disusupi, kunci master dapat digunakan untuk mendekripsi setiap sesi aman di server VPN tersebut, sesi terdahulu ataupun sesi yang berlangsung saat ini. Penyerang dapat meretas server VPN dan mendapatkan akses ke semua data yang ditransmisikan melalui terowongan VPN.
Untuk menghindarinya, sebaiknya gunakan layanan VPN yang disiapkan dengan Perfect Forward Secrecy.
Perfect Forward Secrecy

Perfect Forward Secrecy adalah fitur protokol yang menggunakan algoritma pertukaran kunci Diffie-Hellman (DH) atau Elliptic Curve Diffie-Hellman (ECDH) guna menghasilkan kunci sesi sementara.
Perfect Forward Secrecy memastikan bahwa kunci enkripsi tersebut tidak pernah dipertukarkan di seluruh koneksi.
Sebaliknya, server VPN dan klien VPN menghasilkan kunci sendiri menggunakan algoritma DH atau ECDH secara independen.
Secara matematis, proses ini sangat rumit. Akan tetapi, Perfect Forward Secrecy pada dasarnya menghilangkan potensi ancaman dari satu kunci privat yang, jika disusupi, bisa mengekspos setiap sesi aman yang pernah di-hosting di server.
Namun, kunci ini bersifat sementara. Artinya, kunci tersebut hanya mampu mengungkapkan satu sesi tertentu, tidak lebih.
Perlu diperhatikan bahwa RSA sendiri tidak dapat menyediakan Perfect Forward Secrecy. DH atau ECDH juga harus disertakan dalam rangkaian sandi RSA agar dapat diterapkan.
ECDH sebenarnya dapat digunakan secara mandiri—sebagai pengganti RSA—untuk menghasilkan Handshake VPN yang aman dengan Perfect Forward Secrecy. Namun, waspadai layanan VPN yang hanya menggunakan DH karena rentan terhadap pembobolan. Masalah ini tidak akan timbul apabila digunakan bersama RSA.
Tiga protokol VPN teratas yang kami rekomendasikan—OpenVPN, WireGuard, dan IKEv2—semuanya mendukung Perfect Forward Secrecy.
Autentikasi Hash
Secure Hash Algorithms (SHA) digunakan untuk mengautentikasi integritas data yang ditransmisikan dan koneksi klien-server. Algoritma ini memastikan bahwa informasi tidak diubah saat ditransmisikan dari sumber ke tujuan.
SHA bekerja dengan mengedit data sumber menggunakan sarana yang dikenal sebagai fungsi hash. Pesan sumber asli dijalankan melalui algoritma dan hasilnya berupa string karakter dengan panjang konstan yang tidak terlihat seperti pesan aslinya. String karakter ini dikenal sebagai “nilai hash“.
Fungsi ini bersifat satu arah, jadi Anda tidak dapat menjalankan proses de-hash untuk menentukan pesan asli dari nilai hash.
Proses hash berguna karena hanya dengan mengubah satu karakter dari data sumber input, nilai hash yang dihasilkan dari fungsi hash akan berubah total.
Klien VPN akan menjalankan data yang diterima dari server, dikombinasikan dengan kunci rahasia, melalui fungsi hash yang disetujui selama proses Handshake VPN.
Jika nilai hash yang dihasilkan klien berbeda dengan nilai hash pada pesan, data akan dibuang karena pesan telah diubah.
Autentikasi hash SHA mencegah serangan MITM karena mampu mendeteksi pengubahan apa pun dengan sertifikat yang valid.
Tanpa autentikasi ini, peretas dapat menyamar sebagai server VPN yang sah dan mengelabui Anda supaya terhubung ke server yang tidak aman sehingga aktivitas dapat dipantau oleh peretas.
SHA-1 terbukti memiliki kelemahan yang dapat membahayakan keamanan. Jadi, untuk memastikan keamanan maksimum, sebaiknya gunakan layanan VPN yang menggunakan SHA-2 atau yang lebih tinggi.