Anda di halaman 1dari 7

Pelita Informatika Budi Darma, Volume : IX, Nomor: 3, April 2015 ISSN : 2301-9425

PERANCANGAN APLIKASI PENYANDIAN DATA TEXT


MENGGUNAKAN METODE SYMMETRIC STREAM CIPHER
Rahmadhana Tanjung (1011321)

Mahasiswa Program Studi Teknik Informatika, STMIK Budi Darma Medan


Jl.. Sisingamangaraja No. 338 Simpang Limun Medan
http://www.stmik-budidarma.ac.id // e-mail : ahmaddista@ymail.com

ABSTRAK
Kesulitan pembelajaran kriptografi adalah bagaimana menjelaskan tahapan tahapan proses yang terjadi
pada pembentukan kunci, enkripsi dan dekripsi. Tahapan tahapan yang dimiliki oleh setiap metoda kriptografi
berbeda-beda dan memiliki tingkat kesulitannya berbeda-beda pula. Dengan kesulitan yang ada maka diperlukan
suatu perangkat lunak pembelajaran yang menunjang kemudahan dalam memahami metoda-metoda kriptografi,
dalam hal ini khususnya metoda Symmetric Stream Cipher.
Metoda Symmetric Stream Cipher merupakan algoritma stream cipher yang memiliki 4 proses utama
yaitu proses pembentukan kunci, proses pembentukan dummy, enkripsi dan dekripsi. Proses enkripsi dan
dekripsi metoda ini memiliki 3 tahapan utama yaitu kompresi data Huffman, kriptografi dengan Triple
Transposition Key dan pengkodean basis 64.
Perangkat lunak pembelajaran kriptografi metoda Symmetric Stream Cipher mampu menampilkan
tahapan penyelesaian untuk proses pembentukan kunci, pembentukan dummy, enkripsi dan dekripsi secara
langkah demi langkah. Perangkat lunak pembelajaran ini juga menampilkan teori dan algoritma dari metoda
Symmetric Stream Cipher. Perangkat lunak pembelajaran kriptografi metoda Symmetric Stream Cipher
dirancang sedemikian rupa untuk membantu pemahaman terhadap cara kerja algoritma dari metoda Symmetric
Stream Cipher.

Kata Kunci : Perancangan,Aplikasi,Penyandian,Symmetric Stream Cipher

1. Pendahuluan algoritma kompresi data Huffman dengan algoritma


1.1. Latar Belakang Masalah kriptografi menggunakan tripple transposition key
Keamanan data merupakan hal yang sangat untuk menambah keamanan algoritma kriptografi ini.
penting dalam menjaga kerahasiaan informasi Algoritma yang dikembangkan pada metode
terutama yang berisi informasi sensitif yang hanya symmetric stream cipher ini dapat menerima 2 jenis
boleh diketahui isinya oleh pihak yang berhak saja, kunci yaitu kunci utama dan Private Crypto Code..
apalagi jika pengirimannya dilakukan melalui Algoritma ini akan membentuk 3 transposition key
jaringan publik, apabila data tersebut tidak yang berukuran 463, 251, 181 yang saling
diamankan terlebih dahulu, akan sangat mudah berhubungan karena adanya feedback output dari
disadap dan diketahui isi informasinya oleh pihak- pemrosesan key. Dengan metode symmetric stream
pihak yang tidak berhak. Salah satu cara yang cipher akan menghasilkan output dengan kecepatan
digunakan untuk pengamanan data adalah yang tinggi serta mempunyai Private Crypto Code.
menggunakan sistem kriptografi yaitu dengan
menyandikan isi informasi (plaintext) tersebut 1.2. Perumusan Masalah
menjadi isi yang tidak dipahami melalui proses Adapun perumusan masalah dalam
enkripsi dan untuk memperoleh kembali informasi penelitian ini adalah sebagai berikut :
yang asli, dilakukan proses dekripsi, disertai dengan 1. Bagaimana proses kerja Symmetric Stream
menggunakan kunci yang benar. Namun, sejalan Cipher?
dengan perkembangan ilmu penyandian atau 2. Bagaimana membentuk 3 transposition key?
kriptografi, usaha-usaha untuk memperoleh kunci 3. Bagaimana merancang aplikasi penyandian
tersebut dapat dilakukan oleh siapa saja, termasuk peroses data text dengan menerapkan metode
pihak yang tidak sah untuk memiliki informasi symmetric stream cipher?
tersebut. Oleh karena itu, penelitian tentang
kriptografi akan selalu berkembang untuk 1.3. Batasan Masalah
memperoleh algoritma kriptografi yang makin kuat, Karena keterbatasan waktu dan pengetahuan
sehingga usaha-usaha untuk memecah kode penulis, maka ruang lingkup permasalahan dalam
kriptografi secara tidak sah menjadi lebih sulit. merancang perangkat lunak ini antara lain :
Metoda symmetric stream cipher dengan 1. Panjang kunci utama dibatasi minimal 5 karakter
varible length key yang dikembangkan oleh dan maksimal 43 karakter
seseorang yang bernama Dirk Rijmenants. Metoda 2. Panjang PCC (Private Crypto Code) dibatasi
ini dikembangkannya dengan mengkombinasikan maksimal 22 karakter.

Perancangan Aplikasi Penyandian Data Text Menggunakan Metode Symmetric Stream Cipher. 155
Oleh : Rahmadhana Tanjung
Pelita Informatika Budi Darma, Volume : IX, Nomor: 3, April 2015 ISSN : 2301-9425

3. Kunci, Plaintext dan ciphertext yang berfungsi teknik-teknik matematika yang berhubungan dengan
sebagai data input bertipe data string (text) aspek keamanan informasi seperti kerahasiaan data,
4. menggunakan bahasa pemrograman Visual Basic keabsahan data, integritas data, serta autentikasi data
6.0 Ilmu atau seni ini banyak diterapkan disemua bidang,
khususnya bidang militer dan agen rahasia.
1.4. Tujuan dan Manfaat Penelitian Sebenarnya ilmu ini sudah diterapkan sejak dahulu
Tujuan yang diambil dari penulisan skripsi dan sampai kini terus dikembangkan dan diteliti
ini adalah : penggunaannya.
1. Untuk mengetahui proses kerja Symmetric Kriptografi merupakan suatu bidang ilmu
Stream Cipher. yang mempelajari tentang bagaimana merahasiakan
2. Untuk membentuk 3 transposition key. suatu informasi penting ke dalam suatu bentuk yang
3. Untuk merancang aplikasi peroses penyandian tidak dapat dibaca oleh siapapun serta
data text dengan menerapkan metode symmetric mengembalikannya kembali menjadi informasi
stream cipher. semula dengan menggunakan berbagai macam teknik
yang telah ada sehingga informasi tersebut tidak
Manfaat yang diambil dari penulisan skripsi dapat diketahui oleh pihak manapun yang bukan
ini adalah : pemilik atau yang tidak berkepentingan. Sisi lain dari
1. Untuk melindungi peroses penyandian data agar kriptografi ialah kriptanalisis yang merupakan studi
tidak dapat di baca oleh orang-orang yang tidak tentang bagaimana memecahkan mekanisme
berhak.. kriptografi.
2. Mencegah agar orang-orang yang tidak berhak, Kriptografi mempunyai 2 (dua) bagian yang penting,
mengubah atau menghapus data penyandian. yaitu enkripsi dan dekripsi. Enkripsi adalah proses
penyandian dari pesan asli menjadi pesan yang tidak
1.5. Metode Penelitian dapat diartikan seperti pesan aslinya. Dekripsi sendiri
Agar mendapat keterangan-keterangan data berarti merubah pesan yang sudah disandikan
yang diperlukan guna memperoleh suatu menjadi pesan aslinya. Pesan asli biasanya disebut
pembenaran ilmiah, maka penulis melakukan plaintext, sedangkan pesan yang sudah disandikan
penelitian dengan metode penelitian sebagai berikut : disebut ciphertext. Adapun algoritma matematis yang
1. Studi Kepustakaan (library search) digunakan pada proses enkripsi yakni disebut chiper
Untuk mendapatkan hasil teori yang valid untuk dan sistem yang memanfaatkan Kriptografi untuk
dijadikan sebuah landasan, penulis mencari mengamankan sitem informasi disebut kriptosistem
beberapa buku referensi dari beberapa
perpustakaan. 2.2. Symmetric Stream Cipher
2. Pengumpulan data melalui surfing (field Metode symmetric stream ciper dengan
research) varible leght key yang dikembangkan oleh seseorang
Pencarian atau penjelajahan melalui internet. yang bernama Dirk Rijmenants. Metode ini
3. Analisa Sistem dikembangkan dengan mengkombinasikan algoritma
Menganalisis atau mendefinisikan solusi untuk kompresi metode Huffman dengan algoritma
sistem informasi dan proses organisasi. kriptografi menggunakan tripple transposition key
4. Perancangan Sistem untuk menambah keamanan algoritma kriptografi ini.
Merancang input,output,struktur Algoritma yang dikembangkan pada metode
file,program,prosedur,perangkat keras dan symmetric stream ciper ini dapat menerima 2 jenis
perangkat lunak yang diperlukan untuk kunci yaitu kunci utama dan Private Crypto Code.
mendukung sistem informasi. Kunci kedua adalah optional yang berfungsi sebagai
5. Pengujian Sistem kunci eksklusif untuk menentukan jenis user group.
Membangun perangkat lunak yang diperlukan Algoritma ini akan membentuk 3 transposition key
untuk mendukung sistem dan melakukan testing yang berukuran 463,251,181.
secara akurat. Metode symmetric stream ciper saling
6. Implementasi Sistem berhubungan dengan algoritma huffman dan base64.
Beralih dari sistem lama ke sistem baru, Algoritma huffam digunakan dalam proses enkripsi
melakukan pelatihan dan panduan seperlunya.. dan dekripsi pada symmetric stream ciper yaitu
7. Penulisan Laporan Penelitian digunakan untuk mengkomprensi data input sebelum
Ini adalah tahap akhir dari penelitian. melakukan proses enkripsi dan dekripsi.

2. Landasan Teori 2.2.1 Proses Pembentukan Kunci


Kriptografi berasal dari bahasa Yunani Kunci dibentuk dari kata kunci (Password)
kryptos (tersembunyi) dan graphien (menulis). yang dimasukan. Kunci terdiri dari dua jenis kunci
Kriptografi atau penyandian data merupakan seni dan antara lain Kunci Utama dan Kunci PCC (Private
ilmu untuk menjaga beritaSelain pengertian tersebut Crypto Code). Kunci kedua atau PCC bersifat
terdapat pula pengertian ilmu yang mempelajari optional dan berfungsi untuk menentukan grup dari

Perancangan Aplikasi Penyandian Data Text Menggunakan Metode Symmetric Stream Cipher. 156
Oleh : Rahmadhana Tanjung
Pelita Informatika Budi Darma, Volume : IX, Nomor: 3, April 2015 ISSN : 2301-9425

pemakai (user). Walaupun password yang dimiliki KEY3(i) = KEY3(i) Xor


oleh seorang user sama dengan yang lainnya jika KEYPCC(i Mod PCCLen)
grup dari user tersebut berbeda maka user yang tidak Next
berhak tidak bisa mendekripsi ciphertext yang telah End If
dienkripsi. 3. Mereset nilai dari K3(0..180)=0..180
Kunci Utama dan Kunci PCC digunakan 4. Kemudian nilai K3 saling dipertukarkan dengan
untuk mengacak 3 buah transposision key menjadi cara yang sama seperti K1 dan K2 yaitu :
transposision key yang siap pakai yaitu : For i = 0 To 181 - 1
K1 = (k0, …, k462) j = (j + K3(i) + KEY3(i Mod
K2 = (k0, …, k250) 23)) Mod 181
K3 = (k0, …, k180) tmp = K3(i)
Proses pembentukan kunci juga mereset K3(i) = K3(j)
variabel-variabel yang diperlukan antara lain : K3(j) = tmp
S1=0 Next
S2=0
S3=0 2.2.2 Proses Enkripsi
P1=0 Proses enkripsi secara garis besar terdiri dari
P2=0 tahap-tahap sebagai berikut :
P3=0 1. Pembentukan Dummy String
FeedBack=0 2. Proses Kompresi dengan algoritma Huffman
Algoritma pembentukan kunci K1 adalah : 3. Enkripsi dengan bantuan Triple Transposition
1. Variabel KEY1 diset dengan nilai dari kunci Key
utama 4. Proses Encode dengan Radix64
2. Variabel KEYLen diset dengan panjang kunci 5. Penambahan teks pengenal (header, version dan
utama footer)
3. Matrix K1(0)..K1(462) direset dengan nilai
menaik dari 0 sampai dengan 462 3. Pembahasan
4. Mengacak K1(0)..K1(462) dengan rumus ”j=(j + Proses pembentukan kunci ini memerlukan
K1(i) + KEY1(i Mod KEYLen)) Mod 463” input berupa kunci utama dan kunci PCC. Proses ini
sebanyak 463 kali dapat dilihat pada contoh berikut ini :
Algoritma untuk pembentukan kunci K2 sebagai Misalkan kunci utama : ‘TANJOENG’ dan kunci
berikut PCC : ‘BEME’, maka proses pembentukan kunci
1. KEY2(0..16) dibentuk dengan adalah sebagai berikut :
For i = 0 To 463 - 1 1. Kunci Utama = TANJOENG
KEY2(i Mod 17) = KEY2(i Mod
17) Xor (K1(i) And 255) 2. Inisialisasi KEY1 (KEY1=Kunci Utama)
Next KEY1 = TANJOENG
2. Mereset nilai dari K2(0..250)=0..250 KEY1 =
3. Kemudian nilai K2 saling dipertukarkan dengan (87,73,68,73,65,82,84,73)
cara yang sama seperti K1 yaitu KEY1Len = 8
For i = 0 To 251 - 1
j = (j + K2(i) + KEY2(i Mod 3. Inisialisasi Nilai K1(),P1,S1
17)) Mod 251 K1(0 .. 462) diberi nilai terurut menaik 0 s/d 462
tmp = K2(i) P1 = 0
K2(i) = K2(j) S1 = 0
K2(j) = tmp Pertukarkan K1(j) dengan K1(i) sebanyak 463 Kali
Next j = (j + K1(i) + KEY1(i Mod KEY1Len)) Mod 463
Algoritma untuk pembentukan kunci K3 antara lain Perulangan Ke - 0
1. KEY3(0..22) dibentuk dengan j = (0 + K1(0) + KEY1(0 Mod 8)) Mod 463
For i = 0 To 251 - 1 j = (0 + 1 + KEY1(0)) Mod 463
KEY3(i Mod 23) = KEY3(i Mod j = (0 + 1 + 87) Mod 463
23) Xor (K2(i) And 255) j = (88) Mod 463
Next j = 87
2. Kemudian dilakukan proses tambahan untuk TUKARKAN K1(87) DENGAN K1(0) = 0
PCC, jika PCC tidak diinput maka proses ini DENGAN 87
tidak akan dilakukan
PCCLen = panjang PCC Perulangan Ke - 1
KEYPCC = PCC j = (87 + K1(1) + KEY1(1 Mod 8)) Mod 463
If PCCLen > 0 Then j = (87 + 1 + KEY1(1)) Mod 463
For i = 0 To 22 j = (87 + 1 + 73) Mod 463

Perancangan Aplikasi Penyandian Data Text Menggunakan Metode Symmetric Stream Cipher. 157
Oleh : Rahmadhana Tanjung
Pelita Informatika Budi Darma, Volume : IX, Nomor: 3, April 2015 ISSN : 2301-9425

j = (161) Mod 463 (188, 126, 90, 141, 22, 195, 207, 161, 187, 108, 73,
j = 161 21, 250, 31, 38, 220,203,128,204, 215, 87, 164, 71,
TUKARKAN K1(161) DENGAN K1(1) = 1 237, 186, 200, 51, 94, 7, 67, 221, 84, 140, 185, 165,
DENGAN 161 187,88,146,167, 83, 251, 170, 154, 4, 141, 74, 247,
113, 242, 88, 94, 207, 91, 202, 54, 248, 16, 96,148,
Perulangan Ke - 2 187, 109, 147, 95).
j = (161 + K1(2) + KEY1(2 Mod 8)) Mod 463
j = (161 + 161 + KEY1(2)) Mod 463 Perhitungan Proses Enkripsi
j = (161 + 161 + 68) Mod 463
j = (390) Mod 463 Misalkan diambil hasil pembentukan kunci
j = 231 serta pembentukan dummy di atas dan plaintext =
‘TUGAS AKHIR (SKRIPSI)’, maka proses
. 4. Kunci PCC = BEME enkripsinya adalah sebagai berikut :
Kunci PCC = 1. PlainText = TUGAS AKHIR (SKRIPSI)
(73,83,84,80) Kunci Utama = TANJOENG
PCCLen = 4 Kunci PCC = BEME

a. Perhitungan Proses Pembentukan Dummy 2. Kompresi dengan ASCII


String CompressedString =
Dummy String dibentuk secara random. Dalam ASCII :
Dalam proses pembentukannya Dummy String dapat (72, 69, 51, 13, 69, 21, 0, 0, 0, 13, 0, 32, 4, 40, 4,41,
menerima input Seed String sebagai nilai yang 4, 65, 4, 71, 4, 72, 4, 73, 3, 75, 4, 80, 4, 82, 3,83, 3,
membantu untuk mengacak dan menjamin tingkat 84, 4, 85, 4, 135, 176, 162, 121, 99, 125, 0, 62,178,
random Dummy String. Misalkan Seed String = 189, 125, 13,15, 251, 140, 53, 0).
‘ULTRA 1.03’ maka proses pembentukan Dummy
String adalah sebagai berikut : 3. Penambahan String Pengenal
1. SeedString = 'ULTRA 1.03' CipherText =
SeedString = --- BEGIN ULTRA MESSAGE ---
(85, 76, 84, 82, 65, 32, 49, 46, 48, 51) Version: ULTRA v1.0.3
Panjang SeedString = 10 wW2GC/4B6HKFo4IN+qXlvN5p6/Fvi79hxBOKBi
gGggOOBo5g5QrvL/BJATdfDP6StAR7IHC+fmXU
2. Inisialisasi Random SizeDummy kKkhbrgUg0cgodqH6I5l8E30newmQMC83w8mvKl
SizeDummy = Int(224*rnd)+32 t9vXbpaiet4IlsFI9KPg+nmiO+xVtmDfq1uOfY/ASH
SizeDummy = 34 y6KEeSNaaWNrAMmE+7YR1vzJGJyC8+Bd7+/im
UgwO5ANeUHNRcEsC1XXYuSsGkEPtBvemW62
3. Rubah nilai Variable SizeDummy dengan 6UIvJljlLWEIO23n299LD4DDr3wE2+Fy0dpJIag3u
SizeDummy = SizeDummy Xor hv2xUtuCg5bLVE+yTOEn2krEbcyJ80a93NVmcTfl
Asc(Mid(SeedString, k, 1) JKHMOkX0A7qBP5j+38reDV+OGfOEOL8tlOfkizz
sebanyak Len(seedstring) kali ZuIng0zoTYDtHOOZJkUqvqSR8YFoBZTT11MPjg
01. SizeDummy = 34 Xor 85 = 119 kfu7uoIPuOX6 --- END OF MESSAGE –
02. SizeDummy = 119 Xor 76 = 59
03. SizeDummy = 59 Xor 84 = 111 b. Perhitungan Proses Dekripsi
04. SizeDummy = 111 Xor 82 = 61 Proses dekripsi merupakan kebalikan dari
05. SizeDummy = 61 Xor 65 = 124 proses enkripsi. Proses dekripsi dari metoda
06. SizeDummy = 124 Xor 32 = 92 Symmetric Stream Cipher menggunakan algoritma
07. SizeDummy = 92 Xor 49 = 109 yang sama dengan proses enkripsi. Misalkan diambil
08. SizeDummy = 109 Xor 46 = 67 hasil pembentukan kunci dan ciphertext di atas, maka
09. SizeDummy = 67 Xor 48 = 115 proses dekripsinya adalah sebagai berikut :
10. SizeDummy = 115 Xor 51 = 64 1. Cipher Text =
SizeDummy = 64 --- BEGIN ULTRA MESSAGE ---
Jika SizeDummy > 255 maka SizeDummy = Version: ULTRA v1.0.3
SizeDummy - X*224 wW2GC/4B6HKFo4IN+qXlvN5p6/Fvi79hxBOKBi
Jika SizeDummy < 32 maka SizeDummy = gGggOOBo5g5QrvL/BJATdfDP6StAR7IHC+fmXU
SizeDummy + 224 kKkhbrgUg0cgodqH6I5l8E30newmQMC83w8mvKl
SizeDummy = 64 t9vXbpaiet4IlsFI9KPg+nmiO+xVtmDfq1uOfY/ASH
y6KEeSNaaWNrAMmE+7YR1vzJGJyC8+Bd7+/im
4. Membentuk Random Dummy dengan ukuran UgwO5ANeUHNRcEsC1XXYuSsGkEPtBvemW62
SizeDummy - 1 6UIvJljlLWEIO23n299LD4DDr3wE2+Fy0dpJIag3u
Random Dummy = hv2xUtuCg5bLVE+yTOEn2krEbcyJ80a93NVmcTfl
JKHMOkX0A7qBP5j+38reDV+OGfOEOL8tlOfkizz

Perancangan Aplikasi Penyandian Data Text Menggunakan Metode Symmetric Stream Cipher. 158
Oleh : Rahmadhana Tanjung
Pelita Informatika Budi Darma, Volume : IX, Nomor: 3, April 2015 ISSN : 2301-9425

ZuIng0zoTYDtHOOZJkUqvqSR8YFoBZTT11MPjg i=i+1
kfu7uoIPuOX6 Ulangi Proses hingga i > 15
--- END OF MESSAGE -- Bentuk Kunci Enkripsi dengan
Kunci Utama = TANJOENG input Kunci Utama = RndKey
Kunci PCC = BEME Kunci PCC=””
Plaintext = TUGAS AKHIR (SKRIPSI) k=0
q = RandomDummy(k)
2 . Hilangkan DummyString Jika j mod 3 = 0 maka lakukan proses
SizeDummy = 57 RandomDummy(k) = Decode(q) selain itu
checkByte1 = 125 RandomDummy(k) = Encode(q)
checkByte2 = 6 k=k+1
DecryptedString(Len(DecryptedString)) = 6 Ulangi Proses 19 s/d 21 hingga k >=
CompressedString = SizeDummy - 1
Dalam ASCII : j=j+1
(72, 69, 51, 13, 69, 21, 0, 0, 0, 13, 0, 32, 4, 40, 4,41, Ulangi Proses hingga j > 15
4, 65, 4, 71, 4, 72, 4, 73, 3, 75, 4, 80, 4, 82, 3,83, 3, RandomDummy = SizeDummy &
84, 4, 85, 4, 135, 176, 162, 121, 99, 125, 0, 62,178, RandomDummy
189, 125, 13,15, 251, 140, 53, 0). Proses Pembentukan Dummy Selesai
Next i
3. Dekompresi dengan ASCII
PlainText = TUGAS AKHIR (SKRIPSI) 3. Algoritma Proses Enkripsi.
Input : X = Plaintext
4. Algoritma dan Implementasi X = Compress(X)
4.1. Algoritma X = Compress(X)
Algoritma adalah merupakan kumpulan DummyString =
perintah untuk menyelesaikan suatu masalah. CreateDummyString(SeedString)
Perintah-perintah ini dapat diterjemahkan secara LenDummy = Panjang DummyString
bertahap dari awal hingga akhir. X = DummyString & X & 2 byte
Pada bagian ini akan dijelaskan algoritma terakhir DummyString
yang dipakai dalam proses perancangan program. Output : PrepareKey(Kunci_Utama,
Adapun algoritma perancangan dari kriptografi Kunci_PCC)
metoda Symmetric Stream Cipher dibagi menjadi 4 Proses : i=0,LenX = Panjang X
bagian yaitu, X(i) = X(i) Xor FnUltra(FeedBack)
1. Algoritma Proses Pembentukan Kunci. FeedBack = X(i)
Input : Kunci Utama & Kunci PCC i=i+1
KEY1 = Kunci Utama Ulangi Proses 9 s/d 11 hingga I > LenX – 1
KEY1Len = Panjang Kunci X = EncodeStr64(X)
K1(0 s/d 462) = 0 s/d 462 TEXT_BEGIN = "--- BEGIN ULTRA
K2(0 s/d 250) = 0 s/d 250 MESSAGE ---"
K3(0 s/d 180) = 0 s/d 180 TEXT_VERSION = "Version: ULTRA
Output : P1,P2,P3,S1,S2,S3,FeedBack = 0 v1.0.3"
Proses : i=0 TEXT_END = "--- END OF MESSAGE ---
j = (j + K1(i) + KEY1(i Mod "
KEY1Len)) Mod 463 CipherText = TEXT_BEGIN & vbcrlf &
Pertukarkan K1(j) dengan K1(i) TEXT_VERSION & vbcrlf
i=i+1 & X & vbcrlf & TEXT_END
Ulangi Proses hingga i > 180 Proses Enkripsi Selesai
Proses Penbentukan Kunci Selesai Next i
Next i
4. Algoritma Proses Dekripsi
2. Algoritma Proses Pembentukan Dummy. Input : X = CipherText
Input : SeedString HL = Len(TEXT_BEGIN & vbcrlf &
LenSeedString = Panjang SeedString TEXT_VERSION & vbcrlf)
Output : SizeDummy = Int(224*rnd)+32 TL = Len(vbCrLf & TEXT_END)
Proses : i= 0 X = Mid(X, HL + 1, Len(X) - HL -
SizeDummy = SizeDummy Xor TL)
SeedString(i) X = DecodeStr64(X)
i=i+1 Output : PrepareKey(Kunci_Utama,
Ulangi proses hingga I > LenSeedString Kunci_PCC)
Ulangi Proses Jika SizeDummy > 255 Proses : i=0

Perancangan Aplikasi Penyandian Data Text Menggunakan Metode Symmetric Stream Cipher. 159
Oleh : Rahmadhana Tanjung
Pelita Informatika Budi Darma, Volume : IX, Nomor: 3, April 2015 ISSN : 2301-9425

LenX = Panjang X Gambar 3 Form Proses Pembentukan Data Kunci


TMPFeedBack=X(i)
X(i) = X(i) Xor FnUltra(FeedBack) Untuk proses pembentukan dummy, maka lakukan
FeedBack = TMPFeedBack proses berikut ini :
i=i+1 Muncul form ‘Input untuk Pembentukan Dummy’.
Ulangi Proses 9 s/d 12 hingga I > LenX
–1
SizeDummy = Left(X,1)
DummyString = Left(X,SizeDummy)
Jika 2 byte terakhir DummyString tidak
sama dengan
2 byte terakhir X maka hentikan proses
Plaintext = Decompress(X)
Selesai

4.2. Implementasi Sistem Gambar4 Form Input Data untuk Proses Enkripsi
Desain implementasi sistem merupakan
gambran program ketika di rancang di dalam bahasa Input Seedstring, klik tombol ‘Ok’ untuk
pemograman,di sini aplikasi di rancang mengunakan melanjutkan dan memunculkan form ‘Pembentukan
Microsoft Visual Basic 6.0. Dummy’. Klik tombol ‘Play’ untuk memulai proses
Lingkungan sistem operasi yang pembentukan dummy.
direkomendasikan penulis adalah Microsoft-Windows
XP..

Proses

Gambar 1 : Klik menu ‘Penerapan’ >> ‘Proses


Pembentukan Kunci’ Gambar 5 Form Pembentukan Data Dummy

Untuk proses enkripsi, maka lakukan proses berikut


ini :
TNJOENG
Muncul form ‘Input untuk Enkripsi’.
BEME

TUGAS AKHIR (SKRIPSI)

Gambar 2 Form Input Kunci Enkripsi / Dekripsi TANJOENG

BEME
Input kunci utama pada textbox ‘Kunci Utama’ serta
Kunci PCC pada textbox ’PCC – Private Crypto
Code’, klik tombol ‘Ok’ untuk memunculkan form
‘Proses Pembentukan Kunci’. Klik tombol ‘Play’
untuk memulai proses pembentukan kunci. Gambar 6 Form Input untuk Enkripsi

2. Inisialisai KEY (KEY1=Kunci Utama) Input plaintext dan kedua kunci, klik tombol ‘Ok’
KEY 1 = TANJOENG untuk melanjutkan dan memunculkan form ‘Proses
KEY = Enkripsi’. Klik tombol ‘Play’ untuk memulai proses
(87,73,68,73,65,82,84,73)
KEY1 Len = 8 enkripsi.
3. Inisialisasi NILAI K1 () , P1 , S1
K1(0….462) diberi nilai terurut menaik 0 s/d
462

Perancangan Aplikasi Penyandian Data Text Menggunakan Metode Symmetric Stream Cipher. 160
Oleh : Rahmadhana Tanjung
Pelita Informatika Budi Darma, Volume : IX, Nomor: 3, April 2015 ISSN : 2301-9425

5.2. Saran
Penulis ingin memberikan beberapa saran yang
1 . PlainText = TUGAS AKHIR (SKRIPSI)
Kunci Utama = TANJOENG
mungkin dapat membantu dalam pengembangan
Kunci Pcc = BEME perangkat lunak metoda kriptografi yaitu :
2 . Kompresi dengan ASCII
CompressedString =
1. Dapat dipertimbangkan untuk menambahkan
Dalam ASCII :
(72, 69, 51, 13, 69, 21, 0, 0, 0, 13, 0, 32, 4, 40, 4,41, 4, 65, 4, 71, 4,
bentuk yang lebih menarik dan lebih sederhana
72, 4, 73, 3, 75,4,
80, 4, 82, 3,83, 3, 84, 4, 85, 4, 135, 176, 162, 121, 99, 125, 0,
agar lebih mudah di menggerti.
62,178, 189, 125, 13,
115, 251, 140, 53, 0).
2. Perangkat lunak pembelajaran ini dapat
3 . Membentuk DummyString dikembangkan untuk menampilkan proses
SeedString =
ULTRA 1.03 enkripsi dan dekripsi untuk file.
DummyString =
Dalam ASCII :
(179 , 219 , 70 , 68 , 73 , 147 , 190 , 41 , 200 , 242 , 116 , 225 ,
3. Perangkat lunak pembelajaran ini dapat
ditambahkan suara untuk memperjelas dan
mempermudah dalam proses pembelajaran.
Gambar 7 Form Proses Data Enkripsi DAFTAR PUSTAKA
Untuk proses dekripsi, maka lakukan proses berikut 1. Kurniawan J., Ir., M.T.,”Kriptografi, Keamanan
ini : Internet dan Jaringan Komunikasi ”,Penerbit
Muncul form ‘Input untuk Dekripsi’. Informatika Bandung, April 2004.
2. Booth, Paul A.“ An Introduction to Human-
Computer Interaction “ Lawrence Erlbaum
Associates Ltd., Inggris, 1989.
3. Rinaldi Munir,2008, ”Belajar Ilmu Kriptografi”
Penerbit Andi, Yogyakarta
4. Ir. Yusuf Kurniawan, MT., 2004“Kriptografi:
Keamanan Internet dan Jaringan Komunikasi”
Penerbit Informatika Bandung, Yogyakarta.
Gambar 8 Form Input Data untuk Proses Dekripsi
5. Andi Kristanto, 2004, ”Memahami Model
Enkripsi dan Keamanan Data Kerja sama
Input ciphertext dan kedua kunci, klik tombol ‘Ok’ Wahana Komputer Semarang denganAndi
untuk memunculkan form ‘Proses Dekripsi’.
Offset Yokyakarta..
6. Schneier B., Applied Crytography :
CipherText = Protocols,Algorithm,andSource Code in C
--- BEGIN ULTRA MESSAGE ---
Version: ULTRA v1.0.3 Second Edition, John Wiley & Sons, Inc., 1996.
wW2GC/4B6HKFo4IN+qXlvN5p6/Fvi79hxBOKBigGggOOBo5g5QrvL/
7. http://datacompression.info/Huffman.shtml,
BJATdfDP6StAR7IHC+fmXUkKkhbrgUg0cgodqH6I5l8E30newmQMC8
Tanggal akses 28 Mey 2014.
3w8mvKlt9vXbpaiet4IlsFI9KPg+nmiO+xVtmDfq1uOfY/ASHy6KEeSNa
8. http://www.softpanorama.org/Algorithms.shtml,
aWNrAMmE+7YR1vzJGJyC8+Bd7+/imUgwO5ANeUHNRcEsC1XXYu
Tangga lakses 28 Mei 2014.
SsGkEPtBvemW626UIvJljlLWEIO23n299LD4DDr3wE2+Fy0dpJIag3uh

v2xUtuCg5bLVE+yTOEn2krEbcyJ80a93NVmcTflJKHMOkX0A7qBP5j

+38reDV

Gambar9 Form Proses Data Dekripsi

5. Kesimpulan Dan Saran


5.1. Kesimpulan
Setelah selesai menyusun tugas akhir ini,
penulis menarik kesimpulan sebagai berikut :
1. Proses Pembentukan Kunci pada Metoda
Symmetric Stream Cipher cukup sederhana
walaupun jumlah perulangan yang dilakukan
sangat banyak.
2. Metoda Symmetric Stream Cipher dalam proses
enkripsi, dekripsi dan pembentukan dummy
menggunakan bantuan 3 buah Transposition Key
dalam prosesnya.
3. Perangkat lunak ini dapat membantu
pemahaman cara kerja algoritma kriptografi
khususnya metoda Symmetric Stream Cipher.

Perancangan Aplikasi Penyandian Data Text Menggunakan Metode Symmetric Stream Cipher. 161
Oleh : Rahmadhana Tanjung

Anda mungkin juga menyukai