• Tidak ada hasil yang ditemukan

Institutional Repository | Satya Wacana Christian University: Implementasi dan Analisis Performa Kriptografi Metode WAKE pada Kombinasi Data Numerik dan Karakter T1 672006015 BAB II

N/A
N/A
Protected

Academic year: 2017

Membagikan "Institutional Repository | Satya Wacana Christian University: Implementasi dan Analisis Performa Kriptografi Metode WAKE pada Kombinasi Data Numerik dan Karakter T1 672006015 BAB II"

Copied!
15
0
0

Teks penuh

(1)

5

Bab 2

Tinjauan Pustaka

2.1

Penelitian Sebelumnya

Pada penelitian sebelumnya, yang berjudul “Pembelajaran Berbantu komputer Algoritma Word Auto Key Encryption

(WAKE)”. Didalamnya memuat mengenai langkah-langkah dalam melakukan proses enkripsi dan dekripsi kriptografi dengan metode WAKE. Pemrosesan yang dilakukan hanya terbatas pada inputan yang dimasukan oleh user saja. (Reynaldo.2010)

Pada penelitian ini, penulis akan menggunakan metode Word Auto Key Encryption (WAKE), disini penulis akan melakukan pengujian untuk mengetahui kemampuan kriptografi metode WAKE dalam menangani file yang berisi kombinasi antara numerik dan karakter.

2.2

Kriptografi

Keamanan telah menjadi aspek yang sangat penting dari suatu sistem informasi. Sebuah informasi umumnya hanya ditujukan bagi golongan tertentu. Oleh karena itu sangat penting untuk mencegahnya jatuh kepada pihak-pihak lain yang tidak berkepentingan. Untuk melaksanakan tujuan tersebut dirancang suatu sistem keamanan yang berfungsi melindungi sistem informasi.

(2)

keamanan suatu sistem informasi. Menurut Stalling, ada beberapa tuntutan yang terkait dengan isu keamanan data yaitu :

1. Kerahasiaan (Confidentiality)

Kerahasiaan adalah layanan yang digunakan untuk menjaga informasi dari setiap pihak yang tidak berwenang untuk mengaksesnya. Dengan demikian informasi hanya akan dapat diakses oleh pihak-pihak yang berhak saja.

2. Otentikasi (Authentication)

Otentikasi merupakan layanan yang terkait dengan identifikasi terhadap pihak-pihak yang ingin mengakses sistem informasi (entity authentication) maupun keaslian data dari sistem informasi itu sendiri (data origin authentication). Pada saat mengirim atau menerima informasi kedua belah pihak perlu mengetahui bahwa pengirim dari pesan tersebut adalah orang yang sebenarnya seperti yang diklaim.

3. Integritas data (Data integrity)

(3)

4. Nonrepudiation

Nonrepudiation mencegah pengirim maupun penerima mengingkari bahwa mereka telah mengirimkan atau menerima suatu pesan/informasi. Jika sebuah pesan dikirim, penerima dapat membuktikan bahwa pesan tersebut memang dikirim oleh pengirim yang tertera. Sebaliknya, jika sebuah pesan diterima, pengirim dapat membuktikan bahwa pesannya telah diterima oleh pihak yang ditujunya.

Kriptografi dapat didefinisikan sebagai ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek-aspek pada keamanan informasi misalnya kerahasiaan, integritas data, otentikasi pengirim / penerima data, dan otentikasi data. Cryptanalysis adalah studi tentang bagaimana mengalahkan (memecahkan) mekanisme kriptografi, dan cryptology yang berasal dari kata kryptos dan logos (bahasa Yunani) yang artinya kata tersembunyi, adalah penggabungan disiplin cryptography dan cryptanalysis. (Jusuf Ir,2002)

Di dalam kriptografi kita akan sering menemukan berbagai istilah atau terminologi. Beberapa istilah yang penting untuk diketahui :

 Plaintext (M) adalah pesan yang hendak dikirimkan (berisi data asli).

 Ciphertext (C) adalah pesan ter-enkrip (tersandi) yang merupakan hasil enkripsi.

 Enkripsi (fungsi E) adalah proses pengubahan plaintext menjadi ciphertext.

(4)

 Kunci adalah suatu bilangan yang dirahasiakan yang digunakan dalam proses enkripsi dan dekripsi.

2.3

Algoritma Simetris

Algoritmas simetris atau disebut juga algoritma kunci tunggal adalah algoritma yang menggunakan 1 kunci , dimana kunci yang digunakan untuk proses enkripsi dan dekripsi adalah kunci yang sama. Pengirim dan penerima harus menyetujui satu kunci yang akan digunakan untuk melakukan proses enkripsi dan dekripsi.

Gambar 2.1 Model sederhana Sistem Kriptografi Simetris

Kelebihan dari algoritma kriprografi simetris adalah waktu proses untuk enkripsi dan dekripsi relatif cepat. Hal ini disebabkan efesiensi yang terjadi pada pembangkit kunci. Karena prosesnya relative cepat maka algoritma ini tepat untuk digunakan pada sistem komunikasi digital secara real time seperti GSM. Tetapi untuk pengiriman pesan dengan pengguna yang berbeda dibutuhkan kunci yang berbeda juga. Sehingga jumlah kunci akan berbanding lurus dengan jumlah pengguna.(Tedi,1999)

2.1

Algoritma Stream Cipher

(5)

enkripsi stream cipher, transformasi dari unit plaintext yang lebih kecil ini berbeda antara satu dengan lainnya, tergantung pada kapan unit tersebut ditemukan selama proses enkripsi. (Tedi,1999)

Pada stream cipher bit hanya mempunyai dua buah nilai, sehingga proses enkripsi hanya menyebabkan dua keadaan pada bit tersebut: berubah atau tidak berubah. Dua keadaan tersebut ditentukan oleh kunci enkripsi yang disebut aliran-bit-kunci (keystream).

Proses enkripsi dicapai dengan menggabungkan keystream dengan plaintext biasanya dengan operasi bitwise XOR bit-bit plainteks dengan bit-bit aliran-kunci pada posisi yang

berkoresponden. Metode stream cocok untuk mengenkripsikan aliran data yang terus menerus melalui saluran komunikasi. Jika bit cipherteks yang diterima mengandung kesalahan, hal ini hanya menghasilkan satu bit kesalahan pada waktu dekripsi, karena tiap bit plainteks ditentukan hanya oleh satu bit cipherteks. Kondisi berbeda untuk cipher blok karena jika satu bit cipherteks yang diterima mengandung kesalahan, kesalahan ini akan merambat pada seluruh blok bit plainteks hasil dekripsi (error propagation). (Jusuf Ir,2002)

2.5

Dasar-dasar matematika kriptografi

(6)

2.5.1 Operasi AND

Operasi AND dengan dua inputan akan bernilai 1 jika kedua nilai imputan bernilai 1. Jika salah satu inputan yang dimasukan memiliki nilai 0, maka hasil output yang didapatkan akan bernilai 0. Lambang dari operasi AND adalah tanda “”. Aturan operasi AND dapat dinyatakan seperti tabel berikut : (Stefan, 2011)

Tabel 2.1 Aturan operasi AND

A B A B 0 0 0 0 1 0 1 0 0 1 1 1

Contoh :

11000110 10110011 ---  10000010

2.5.2 Operasi OR

Operasi OR dengan dua inputan akan bernilai 1 jika salah satu nilai imputan bernilai 1. Jika kedua inputan yang dimasukan memiliki nilai 0, maka hasil output yang didapatkan akan bernilai 0. Lambang dari operasi OR adalah tanda “”. (Stefan, 2011)

Tabel 2.2 Aturan operasi OR

(7)

Contoh :

11000110 10110011 --- 

11110111

2.5.3 Operasi XOR

XOR adalah operasi Exclusive-OR yang dilambangkan dengan

tanda “”. Operasi XOR dengan dua inputan akan bernilai 1 jika salah satu nilai imputan bernilai 1. Jika kedua inputan yang dimasukan memiliki nilai 0 atau 1, maka hasil output yang didapatkan akan bernilai 0. (Stefan, 2011)

Tabel 2.3 Aturan Operasi XOR A B A B

0 0 0 0 1 1 1 0 1 1 1 0

Contoh :

11000110 10110011 --- 

01110101

2.5.4 Operasi Shift

(8)

1. Operasi Geser Kiri (Shift Left) yaitu operasi pergeseran terhadap suatu barisan bit sebanyak bit yang diinginkan kearah kiri. Hasil pergeseran tersebut akan menyebabkan adanya bit kosong. Bit kosong yang telah tergeser akan diberikan nilai bit “0” (nol).operasi yang menggeser sejumlah bit ke kiri (left) dan mengisi tempat kosong dengan nilai bit “0” (nol). Operasi shift leftdilambangkan dengan “<<”.

Contoh operasi shift left :

11000110 << 1 : 10001100 11000110 << 2 : 00011000

2. Operasi Geser Kanan (Shift Right) yaitu operasi pergeseran terhadap suatu barisan bit sebanyak bit yang diinginkan kearah kanan. Hasil pergeseran tersebut akan menyebabkan adanya bit kosong. Bit kosong yang telah tergeser akan diberikan nilai bit

“0” (nol). Operasi shift right dilambangkan dengan “>>”.

Contoh operasi shift right : (Bruce, 1996) 11000110 >> 1 : 01100011 11000110 >> 2 : 00110001

2.5.5 Penjumlahan Modulo

(9)

Contoh : 10111101 10010101 + 101010010

Bit 1 yang berlebihan di depan akan dibuang sehingga hasil yang didapatkan dari proses penjumlahan di atas adalah 01010010.

2.5.6 Konversi Bilangan Berbasis

Bilangan – bilangan berbasis dapat diubah atau dikonversikan satu sama lain. Proses pengubahan bilangan berbasis yang akan dibahas antara lain :

1. Konversi bilangan biner ke bilangan heksadesimal 2. Konversi bilangan biner ke bilangan desimal

3. Konversi bilangan desimal ke bilangan heksadesimal 4. Pengubahan bilangan desimal ke bilangan biner

2.5.6.1Konversi Bilangan Biner ke Bilangan Heksadesimal

Proses konversi bilangan biner ke bilangan heksadesimal dapat dilakukan cara, algoritma berikut, sebagai contoh, diambil bilangan biner 1101101101, proses konversi bilangan biner tersebut ke dalam bentuk bilangan heksadesimal adalah sebagai berikut,

1. Jumlah digit bilangan biner 1101101101 ada sebanyak 10 buah dan bukan merupakan kelipatan 4, sehingga harus ditambahkan 2 buah bilangan 0 di depan bilangan biner tersebut agar jumlah digit merupakan kelipatan 4.

1101101101  001101101101

2. Pisahkan bilangan biner tersebut ke dalam bentuk kelompok empatan.

(10)

3. Konversi masing – masing kelompok empatan tersebut ke dalam bilangan heksadesimal dengan menggunakan tabel sistem bilangan di atas.

0011 | 0110 | 1101

3 6 D

4. Sehingga bilangan heksadesimal yang didapat adalah 36D.

2.5.6.2Konversi Bilangan Biner ke Bilangan Desimal

Proses pengubahan bilangan biner ke bilangan desimal dapat dilakukan dengan menjumlahkan kesetaraan desimal masing – masing posisinya. Sebagai contoh, diambil bilangan biner

1101101101 = 1 X 29 + 1 X 28 + 0 X 27 + 1 X 26 + 1 X 25 + 0 X 24 + 1 X 23 + 1 X 22 + 1 X 20

= 512+ 256 + 0 + 64 + 32 + 0 + 8 + 4 + 1 = 877

2.5.6.3 Konversi Bilangan Desimal ke Bilangan Heksadesimal

Untuk mengubah satu bilangan bulat desimal ke bilangan heksadesimalnya, dilakukan dengan cara membagi secara berurutan bilangan bilangan desimal dengan 16 dan konversikan angka sisanya ke dalam bentuk heksadesimal dengan urutan terbalik.

877 / 16 = 54 sisa 13  D 54 / 16 = 3 sisa 6  6 3 / 16 = 0 sisa 3  3

(11)

2.5.6.4 Konversi Bilangan Desimal ke Bilangan Biner

Sedangkan, untuk mengubah satu bilangan bulat desimal ke kesetaraan binernya, bagilah secara berurutan bilangan tersebut dengan 2 dan catatlah angka sisanya dengan urutan terbalik.

877 / 2 = 438 sisa 1  1 438 / 2 = 219 sisa 0  0 219 / 2 = 109 sisa 1  1 109 / 2 = 54 sisa 1  1 54 / 2 = 27 sisa 0  0 27 / 2 = 13 sisa 1  1 13 / 2 = 6 sisa 1  1 6 / 2 = 3 sisa 0  0 3 / 2 = 1 sisa 1  1 1/2 = 0 sisa 1  1

Sehingga bilangan biner yang didapat adalah 1101101101.

2.6

WAKE (

Word Auto Key Encryption

)

Metode WAKE merupakan salah satu algoritma stream cipher yang telah digunakan secara komersial. WAKE merupakan singkatan dari Word Auto Key Encryption. Metode ini ditemukan oleh David Wheeler pada tahun 1993.

Metode WAKE menggunakan kunci 128 bit dan sebuah tabel 256 x 32 bit. Dalam algoritmanya, metode ini menggunakan operasi XOR, AND, OR, penjumlahan modulo dan Shift Right.

Proses utama WAKE terdiri dari :

(12)

3. Proses enkripsi dan dekripsi.

Inti dari metode WAKE terletak pada proses pembentukan tabel S-Box dan proses pembentukan kunci. Tabel S-Box dari metode WAKE bersifat fleksibel dan berbeda-beda untuk setiap putaran. (wheeler,2011)

2.6.1 Proses Pembentukan Tabel S-Box

Proses pembentukan tabel S-Box adalah sebagai berikut : (wheeler,2011)

Inisialisasi nilai TT[0] … TT[7] :

TT[0] : 726a8f3b (dalam heksadesimal) TT[1] : e69a3b5c (dalam heksadesimal) TT[2] : d3c71fe5 (dalam heksadesimal) TT[3] : ab3c73d2 (dalam heksadesimal) TT[4] : 4d3a8eb3 (dalam heksadesimal) TT[5] : 0396d6e8 (dalam heksadesimal) TT[6] : 3d4c2f7a (dalam heksadesimal) TT[7] : 9ee27cf3 (dalam heksadesimal)

1. Inisialisasi nilai awal untuk T[0] … T[3] :

Pecah kunci yang dimasukan oleh user menjadi 4 dengan panjang yang sama. Masukan hasil pemecahan kunci

kedalam T[0] … T[3].

T[0] = K[0] T[1] = K[1]

2. Untuk mengisi nilai T[4] sampai T[255], lakukan proses berikut :

X = T[n-4] + T[n-1]

(13)

T[n] = X >> 3 XOR TT(X AND 00000111) 3. Untuk T[0] sampai T[22], lakukan proses berikut :

T[n] = T[n] + T[n+89]

4. Set nilai untuk beberapa variabel di bawah ini : X = T[33]

Z = T[59] OR (01000001h) Z = Z AND (FF7FFFFFh) X = (X AND FF7FFFFFh) + Z

5. Untuk T[0] … T[255], lakukan proses berikut : X = (X AND FF7FFFFFh) + Z

T[n] = T[n] AND 00FFFFFFh XOR X

6. Inisialisasi nilai untuk beberapa variabel berikut ini : T[256] = T[0]

X = X AND 255

7. Untuk T[0] … T[255], lakukan proses berikut : Temp = (T[n XOR X] XOR X) AND 255 T[n] = T[Temp]

T[X] = T[n+1]

2.6.2 Proses Pembentukan Kunci

Pada proses pembentukan kunci, user dapat menentukan jumlah putaran yang akan digunakan. Fungsi proses pembentukan kunci adalah :

M(X, Y) = (X + Y) >> 8 XOR T[(X + Y) AND 255]

(14)

D0. Nilai dari variabel ini diproses melalui langkah berikut : kunci akan diulang sesuai dengan nilai putaran yang dimasukan oleh user.

Gambar 2.2 Bagan proses pembentukan kunci

Keterangan :

(15)

2.6.3 Proses Enkripsi dan Dekripsi

Proses enkripsi dan dekripsi metode WAKE hanya berupa operasi XOR dari plaintext dan kunci untuk menghasilkan ciphertext atau operasi XOR ciphertext dan kunci untuk menghasilkan plaintext. (Bruce, 1996)

P = C  K C = P  K

Gambar

Gambar 2.1 Model sederhana Sistem Kriptografi Simetris
Tabel 2.2 Aturan operasi OR
Tabel 2.3 Aturan Operasi XOR
tabel S-Box dan proses pembentukan kunci. Tabel S-Box dari metode
+2

Referensi

Dokumen terkait

Pada penelitian ini yang menjadi latar belakang masalah adalah penurunan motivasi kerja yang di tandai dengan meningkatnya kemangkiran, datang terlambat dan pulang

Meskipun demikian, ada beberapa variabel yang telah stasioner pada derajat level I (0) ketika diuji menggunakan kedua metode ( ADF test dan PP test ) seperti variabel volatilitas

Perbedaan interpretasi surah al- Isrâ’ ayat 23 dalam topik etika komunikasi antara pendapat Hamka dan Quraish Shihab, adalah dalam hal penjelasan komunikasi negatif yang

Agar tubuh dapat berfungsi dengan baik, berbagai fungsi faali dalam tubuh harus diatur dan dikoordinasikan. Misalnya, proses pengaturan suhu tubuh agar tetap normal, proses

Subjek yang digunakan dalam penelitian ini sebanyak tiga siswa yang diambil dari kelas X MIA 2 yaitu masing-masing satu siswa dengan gaya belajar visual, auditorial dan

60 Jika diteliti secara cermat, ayat-ayat tentang penciptaan Adam sebenarnya tidak dijelaskan secara rinci bagaimana Adam diciptakan, yang dalam teologi Islam sering

Berdasarkan Survei Data Kependudukan Indonesia (SDKI) 2012, di beberapa daerah didapatkan bahwa sepertiga dari jumlah pernikahan yang didata dilakukan oleh pasangan usia di bawah

Penelitian ini bertujuan untuk mengetahui metode pendidikan dialogis dalam Al- Qur‟an s urah Ash-Shaffat ayat 102. Pertanyaan yang ingin dijawab melalui kajian ini adalah: