• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Algoritma Kriptografi Cipher Block Berbasis pada Bentuk Piramida dan Linear Congruential Generator

N/A
N/A
Protected

Academic year: 2018

Membagikan "Institutional Repository | Satya Wacana Christian University: Perancangan dan Implementasi Algoritma Kriptografi Cipher Block Berbasis pada Bentuk Piramida dan Linear Congruential Generator"

Copied!
31
0
0

Teks penuh

(1)

Perancangan dan Implementasi Algoritma Kriptografi

Cipher

Block

Berbasis pada Bentuk Piramida dan

Linear Congruential Generator

Artikel Ilmiah

Peneliti :

William Marthinus Mauliku (672009186) Magdalena A. Ineke Pakereng, M.Kom

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

Program Studi Teknik Informatika Fakultas Teknologi Informasi Universitas Kristen Satya Wacana

(2)

Perancangan dan Implementasi Algoritma Kriptografi

CipherBlock

Berbasis pada Bentuk Piramida dan

Linear Congruential Generator

Artikel Ilmiah

Diajukan kepada Fakultas Teknologi Informasi

Untuk memperoleh gler Sarjana Komputer

Peneliti:

William Marthinus Mauliku (672009186) Magdalena A. Ineke Pakereng, M.Kom

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

Program Studi Teknik Informatika

Fakultas Teknologi Informasi

Universitas Kristen Satya Wacana

(3)
(4)
(5)
(6)
(7)
(8)
(9)
(10)

1

Perancangan dan Implementasi Algoritma Kriptografi

Cipher

Block

Berbasis pada Bentuk Piramida dan

Linear Congruential Generator

1)

William M. Mauliku, 2)M. A. Ineke Pakereng, 3) Alz D. Wowor

Fakultas Teknologi Informasi Universitas Kristen Satya Wacana Jl. Diponegoro 52-60, Salatiga 50771, Indonesia

Email: 1) 672009186@student.uksw.edu, 2) inekep200472@yahoo.com, 3) alzdanny.wowor@staff.uksw.edu

Abstract

Data security is one of the very important factors in today's world of information technology. One way to secure data is by using cryptographic techniques, but some of it have been successfully solved by the cryptanalyst . Therefore there is a need to make a new cryptographic algorithms. The design of the new cryptographic algorithm is based on the shape of a pyramid and Linear Congruential Generator (LCG). The new cryptographic algorithm is a block cipher that operate in the form of bits, and included in symmetric key cryptography techniques. Results from the design of cryptographic algorithms can be used to encrypt and decrypt the text files.

Keywords: Cryptography, Cipher Block, Linear Congruential Generator (LCG), Symmetric Key, text files.

Abstrak

Keamanan data adalah salah satu faktor yang sangat penting dalam dunia teknologi informasi saat ini. Salah satu cara untuk pengamanan data adalah dengan teknik kriptografi, akan tetapi beberapa teknik kriptografi telah berhasil dipecahkan oleh para kriptanalis sehingga perlu dibuat algoritma kriptografi baru. Perancangan algoritma kriptografi berbasis pada bentuk piramida dan Linear Congruential Generator (LCG) adalah suatu rancangan algoritma kriptografi cipher block yang beroperasi dalam bentuk bit, dan termasuk dalam teknik kriptografi kunci simetris. Hasil dari perancangan algoritma kriptografi ini dapat digunakan untuk enkripsi dan dekripsi pada file teks.

Kata Kunci : Kriptografi, Cipher Block, Linear Congruential Generator (LCG), Kunci Simetris, file teks.

________________________

1)Mahasiswa Program Studi Teknik Informatika, Fakultas Teknologi Informasi Universitas Kristen

Satya Wacana, Salatiga.

(11)

2

1. Pendahuluan

Keamanan data merupakan salah satu aspek penting dari suatu sistem informasi. Pentingnya suatu informasi, berkaitan erat dengan betapa pentingnya informasi tersebut dikirim dan diterima oleh pihak-pihak yang berkepentingan. Informasi akan menjadi tidak berguna lagi apabila di tengah jalan informasi itu disadap atau dibajak oleh orang yang tidak memiliki hak atasnya, sehingga informasi yang seharusnya ditujukan pada pihak yang berkepentingan akan salah sasaran dan menjadi tidak rahasia.

Satu hal yang perlu diingat adalah tidak ada satu sistem komputer pun yang memiliki sistem keamanan yang sempurna, oleh karena itu yang dapat dilakukan sebagai pengguna sistem informasi adalah mencoba meminimalisir celah keamanan yang ada. Celah keamanan yang ada pada saat berkomunikasi atau bertukar informasi dapat diminimalisir dengan beberapa metode dalam dunia teknologi informasi. Salah satunya yakni dengan membuat informasi atau data tersebut tidak dapat dibaca tanpa bantuan khusus yaitu dengan menggunakan teknik kriptografi.

Teknik kriptografi saat ini banyak yang telah dapat dipecahkan atau dibobol dengan menggunakan teknik yang disebut dengan Kriptanalisis (Criptanalisys). Kemajuan di bidang teknologi hardware dan software serta, perkembangan ilmu matematika juga turut membantu para kriptanalis dalam melakukan pekerjaannya.

Berdasarkan pada latar belakang ini, maka dilakukan penelitian yang membahas tentang “Perancangan dan Implementasi Algoritma Kriptografi Cipher Block Berbasis pada Bentuk Piramida dan Linear Congruential Generator”. Penelitian ini dibuat dengan tujuan agar dapat menghasilkan sebuah algoritma baru yang dapat membantu untuk melindungi dan meningkatkan keamanan data, serta untuk menambah variasi baru dari teknik-teknik kriptografi yang telah ada.

2. Tinjauan Pustaka

(12)

3

Penelitian kedua berjudul “Perancangan Algoritma Pada Kriptografi Block Cipher dengan Teknik Langkah Kuda Dalam Permainan Catur”. Penelitian ini membahas tentang perancangan algoritma kriptografi cipher block, dengan menggunakan pola langkah kuda catur yang diterapkan dalam blok ukuran 8x8 (64 bit), yang digunakan untuk memasukan dan mengambil bit pada plainteks dan kunci. Ada 4 kali proses (putaran) yang dilakukan sampai menghasilkan cipherteks [2].

Penelitian ke-3 yang menjadi studi literatur berjudul “Perancangan Kriptografi Block Cipher pada Teknik Anyaman Dasar Tunggal”. Penelitian ini merancangan algoritma kriptografi block cipher dengan menggunakan anyaman dasar tunggal, yang merupakan salah satu dari sekian banyak teknik anyaman yang diterapkan pada pembuatan tikar, ancak, atau yang lainnya. Teknik anyaman dasar tunggal digunakan sebagai pola untuk menempatkan bit-bit dalam sebuah blok yang dikombinasikan dengan operasi-operasi kriptografi. Kriptografi ini menggunakan transposisi bit dan beroperasi dalam 64 bit, serta ada 5 kali putaran sampai menghasilkan ciphertext [3].

Berdasarkan penelitian-penelitian tersebut maka akan dijadikan acuan dalam perancangan algoritma kriptografi baru ini. Perbedaan mendasar dengan penelitian-penelitian yang sebelumnya adalah algoritma Cipher Block yang dirancang ini beroperasi atau diterapkan blok berukuran 16x8 (128 bit) serta, menggunakan nilai-nilai konstanta dari linear congruential generator sebagai, generator untuk pembangkitan kunci.

Secara etimologi, kriptografi (cryptography) berasal dari bahasa Yunani dan terdiri dari dua suku kata, yaitu “cryptos” yang artinya rahasia (secret) dan “graphein” artinya tulisan (writing). Sehingga kriptografi dapat diartikan sebagai tulisan rahasia (secret writing) [4].

Ada empat tujuan mendasar dari ilmu kriptografi yang juga merupakan aspek keamanan informasi [5] yaitu :

1. Confidentiality (kerahasiaan) 2. Dataintegrity (keutuhan data) 3. Authentication (otentikasi)

4. Non-repudiation (anti-penyangkalan)

Kriptografi memiliki dua konsep utama, yaitu enkripsi dan dekripsi. Enkripsi adalah proses menyandikan plaintext menjadi ciphertext dengan mengubah pesan menjadi bentuk lain yang disamarkan agar tidak dikenali secara langsung, sedangkan dekripsi adalah proses mengembalikan ciphertext menjadi plaintext. Kriptografi dapat dibedakan lagi menjadi kriptografi kunci simetris (Symmetric-key cryptography) dan kriptografi kunci asimetris (asymmetric-key cryptography) berdasarkan kunci yang digunakan untuk enkripsi dan dekripsi.

(13)

4

Gambar 1 Skema Kriptografi Kunci Simetris (Munir, 2006)

Jika kunci untuk enkripsi tidak sama dengan kunci yang digunakan untuk dekripsi, maka kriptografinya dinamakan sistem kriptografi asimetri. Pada kriptografi jenis ini, setiap orang yang berkomunikasi mempunyai sepasang kunci, yaitu kunci publik dan kunci privat. Pengirim mengenkripsi pesan dengan menggunakan kunci publik si penerima pesan (receiver). Hanya penerima pesan yang dapat mendekripsi pesan, karena hanya receiver yang mengetahui kunci privatnya (Gambar 2).

Gambar 2 Skema Kunci Kriptografi Kunci Asimetris (Munir, 2006)

Cipher Block merupakan suatu algoritma dimana input dan output-nya berupa satu blok dan setiap blok terdiri dari beberapa bit (1 blok terdiri dari 64-bit atau 128-bit). Block cipher mempunyai banyak aplikasi, aplikasi tersebut digunakan untuk memberikan layanan confidentialy (kerahasiaan), integritas data atau authentication (pengesahan pemakai), dan juga bisa memberikan layanan keystream generator untuk stream cipher [5].

(14)

5

Gambar 3 Piramida Bangsa Maya [6]

Linear Congruential Generator (LCG) adalah salah satu pembangkit bilangan acak tertua dan sangat terkenal. LCG didefinisikan dalam relasi rekurens [4]:

,

yang dalam hal ini,

bilangan acak ke-n dari deretnya bilangan acak sebelumnya a = faktor pengali

b =increment m = modulus

(a,b, dan m semuanya konstanta).

LCG sangat sensitif terhadap pemilihan nilai-nilai a, b, dan m. Pemilihan nilai-nilai yang buruk dapat mengarah pada implementasi LCG yang tidak bagus.

Definisi I. Sebuah kriptografi dapat dikatakan sebagai sebuah sistem kriptografi jika memenuhi lima-tuple (five-tuple) (P, C, K, E, D) yang memenuhi kondisi [7]:

1. adalah himpunan berhingga dari plainteks, 2. adalah himpunan berhingga dari cipherteks,

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

4. Eadalah himpunan fungsi enkripsi ek :PC

, 5. Dadalah himpunan fungsi dekripsi dk :CP

.

Untuk setiap kK, terdapat aturan enkripsi ekE dan berkorespodensi dengan aturan dekripsidkD. Setiap P C dan C P adalah fungsi sedemikian hingga dk

ek

 

x

x untuk setiap plainteksxP.

Diferensiasi digunakan untuk menganalisis nilai kemiringan. Diferensiasi data adalah perbandingan selisih antar dua titik. Dalam kalkulus, metode ini sering disebut sebagai turunan atau kemiringan dari data. Jika diberikan kumpulan data ((x1,y1), (x2,y2), (x3,y3), …, (xn,yn)) dengan syarat bahwa xi<xi+1 dimana i =

n

x

m b

ax

xn ( n1  )mod

1 n

x

(15)

6

1…n. Data-data tersebut dapat divisualisasikan ke dalam koordinat Cartesius untuk setiap x sebagai variabel bebas dan y atau kadang ditulis sebagai f(x) sebagai variabel tak bebas [8]. Nilai diferensiasi data pada dua titik dapat dibentuk persamaan sebagai berikut

(2)

dengan (xa, ya) sebagai titik pertama, dan titik berikutnya adalah (xb, yb).

Persamaan 3 menujukkan secara umum, apabila terdapat n data maka untuk menentukan rata-rata dari diferensiasi data dapat dicari untuk melihat tren dari setiap data Rataan diferensiasi (Rd).

(3)

Pengujian lain yang akan dilakukan adalah menghitung nilai keacakan dari plaintext terhadap ciphertext. Definisi dari acak (randomness) dalam kriptografi adalah sifat bebas dari kecenderungan sehingga tidak mudah untuk diterka [9]. Nilai keacakan diperoleh dengan perbandingan antara selisih plaintext dan ciphertext terhadap plaintext, dapat dijabarkan seperti pada Persamaan 4.

(4)

Korelasi merupakan suatu teknik statistik yang dipergunakan untuk mengukur kekuatan hubungan dua variabel dan juga untuk mengetahui bentuk hubungan antara dua variabel 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 5 [10].

(5)

Kategorisasi kekuatan hubungan koefisien korelasi terdapat pada Tabel 1.

Tabel 1 Kekuatan Hubungan Korelasi [11]

Merujuk pada persamaan maka secara matematis nilai r diperoleh dari jumlah nilai selisih perkalian antara x dan y dengan hasil perkalian jumlah total x

(16)

7

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 6 [10].

(6)

Analisis yang akan dilakukan terhadap implementasi perancangan algoritma kriptografi berbasis pada bentuk piramida dan linear congruentional generator adalah, analisis terhadap nilai koefisien determinasi dan fitting (pencocokan kurva). Grafik fitting (pencocokan kurva) dapat menghasilkan model persamaan untuk mengatasi kekurangan hardware dan software sehingga, secara statistik dapat mewakilkan data. Hasil lain dari fitting adalah nilai R2 yang secara statistik dapat menunjukkan apabila nilainya mendekati 1 maka semakin mendekati kurva dan dapat dijadikan model, begitupun sebaliknya apabila nilai R2 semakin mendekati 0 maka tidak dapat dijadikan model karena nilainya tidak cocok dengan kurva [12].

3. Metode dan Perancangan Sistem

Penelitian yang dilakukan diselesaikan melalui beberapa tahapan penelitian yang secara keseluruhan terbagi dalam empat 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

Tahapan penelitian pada Gambar 4, dapat dijelaskan sebagai berikut. Tahap pertama: identifikasi masalah dan studi literatur, yaitu mengidentifikasi masalah-masalah yang akan dibahas, serta mendapatkan data dan literatur yang terkait

 

} ) ( }{

) ( {

) (

2 2

2

2

 

y y

n x x

n

y x xy

(17)

8

dengan perancangan dan implementasi algoritma kriptografi cipherblock berbasis pada bentuk piramida dan Linear Congruential Generator (LCG); Tahap kedua: Perancangan Sistem, yaitu meliputi pembuatan bagan proses enkripsi dan dekripsi serta gambaran umum mengenai pembuatan teknik kriptografi; Tahap ketiga: implementasi sistem, yaitu sistem yang telah dirancang akan diimpementasikan ke dalam bentuk program; Tahap keempat: pengujian sistem, yaitu dilakukan pengujian terhadap sistem yang dibangun, kemudian melakukan analisis hasil dari teknik kriptografi yang telah dibuat; Tahap kelima: penulisan laporan hasil penelitian, yaitu mendokumentasikan proses penelitian yang telah dilakukan dari tahap awal hingga akhir ke dalam tulisan, yang akan menjadi laporan hasil penelitian.

Proses enkripsi pada perancangan algoritma kriptografi cipher block berbasis pada bentuk piramida dan linear congruential generator adalah sebagai berikut (Gambar 5). Plaintext dikonversikan ke dalam bentuk biner sesuai dengan tabel ASCII, kemudian rangkaian bilangan biner dimasukkan pada matriks 16x8 sesuai dengan pola, dan bilangan biner di dalam matriks diambil sesuai dengan pola sehingga didapatkan P1.

Gambar 5 Bagan Rancangan Proses Enkripsi

(18)

9

Gambar 6 Bagan Rancangan Proses Dekripsi

Gambar 6 merupakan rancangan bagan proses dekripsi. Algoritma ini merupakan kriptografi simetris sehingga kunci yang digunakan untuk enkripsi sama dengan proses dekripsi. Proses dekripsi pada perancangan dan implementasi algoritma kriptografi cipher block berbasis pada bentuk piramida dan linear congruential generator merupakan kebalikan dari proses enkripsi.

4. Hasil dan Pembahasan

Pada bagian ini akan dibahas secara lebih rinci mengenai perancangan dan implementasi algoritma kriptografi cipher block berbasis pada bentuk piramida dan linear congruential generator. Bagian ini juga akan membahas tentang proses enkripsi dan dekripsi serta, proses pembangkitan bilangan acak yang digunakan pada kunci sehingga menghasilkan suatu nilai keacakan yang baik.

(19)

10

plaintext dalam matriks 16x8 sesuai dengan bentuk piramida bangsa maya seperti pada Gambar 7.

Gambar 7 Rancangan Pola Pengambilan Plaintext pada Putaran ke-1

Sesuai dengan Gambar 5 maka didalam 1 blok matriks terdapat 128 bit, dan urutan pengambilan rangkaian bit-bit tersebut dijabarkan sebagai berikut.

(7)

Gambar 8 RancanganPola Pengambilan Kunci pada Putaran ke-1

Pola pengambilan kunci pada matriks 16x8 seperti Gambar 8. Pola tersebut merupakan pola pengambilan rangkaian biner pada kunci di putaran ke-1. Berikut adalah penjabaran dari urutan pengambilan rangkaian biner pada Gambar 8.

(20)

11

Alur proses enkripsi dan dekripsi telah dijelaskan di pembahasan sebelumnya yaitu pada bagian metode perancangan sistem. Proses yang lebih lengkap mengenai alur enkripsi serta dekripsi akan dijabarkan pada Gambar 9 dan Gambar 10.

(21)

12

Gambar 9 menggambarkan proses enkripsi, secara keseluruhan proses enkripsi ada empat putaran, yang di dalam setiap putarannya terdiri dari dua proses yaitu, proses untuk pembentukan plaintext dan, proses untuk pembentukan kunci. Plaintext diubah ke dalam bentuk bit sesuai dengan tabel ASCII, dan rangkaian bit dimasukkan ke matriks 16x8 sesuai dengan pola. Pengambilan bit menggunakan pola yang menyerupai bentuk piramida dan, hasil pengambilan rangkaian biner akan ditampung menjadi P1. Hal yang sama juga terjadi pada proses pembentukan kunci, letak perbedaannya adalah pada pola yang digunakan dan, kunci yang diinputkan akan dibangkitkan menggunakan generator pembangkit bilangan acak semu yaitu linear congruential generator (LCG). Rangkaian biner dari kunci setelah melalui proses pengambilan ditampung di K1.

Rangkaian biner pada P1 akan di XOR dengan rangkaian biner pada K1. Persamaan 7 menunjukkan susunan pengambilan rangkaian biner dari plaintext pada putaran pertama sedangkan, Persamaan 8 menunjukkan susunan pengambilan rangkaian biner kunci pada putaran pertama. Rangkaian biner pada plaintext yang telah ditampung pada P1 yaitu x1(n1,n2,n3,n4,n5,n6,n7,n8) di XOR

dengan, rangkaian biner pada K1 yakni y1 (k1, k2, k3, k4, k5, k6, k7, k8). Hal yang

sama akan berulang pada x2 y2 dan seterusnya sampai x16 y16. Hasil XOR dari

P1 dan K1 adalah C1. Rangkaian biner pada C1 kemudian akan digunakan sebagai plaintext untuk proses masuk bit pada putaran ke-2 sedangkan, rangkaian bit pada K1 akan digunakan untuk proses masuk bit kunci pada putaran ke-2.

Proses yang dilakukan didalam putaran ke-2, ke-3, dan ke-4 merupakan proses yang hampir sama dengan proses yang telah dilakukan pada putaran ke-1. Perbedaannya adalah pola yang digunakan berbeda pada setiap putaran, baik dari putaran ke-1 sampai putaran ke-4. Hasil dari putaran ke-4 yaitu P4 dan K4. Ciphertext adalah hasil XOR dari P4 dan K4.

Penggunaan bilangan acak semu untuk pembangkitan kunci dimaksudkan untuk menghasilkan nilai yang tidak dapat diprediksi sehingga didapatkan suatu nilai keacakan yang cukup baik. Pembangkit bilangan acak didapatkan dari, nilai rata-rata desimal bilangan kunci dijumlahkan dengan nilai konstanta a, kemudian 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 kunci di putaran pertama. Nilai-nilai konstanta Linear Congruential Gonerator (LCG) yang digunakan untuk pembangkitan kunci pada perancangan algoritma ini adalah, nilai konstanta a = 421, b = 1663, dan m = 7875.

(22)

13

Gambar 10 Bagan Proses Dekripsi

Pengujian kriptografi menggunakan perhitungan secara manual. Proses enkripsi pada pengujian kriptografi ini menggunakan kata “FTIUKSW_SALATIGA” sebagai plaintext dan “JUVENTUSSEMANGAT” sebagai kunci. Proses yang dijabarkan dalam pembahasan ini adalah proses pada putaran pertama.

Plaintext “FTIUKSW_SALATIGA” dan kunci “JUVENTUSSEMANGAT”

(23)

14

Pengambilan rangkaian biner pada matriks 16x8 untuk plaintext dan kunci sesuai dengan pola yang telah ditunjukkan pada Gambar 5 dan Gambar 6, yang merupakan pola pengambilan pada putaran pertama. Rangkaian biner kemudian diurutkan sesuai dengan Persamaan 7 untuk plaintext dan, Persamaan 8 untuk kuncisehingga menghasilkan,

P1 = 11111111, 00011110, 00111001, 10100100, 01000100, 10011101, 10001010, 00000100, 10000111, 11101001, 01110100, 01001000, 00101001, 00000100, 10001001, 01001001

K1 = 11000010, 01101101, 00000100, 10101001, 00010010, 00100101, 11010100, 10000011, 01111111, 11000101, 11011001, 11100001, 00111101, 11000110, 10111010, 10001010

C1 = 00111101, 01110011, 00111101, 00001101, 01010110, 10111000, 01011110, 10000111, 11111000, 00101100, 10101101, 10101001, 00010100, 11000010, 00110011, 11000011

Berikut adalah hasil dari setiap putaran proses enkripsi dan nilai desimal serta, karakternya yang ditunjukkan pada Tabel 2.

Tabel 2 Hasil XOR Tiap Putaran

Hasil XOR Setiap Putaran Nilai Desimal Karakter

C1

00111101, 01110011, 00111101, 00001101, 01010110, 10111000, 01011110, 10000111, 11111000, 00101100, 10101101, 10101001, 00010100, 11000010, 00110011, 11000011

00011001, 10101111, 01100101, 01000011, 11111001, 10000001,

25, 175, 101, 67, 249, 129, 188, 27,

¯ eCù ¼

(24)

15 10111100, 00011011, 01000000,

00011111, 10001000, 10110111, 01111111, 11010010, 01110010, 11111101

64, 31, 136, 183, 127, 210, 114, 253

C3

11001111, 11011101, 10101000, 11011101, 00000111, 00001010, 00101001, 00011000, 11101110, 11011010, 00111100, 00111010, 10000101, 10111110, 00101001, 10111001

10000111, 01010001, 01010111, 01111001, 11101110, 00111100, 11101100, 11011111, 00101110, 01001001, 01000010, 00011001, 00100010, 00010011, 00101101, 11011001

Pengujian pertama yang dilakukan adalah mencari nilai diferensiasi. Pengujian ini dilakukan untuk mencari nilai kemiringan, dalam hal ini hanya melihat nilai dari ciphertext berdasarkan plaintext yang diinputkan. Apabila nilainya negatif maka kecenderungan nilai dari ciphertext pertama ke berikutnya cenderung menurun (kebawah). Mengacu pada Persamaan 3 maka dapat diperoleh nilai diferensiasi ciphertext dari algoritma yang telah dibuat.

Pengujian ke-2 yaitu mencari nilai keacakan plaintext terhadap ciphertext. Nilai keacakan sendiri adalah perbandingan selisih antara ciphertext dengan plaintext terhadap ciphertext, sehingga apabila nilai yang dihasilkan dari pengujian ini negatif maka kecenderungan nilai ciphertext berada di bawah plaintext.Mengacu pada Persamaan 4 maka dicari nilai keacakannya.

Pengujian berikutnya merujuk pada Persamaan 6, yang merupakan persamaan untuk mencari nilai korelasi antara plaintext dan ciphertext. Nilai korelasi berkisar dari -1 sampai 1. Apabila nilai korelasi mendekati 1 maka nilai plaintext dan ciphertext sangatlah berhubungan (berkorelasi) sedangkan, apabila nilai korelasi yang dihasilkan semakin mendekati 0 (nol) maka, nilai plaintext dan ciphertext saling tidak berhubungan dan secara statistik apabila suatu kriptografi dengan nilai korelasi antara ciphertext dan plaintext mendekati 0 (nol) dapat dikatakan cukup baik.

Tabel 3 Nilai Keacakan, Diferensiasi dan Korelasi Tiap Proses Keacakan Diferensiasi Korelasi

Proses 1 -0.344 -0.400 -0.022

Proses 2 -0.025 98.267 -0.239

Proses 3 -1.048 -156.400 -0.203

(25)

16

Tabel 3 menunjukkan hasil dari pengujian setiap proses didalam algoritma yang dirancang. Nilai-nilai yang dihasilkan adalah, nilai keacakan, diferensiasi, dan korelasi.

Merujuk pada kekuatan hubungan korelasi pada Tabel 1 maka, nilai-nilai hasil pengujian korelasi yang ditampilkan pada Tabel 3 berada di kisaran hubungan kurang berarti dan hubungan lemah, sehingga dapat dikatakan bahwa algoritma kriptografi yang dirancang dapat menyamarkan plaintext.

Sebagai implementasi dari algoritma ini maka dibuat sebuah aplikasi enkripsi dan dekripsi dengan inputan berupa file teks, dan outputnya juga berupa file teks. Jumlah karakter untuk inputan pada kunci dibatasi paling banyak 8 karakter, dan untuk mengisi blok-blok yang kosong pada matriks 16x8 maka akan dilakukan padding karakter. Karakter yang digunakan untuk padding dalam perancangan aplikasi ini adalah karakter “Null” (0).

Merujuk pada Definisi 1. Suatu kriptografi dapat dikatakan sebagai sebuah teknik kriptografi jika memenuhi 5-tuple yaitu P, C, K, E, dan D [6]. 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 ciphertext. Ciphertext dihasilkan dalam bit (0 dan 1) himpunan dari ciphertext 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 : PC dan dk : C → P adalah fungsi sedemikian hingga

dk(ek(x)) = x, untuk setiap plainteks xP. Pembahasan sebelumnya telah

membahas proses enkripsi dan dekripsi sehingga telah memenuhi tuple E dan D. Algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator merupakan sebuah sistem kriptografi, karena telah memenuhi lima kondisi 5-tuple.

Pengujian perancangan algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator sebagai sebuah teknik kriptografi maka dilakukan proses enkripsi dan dekripsi dengan menggunakan aplikasi yang telah dirancang. Sebelum melakukan proses enkripsi dan dekripsi perlu dipersiapkan beberapa hal:

a) Plainteks yang digunakan adalah “FTIUKSW_SALATIGA” b) Kunci yang akan digunakan adalah “JUVENTUS”

(26)

17

Gambar 12Plaintext disimpan pada File Teks

Berikut adalah tampilan tab enkripsi dari aplikasi yang dirancang (Gambar 13). File teks yang telah disiapkan, diinputkan pada bagian file dengan menggunakan tombol Add File, kunci “JUVENTUS ” dimasukkan pada bagian Key.

Gambar 13 Tampilan Tab Enkripsi

(27)

18

Gambar 14Hasil Enkripsi File “FTIUKSW_SALATIGA”

Tampilan dari tab dekripsi ditunjukkan pada Gambar 15, untuk proses dekripsi hampir sama seperti pada proses enkripsi. Algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator merupakan jenis kriptografi kunci simetris, sehingga inputan karakter pada kolom kunci harus sama seperti pada saat melakukan enkripsi.

Gambar 15 Tampilan Tab Dekripsi

(28)

19

Gambar 16 Hasil Dekripsi

Pembahasan berikutnya mengenai hasil pengujian dari kriptografi yang telah dirancang. Pengujian yang dilakukan terhadap aplikasi dari algoritma kriptografi ini yakni, pengujian waktu dan pengujian memori.

Data yang dinputkan sebagai plaintext sebanyak 28 data yang dipilih dengan sembarang sesuai dengan banyak karakter yang diinputkan. Data terkecil yang diinputkan adalah 5 karakter dan, data terbesar yang diinputkan adalah 1000 karakter. Hasil dari pengujian secara statistik mengandung informasi terhadap kekuatan algoritma kriptografi yang dirancang. Keterbatasan data yang diujicobakan bukan menunjukkan keterbatasan algoritma dalam memproses data tetapi pada keterbatasan hardware dan software, oleh karena itu digunakan metode fitting (pencocokan kurva), sehinga dapat diperoleh model yang secara statistik dapat mewakilkan data dalam hal ini kemampuan algoritma.

Gambar 17 menunjukkan hasil dari pengujian waktu proses enkripsi yang dilakukan terhadap plaintext yang telah diujicobakan, sumbu x menyatakan banyaknya karakter sedangkan sumbu y menunjukkan waktu (ms). Berdasarkan grafik hasil pengujian tersebut maka dilakukan fitting dan diperoleh model persamaan terhadap algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator sebagai berikut.

(9)

Gambar 17 Grafik Waktu pada Proses Enkripsi

286 , 8 105 . 0 )

(xx

(29)

20

Grafik pada Gambar 17 juga memberikan nilai R2 = 0.994, yang merupakan nilai koefisien determinasi dari pengujian waktu terhadap plaintext, sehingga dapat disimpulkan secara statistik bahwa Persamaan 9 dapat dijadikan model terhadap algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator. Model ini dapat digunakan untuk memproyeksikan dan atau menginterpolasikan kebutuhan waktu berdasarkan inputan karakter, sebagai contoh data yang diinputkan sebanyak 2000 karakter maka berdasarkan Persamaan 9 diperoleh

286 , 8 ) 2000 ( 105 . 0 ) 2000

(  

f . (10)

= 218.286 ms

Pengujian memori dapat dilihat pada Gambar 18. Grafik pada Gambar 18 menunjukkan hasil dari pengujian memori yang dilakukan terhadap plaintext, yang telah diujicobakan. Sumbu x menunjukkan banyaknya karakter, dan sumbu y menunjukkan banyaknya memori yang digunakan.

Gambar 18 Grafik Memori pada Prosess Enkripsi

Model fitting untuk kebutuhan memori dari proses enkripsi adalah fungsi linear ditunjukkan pada Gambar 18 secara umum diberikan pada Persamaan 11. Berdasarkan hasil pengujian didapatkan nilai R2 sebesar 0,635 dan model persamaan algoritma yang dirancang sebagai berikut,

15 , 40 004 . 0 )

(xx

f (11)

Grafik pada Gambar 18 sangat fluktuatif. Nilai R2 yang didapatkan sebesar 0,635 sehingga, secara statistik Persamaan 11 kurang baik untuk dijadikan model yang dapat digunakan untuk memproyeksikan dan atau menginterpolasikan kebutuhan memori berdasarkan inputan karakter pada algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator.

(30)

21

Berdasarkan Gambar 19, yang merupakan grafik hasil pengujian waktu pada proses dekripsi, maka setelah melalui proses fitting diperoleh nilai R2 = 0.991 dan model persamaan terhadap algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator sebagai berikut.

(12) Nilai R2 yang diperoleh dari hasil fitting grafik pada Gambar 19 yaitu sebebesar 0.991, yang merupakan nilai koefisien determinasi dari pengujian waktu terhadap plaintext pada proses dekripsi, sehingga dapat disimpulkan secara statistik bahwa Persamaan 12 dapat dijadikan model terhadap algoritma kriptografi berbasis pada bentuk piramida dan linear congruential generator. Model ini dapat digunakan untuk memproyeksikan dan atau menginterpolasikan kebutuhan waktu dekripsi berdasarkan inputan karakter, sebagai contoh data yang diinputkan sebanyak 2000 karakter maka berdasarkan Persamaan 12 diperoleh

319

Gambar 20 Grafik Memori pada Proses Dekripsi

Model fitting untuk kebutuhan memori dari proses dekripsi adalah fungsi linear ditunjukkan pada Gambar 20. Hasil dari fitting grafik pada Gambar 20 secara umum diberikan pada Persamaan 14. Berdasarkan hasil fitting juga diperoleh nilai R2 sebesar 0,690 dan, model persamaan algoritma yang dirancang sebagai berikut.

(14) Grafik pada Gambar 20 cukup fluktuatif. Nilai R2 yang didapatkan dari proses fitting terhadap grafik tersebut sebesar 0.690 sehingga, Persamaan 14 kurang cocok untuk dijadikan model yang dapat digunakan untuk memproyeksikan dan atau menginterpolasikan kebutuhan memori pada proses dekripsi.

5. Simpulan

Berdasarkan penelitian yang telah dilakukan maka dapat diambil kesimpulan yaitu perancangan algoritma kriptografi berbasis pada bentuk piramida dan linear congruetial generator dapat melakukan proses enkripsi dan dekripsi. Perancangan ini juga telah memenuhi 5-tuple sehingga dapat dikatakan sebagai sebuah sistem kriptografi. Perancangan ini juga telah menghasilkan suatu variasi algoritma kriptografi yang baru, dan juga metodologi baru dalam kriptografi kunci simetris. Kombinasi atau gabungan rancangan algoritma cipher

(31)

22

block berbasis pada bentuk piramida dan linear congruential generator sangat baik karena dalam hal ini dapat menyamarkan relasi plaintext terhadap ciphertext.

6. Daftar Pustaka

[1] Novlentina, Pasi, 2008, Studi Teknis Dekripsi dan Enkripsi File Dengan Menggunakan Algoritma Gost pada CFB (Cipher Feedback). Medan, Universitas Sumatera Utara.

[2] Setiawan, A. N., Dkk, 2015. Perancangan Algoritma Pada Kriptografi Block Cipher dengan Teknik Langkah Kuda Dalam Permainan Catur. Prociding Seminar Teknik Informatika dan Sistem Informasi, Bandung [3] Putri, S. C., dkk, 2015, Perancangan Kriptografi Block Cipher Berbasis

pada Teknik Anyaman Dasar Tunggal, Universitas Kristen Satya Wacana, Salatiga.

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

[5] Ariyus, Dony, 2006, Kriptografi Keamanan Data dan Komunikasi. Yogyakarta, Graha Ilmu.

[6] inhabitat.com, 2012. http://inhabitat.com/21-12-12-eco-challenges-are-similar-to-those-that-collapsed-the-mayans/mayan-pyramids/. Diakses pada 14 April 2015

[7] Stinson, D. R., 1995.Cryptography: Theory and Practice. CRC Press, Boca Raton, London, Tokyo.

[8] Joan Daemen-Vincent Rijmen.2001.The Design of Rijndael AES-The Advanced Encryption Standard. New York : Springer

[9] Kromodimoeldjo, Sentot, 2010, Teori dan Aplikasi Kriptografi. Jakarta, SPK IT Consulting.

[10] Mongomery C. Douglas, Runger C. George, 2003, Applied Statistics and Probability For Engineers. John Wiley & Sons Inc. US.

[11] De Vaus, David A., 2001, Research Design in Social Research, London, Sage.

[12] mathworld.wolfram.com, 2015.

Gambar

Gambar 1  Skema Kriptografi Kunci Simetris (Munir, 2006)
Gambar 3 Piramida Bangsa Maya [6]
Tabel 1 Kekuatan Hubungan Korelasi [11]
Gambar 4 Tahapan Penelitian
+7

Referensi

Dokumen terkait

[r]

Yang dimaksud dengan kegiatan kunjungan rumah adalah semua kegiatan yang dilakukan untuk tindakan lanjut kegiatan jenis pelayanan : penyakit dalam, kesehatan anak (Termasuk.

Sehubungan dengan latar belakang diatas, rumusan masalah penelitian ini adalah : “ Bagaimana tingkat kesehatan keuangan pada PT Indofarma (Persero) Tbk tahun 2012,

PENERAPAN STRATEGI WRITING TO LEARN UNTUK MENINGKATKAN KEMAMPUAN KOGNITIF SISWA SMA PADA MATERI GERAK LURUS!. Universitas Pendidikan Indonesia | repository.upi.edu |

Moreover, by preserving what looks like a literary metadiscourse within narrative as a vestige of the postmodernist metahistorical romance, Genna creates the opportunity to

Ulf Mehlig do Centre for Marine Ecology (ZMT), Universidade de Bremen, para leitura crítica, melhorias no código para plotar a média e o desvio padrão, e permissão para usar

The representative of Association of Brazilian Pepper Producers and Exporters (ABEP) informed that several pesticides which were listed in the IPC proposal are not permitted to

Hasil analisis variabel secara individual dengan menggunakan regresi linear berganda maka diketahui bahwa Debt to Equity Ratio berpengaruh negatif dan tidak signifikan