Tugas 1 - Kriptografi Klasik
Tugas 1 - Kriptografi Klasik
KRIPTOGRAFI KLASIK
Bryan Dwison (17/409430/PA/17737)
Felix Ogustino (17/412636/PA/17955)
Nathanael Gavin H S (17/412646/PA/17965)
Prawiro Hadi T (17/412650/PA/17969)
Bab 1
Pendahuluan
Kriptografi membuat data atau pesan menjadi kode-kode terlebih dahulu, proses ini
dikenal dengan enkripsi. Enkripsi dapat diartikan sebagai proses mengubah data atau pesan
yang hendak dikirim menjadi bentuk yang tidak dikenali oleh pihak ketiga. Kemudian
penerima melakukan Dekripsi yang merupakan kebalikan dari enkripsi, yaitu mengubah
data atau pesan kembali ke bentuk semula.
Algoritma yang kami buat merupakan gabungan dari beberapa algoritma klasik atau
super enkripsi. Kami menggabungkan Caesar Cipher dan Columnar Transposition Cipher
sebagai algoritma baru yang dibuat. Pada Caesar Cipher digunakan sedikit modifikasi
supaya lebih sulit untuk dipecahkan. Supaya tidak mempersulit penerima, digunakan hanya
1 buah Key sebagai pengolah data. Key merupakan kunci dari enkripsi dan dekripsi data. Key
berbentuk 1 kata berisi hanya huruf dan c
ase insensitive.
Algoritma Enkripsi
1. Preprocessing data, dilakukan fungsi toLowerCase pada plaintext dan Key supaya
lebih mudah diproses, dan apabila ukuran dari text bukan kelipatan panjang Key,
maka perlu ditambahkan data dummy sebagai padding atau penambal. Biasanya
digunakan huruf yang jarang dipakai seperti X, Z, dll.
2. Caesar Cipher (C = p + K1 % 26. K1 = length/panjang dari Key) (HACK memiliki panjang
4, sehingga K1 = 4)
3. Columnar Transposition Cipher (transposisi dengan membagi text menjadi beberapa
baris sebanyak panjang Key, kemudian diambil per kolom dengan urutan sesuai Key)
a. Dilakukan pengubahan Key dari bentuk kata ke bentuk urutan angka 1 s.d
panjang Key berdasarkan urutan alfabetnya. Contoh, jika bentuk kata dari Key
adalah ‘HACK’, maka akan membentuk urutan angka [3, 1, 2, 4]
4. Caesar Cipher pada elemen urutan ganjil (C = p + K2 % 26. K2 = urutan abjad alfabet
dari huruf pertama Key) (HACK memiliki huruf pertama H yang pada urutan abjad
alfabet adalah yang ke-8, sehingga K2 = 8)
5. Caesar Cipher pada elemen urutan genap (C = p + K3 % 26. K3 = urutan abjad alfabet
dari huruf terakhir Key)(HACK memiliki huruf terakhir K yang pada urutan abjad
alfabet adalah yang ke-11, sehingga K3 = 11)
Algoritma Dekripsi
Implementasi
Bab 2
Transposisi Segitiga siku-siku
Algoritma Enkripsi
Jika dalam baris terakhir terdapat elemen yang kosong atau dengan kata lain belum
membentuk segitiga siku-siku, perlu menambahkan elemen dummy dengan nilai
yang sama.
Contoh :
Plaintext : PERHATIKANRAKYAT
P
E R
H A T
I K A N
R A K Y A
T X X X X X
Setelah pembentukan segitiga selesai maka banyaknya row akan dijadikan sebagai
nilai kunci dekripsi.
Kunci Dekripsi : 6
Ciphertext : PEHIRTRAKAXTAKXNYXAXX
Algoritma Dekripsi
Penginputan elemen ciphertext dimulai dari sisi atas segitiga secara vertikal ke
bawah sebanyak nilai kunci dekripsi dimana dalam contoh bernilai 6 lalu dilanjutkan
dengan penginputan pada kolom selanjutnya dimulai dari baris kedua agar
membentuk segitiga siku-siku dan selanjutnya.
Kunci Dekripsi : 6
P
E R
H A T
I K A N
R A K Y A
T X X X X X
Plaintext : PERHATIKANRAKYATXXXXX
DIkarenakan adanya dummy elemen yang ditambahkan pada proses enkripsi yang
biasanya terletak pada elemen-elemen terakhir text dan memiliki nilai yang sama
maka perlu dilakukan penghilangan atau pembersihan terhadap dummy elemen.
Plaintext : PERHATIKANRAKYAT
Daftar Pustaka
1. https://www.geeksforgeeks.org/columnar-transposition-cipher/
2. https://www.geeksforgeeks.org/caesar-cipher-in-cryptography/
3. http://taronizeb.blogspot.com/2017/06/cara-kerja-algoritma-tranposisi.html