“ ◂ Pendahuluan
◂ Dasar Teori
◂ Metode Penelitian
◂ Pembahasan
◂ Kesimpulan
2
PENDAHULUAN
Tentang whatsapp, perlunya
secure data dan metode
yang secure yang digunakan
PENDAHULUAN
Whatsapp merupakan aplikasi/platform social media pada
smartphone yang digunakan untuk berkomunikasi.
Layanan : messages (text, images, files, videos, voice
messages, chats, group chats), voice call, dan video call.
Jumlah pengguna :1500 juta
Tanggung jawab untuk menjaga informasi yang bersifat
privasi. Dengan jumlah pengguna yang banyak maka
dapat membahayakan privasi sekitar 10% .
4
PENDAHULUAN (Lanj.)
7
Public Key Cryptosystem
8
◂ Encryption with public key
9
◂ Encryption with private key
10
Aplikasi dari Public Key Cryptosystem
11
Confidentiality : kerahasiaan pesan
12
Authentication : keaslian pesan
13
Authentication and Secrecy :
kerahasiaan dan keaslian pesan
14
Public Key Cyptosystem
15
◂ Berdasarkan algoritma, pengaplikasian
public key cryptosystem sebagai berikut,
16
Elliptic Curve
17
Securing Hash Algorithm (SHA)
18
Perbandingan parameter-parameter
SHA
19
Hash Message Authenticatio Code
(HMAC)
20
Advanced Encryption Standard
◂ AES merupakan standar enkripsi, algoritma enkripsi
yang memiliki cara untuk mendapatkan data asli,
dengan kunci simetris kunci yang sama dapat
digunakan sebagai enkripsi dan deskripsi. Algoritma AES
adalah blok chipertext simetrik yang dapat
mengenkripsi (encipher) dan dekripsi (decipher)
informasi.
21
Parameter AES
22
PEMBAHASAN
Membahas tentang tahap
tahap dalam pengamanan
pesan
PEMBAHASAN
24
Public Key Type
◂ Identitiy Key Pair : long term curve25519 key.
Dibangkitkan saat pertama kali digunakan
◂ Signed Pre Key : medium term curve25519 key.
Dibangkitkan saat pertama kali digunakan.
Menghasilkan kunci sebagai sign untuk identity key
◂ One Time Pre Key : sebuah antrian dari pasangan kunci
dari curve25519. Dibangkitkan saat pertama kali
digunakan dan diganti dengan yang lain saat
dibutuhkan
25
Session Key Type
26
Client Registration
27
Initiating Session Setup
28
Initiating Session Setup
◂ Proses :
◂ Initiating Client (“Initiator”) yang merupakan user yang pertama kali
meminta komunikasi dengan user lain meminta public identitiy key,
public signed pre key, dan 1 public one time pre key milik user lain ke
server
◂ Server menjawab permintaan Initiator dengan memberikan suatu
nilai public key. One time pre key hanya bisa digunakan sekali .
Setelah diterima oleh Initiator maka one time pre key tadi akan
dihapus dari storage server
◂ Initiator menyimpan Identity Key penerima sebagai Irecepient. Signed
Pre Key penerima sebagai Srecepient. One Time Pre Key penerima
sebagai Orecepient
◂ Initiator membangkitkan kunci curve25519 sebagai Einitiator
29
Initiating Session Setup (Lanj.)
◂ Initiator mengisi Identity Key dengan Iinitiator
◂ Initiator menghitung untuk mencari master_secret
dengan cara,
[master_secret = ECDH(Iinitiator, Srecepient) || ECDH(Einitiator,
Irecepient) || ECDH(Einitiator, Srecepient) || ECDH(Einitiator, Orecepient)]
◂ Jika tidak ada One Time Pre Key, maka ECDH terakhir
dapat dihilangkan
◂ Initiator menggunakan HKDF untuk membangkitkan
Root Keys dan Chain Keys dari master_secret
30
Receiving Session Setup
◂ Setelah melakukan enkripsi dan melakukan pembentukan sesi,
maka pengirim dapat segera mulai mengirim pesan ke penerima
walaupun penerima sedang offline. Sampai sebelum penerima
merespon, semua informasi yang dibutuhkan untuk membentuk
corresponding session disimpan di header pada semua pesan dari
Initiator (Einitiator, Iinitiator) Proses yang terjadi pada receiving session
adalah sebagai berikut,
1. Penerima menghitung master_secret dengan menggunakan private
key dan public key yang ada di header pada semua pesan.
2. Penerima menghapus One Time Pre Key
3. Initiator menggunakan HKDF untuk mendapatkan Root Keys dan
Chain Keys dari master_secret
31
Exchanging Messages
◂ Pada Whatsapp pertukaran pesan antar klien dilindungi
dengan Messages Key dengan menggunakan enkripsi
AES-256 pada mode CBC (Cipher Block Chaining) serta
menggunakan HMAC-SHA256 sebagai integritas data.
Proses enkripsi end-to-end pada pengamanan
Whatsapp sebagai berikut,
32
Proses Enkripsi End-to-End
33
Maka :
◂ Pesan langsung dikirim dari A ke B setelah melalui
proses enkripsi. Message Key yang sudah digunakan
untuk mengenkripsi pesan tidak dapat digunakan
untuk mengenkripsi ulang pada pesan lain. Curve25519
hanya digunakan untuk pengiriman pesan saat itu saja.
Berikut contoh pengiriman pesan hasil enkripsi end-to-
end,
34
KESIMPULAN
KESIMPULAN
◂ Penggunaan enkripsi end-to-end memiliki tingkat keamanan
yang tinggi karena berbagai parameter :
1. Penggunaan 1 jalur sebagai jalur komunikasi antara pengirim
dan penerima.
2. Informasi yang dikirim hanya bisa dibuka oleh penerima tanpa
bisa diketahui oleh orang ketiga. Whatsapp servers tidak
memiliki akses terhadap private keys dari pengguna sehingga
pesan tidak dengan mudah di dekripsi.