Anda di halaman 1dari 23

Rangga Dwitya Nugraha

Satryadi Burnama
 Merupakan algoritma berjenis
symmetric key.
 Kunci yang digunakan untuk melakukan
enkripsi dan dekripsi merupakan kunci
yang sama.
 Dalam proses enkripsi, algoritma ini
menggunakan cara stream cipher
dimana cipher berasal dari hasil XOR
antara bit plaintext dan bit kunci.
Beberapa hal yang menjadi persyaratan:
1. Pemilihan kunci harus dilakukan secara
acak agar tidak mudah diterka.
2. Jumlah karakter kunci harus sepanjang
karakter plaintext.
3. Jika kunci tidak dapat diproduksi ulang
maka algoritma dinyatakan aman.
 Konsep Fungsi untuk mengenkrip pesan
yaitu dengan meng-XOR-kan plaintext
dengan kunci yang telah disiapkan untuk
menghasilkan ciphertext
c = p XOR K
 Sedangkan fungsi untuk mendekrip yaitu
dengan meng-XOR-kan ciphertext dengan
kunci yang sudah disepakati
p = c XOR K
 CONTOH

Seseorang memiliki sebuah plaintext


yaitu UTAMA dan memiliki sebuah kunci
yaitu LUCKY yang akan dienkripsi
menggunakan metode One Time Pad
(panjang kunci harus sama dengan
plaintext).
 LANGKAH PERTAMA
Kita harus mendapatkan kode ASCII dari
plaintext kemudian diubah ke bentuk
biner
KARAKTER ASCII NOTASI BINER
U 85 01010101
T 84 01010100
A 65 01000001
M 77 01001101
A 65 01000001
 LANGKAH KEDUA
Lakukan langkah pertama untuk kunci

KARAKTER ASCII NOTASI BINER


L 76 01001100
U 85 01010101
C 67 01000011
K 75 01001011
Y 89 01011001
 LANGKAH KETIGA (enkripsi)
Lakukan operasi XOR dari notasi biner
yang telah ditentukan antara plaintext
dengan key.

UTAMA: 01010101 01010100 01000001 01001101 01000001


LUCKY: 01001100 01010101 01000011 01001011 01011001 xor

CIPHER: 00011001 00000001 00000010 00000110 00011000


 Proses dekripsi pesan juga melakukan
operasi yang sama yaitu XOR, namun
antara Cipher dengan key.
CIPHER: 00011001 00000001 00000010 00000110 00011000
LUCKY: 01001100 01010101 01000011 01001011 01011001 xor

PLAIN: 01010101 01010100 01000001 01001101 01000001

ASCII: U T A M A
Apakah “hanya” dengan metode XOR
tersebut bisa dikatakan aman?
 Jikakita mendapatkan sebuah cipher
yaitu 00011001 maka kita sulit untuk
memastikan bahwa plaintext-nya adalah
“U”.

Mengapa?
 Kemungkinan sebuah bit kunci berupa 1
atau 0 adalah 1/2 (bisa 1 atau 0 dari 1 dan
0 [1:2]).
 Dari teori di atas dapat menyebabkan
plaintext tidak seimbang atau memiliki
banyak kemungkinan.
Lalu, bagaimana dengan key yang
digunakan berulang-ulang?
 Sebaik dan sesempurna apapun sebuah
algoritma kriptografi maka pengguna
juga dituntut kehati-hatiannya karena
sebuah kesalahan kecil bisa berakibat
sangat fatal.
 Begitu pula dalam OTP, jika sebuah kunci
sudah digunakan lebih dari sekali maka
keamanan pesan dapat mudah lenyap.
Mengapa kunci tidak boleh dipakai
berulang-ulang?
 Seseorang memiliki 2 plain text yaitu U
dan I, dan dienkripsi menggunakan
key=Z

 Bagaimana mengetahui bahwa kedua


plaintext tersebut menggunakan kunci
yang sama?
 XOR-kan plaintext dengan kuncinya

1 2

U 01010101 I 01001001

Z 01011010 Z 01011010

CIPHER1 00001111 CIPHER2 00010011


1. XOR-kan chiper1 dan chiper2
2. XOR-kan Plaintext1 dan Plaintext2
3. Apabila kedua hasil XOR tersebut sama, maka kedua
pesan tersebut menggunakan kunci yang sama

1 2

CIPHER1 00001111 U 01010101

CIPHER2 00010011 I 01001001

00011100 00011100

SAMA
 Kelebihan:
1. Sistem One Time Pad/OTP sulit dipecahkan
 Barisan kunci acak + plaintext yang tidak acak menghasilkan
ciphertext yang seluruhnya acak (Artinya, plaintext yang
dienkripsi dengan kunci yang panjangnya sama dengan
plaintext dan kuncinya acak akan menghasilkan chipertext yang
seluruhnya acak).
 Mendekripsi ciphertext dengan beberapa kunci berbeda dapat
menghasilkan plaintext yang bermakna (punya arti) sehingga
kriptanalis bingung untuk menentukan plaintext mana yang
benar.
2. Merupakan algoritma pengenkripsian data dan informasi yang
relatif sederhana dan mudah digunakan namun cukup aman
dalam menjamin kerahasiaan informasi atau data yang ingin
dikirimkan.
 Kekurangan
1. Algoritma ini kurang efisien karena panjang kunci = panjang pesan
sehingga ada beberapa permasalahan yang timbul yaitu jika pesannya
sangat besar maka :
 Pembangkitan kunci acak yang besar sangat akan membutuhkan
kerja berat pada sistem,
 Penyimpanan juga membutuhkan memori yang besar, karena
datanya secara otomatis menjadi dua kali lipat yaitu kunci dan
chipertext yang sama panjang.
 Pendistribusian kunci juga menjadi kendala yang sangat berarti.
Untuk menjaga keamanan OTP maka secara otomatis kita tidak bisa
mengirimkan kunci dan chipertext pada kanal yang sama, harus
digunakan kanal yang berbeda saat pengiriman kunci dan
chipertext agar jika terjadi penyadapan oleh serangan Man In The
Middle maka kunci dan chipertext tidak didapatkan. (Contoh
penggunaan kanal berbeda misal data chipertext dikirim lewat
media 4G maka chipertext bisa dikirim melalui media lain seperti
Satelit dll).
 Kekurangan
2. Jika sebuah kunci sudah digunakan
maka kunci tersebut tidak bisa
digunakan kembali, penggunaan kunci
yang sama akan berpengaruh terhadap
kerahasiaan pesan. Dengan demikian
semakin sering OTP digunakan, jumlah
kunci semakin berkurang.
PENUTUP
1. One Time Pad sudah dinyatakan oleh
para ahli kriptografi sebagai "perfect
encryption algorithm“.
2. Namun pada penggunaannya terdapat
kekurangan dan kelebihan
Sumber:
1. goo.gl/YYwczB
2. goo.gl/iLvykS
3. https://www.cryptomuseum.com/manuf/mils/files/mils_otp_proof.pdf
4. http://users.telenet.be/d.rijmenants/papers/one_time_pad.pdf

Anda mungkin juga menyukai