perancangan dan implementasi algoritma kriptografi block...

27
Perancangan dan Implementasi Algoritma Kriptografi Block Cipher Berbasis pada Pola Balok dalam Permainan Tetris dengan Menggunakan Linear Congruential Generator dan Transposisi Silang Artikel Ilmiah Peneliti: Ferry Prima Anggiyatna (672008064) Magdalena A. Ineke Pakereng, M.Kom. Alz Danny Wowor, S.Si., M.Cs. Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen SatyaWacana Salatiga Mei 2016

Upload: trinhdieu

Post on 17-Mar-2019

252 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

Perancangan dan Implementasi Algoritma Kriptografi

Block Cipher Berbasis pada Pola Balok dalam Permainan Tetris

dengan Menggunakan Linear Congruential Generator dan

Transposisi Silang

Artikel Ilmiah

Peneliti:

Ferry Prima Anggiyatna (672008064)

Magdalena A. Ineke Pakereng, M.Kom.

Alz Danny Wowor, S.Si., M.Cs.

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen SatyaWacana

Salatiga

Mei 2016

Page 2: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

i

Perancangan dan Implementasi Algoritma Kriptografi

Block Cipher Berbasis pada Pola Balok dalam Permainan Tetris

dengan Menggunakan Linear Congruential Generator dan

Transposisi Silang

Artikel Ilmiah

Diajukan kepada

Fakultas Teknologi Informasi

untuk memperoleh gelar Sarjana Komputer

Oleh:

Ferry Prima Anggiyatna

672008064

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

Salatiga

Mei 2016

Page 3: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

ii

Page 4: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

iii

Page 5: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

iv

Page 6: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

v

Page 7: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

vi

Page 8: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

vii

.

Page 9: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

1

1. Pendahuluan

Keamanan merupakan hal yang penting dalam melakukan pertukaran

informasi dan komunikasi yang dilakukan melalui internet maupun perangkat

digital. Ancaman yang terjadi sering dilakukan oleh orang-orang yang tidak

bertanggung jawab, terutama pencurian data, penyadapan, dan pembajakan.

Dalam pertukaran informasi dan komunikasi terdapat sebuah metode

pengamanan data yang dikenal dengan metode kriptografi. Kriptografi merupakan

salah satu metode keamanan dalam mengamankan data. Kriptografi bekerja

dengan cara mengubah data ke dalam bentuk data sandi sehingga data tersebut

tidak dapat dikenali. Banyak sekali metode kriptografi yang sudah dipecahkan

oleh Kriptanalisis (Criptanalisys) dan kriptografi membutuhkan pembaharuan, hal

ini dikarenakan perkembangan teknologi yang semakin maju yang membuat

kriptografi tidak bisa digunakan selamanya..

Setiap pertukaran data pastinya ada saja orang yang tidak bertanggung

jawab untuk mencuri data yang sangat penting, seperti pada kasus pencurian data

pada Sony PlayStation Network, sebanyak 77 juta akun dicuri oleh orang yang

belum diketahui sampai saat ini. Kasus seorang kasir gerai kopi membobol

ratusan data kartu kredit [5]. Kasus penyadapan terhadap pengiriman pesan dan

telepon yang dapat dilakukan oleh siapa saja, kasus yang terjadi saat Australia

menyadap lalu lintas jaringan seluler di Indonesia [1].

Dalam penelitian ini merancang block cipher yang berbasis pada pola balok

dalam permainan Tetris dan dimodifikasi dengan Linear Congruential Generator

sebagai pembangkit bilangan acak untuk plainteksnya sebelum proses enkripsi,

sedangkan kunci menggunakan transposisi silang. Setiap proses enkripsi pada

blok kunci, kunci dibagi dua dan disilangkan sebagai pengacakan pada kunci.

Tujuan modifikasi ini adalah untuk memperbaharui dan menambah variasi dari

teknik kriptografi block cipher yang sudah ada.

Rancangan kriptografi yang baru ini diuji dengan nilai korelasi dari

plainteks dengan hasil cipherteks pada setiap putaran enkripsi. Dengan

membandingkan nilai korelasi dari plainteks dengan hasil cipherteks pada setiap

putaran, apakah hasil korelasi yang dihasilkan mempunyai nilai kedekatan yang

lemah atau kuat.

2. Tinjauan Pustaka

Penelitian yang pertama berjudul “Analisis Dan Perancangan Aplikasi

Pesan Rahasia Menggunakan Algoritma One Time Pad (OTP) Dengan

Pembangkit Bilangan Acak Linear Congurential Generator (LCG)”. Dalam

penelitian ini membahas tentang enkripsi dengan menggunakan algoritma One

Time Pad (OTP), dimana panjang kunci yang akan dienkripsi sama dengan

panjang pesan yang akan dienkripsi. Untuk menghasilkan kunci dengan bilangan

yang acak dibangkitkan dengan metode Linear Congruential Generator [2].

Pada penelitian yang kedua dengan judul “Metoda Vigenere Chiper Double

Columnar Transposition Sebagai Modifikasi Teknik Kriptografi Dalam

Pembentukan Kunci”. Dalam penelitian ini membahas tentang vigenere cipher,

Caesar cipher dan double columnar transposition cipher. Dengan menggunakan

Page 10: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

2

Caesar cipher dan double columnar transposition cipher untuk pembentukan

kunci yang akan di enkripsi dengan metode vigenere cipher, kunci masukan dari

pengguna akan dienkripsi menggunakan caesar cipher dengan nilai posisi

karakter sebagai kunci enkripsi. Kunci akhir (final key) didapatkan dengan

menyandikan pembentukan kunci baru dari vigenere cipher dengan

memanfaatkan metode double columnar transposition cipher. Sehingga

penyandian informasi dari pengguna menggunakan metode vigenere cipher

dengan final key sebagai kunci enkripsi [10]. Pada penelitian yang ketiga sebagai acuan pada penelitian ini adalah

“Perancangan dan Implementasi Algoritma Kriptografi Cipher Block Berbasis

pada Bentuk Piramida dan Linear Congruential Generator”. Penelitian ini

membahas tentang perancangan algoritma kriptografi block cipher, dengan proses

enkripsi mengacak rangkaian biner plainteks ke dalam matriks 16×8 (128 bit)

dengan menggunakan pola seperti bentuk piramida sebagai pola pengambilan,

pada bilangan biner plainteks terhadap kunci yang telah dilakukan proses

pengacakan dengan pembangkit kunci Linear Congruential Generator [6].

Selanjutnya akan dibahas dasar-dasar teori yang digunakan sebagai dasar

untuk merancang kriptografi dalam penelitian ini. Kriptografi adalah ilmu yang

mempelajari teknik-teknik matematika yang berhubungan dengan aspek

keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data, serta

autentikasi data [8].

Dalam kriptografi ada dua proses, yaitu proses enkripsi dan proses dekripsi.

Enkripsi adalah proses menyandikan plainteks menjadi chiperteks. Dekripsi

adalah proses mengembalikan chiperteks menjadi plainteks [8].

Pada penelitian ini menggunakan teknik kriptografi block cipher. Block

cipher merupakan kriptografi simetris yang mengenkripsi pesan dengan cara

merangkai bit-bit plainteks yang kemudian dibagi menjadi blok dengan panjang

yang sama, pengirim dan penerima pesan sudah berbagi kunci yang sama [3],

panjang block bit bisa mencakup 64 bit, 128 bit, dan bahkan bisa 256 bit. Proses

enkripsi pada block cipher mengacak blok dari bit plainteks yang masuk yang

menghasilkan blok bit cipherteks. Pada proses dekripsi berkebalikan dari proses

enkripsi. Skema enkripsi dan dekripsi digambarkan pada Gambar 1.

Pada Gambar 1 dijelaskan proses enkripsi-dekripsi secara umum, proses

enkripsi plainteks ditunjukkan panah berwarna merah. Langkah pertama

memasukkan plainteks yang selajutnya diproses acak-ambil yang terjadi pada P1,

P2, P3, P4. P adalah jumlah proses putaran ekripsi untuk mendapatkan cipherteks

dan C adalah hasil cipherteks di setiap putaran. Setelah proses bit acak-ambil

plainteks di-XOR kan dengan key yang akan menghasilkan cipherteks. Tanda

panah biru menjelaskan proses dekripsi yang berkebalikan dengan enkripsi

dengan proses yang sama.

Page 11: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

3

Gambar 1. Proses Enkripsi-Dekripsi pada Block Cipher Secara Umum

Misalkan blok plainteks (P) yang berukuran n bit

npppP ,, 21 (1)

Blok cipherteks (C) maka blok C adalah

ncccC ,,, 21 (2)

Kunci (K) maka kunci adalah

nkkkK ,, 21 (3)

Sehingga proses Enkripsi adalah

CPEk (4)

Proses dekripsi adalah

PCDk (5)

Perancangan kriptografi baru ini menggunakan pola balok pada permainan

Tetris. Tetris adalah permainan teka-teki bangunan yang pertama kalinya didesain

oleh Alexey Pajitnov pada bulan Juni 1985, saat itu, Alexey Pajitnov masih

bekerja di Pusat Komputer Dorodnicyn di Akademi Sains Uni Soviet di Moskow,

nama Tetris sendiri diambil dari bahasa numerik yunani, yaitu tetra yang artinya

empat. Empat sendiri adalah jumah susunan balok yang bisa diubah-ubah ke

dalam berbagai bentuk untuk selanjutnya disusun oleh si pemain untuk dapat

saling terkunci. Pada dasarnya, ada 7 jenis formasi balok yang ada didalam

permainan Tetris, yaitu balok I, J, L, O, S, T, dan Z yang ditunjukkan pada

Gambar 2 [4].

Gambar 2. Pola Dasar Formasi Balok Pada Permainan Tetris

Suatu kriptografi dapat disebut sebagai teknik, harus melalui uji kriptosistem

terlebih dahulu yaitu dengan diuji dengan metode Stinson.

Definisi 1 [11] Sebuah sistem kriptografi harus memenuhi lima-tuple (Five-tuple)

(P, C, K, E , D) dengan kondisi :

Page 12: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

4

1. P adalah himpunan berhingga dari plainteks,

2. C adalah himpunan berhingga dari cipherteks,

3. K merupakan ruang kunci (keyspace), adalah himpunan berhingga

dari kunci,

4. Untuk setiap k K, terdapat aturan enkripsi ek E dan

berkorespodensi dengan aturan dekripsi dk D. Setiap ek : P C dan

dk : C P adalah fungsi sedemikian hingga dk (ek (x))= x untuk

setiap plainteks x P.

Linear Congruential Generator (LCG) adalah salah satu algoritma pseudo

random number yang paling tua. Algoritma ini diciptakan oleh D. H. Lehmer

pada tahun 1951. Teori dari algoritma ini mudah dipahami dan dapat

diimplementasikan secara cepat [2]. LCG dapat didefinisikan dengan rumusan

berikut :

𝑿𝒏 = (a.𝑿𝒏−𝟏 + b) mod m (6)

𝑋𝑛 = bilangan acak ke-n dari deretnya

𝑋𝑛−1 = bilangan acak sebelumnya

a = faktor pengali

b = increment

m = modulus (batas maksimum bilangan acak)

(a, b, dan m semuanya konstanta LCG)

Salah satu teknik enkripsi yang digunakan dalam penelitian ini adalah

permutasi atau sering juga disebut transposisi. Teknik ini secara umum

memindahkan posisi karakter tanpa merubah jumlah karakter yang ada [9]. Dalam

penelitian ini digunakan untuk memindahkan posisi bit dalam block cipher.

Dengan membagi blok kunci dan ditransposisikan menjadi beberapa bagian blok

yang akan di-XOR kan dengan plainteks selama proses enkripsi yang terjadi

secara berulang.

Proses transposisi secara umum pada Gambar 3 menunjukan, blok karakter

atau blok bit dibagi dibagi menjadi beberapa bagian dan ditransposisikan dengan

tidak merubah jumlah blok bit atau blok karakter. Skema dari transposisi silang

ditunjukkan pada Gambar 3.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

9 10 11 12 13 14 15 16 1 2 3 4 5 6 7 8

Gambar 3. Skema Transposisi Silang

Page 13: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

5

Untuk menganalisis rancangan kriptografi baru ini diperlukan uji kriptografi

menggunakan korelasi yang merupakan suatu teknik statistik yang dipergunakan

untuk mengukur kekuatan hubungan dua nilai dan juga untuk mengetahui bentuk

hubungan antara dua nilai tersebut dengan hasil yang sifatnya kuantitatif.

Kekuatan hubungan antara dua variabel biasanya disebut dengan koefisien

korelasi dan dilambangkan dengan symbol “r”. Nilai koefisien r akan selalu

berada diantara -1 sampai +1 sehingga diperoleh Persamaan 7 [7].

(7)

Merujuk pada Persamaan (7) secara matematis nilai r diperoleh dari jumlah

nilai selisih perkalian antara x dan y dengan hasil perkalian jumlah total x dan y

dibagi dengan hasil akar dari selisih untuk perkalian jumlah x kuadrat dengan

kuadrat pangkat dua untuk jumlah total x dengan selisih jumlah y kuadrat dengan

kuadrat pangkat dua untuk jumlah total y dimana x sebagai plainteks dan y sebagai

cipherteks sehingga dapat diperoleh persamaan 8 [7].

(8)

3. Metode Penelitian dan Perancangan Sistem

Penelitian yang dilakukan diselesaikan melalui beberapa tahapan penelitian

yang keseluruhan terbagi dalam lima tahapan, yaitu: (1) Identifikasi masalah dan

studi literatur, (2) Perancangan sistem, (3) Implementasi sistem, (4) Pengujian

sistem dan analisis hasil pengujian, dan (5) penulisan laporan.

Gambar 4. Tahapan penelitian

Langkah 1: Identifikasi masalah dan studi literatur, yaitu

mengidentifikasikan masalah-masalah yang akan dibahas, serta mendapatkan data

dan literatur yang terkait dengan perancangan dan implementasi algoritma

11 r

Page 14: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

6

kriptografi block cipher berbasis pada pola balok dalam permainan Tetris dengan

manggunakan Linear Coungruential Generator dan transposisi silang.

Langkah 2: Perancangan sistem, yaitu langkah dimana membuat bagan

proses enkripsi dan dekripsi, juga membuat gambaran umum mengenai

pembuatan teknik kriptografi;

Langkah 3: Implementasi sistem, yaitu sistem yang telah dirancang akan

diimplementasikan ke dalam program;

Langkah 4: Pengujian sistem dan analisis hasil pengujian, yaitu dilakukan

pengujian terhadap sistem yang dibangun dengan menggunakan five-tuple Stinson

salah satunya. Melakukan analisis statistik berdasarkan nilai korelasi dari setiap

plainteks awal dan cipherteks dari semua hasil enkripsi pada setiap proses putaran;

Langkah 5: Penulisan laporan dari hasil penelitian, yaitu

mendokumentasikan proses penelitian yang telah dilakukan dari awal hingga akhir

ke dalam sebuah tulisan, yang akan dijadikan laporan hasil penelitian.

Perancangan algoritma kriptografi block cipher ini menggunakan ASCII

(American Standard Code of Information Interchange) untuk mengubah setiap

karakter dari plainteks dan kunci yang berupa teks menjadi rangkaian biner.

Plainteks diacak terlebih dahulu menggunakan Linear Congruential Generator

(LCG) dan pada kunci menggunakan teknik kriptografi transposisi, dimana kunci

dibagi menjadi dua bagian blok dalam rangkaian bit biner yang terjadi selama

proses enkripsi dan dekripsi yang terjadi sebanyak 4 proses. Plainteks

menggunakan LCG hanya diproses di awal saja sebelum masuk ke rangkaian

biner dan putaran plainteks juga sebanyak 4 putaran.

Hasil rangkaian biner pada plainteks dan kunci dimasukan ke dalam block

cipher 256-bit untuk ditransposisikan ke dalam pola balok dalam permainan Tetris

dengan matrix 16x16, setiap putaran mempunyai rangkaian pola balok Tetris yang

berbeda-beda. Pada proses ini terjadi bit masuk dan bit ambil pada plainteks dan

kunci yang akan dilakukan operasi XOR untuk mendapatkan cipherteks. Pola

pemasukan bit biner plainteks putaran ke-1 ditunjukkan pada Gambar 5.

P14 P21 P22 P29 P32 P26 P25 P20 P46 P53 P54 P61 P64 P58 P57 P52

P15 P13 P23 P30 P31 P27 P17 P19 P47 P45 P55 P62 P63 P59 P49 P51

P16 P1 P24 P5 P8 P28 P9 P18 P48 P33 P56 P37 P40 P60 P41 P50

P2 P3 P4 P6 P7 P10 P11 P12 P34 P35 P36 P38 P39 P42 P43 P44

P88 P87 P86 P93 P96 P90 P91 P92 P120 P119 P118 P125 P128 P122 P123 P124

P73 P76 P85 P94 P95 P89 P77 P80 P105 P108 P117 P126 P127 P121 P109 P112

P74 P75 P81 P82 P83 P84 P78 P79 P106 P107 P113 P114 P115 P116 P110 P111

P65 P66 P67 P68 P69 P70 P71 P72 P97 P98 P99 P100 P101 P102 P103 P104

P154 P155 P156 P133 P137 P157 P158 P159 P186 P187 P188 P165 P169 P192 P191 P190

P153 P147 P148 P134 P138 P149 P150 P160 P185 P179 P180 P166 P170 P181 P182 P189

P145 P146 P129 P135 P139 P141 P151 P152 P177 P178 P161 P167 P171 P173 P183 P184

P132 P131 P130 P136 P140 P142 P143 P144 P164 P163 P162 P168 P172 P174 P175 P176

P193 P220 P219 P218 P224 P223 P222 P197 P225 P252 P251 P250 P256 P255 P254 P229

P194 P210 P217 P204 P208 P221 P216 P198 P226 P242 P249 P236 P240 P253 P248 P230

P195 P211 P209 P203 P207 P213 P215 P199 P227 P243 P241 P235 P239 P245 P247 P231

P196 P212 P201 P202 P206 P205 P214 P200 P228 P244 P233 P234 P238 P237 P246 P232 Gambar 5. Pola Pemasukan Bit Biner Plainteks Putaran Ke-1

Page 15: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

7

Pada Gambar 5 adalah alur pemasukan bit biner ke dalam balok-balok

Tetris sebanyak 256 bit. Alur pemasukan bit biner dijabarkan sebagai berikut.

Setelah bit-bit dimasukkan ke dalam rangkaian biner, dilakukan proses

pengambilan bit yang dijabarkan sebagai berikut.

K26 K27 K28 K5 K9 K32 K31 K30 K58 K59 K60 K37 K41 K64 K63 K62

K25 K17 K4 K6 K10 K16 K24 K29 K57 K49 K36 K38 K42 K48 K56 K61

K19 K18 K3 K7 K11 K15 K23 K22 K51 K50 K35 K39 K43 K47 K55 K54

K20 K1 K2 K8 K12 K14 K13 K21 K52 K33 K34 K40 K44 K46 K45 K53

K77 K89 K90 K91 K91 K93 K96 K81 K109 K121 K122 K123 K124 K125 K128 K113

K78 K85 K86 K87 K88 K94 K95 K82 K110 K117 K118 K119 K120 K126 K127 K114

K79 K70 K71 K72 K76 K75 K74 K83 K111 K102 K103 K104 K108 K107 K106 K115

K80 K69 K65 K66 K67 K68 K73 K84 K112 K101 K97 K98 K99 K100 K105 K116

K156 K155 K154 K157 K158 K159 K160 K144 K188 K187 K186 K189 K190 K191 K192 K176

K149 K152 K153 K147 K148 K137 K141 K143 K181 K184 K185 K179 K180 K169 K173 K175

K150 K151 K145 K146 K139 K138 K133 K142 K182 K183 K177 K178 K171 K170 K165 K174

K129 K130 K131 K132 K140 K134 K135 K136 K161 K162 K163 K164 K172 K166 K167 K168

K220 K219 K218 K213 K224 K223 K222 K209 K252 K251 K250 K245 K256 K255 K254 K241

K206 K217 K214 K215 K216 K221 K211 K210 K238 K249 K246 K247 K248 K253 K243 K242

K207 K205 K203 K204 K199 K200 K212 K193 K239 K237 K235 K236 K231 K232 K244 K225

K208 K201 K202 K197 K198 K196 K195 K194 K240 K233 K234 K229 K230 K228 K227 K226 Gambar 6. Pola Pemasukan Bit Biner Kunci Putaran Ke-1

Pola alur pemasukan kunci pada matriks 16x16 putaran ke-1 ditunjukkan

pada Gambar 6. Berikut adalah penjabaran dari urutan pemasukan rangkaian biner

pada Gambar 6.

Page 16: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

8

Bit-bit yang telah dimasukkan ke dalam rangkaian biner, dilakukan proses

pengambilan bit yang dijabarkan sebagai berikut.

Proses enkripsi pada perancangan algoritma kriptografi block cipher

berbasis pada pola balok dalam permainan Tetris menggunakan linear

congruential generator sebagai nilai acak plainteks dan transposisi silang pada

kunci yang ditunjukkan pada Gambar 7.

Gambar 7. Bagan Rancangan Proses Enkripsi

Pada bagan proses enkripsi menjelaskan plainteks yang berupa ASCII

diacak dengan Linear Congcoruential Generator (LCG) tujuannya adalah untuk

LCG Plainteks Kunci

P1 K1

P2 K2

Cipherteks

P3 K3

P4 K4

Transposisi Silang

Transposisi Silang

Transposisi Silang

Transposisi Silang

Page 17: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

9

mendapatkan nilai acak yang baik. Hasil nilai acak tersebut dikonversikan ke

dalam bentuk bilangan biner, yang akan dimasukkan ke dalam rangkaian block

cipher 256 bit. Masuknya biner kedalam block cipher dengan matrix 16x16 sesuai

dengan pola masuk dan untuk ambil biner sesuai dengan pola ambil, dan

didapatkanlah P1. Berbeda dengan plainteks, pada kunci yang berupa ASCII

dikenakan proses transposisi silang untuk menghasilkan kunci yang baik pada

setiap proses. Pada kunci dibagi menjadi dua bagian dengan nilai 128 bit masing-

masih pada L dan R selama proses enkripsi dan disilangkan pada setiap proses

kunci.

Pada masukan dan ambilian biner sesuai dengan pola masuk dan pola ambil.

Pada Gambar 8 adalah bagan pada perancangan dan implementasi algoritma

kriptografi cipher block berbasis pola balok dalam permainan Tetris. Bagan proses

dekripsi merupakan kebalikan dari proses enkripsi dengan menggunakan

algoritma kriptografi simetris, dimana menggunakan kunci yang sama pada proses

enkripsi

Gambar 8. Bagan Rancangan Proses Dekripsi

4. Hasil dan Pembahasan

Alur proses enkripsi dan dekripsi telah dijelaskan di pembahasan

sebelumnya yaitu pada bagian metode perancangan sistem. Proses yang lebih

lengkap mengenai alur enkripsi dan dekripsi akan dijabarkan pada Gambar 9 dan

Gambar 10.

Plainteks

Cipherteks K4

K3 P4

K2 P3

K1 P2

Transposisi Silang

Transposisi Silang

Transposisi Silang

SDSilang

Transposisi Silang

Page 18: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

10

Gambar 9. Bagan Proses Enkripsi

Pada Gambar 9 menggambarkan proses enkripsi, secara keseluruhan proses

enkripsi yang diputar sebanyak empat putaran, yang di dalam setiap putarannya

terdiri dari dua proses yaitu, proses untuk pembentukan plainteks dan, proses

untuk pembentukan kunci. Plainteks diubah ke dalam bentuk bit sesuai dengan

tabel ASCII yang telah diacak dengan Linear Congruential Generator, dan

rangkaian bit dimasukkan ke matriks 16x16 sesuai dengan pola. Penggunaan

bilangan acak semu untuk pembangkitan plainteks dimaksudkan untuk

LCG Plainteks

Bit Proses P1 Proses K1

Ascii

Kunci

Bit

Ascii

Bit Masuk

Proses

Pengambilan

Bit Masuk

Proses

Pengambilan

P1 K1

Proses P4 Proses K4

Bit Masuk

Proses

Pengambilan

Bit Masuk

Proses

Pengambilan

P4 K4

Ciphertek

s

C1

C3 K3

Transposisi

Silang

Transposisi

Silang

Transposisi

Silang

Page 19: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

11

menghasilkan nilai acak yang tidak mudah untuk diprediksi, sehingga didapatkan

suatu nilai keacakan yang cukup baik. Pembangkit bilangan acak didapatkan dari,

nilai rata-rata desimal bilangan kunci dikalikan dengan nilai konstanta m, nilai

tersebutlah yang akan digunakan dalam rumus pembangkit bilangan acak. Bit-bit

hasil dari pembangkitan bilangan acak inilah yang akan digunakan di dalam

proses 1 pada bagian plainteks di putaran pertama. Nilai-nilai konstanta Linear

Congruential Gonerator (LCG) yang digunakan untuk pembangkitan kunci pada

perancangan algoritma ini adalah, nilai konstanta a = 106, b = 1283, dan m =

6075. Pemilihan nilai konstanta yang buruk dapat menghasilkan keacakan yang

tidak baik, dengan memilih salah satu nilai yang baik dapat menghasilkan

keacakan bilangan semu yang baik [8].

Pengambilan bit menggunakan pola balok dalam permainan Tetris dan hasil

dalam pengambilan rangkaian bit biner menjadi P1. Dalam proses pembentukan

kunci pun sama, namun kunci menggunakan transposisi pada setiap putaran yang

terjadi. Letak perbedaannya ada di pola yang digunakan, dan rangkaian biner dari

kunci setelah melalui proses pengambilan bit biner menjadi K1.

P1 di-XOR dengan K1 sehingga mendapatkan C1 yang adalah hasil dari

putaran pertama. Pada putaran ke-2 C1 menjadi P2 dan LCG tidak diproses lagi,

LCG hanya diproses sebelum dimasukkan ke dalam rangkaian bit P1. Untuk K1

menjadi K2 diproses dengan transposisi silang, kunci dibagi menjadi dua dan

disilangkan dengan transposisi untuk menghasilkan K2. Pada putaran ke-3 sampai

ke-4, juga berlangsung proses yang sama, yang membedakan adalah dari setiap

putaran enkripsi menggunakan pola yang berbeda pada setiap putaran, baik dari

putaran ke-1 sampai putaran ke-4. Hasil dari putaran ke-4 adalah cipherteks.

Pada kunci menggunakan fungsi transposisi silang, dengan membagi kunci

menjadi dua bagian yaitu, kanan dan kiri dan yang akan ditransposisikan secara

silang. Proses ini terjadi pada setiap putaran ke-1, ke-2, ke-3, dan ke-4. Dalam

penelitian ini menggunakan transposisi ditujukan untuk menambah kekuatan

kunci dari rancangan yang baru ini, bit berjumlah 256 bit dalam matrix 16x16

sama dengan plainteks, dibagi menjadi 128 bit untuk L (kiri) dan 128 bit untuk R

(kanan). Gambar 10 menunjukkan bahwa sebelum kunci yang akan

ditransposisikan secara silang, bit biner yang telah diproses dalam bit masuk

dibagi menjadi dua bagian blok yaitu, L (kiri) dan R (kanan).

L1 L1 L1 L1 L1 L1 L1 L1 R1 R1 R1 R1 R1 R1 R1 R1

L2 L2 L2 L2 L2 L2 L2 L2 R2 R2 R2 R2 R2 R2 R2 R2

L3 L3 L3 L3 L3 L3 L3 L3 R3 R3 R3 R3 R3 R3 R3 R3

L4 L4 L4 L4 L4 L4 L4 L4 R4 R4 R4 R4 R4 R4 R4 R4

L5 L5 L5 L5 L5 L5 L5 L5 R5 R5 R5 R5 R5 R5 R5 R5

L6 L6 L6 L6 L6 L6 L6 L6 R6 R6 R6 R6 R6 R6 R6 R6

L7 L7 L7 L7 L7 L7 L7 L7 R7 R7 R7 R7 R7 R7 R7 R7

L8 L8 L8 L8 L8 L8 L8 L8 R8 R8 R8 R8 R8 R8 R8 R8

L9 L9 L9 L9 L9 L9 L9 L9 R9 R9 R9 R9 R9 R9 R9 R9

L10 L10 L10 L10 L10 L10 L10 L10 R10 R10 R10 R10 R10 R10 R10 R10

L11 L11 L11 L11 L11 L11 L11 L11 R11 R11 R11 R11 R11 R11 R11 R11

L12 L12 L12 L12 L12 L12 L12 L12 R12 R12 R12 R12 R12 R12 R12 R12

L13 L13 L13 L13 L13 L13 L13 L13 R13 R13 R13 R13 R13 R13 R13 R13

L14 L14 L14 L14 L14 L14 L14 L14 R14 R14 R14 R14 R14 R14 R14 R14

L15 L15 L15 L15 L15 L15 L15 L15 R15 R15 R15 R15 R15 R15 R15 R15

L16 L16 L16 L16 L16 L16 L16 L16 R16 R16 R16 R16 R16 R16 R16 R16 Gambar 10. Kunci L Dan R

Page 20: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

12

Proses selanjutnya adalah perpindahan blok dari L ke R, begitu juga

sebaliknya dari R ke L dengan kondisi perpindahannya adalah posisi kiri adalah

ganjil dan posisi kanan adalah genap, maksudnya disini adalah untuk proses

pembentukan transposisi silang, seperti pada Gambar 11.

L1 L1 L1 L1 L1 L1 L1 L1 L2 L2 L2 L2 L2 L2 L2 L2

L3 L3 L3 L3 L3 L3 L3 L3 L4 L4 L4 L4 L4 L4 L4 L4

L5 L5 L5 L5 L5 L5 L5 L5 L6 L6 L6 L6 L6 L6 L6 L6

L7 L7 L7 L7 L7 L7 L7 L7 L8 L8 L8 L8 L8 L8 L8 L8

L9 L9 L9 L9 L9 L9 L9 L9 L10 L10 L10 L10 L10 L10 L10 L10

L11 L11 L11 L11 L11 L11 L11 L11 L12 L12 L12 L12 L12 L12 L12 L12

L13 L13 L13 L13 L13 L13 L13 L13 L14 L14 L14 L14 L14 L14 L14 L14

L15 L15 L15 L15 L15 L15 L15 L15 L16 L16 L16 L16 L16 L16 L16 L16

R1 R1 R1 R1 R1 R1 R1 R1 R2 R2 R2 R2 R2 R2 R2 R2

R3 R3 R3 R3 R3 R3 R3 R3 R4 R4 R4 R4 R4 R4 R4 R4

R5 R5 R5 R5 R5 R5 R5 R5 R6 R6 R6 R6 R6 R6 R6 R6

R7 R7 R7 R7 R7 R7 R7 R7 R8 R8 R8 R8 R8 R8 R8 R8

R9 R9 R9 R9 R9 R9 R9 R9 R10 R10 R10 R10 R10 R10 R10 R10

R11 R11 R11 R11 R11 R11 R11 R11 R12 R12 R12 R12 R12 R12 R12 R12

R13 R13 R13 R13 R13 R13 R13 R13 R14 R14 R14 R14 R14 R14 R14 R14

R15 R15 R15 R15 R15 R15 R15 R15 R16 R16 R16 R16 R16 R16 R16 R16 Gambar 11. Perpindahan Blok Dari L Ke R Dan R Ke L

Setelah perpindahan ganjil dan genap, akan diproses ambil bit biner.

Proses pengambilan bit biner sesuai dengan alur ambil kunci, seperti pada Gambar

12 yang menunjukkan ambil bit. Hasil ambil bit akan dipindahkan, dari kiri L dan

R (ganjil) berpindah ke kanan dan kanan L dan R (genap) berpindah ke kiri

hingga mencapai hasil transposisi silang dimana bagian kiri semua berubah

menjadi L dan kanan berubah menjadi R, pada Gambar 12. Proses ini dilakukan

dari K1 sampai K4.

Ambil Bit Transposisi Hasil Transposisi

R11

R13

R15

R12 R11

R14 R13

R16 R15

R13

R14

R15

R16

R12

L13

L14

L15

L16

R1

R2

R3

R4

R5

R6

L7

L8

L9

L10

R7

R8

R9

R10

L11

L12

L1

L2

L3

L4

L5

L6

R11R5

R7

R9

L15

R1

R3

R6 R5

R8 R7

R10 R9

L15

R2 R1

R4 R3

L8 L7

R10

R12

R14

R4

R6

R8

L14

L10 L9

L12 L11

L14 L13

L16

L2 L1

L4 L3

L6 L5

R2

L8

L10

L12

R16

L1 L2

L4

L6

L16

L9

L11

L13

L3

L5

L7

Gambar 12. Proses Ambil Bit Sampai Hasil Transposisi

Alur proses dekripsi ditunjukkan bagan pada Gambar 13. Proses dekripsi

merupakan pengembalian Cipherteks ke Plainteks. Algoritma kriptografi berbasis

pada pola balok dalam permainan Tetris menggunakan Linear Congruential

Generator dan transposisi silang merupakan kriptografi kunci simetris sehingga,

Page 21: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

13

untuk proses dekripsi dari algoritma ini merupakan kebalikan dari proses enkripsi

yang artinya terdiri dari 4 putaran juga.

Gambar 13. Bagan Proses Dekripsi

Cipherteks

Bit Proses P4 Proses K4

Ascii

Kunci

Bit

Ascii

Bit Masuk

Proses

Pengambilan

Bit Masuk

Proses

Pengambilan

P4 K4

Proses P1 Proses K1

Bit Masuk

Proses

Pengambilan

Bit Masuk

Proses

Pengambilan

P1 K1

Plainteks

C4

C1 K1

Transposisi

Silang

Transposisi

Silang

Transposisi

Silang

Page 22: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

14

1

3 4

2

Gambar 14. Pola-pola Masukan

1 2

3 4

Gambar 15. Pola-pola Ambilan

Pola-pola pemasukan dan pola-pola pengambilan ditunjukkan pada Gambar

14 dan Gambar 15. Pengujian nilai korelasi menggunakan perhitungan manual

untuk pemasukan dan pengambilan menggunakan kata “Fakultas” sebagai

plainteks dan “FTI UKSW” sebagai kunci. Nilai korelasi didapatkan dari

hubungan angka desimal masukan biner. Uji korelasi ditujukan untuk mengetahui

seberapa besar hubungan antara nilai pola masukan satu dan setiap proses yang

terjadi. Sebagai implementasi dari algoritma ini maka dibuat sebuah aplikasi

enkripsi dan dekripsi dengan inputan berupa file teks, dan outputnya juga berupa

Page 23: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

15

file teks. Jumlah karakter untuk inputan pada kunci dibatasi maksimal 8 karakter,

karena besar blok yang digunakan 256 bit dengan matrix 16x16 maka dilakukan

padding karakter “Null” (0) untuk mengisi blok bit yang kosong. Aplikasi yang

dibuat memberi dua pilihan yaitu enkripsi dan dekripsi untuk masing-masing

rancangan.

Pengujian perancangan dari algoritma yang diteliti sebagai sebuah teknik

kriptografi maka dilakukan proses enkripsi dan dekripsi dengan aplikasi yang

telah dirancang. Berikut adalah tampilan aplikasi (Gambar 16).

Gambar 16. Tampilan Aplikasi

Gambar 17. Plainteks Disimpan Pada File Teks

Gambar 17 menunjukkan file teks yang telah disimpan dan di dalamnya

berisi kalimat “Fakultas”. Tombol Open untuk membuka plainteks yang telah

disiapkan dan “FTI UKSW” pada bagian kunci (Gambar 17).

Gambar 18. “Fakultas” Pada Bagian Plainteks dan “FTI UKSW” Pada Bagian Kunci

Pada Gambar 18 adalah proses enkripsi dengan plainteks “Fakultas” dan

“FTI UKSW” sebagai kunci dan didapatkanlah cipherteks yang ditunjukkan

dengan hasil ASCII pada Gambar 19 dan tombol save untuk menyimpan.

Page 24: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

16

Gambar 19. Proses Enkripsi

Gambar 20. Proses Enkripsi Pada File Teks

Pada Gambar 20 menunjukkan File teks yang yang telah dienkripsi. Untuk

proses dekripsi hampir sama seperti pada proses enkripsi. Algoritma yang diteliti

merupakan jenis kriptografi kunci simetris, sehingga inputan karakter pada kolom

kunci harus sama seperti pada saat melakukan enkripsi dengan key tetap “FTI

UKSW” didapatkanlah plainteks awal yaitu “Fakultas” pada Gambar 21.

Gambar 21. Proses Dekripsi

Gambar 22. Hasil Proses Dekripsi Pada File Teks

Page 25: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

17

Gambar 22 adalah tampilan dari file teks yang telah berhasil didekripsi.

Suatu kriptografi bisa dikatakan sebagai sebuah teknik kriptografi jika memenuhi

5-tuple yaitu P, C, K, E, dan D [11]. P adalah himpunan berhingga dari plainteks.

Perancangan kriptografi ini menggunakan 256 karakter ASCII yang di ambil dari

tabel ASCII, himpunan plainteks pada alur pengambilan berbentuk piramida

merupakan himpunan berhingga. C adalah himpunan berhingga dari cipherteks.

Cipherteks dihasilkan dalam bit (0 dan 1) himpunan dari cipherteks merupakan

himpunan berhingga. K, adalah keyspace atau ruang kunci adalah, himpunan

berhingga dari kunci.

Jumlah ruang kunci yang dipakai dalam perancangan ini adalah 256 karakter

dalam ASCII, sehingga ruang kunci merupakan himpunan berhingga dari kunci.

E, enkripsi, dan D, dekripsi, setiap ek : P→C dan dk : C → P adalah fungsi

sedemikian hingga dk(ek(x)) = x, untuk setiap plainteks x∊P. Pembahasan

sebelumnya telah membahas proses enkripsi dan dekripsi sehingga telah

memenuhi tuple E dan D. Perancangan dengan Linear Congruential Generator

dan transposisi silang berbasis pada pola balok dalam permainan Tetris

merupakan sebuah sistem kriptografi, karena telah memenuhi kelima kondisi 5-

tuple.

Tabel 1 Korelasi Untuk Setiap Pola Masukan Dan Setiap Proses

Pola Masukan

Dan Proses Plainteks Kunci Korelasi

Masukan 1

dan Proses 1 Fakultas FTI UKSW -0,319833496

Masukan 1

dan Proses 2 Fakultas FTI UKSW -0,43267591

Masukan 1

dan Proses 3 Fakultas FTI UKSW 0,195920598

Masukan 1

dan Proses 4 Fakultas FTI UKSW -0,038227903

Berdasarkan Tabel 1 Hasil dari pengujian nilai korelasi untuk menentukan

enkripsi terbaik yang menunjukkan pada setiap pola masukan dan setiap proses

memiliki nilai korelasi berbeda-beda. Untuk pola masukan 1 dengan proses 2

didapatkan nilai korelasi -0,432 nilai tersebut berarti bahwa kriptografi dengan

pola Tetris memiliki hubungan korelasi yang rendah antara pola masukan dan

proses.

Gambar 23. Grafik Plainteks Awal Dan Hasil Cipherteks Akhir

Page 26: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

18

Berdasarkan pada Gambar 23 memperlihatkan kemiringan yang cukup

fluktuatif dan dilihat dari plainteks dengan hasil cipherteks akhir, terlihat dalam

grafik cipherteks berada diatas dan dibawah plainteks, dimana algoritma ini

menunjukkan hasil yang cukup baik dalam proses enkripsi.

Pada uji korelasi sebelumnya dengan plainteks dan kunci yang berbeda,

Pada Tabel 2 menguji algoritma yang baru ini dengan karakter yang sama. Pada

plainteks menggunakan karakter “zzzzzzzz” dan pada kunci menggunakan

karakter “zzzzzzzz” dan menghasilkan nilai korelasi yang berbeda-beda pada

setiap masukan dan proses. Nilai korelasi yang paling rendah, berada pada

masukan 1 dan proses 2 didapatkan -0,381.

Tabel 2 Korelasi Dengan Plainteks Dan Kunci Yang Sama

Pola Masukan

Dan Proses Plainteks Kunci Korelasi

Masukkan 1

dan Proses 1 zzzzzzzz zzzzzzzz -0,29179094

Masukkan 1

dan Proses 2 zzzzzzzz zzzzzzzz -0,381291626

Masukkan 1

dan Proses 3 zzzzzzzz zzzzzzzz 0,218803494

Masukkan 1

dan Proses 4 zzzzzzzz zzzzzzzz -0,031535724

Pada Tabel 3 menguji algoritma yang baru ini dengan kombinasi karakter

“K@r4Kt3R” pada plainteks dan pada kunci menggunakan karakter “12345678”

dan juga menghasilkan nilai korelasi yang berbeda-beda pada setiap masukan dan

proses. Nilai korelasi yang paling rendah, berada pada masukkan 1 dan proses 2

didapatkan -0,458.

Tabel 3 Korelasi Dengan Plainteks “K@r4Kt3R” Dan Kunci “12345678”

Pola Masukan

Dan Proses Plainteks Kunci Korelasi

Masukkan 1

dan Proses 1 K@r4Kt3R 12345678 -0,262611691

Masukkan 1

dan Proses 2 K@r4Kt3R 12345678 -0,458289488

Masukkan 1

dan Proses 3 K@r4Kt3R 12345678 0,28815265

Masukkan 1

dan Proses 4 K@r4Kt3R 12345678 -0,042429339

5. Simpulan

Berdasarkan penelitian yang telah dilakukan maka dapat diambil

kesimpulan yaitu perancangan algoritma kriptografi block cipher berbasis pada

pola balok dalam permainan Tetris dengan menggunakan Linear Congruential

Generator (LCG) pada plainteks dan Transposisi Silang pada kunci dalam proses

Page 27: Perancangan dan Implementasi Algoritma Kriptografi Block ...repository.uksw.edu/bitstream/123456789/9590/2/T1_672008064_Full... · 2 . Caesar cipher . dan . double columnar transposition

19

enkripsi file teks cukup baik. Hasil dari nilai korelasi yang paling rendah terjadi

pada pola pemasukan 1 dan proses 2 dengan menggunakan uji karakter

“K@r4Kt3R” pada plainteks dan “12345678” pada kunci menghasilkan nilai

korelasi -0,458. Rancangan kriptografi ini juga memenuhi 5-tuple sehingga dapat

dikatakan sebagai sebuah sistem kriptografi. Berdasarkan penelitian ini juga dapat

ditarik kesimpulan bahwa, banyaknya proses dalam algoritma kriptografi cipher

block yang baru ini, tidak terlalu berpengaruh pada kekuatan algoritma untuk

mengenkripsi pesan File Teks.

6. Daftar Pustaka

[1] anekacarapraktis.blogspot.co.id, 2013. http://anekacarapraktis.blogspot.co.id

/2013/11/tak-perlu-jadi-mata-mata-menyadap-hp-ternyata-tidak-susah-caran

ya.html Diakses pada 31 Februari 2016

[2] Bilqis, 2012. Analisis Dan Perancangan Aplikasi Pesan Rahasia

Menggunakan Algoritma One Time Pad (OTP) Dengan Pembangkit

Bilangan Acak Linear Congurential Generator (LCG). Universitas

Sumatera Utara.

[3] Buchmann, Johannes, A., 2000. Introduction to Cryptography, Springer-

Verlag, Inc : New York.

[4] id.wikipedia.org, 2015. https://id.wikipedia.org/wiki/Tetris Diakses pada 10

Agustus 2015

[5] kelompokenamka.blogspot.co.id, 2012. http://kelompokenamka.blogspot.co.

id/2012/11/contoh-kasus-kasus-pencurian-data_21.html Diakses pada 31

Februari 2016

[6] Mauliku, W. M., Magdalena, A. I. P., Wowor, A. D., 2015. Perancangan

dan Implementasi Algoritma Kriptografi Cipher Block Berbasis pada

Bentuk Piramida dan Linear Congruential Generator. Salatiga: Skripsi-S1

Sarjana Universitasi Kristen Satya Wacana.

[7] Mongomery C. Douglas, Runger C. George, 2003. Applied Statistics and

Probability For Engineers. John Wiley & Sons Inc. US.

[8] Munir, Rinaldi, 2006. Kriptografi, Informatika. Bandung, Indonesia.

[9] Nathasia, N.D., Wicaksono, A.E 2011. Penerapan Teknik Kripografi

Stream-Cipher Untuk Pengaman Basis Data. Universitas Nasional.

[10] Prabowo, H.E., Hangga, Arimaz 2015. Metoda Vigenere Chiper Double

Columnar Transposition Sebagai Modifikasi Teknik Kriptografi Dalam

Pembentukan Kunci. Universitas Negeri Semarang.

[11] Stinson, D. R., 1995. Cryptography: Theory and Practice. CRC Press, Boca

Raton, London, Tokyo.