T1 - 672009015 - Full Text
T1 - 672009015 - Full Text
Artikel Ilmiah
Peneliti:
Arie Eko Tinikar (672009015)
M. A. Ineke Pakereng, M.Kom.
Alz Danny Wowor, S.Si., M.Cs.
Artikel Ilmiah
Diajukan kepada
Fakultas Teknologi Informasi
Untuk memperoleh gelar Sarjana Komputer
Peneliti:
Arie Eko Tinikar (672009015)
M. A. Ineke Pakereng, M.Kom.
Alz Danny Wowor, S.Si., M.Cs.
ii
iii
iv
v
vi
vii
viii
Modifikasi Kriptografi One Time Pad (OTP)
Menggunakan Padding Dinamis dalam Pengamanan
Data File
1)
Arie Eko T 2)M. A. Ineke Pakereng 3)Alz Danny Wowor
Fakultas Teknologi Informasi
Universitas Kristen Satya Wacana
Jl. Diponegoro 52 – 60, Salatiga 50711, Indonesia
Email : 1) aet_50@yahoo.com
2)
inekep200472@yahoo.com, 3)alzdanny.wowor@staff.uksw.edu
Abstract
Properties of symmetric cryptography One Time Pad (OTP), which requires the
number of characters key must be a plaintext character along its own weaknesses in
its application to relatively large files. Application of padding is needed as one of the
solutions that can be used in a symmetric cryptographic processing relatively large
files. In this study has developed a padding character that maximize the use of the
American Standard Code for Information Interchange (ASCII) as the key generated
from the key input is done.
Sifat kriptografi simetris One Time Pad(OTP) yang mewajibkan jumlah karakter key
harus sepanjang karakter plaintext menjadi suatu kelemahan tersendiri dalam
penerapannya pada file yang relatif besar. Penerapan padding diperlukan sebagai salah
satu solusi agar kriptografi simetris dapat digunakan dalam pemrosesan file yang
relatif besar. Dalam penelitian ini telah dikembangkan sebuah padding yang
memaksimalkan penggunaan karakter American Standard Code for Information
Interchange (ASCII) sebagai key yang dibangkitkan dari inputan key yang dilakukan.
_______________________________________________________________________________________________________________________________
1)
Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen Satya
Wacana, Salatiga.
2)
Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga.
3)
Staff Pengajar Fakultas Teknologi Informasi, Universitas Kristen Satya Wacana, Salatiga.
Pendahuluan
1. Tinjauan Pustaka
2
dapat digabungkan ke dalam algoritma Advanced Encryption Standard (AES)
dalam melakukan enkripsi dan dekripsi, dengan memasukkan OTP ke dalam
AES menghasilkan kriptografi baru dengan nama kriptografi OTP AES. Pada
kriptografi OTP AES, panjang kunci tidak mempengaruhi lama waktu enkripsi
dan dekripsi, ukuran file sebelum dan sesudah enkripsi tidak berubah atau
sama, serta spesifikasi komputer mempengaruhi lama waktu proses enkripsi
dan dekripsi [2].
Penelitian yang lain dengan judul “Implementasi Modifikasi Kriptografi
One Time Pad (OTP) untuk Pengamanan Data File”, membahas modifikasi
algoritma OTP pada penyamaan panjang kunci dengan memberikan undian
urutan keluar pada tiap karakter kunci. Undian tersebut adalah hasil dari
modulo urutan karakter pada plainteks, membuat karakter kunci dikeluarkan
dengan urutan pengulangan karakter secara acak [1]. Berdasarkan penelitian
terdahulu maka dilakukan penelitian untuk memodifikasi OTP dengan
melakukan implementasi padding yang berfungsi untuk menambahkan
karakter key dengan ASCII menggunakan karakter key yang ada sebagai
awalan. Pada tabel 1 dapat dilihat apa yang telah dikembangkan pada
penelitian sebelumnya dan yang telah dikembangkan lagi pada penelitian ini.
3
pertama kali diperkenalkan oleh Gilbert Vernam dalam perang dunia pertama,
metode penyandian OTP merupakan salah satu variasi dari metode penyandian
substitusi dengan cara memberikan syarat-syarat khusus terhadap kunci yang
digunakan yaitu terbuat dari karakter/huruf yang acak (kunci acak atau pad),
dan pengacakannya tidak menggunakan rumus tertentu. Jika kunci tersebut
benar-benar acak, digunakan hanya sekali, serta terjaga kerahasiannya dengan
baik, maka metode penyandian OTP ini sangat kuat dan tidak dapat dipecahkan
[7]. Algoritma ini merupakan algoritma berjenis symmetric key yang artinya
bahwa kunci yang digunakan untuk melakukan enkripsi dan dekripsi
merupakan kunci yang sama. Dalam proses enkripsi, algoritma ini
menggunakan cara One Time Pad, dimana cipher berasal dari hasil XOR antara
bit plaintext dan bit key [8]. Berikut adalah rumusan OTP original:
2. Metode Penelitian
Analisa Kebutuhan
Pengumpulan Data
Evaluasi
Penulisan Laporan
4
Berdasarkan Gambar 1 terdapat lima tahap dalam penelitian yang akan
dijelaskan sebagai berikut. Tahap pertama: Analisa kebutuhan, tahap analisa
kebutuhan yaitu, melakukan analisa mengenai kebutuhan apa saja yang
dibutuhkan dalam perancangan modifikasi ini, dan analisa bagaimana karakter
OTP itu sendiri. Tahap kedua: pengumpulan data, dalam tahapan ini dilakukan
pengumpulan terhadap data dari jurnal-jurnal terkait, buku, serta sumber
mengenai pembahasan terkait penelitian tersebut. Tahap ketiga: Perancangan
modifikasi dan Pembuatan Program perancangan modifikasi yang meliputi
pembuatan flowchart untuk pengambilan keputusan, serta melakukan analisa-
analisa hasil yang dapat diambil dari modifikasi yang telah dilakukan. Tahap
keempat: Melakukan implementasi modifikasi ke dalam program, evaluasi
terhadap keseluruhan perancangan dan modifikasi yang telah dibuat, apakah
sudah berjalan dengan semestinya, jika belum maka dilakukan perbaikan-
perbaikan yang diperlukan. Tahap kelima: Penulisan laporan
mendokumentasikan proses penelitian yang sudah dilakukan dari tahap awal
hingga akhir ke dalam tulisan yang nantinya akan menjadi laporan hasil
penelitian.
Pada perancangan ini dilakukan dalam dua proses, yaitu proses enkripsi
dan dekripsi. Pada masing-masing proses tersebut harus menyiapkan data(file)
dan kunci(key). Secara umum proses enkripsi dapat dilihat pada Gambar 2 dan
dekripsi pada Gambar 3.
START
Pilih file(plaintext)
Input kunci(key)
pa = jb + i
Ciphertext
END
5
Proses enkripsi-dekripsi diawali dengan memilih plaintext untuk enkripsi
dan ciphertext untuk dekripsi dan menginputkan key. Kemudian key akan
dipisahkan perkarakter, kemudian dilakukan pembacaan panjang
plaintext/ciphertext. Selanjutnya key akan diproses dengan penyamaan yang
akan berulang sebanyak panjang plaintext/ciphertext untuk menghasilkan key
yang sama panjang dengan plaintext/ciphertext.
START
Pilih file(ciphertext)
Input kunci(key)
pa = jb + i
plaintext
END
6
c. Persamaan pertama
Panjang ASCII (i) yang ditambahkan pada tiap karakter key.
i ={ c1, c2, c3..., c255 } (4)
d. Menyiapkan fungsi penambahan karakter
Digunakan sebagai fungsi utama untuk membangkitkan key sebagai
penambahaan karakter.
pa = jb + i (5)
e. Menyiapkan fungsi pembatasan
Jika pa ≤ 255 = pa
Jika pa > 255 = pa – 256 (6)
START
Memisahkan
karakter key
pa = jb + i
Cipherkey
END
7
2) Inputkan key yang masing-masing akan dikonversi menjadi kode ASCII
dan dipisahkan sesuai urutan inputan.
j ={ b1, b2, b3..., bm} (8)
3) Menggunakan fungsi Persamaan karakter dengan tiap satu karakter key
yang akan diproses sebanyak i dan akan dilakukan bergilir pada karakter
berikutnya sesuai urutan inputan.
pa = jb + i (9)
Fungsi ini akan berjalan total sebanyak f untuk menghasilkan cipherkey
dengan karakter sebanyak f.
4) Jika hasil dari pa = jb + i lebih besar dari 255, maka hasilnya akan di
kurangi dengan 256 agar hasil yang didapat tidak melebihi batasan pada
ASCII.
Dapat dilihat isi pada file sebelum dienkripsi masih dapat terbaca. Waktu
enkripsi yang dibutuhkan adalah 18,2523437499985 detik, dapat dilihat pada
Gambar 6.
8
Gambar 6 Waktu yang Dibutuhkan Enkripsi
9
Gambar 8 Waktu yang Dibutuhkan Dekripsi
Sebagai contoh akan melakukan padding pada nama “Arie Eko Tinikar.”
sebagai file yang terdiri atas 17 karakter, dan “fti” berfungsi sebagai key yang
terdiri atas 3 karakter yang akan ditunjukan sebagai berikut.
file = Arie Eko Tinikar.
key = fti
Karakter F T I
Urutan 1 2 3
masukan file
10
Kemudian dilakukan pembacaan pada panjang ciphertext untuk menentukan
berapa kali fungsi akan dijalankan untuk menyamakan hasil panjang plainkey.
A r i E E k o T i n i k a r .
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
f = 102 Penambahan Hasil kode kode > 255 Hasil kode Karakter
kode ASCII baru ASCII baru baru
102 1 103 Tidak 103 g
102 2 104 Tidak 104 h
102 3 105 Tidak 105 i
... ... ... ... ... ...
102 255 357 Iya 101 e
11
Gambar 10 Contoh Penambahan ASCII Secara Penuh
A R i e E k o T i n i k a r .
f G h i j k l m n o p q r s t u v
12
70
60
50
40
30 modifikasi baru
modifikasi lama
20
10
0
127 221 318 472 544 652 778 864 931 1.494
KB KB KB KB KB KB KB KB KB KB
13
70
60
50
40
30 modifikasi baru
modifikasi lama
20
10
0
127 221 318 472 544 652 778 864 931 1.494
KB KB KB KB KB KB KB KB KB KB
14
Perbandingan waktu dekripsi pada modifikasi yang lama lebih cepat,
selisih waktu ini diakibatkan karena adanya perbedaan proses pembangkitan
kunci yang dilakukan. Pada padding yang dikembangkan sebelumnya
membangkitkan key terbatas pada inputan jenis karakter key yang berjumlah
sesuai inputan user tanpa harus memanggil karakter lain di luar inputan,
sedangkan pada penelitian ini key yang dibangkitkan menggunakan seluruh
karakter pada ASCII yang membuat tiap karakkter key melakukan penambahan
dan pembacaan sebanyak 255 kali agar dapat memenuhi 256 karakter, sehingga
membuat kinerja proses sedikit lebih berat dari yang sebelumnya.
4. Simpulan
5. Daftar Pustaka
[1] Febryan C.W. 2014. Implementasi Modifikasi Kriptografi One Time Pad
(OTP) untuk Pengamanan Data File. Salatiga: Skripsi S1 Universitas
Kristen Satyawacana.
[2] I. R. Widiasari, “Combining Advanced Encryption Standard (AES) and
One Time Pad (OTP) Encryption for Data Security,” International
Journal of Computer Applications, vol. 57, no. 20, pp. 1-8, 2012.
[3] Bernadette, S. 2006. Webster's New World Hacker Dictionary. Santa
Barbara, California:ABC-CLIO.
[4] Schneier, Bruce, 1996, Applied Cryptography, Second Edition, New
York: John Wiley and Sons.
[5] Menezes, Alfred J., van Oorschot, Paul C., dan Vanstone, Scott A., 1997,
Handbook of Applied Cryptography, Florida: CRC Press.
[6] S. P. Agustanti, “PENGAMANAN KUNCI ENKRIPSI ONE-TIME
PAD (OTP) MENGGUNAKAN ENKRIPSI RSA,” Jurnal Media
Teknik, vol. 7, no. 1, pp. 95-100, 2010.
[7] N. Nagaraj, “One-Time Pad as a nonlinear dynamical system,”
Communications in Nonlinear Science and Numerical Simulation, vol.
17, no. 11, pp. 4029-4036, Nov. 2012.
[8] Munir, R. 2006. Kriptografi. Bandung:Informatika.
15