. . .

WhatsApp, salah satu platform pesan instan paling populer di dunia, telah mengumumkan bahwa versi terbaru aplikasi mereka telah mendukung enkripsi end-to-end untuk melindungi informasi penggunanya dari pihak lain. WhatsApp mengklaim bahwa pihak mereka tidak akan bisa mengakses pesan terenkripsi yang dikirim oleh pengguna (tanpa seizin pengguna).

Meskipun secara umum, pesan yang dikirim ke jaringan Internet seharusnya telah dienkripsi, namun di dalam smartphone para pengguna, seluruh pesan akan disimpan dalam bentuk plaintext atau pesan tak terenkripsi. Di sinilah perubahan mendasar yang dilakukan oleh WhatsApp pada versi terbarunya. Mereka menawarkan metode penyimpanan data terenkripsi di dalam ponsel pengguna untuk meningkatkan privasi data tersebut.

WhatsApp mengumumkan perubahan ini di dalam blog mereka, yang lebih lanjut dijelaskan di sini. Sementara itu, mereka juga telah merilis whitepaper yang menjelaskan detail teknik kriptografi yang mereka gunakan dalam end-to-end encryption.

whatsapp_end_to_end_encryption_ndtv

Pesan terenkripsi WhatsApp. Sumber gambar: ndtv.com

 

Signal Protocol

WhatsApp memanfaatkan library Signal Protocol dari Whispersystems di dalam enkripsi mereka. Jika dipelajari lebih lanjut, mekanisme yang digunakan mirip seperti mekanisme SSL yang mendasari teknologi HTTPS. Terdapat beberapa bagian di dalam mekanisme ini, di antaranya key exchange protocol (protokol untuk bertukar kunci rahasia), key derivation function (fungsi untuk menciptakan kunci rahasia baru), dan authentication protocol (protokol untuk mengotentifikasi identitas pengguna). Untuk kepentingan key exchange, WhatsApp memanfaatkan Elliptic Curve sebagai public key cryptography (PKC) yang diaplikasikan ke dalam ECDH (Elliptic Curve Diffie Hellman), authentication protocol menggunakan HMAC-SHA256, dan AES256 mode CBC untuk enkripsi pesan.

Identifikasi Pengguna

Di dalam teknik PKC terdapat 2 kunci yang diciptakan, yakni kunci privat dan kunci publik. Kunci privat harus disimpan dengan baik oleh pemiliknya, sementara kunci publik dapat dipublikasikan kepada orang lain. Sementara di dalam sistem WhatsApp, seluruh pengguna menciptakan sepasang kunci tersebut dan mengirimkan kunci publik ke server WhatsApp. Untuk memulai pengiriman pesan, pengirim perlu mendapatkan informasi kunci publik pihak penerima dari server WhatsApp. Selain kunci publik, pengirim juga harus mendapatkan beberapa informasi tambahan seperti Signed Pre Key berisi digital signature pihak penerima dan One-Time Pre Key untuk memastikan bahwa sesi komunikasi tidak diinisiasi di luar sistem WhatsApp.

Inisiasi Sesi

Sebelum pengiriman pesan dimulai, para pihak harus membuat sebuah sesi terenkripsi. Inisiasi tersebut dilakukan dengan membuat master secret dari informasi yang berasal dari pengirim dan penerima. Dengan mekanisme ECDH, pihak penerima dapat menghitung master secret yang sama dengan milik pengirim. Selain mster secret, pengirim juga harus mengitung root key dan chain key. Dengan demikian kunci untuk mengenkripsi pesan tidak perlu dikirimkan melalui jaringan Internet yang tidak aman sebab dapat dihitung oleh kedua belah pihak.

Enkripsi Pesan

Untuk mengenkripsi pesan, kedua pihak ini menggunakan message key (kunci pesan) yang diciptakan dengan menggunakan HKDF (key derivation function berbasis hash) dari chain key yang dihitung dari master secret. Kedua pihak ini dapat menghitung message key yang sama. Message key akan digunakan di dalam fungsi AES256 untuk enkripsi pesan dan HMAC-SHA256 akan dilekatkan ke dalam pesan untuk autentikasi. Sementara itu, di dalam pengiriman pesan di dalam grup, enkripsi akan dilakukan satu persatu secara terpisah yang ditujukan kepada masing-masing anggota grup oleh pihak pengirim. Enkripsi dengan metode yang sama juga dilakukan untuk berkas-berkas seperti video, audio, gambar, atau berkas lain.

Pengiriman Pesan

WhatsApp menggunakan metode berbeda di dalam pengiriman pesan yang disebut Noise Protocol Framework untuk menghindari eavesdropping dari pihak-pihak yang tidak terkait.

Potensi Serangan

Dalam setiap public key cryptography selalu ada potensi serangan man-in-the-middle (MITM). Untuk mengatasi hal ini, WhatsApp menyediakan sebuah fitur khusus untuk memverifikasi secara langsung pihak-pihak yang terkait, yakni pihak pengirim dan penerima pesan. Verifikasi dilakukan menggunakan QR code yang berisi beberapa informasi seperti public key milik pengguna.

Untuk memastikan bahwa MITM tidak terjadi dan mekanisme dilakukan dengan benar, kedua pihak sebaiknya memverifikasi manual public key masing-masing pihak, salah satunya dengan bertatap muka dan bertukar informasi atau menggunakan jalur komunikasi lain dalam bertukar informasi kode verifikasi. Hal ini dilakukan dengan asumsi bahwa WhatsApp dapat dipaksa untuk melakukan penyadapan terhadap penggunanya.

Selain MITM, terdapat potensi masalah pada cara aplikasi menyimpan kunci privat dan chain key yang digunakan untuk mengenkripsi pesan di dalam ponsel. Penyimpanan kunci ini dapat dieksploitasi oleh penyerang jika tidak dilakukan dengan baik. Pada akhirnya, keamanan enkripsi tergantung pada cara aplikasi mengelola kunci privat dan message key pengguna.

Kehilangan Data

WhatsApp dikenal dapat merestorasi pesan-pesan terdahulu dari backup data yang tersedia. Dengan adanya fitur enkripsi, terdapat potensi bahwa pengguna akan kehilangan data jika kehilangan kunci privat dan message key.

Tidak Sesuai Dengan SE-03/2016

Surat Edaran Menteri Kominfo nomor 3 Tahun 2016 tentang Penyediaan Layanan Aplikasi dan/atau Konten Melalui Internet, salah satunya pada angka 5.5.7 menyebutkan salah satu kewajiban penyedia layanan Over The Top

memberikan jaminan akses untuk penyadapan informasi secara sah (lawful interception) dan pengambilan alat bukti bagi penyidikan atau penyelidikan perkara pidana oleh instansi yang berwenang sesuai dengan ketentuan peraturan perundang-undangan

Sementara merujuk pada definisi penyedia layanan Over The Top, WhatsApp dapat dikategorikan sebagai salah satunya. Dengan demikian, WhatsApp tidak lagi sejalan dengan regulasi di Indonesia. Pemerintah melalui badan regulator sebaiknya mulai bertindak untuk menegakkan aturan yang telah dibuat. Terdapat beberapa opsi, di antaranya dengan melarang WhatsApp melakukan update bagi pengguna di Indonesia, atau jika tidak dipatuhi, melarang penggunaan WhatsApp sama sekali melalui infrastruktur Internet di Indonesia.

 

Sumber gambar: firstpost.com

Leave a Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.