BAB III PEMBAHASAN. Informasi rahasia yang dikirim ke pihak penerima, jika tidak disandikan bisa

dokumen-dokumen yang mirip
Lampiran 1. Tabel Kode (0-93)

tidak boleh bocor ke publik atau segelintir orang yang tidak berkepentingan Pengirim informasi harus merahasiakan pesannya agar tidak mudah diketahui

A-2 Sistem Kriptografi Stream Cipher Berbasis Fungsi Chaos Circle Map dengan Pertukaran Kunci Stickel

BAB II KAJIAN PUSTAKA. yang diatur dalam baris dan kolom (Hadley, 1992). Bilanganbilangan

SISTEM KRIPTOGRAFI UNTUK KEAMANAN INFORMASI MENGGUNAKAN FUNGSI CHAOS ARNOLD S CAT MAP SKRIPSI

APLIKASI JAVA KRIPTOGRAFI MENGGUNAKAN ALGORITMA VIGENERE. Abstract

APLIKASI TEORI BILANGAN UNTUK AUTENTIKASI DOKUMEN

SUATU ALGORITMA KRIPTOGRAFI STREAM CIPHER BERDASARKAN FUNGSI CHAOS

Simulasi Pengamanan File Teks Menggunakan Algoritma Massey-Omura 1 Muhammad Reza, 1 Muhammad Andri Budiman, 1 Dedy Arisandi

BAB I PENDAHULUAN. Pengiriman informasi yang dilakukan dengan mengirimkan data tanpa melakukan

BAB II DASAR TEORI. membahas tentang penerapan skema tanda tangan Schnorr pada pembuatan tanda

BAB I PENDAHULUAN. 1.1 Latar Belakang. Seiring dengan perkembangan peradaban manusia dan kemajuan pesat di

BAB II TINJAUAN PUSTAKA

BAB II LANDASAN TEORI. yang mendasari pembahasan pada bab-bab berikutnya. Beberapa definisi yang

BAB II LANDASAN TEORI

Bab 2 Tinjauan Pustaka 2.1 Penelitian Terdahulu

Perhitungan dan Implementasi Algoritma RSA pada PHP

Latar Belakang Masalah Landasan Teori

BAB III ANALISIS DAN PERANCANGAN

BAB I PENDAHULUAN. 1.1 Latar Belakang Masalah


BAB I PENDAHULUAN. 1.1 Latar Belakang

ALGORITMA ELGAMAL DALAM PENGAMANAN PESAN RAHASIA

BAB I PENDAHULUAN. dengan cepat mengirim informasi kepada pihak lain. Akan tetapi, seiring

RC4 Stream Cipher. Endang, Vantonny, dan Reza. Departemen Teknik Informatika Institut Teknologi Bandung Jalan Ganesha 10 Bandung 40132

BAB I PENDAHULUAN. Keamanan data merupakan hal yang sangat penting dalam menjaga

BAB 2 LANDASAN TEORI. Universitas Sumatera Utara

BAB III ANALISIS. Pada tahap analisis, dilakukan penguraian terhadap topik penelitian untuk


Analisis Penggunaan Algoritma RSA untuk Enkripsi Gambar dalam Aplikasi Social Messaging

Bab 1 PENDAHULUAN Latar Belakang

Bab 2: Kriptografi. Landasan Matematika. Fungsi

BAB I PENDAHULUAN. mempunyai makna. Dalam kriptografi dikenal dua penyandian, yakni enkripsi

Teknik Konversi Berbagai Jenis Arsip ke Dalam bentuk Teks Terenkripsi

Enkripsi Pesan pada dengan Menggunakan Chaos Theory

Pemanfaatan Keunikan Digit Desimal Bilangan Euler pada Kriptografi. Kuswari Hernawati Bambang Sumarno HM

BAB III PENYANDIAN ONE TIME PAD MENGGUNAKAN SANDI VIGENERE

Aplikasi Perkalian dan Invers Matriks dalam Kriptografi Hill Cipher

BAB 3 METODOLOGI PENELITIAN

PERANCANGAN APLIKASI KERAHASIAAN PESAN DENGAN ALGORITMA HILL CIPHER

1BAB I PENDAHULUAN 1.1 Latar Belakang

BAB II LANDASAN TEORI

BAB IV PERANCANGAN. proses utama yaitu pembentukan kunci, proses enkripsi dan proses dekripsi.

BAB I PENDAHULUAN. 1.1 Latar Belakang

BAB I PENDAHULUAN. diperhatikan, yaitu : kerahasiaan, integritas data, autentikasi dan non repudiasi.

BAB II LANDASAN TEORI

Protokol Perjanjian Kunci Berdasarkan Masalah Konjugasi Pada Matriks Atas Lapangan Hingga

BAB I PENDAHULUAN. Dewasa ini teknologi pengiriman pesan teks semakin berkembang,

BAB I PENDAHULUAN 1.1 Latar Belakang

BAB 2 LANDASAN TEORI. Berikut ini akan dijelaskan pengertian, tujuan dan jenis kriptografi.

BAB III METODOLOGI PENELITIAN. ditemukan oleh Rivest, Shamir dan Adleman (RSA) pada tahun

BAB 2 LANDASAN TEORI

BAB III ANALISIS DAN PERANCANGAN

BAB 2 LANDASAN TEORI

BAB 1 PENDAHULUAN Latar belakang

BAB II LANDASAN TEORI. bilangan bulat dan mengandung berbagai masalah terbuka yang dapat dimengerti

TEKNIK ENKRIPSI DAN DEKRIPSI HILL CIPHER (Rivalri Kristianto Hondro, M.Kom.) NIDN:

BAB III ANALISA DAN DESAIN SISTEM

Rancangan Aplikasi Pemilihan Soal Ujian Acak Menggunakan Algoritma Mersenne Twister Pada Bahasa Pemrograman Java

IMPLEMENTASI KRIPTOGRAFI DAN STEGANOGRAFI DENGAN MENGGUNAKAN ALGORITMA RSA DAN MEMAKAI METODE LSB

Bab 2 Tinjauan Pustaka

BAB 2 TINJAUAN PUSTAKA

Algoritma Pendukung Kriptografi

ALGORITMA ELGAMAL UNTUK KEAMANAN APLIKASI

Pengenalan Kriptografi

PERANAN ARITMETIKA MODULO DAN BILANGAN PRIMA PADA ALGORITMA KRIPTOGRAFI RSA (Rivest-Shamir-Adleman)

PERANCANGAN ALGORITMA KRIPTOGRAFI KUNCI SIMETRI DENGAN MENGGUNAKAN JARINGAN SARAF TIRUAN

Penerapan Teori Chaos di Dalam Kriptografi

ANALISIS KEMUNGKINAN PENGGUNAAN PERSAMAAN LINEAR MATEMATIKA SEBAGAI KUNCI PADA MONOALPHABETIC CIPHER

BAB 3 KRIPTOGRAFI RSA

Suatu Algoritma Kriptografi Simetris Berdasarkan Jaringan Substitusi-Permutasi Dan Fungsi Affine Atas Ring Komutatif Z n

Modifikasi Pergeseran Bujur Sangkar Vigenere Berdasarkan Susunan Huruf dan Angka pada Keypad Telepon Genggam

BAB III ANALISIS DAN PERANCANGAN SISTEM

dan c C sehingga c=e K dan d K D sedemikian sehingga d K

BAB 3 METODE PENELITIAN

BAB 1 PENDAHULUAN. dalam bahasa sandi (ciphertext) disebut sebagai enkripsi (encryption). Sedangkan

Elliptic Curve Cryptography (Ecc) Pada Proses Pertukaran Kunci Publik Diffie-Hellman. Metrilitna Br Sembiring 1

BAB III ANALISIS DAN DESAIN SISTEM

Disusun oleh: Ir. Rinaldi Munir, M.T.

STUDI ALGORITMA SOLITAIRE CIPHER

BAB II TINJAUAN PUSTAKA DAN DASAR TEORI. Penelitian sebelumnya yang ditulis oleh Alen Dwi Priyanto

BAB II TINJAUAN PUSTAKA. Kriptografi (cryptography) berasal dari Bahasa Yunani: cryptós artinya

Add your company slogan STREAM CIPHER. Kriptografi - Week 7 LOGO. Aisyatul Karima, 2012

BAB II LANDASAN TEORI

BAB III ANALISA DAN PERANCANGAN

Analisis Statistik Menggunakan Strict Avalanche Criterion (SAC) Test Pada Algoritma Kriptografi PRESENT

Universitas Sumatera Utara BAB 2 LANDASAN TEORI

Kriptografi Simetris Dengan Kombinasi Hill cipher Dan Affine Cipher Di Dalam Matriks Cipher Transposisi Dengan Menerapkan Pola Alur Bajak Sawah

BAB 2 LANDASAN TEORI

BAB I PENDAHULUAN. melalui ringkasan pemahaman penyusun terhadap persoalan yang dibahas. Hal-hal

Implementasi Cipher Hill pada kode ASCII dengan Memanfaatkan Digit Desimal Bilangan Euler

ANALISIS ENKRIPSI CITRA DIGITAL MENGGUNAKAN ALGORITMA LOGISTIC MAP DENGAN ALGORITMA KOMPRESI LAMPEL-ZIV-WELCH (LZW)

BAB IV HASIL DAN PEMBAHASAN

STUDI DAN PERBANDINGAN PERFORMANSI ALGORITMA SIMETRI VIGENERE CHIPPER BINNER DAN HILL CHIPPER BINNER Ivan Nugraha NIM :

RANCANGAN,IMPLEMENTASI DAN PENGUJIAN ZENARC SUPER CIPHER SEBAGAI IMPLEMENTASI ALGORITMA KUNCI SIMETRI

KRIPTOGRAFI KURVA ELIPTIK ELGAMAL UNTUK PROSES ENKRIPSI- DEKRIPSI CITRA DIGITAL BERWARNA

BAB 3 ANALISIS DAN PERANCANGAN PROGRAM

BAB III ANALISA DAN PERANCANGAN

SEMINAR TUGAS AKHIR PERIODE JANUARI 2012

BAB 2 LANDASAN TEORI. 2.1 Kriptografi Berikut ini akan dijelaskan sejarah, pengertian, tujuan, dan jenis kriptografi.

Transkripsi:

BAB III PEMBAHASAN A. Permasalahan Nyata Keamanan Informasi Informasi rahasia tidak boleh bocor ke publik, jika informasi bocor maka akan merugikan pihak yang berkepentingan dalam informasi tersebut. Informasi rahasia yang dikirim ke pihak penerima, jika tidak disandikan bisa dengan mudah diketahui oleh pihak 3, maka agar informasi tetap aman, akan dilakukan proses penyandian sebelum dikirim. Ilmu yang mengkaji penyandian dan penguraian pesan rahasia disebut kriptografi. Dalam kriptografi terdapat dua proses, yaitu proses penyandian pesan atau disebut enkripsi dan proses penguraian pesan atau disebut dekripsi. Dalam proses enkripsi dan dekripsi, terdapat 2 jenis algoritma kriptografi, yaitu algoritma kriptografi simetri, dan algoritma asimetri. Dalam algoritma kriptografi simetri, kunci yang digunakan harus benar-benar dirahasiakan. Salah satu algoritma kriptografi simetri adalah Teori Chaos. Teori Chaos digunakan sebagai pembuat kunci acak yang akan digunakan dalam proses enkripsi. Teori Chaos sangat sensitif pada nilai awal. Perubahan sedikit saja bisa memunculkan bilangan yang sangat berbeda, hal ini akan membuat pihak 3 semakin susah mengetahui isi informasi. Teori Chaos mempunyai beberapa fungsi yang bisa digunakan untuk membangkitkan kunci, salah satunya Arnold s Cat Map (ACM). Kelebihan dari ACM adalah mempunyai 2 parameter x dan y akan membuat kunci semakin sulit ditebak dan kecepatan dalam mengenkripsikan data. 32

B. Proses Penyandian Menggunakan Arnold Cat Map 1. Pembentukan Kunci Kunci adalah parameter yang digunakan untuk mentransformasi proses pengenkripsian dan pendekripsian pesan. Dalam penelitian ini menggunakan algoritma kriptografi simetri, dimana kunci harus bersifat rahasia agar pesan rahasia tetap aman dari pihak 3. Fungsi arnold cat map akan menggunakan nilai awal (pembangkit kunci) dalam pembentukan kunci, oleh karena itu pembangkit kunci harus dirahasiakan agar tidak diketahui oleh pihak 3. Jika pihak 3 berhasil mengetahui pembangkit kunci yang di sepakati, maka pihak 3 akan dengan mudah membongkar isi dari pesan rahasia. Untuk meminimalisir pihak 3 dalam mengetahui pembangkit kunci yang akan disepakati kedua belah pihak, akan digunakan protokol perjanjian kunci stickel yang didasarkan atas grup non-komutatif yang di perumum menjadi semi grup non-komutatif. Dalam hal ini didefinisikan ( ), yaitu himpunan matriks n x n dengan entri bilangan bulat dan n 2. Himpunan ( ) terhadap operasi perkalian merupakan contoh himpunan semigrup non komutatif karena memenuhi aksioma 1 (bersifat tertutup) dan aksioma 2 (bersifat asosiatif). Himpunan ( ) di tuliskan sebagai berikut. ( ) {[ ] } (3.1) Setelah menyepakati pembangkit kunci, selanjutnya akan dilakukan pembentukan kunci menggunakan Fungsi Arnold s cat Map dengan menggunakan pembangkit kunci yang sudah disepakati menggunakan 33

protokol perjanjian kunci stickel. Skema pembentukan kunci akan disajikan pada gambar 3.1. Gambar 3.1 Skema Pembentukan Kunci Pihak pengirim dan pihak penerima akan menyepakati pembangkit kunci menggunakan protokol perjanjian kunci stickel, yaitu K=K 1 =K 2. Protokol perjanjian kunci stickel yang biasanya digunakan untuk menentukan kunci, namun dalam penelitian ini akan digunakan untuk menentukan perjanjian pembangkit kunci. Oleh karena itu dilakukan perubahan dalam penerapan perjanjian kunci stickel, yaitu dengan mengkonversi matriks K menjadi persamaan 3.2. di ubah ke bentuk desimal dengan cara menjumlahkan semua entri matriks, jika maka K, berulang sampai memenuhi. Persamaan 3.2 dituliskan sebagai berikut. ( ( )) ( ) (3.2) Konversi nilai K dilakukan agar pembangkit kunci K bisa diproses menggunakan ACM menjadi kunci. Pada tabel 5 diberikan contoh pembentukan pembangkit kunci. Pembangkit kunci untuk pembentukan kunci sudah disepakati menggunakan protokol perjanjian kunci stickel yang tertera pada tabel 5 yaitu F=0,77480805. Fungsi Arnold s Cat Map menggunakan 2 pembangkit kunci, yaitu x dan y, maka untuk menentukan pembangkit kunci 34

yang ke 2 akan dilakukan menggunakan protokol perjanjian kunci stickel dengan input yang berbeda agar dihasilkan pembangkit kunci yang berbeda dari sebelumnya. Tabel 5 Perhitungan Protokol Perjanjian Kunci Stickel Atas ( ) Pihak 1 atau pihak 2 mempublikasikan suatu ( )dan A,B ( ) Misal: * + dan : * + Pihak 1 Pihak 2 1) Memilih secara rahasia bilangan asli p dan q. Misal : p=2 dan q=2 2) Menghitung U = A 2 B 2 1) Memilih secara rahasia bilangan asli r dan s. Misal : r=2 dan s=1 2) Menghitung V= A 2 B 1 * + * + * + * + * + 3) Mengirim U kepada pihak 2 4) Menerima V dari pihak 2 5) Menghitung * + * + * + * + * + * + * + * + * + * + * + * + 3) Mengirim V kepada pihak 1 4) Menerima U dari pihak 1 5) Menghitung * + * + * + * + * + * + * + Pihak 1 dan pihak 2 berhasil menyepakati pembangkit kunci yang sama F = * + F * + dikonversi menjadi F = 0,77480805 Perhitungan pembangkit kunci yang ke 2 ditampilkan pada tabel 6, didapatkan pembangkit kunci yang ke 2 adalah L = 0,196757508. Selanjutnya akan dilakukan perhitungan menggunakan fungsi Arnold s Cat Map untuk mendapatkan kunci. Proses pembentukan kunci Arnold s Cat Map merupakan jenis algoritma kriptografi stream cipher yang mengakibatkan plaintext tidak 35

dipotong menjadi blok-blok, akan tetapi enkripsi dilakukan secara mengalir menggunakan kunci yang mengalir juga. Tabel 6 Perhitungan Protokol Perjanjian Kunci Stickel Atas ( ) Pihak 1 atau pihak 2 mempublikasikan suatu ( )dan C,D ( ) Misal: * + dan : * + Pihak 1 Pihak 2 1) Memilih secara rahasia bilangan asli k dan l. Misal : k=1 dan l=2 2) Menghitung W = C 1 D 2 1) Memilih secara rahasia bilangan asli i dan j. Misal : i=1 dan j=3 2) Menghitung Z= C 1 D 3 * + * + * + * + * + 3) Mengirim W kepada pihak 2 4) Menerima Z dari pihak 2 5) Menghitung * + * + * + * + * + 3) Mengirim Z kepada pihak 1 4) Menerima W dari pihak 1 5) Menghitung * + * + * + * + * + * + * + * + * + * + * + * + * + * + Pihak 1 dan pihak 2 berhasil menyepakati pembangkit kunci yang sama L = * + L =* + dikonversi menjadi L = 0,196757508 Fungsi Arnold s Cat Map mempunyai 2 parameter yaitu x dan y dan juga mempunyai syarat x,y ( ), untuk ( ) ( ) ( ) (3.3) Untuk ( ) ( ) ( ). (3.4) 36

Fungsi ini akan digunakan secara iteratif untuk mendapatkan kunci, yaitu ( ) { ( ) ( ) (3.5) nilai x dan y ditentukan menggunakan protokol perjanjian kunci stickel, perbedaan nilai x dan y akan mempersulit pihak 3 untuk mengetahui kunci yang digunakan. Pembentukan kunci dilakukan dengan memasukan pembangkit kunci yang didapatkan dari protokol perjanjian kunci stickel ke dalam fungsi. Dalam penelitian ini, dipilih x = F = 0,77480805 dan y = L = 0,196757508. Pembangkit kunci tersebut akan diiterasikan menggunakan fungsi Arnold s Cat Map. Iterasi dilakukan sebanyak karakter pesan yang akan di enkripsikan. Hasil yang didapatkan dari iterasi fungsi tersebut hanya diambil 2 digit pertama di belakang koma dengan pembulatan ke bawah untuk dijadikan kunci, maka diperoleh kunci: ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) 37

( ) ( ) dan seterusnya. Bilangan-bilangan tersebut akan disusun dan kemudian digunakan sebagai kunci untuk melakukan enkripsi. Penyusunan bilangan tersebut akan ditulis secara berurutan dan bergantian antara f dan l, dimulai dari dan seterusnya, maka diperoleh kunci K : Kunci akan terus bertambah sesuai banyaknya karakter yang ingin dienkripsikan. 2. Proses Enkripsi Pengamanan pesan dilakukan melalui proses enkripsi. Enkripsi menggunakan kunci yang sudah ditentukan pada pembahasan sebelumnya. Pada proses ini pihak 1 akan mengirimkan pesan kepada pihak 2, sebelum mengirimkan pesan, pihak 1 harus mengubah dulu ke dalam pesan rahasia. Proses enkripsi menggunakan stream cipher sehingga isi pesan akan dienkripsikan satu per satu menggunakan kunci yang telah ditentukan. Proses pengenkripsian dilakukan dengan menambahkan blok-blok kunci K yang berisikan 2 digit angka ke setiap karakter pesan serta dilakukan perhitungan dengan modulo 94. Penggunaan modulo 94 karena hasil perhitungan dalam bentuk angka akan diubah ke dalam bentuk pesan asli yang dikodekan dengan angka dari 0 sampai 93 (terlampir pada lampiran 1), sehingga didapatkan suatu ciphertext dengan rumus sebagai berikut: ( ) mod 94, (3.6) 38

Dengan = Ciphertext = Kunci = Plaintext = 1,2,3,...,n. Jumlah karakter pesan. Misal pihak 1 mempunyai rahasia yang akan dikirimkan ke pihak 2, dan tidak boleh sampai orang lain tau,oleh sebab itu pesan harus dienkripsikan sebelum dikirim ke pihak 2 agar pihak 3 tidak mengetahui isi pesan,isi pesan tersebut Motor kamu sudah bapak kirimkan lewat KAI ke stasiun tugu, nomor pengiriman 13569A67CD99.. Sebelum dienkripsikan, karakter pesan terlebih dahulu diubah menjadi angka-angka sesuai dengan tabel kode (terlampir pada lampiran 1). Setelah karakter pesan diubah menjadi angka-angka, selanjutnya angka-angka tersebut ditambahkan dengan kunci dan penjumlahan dilakukan dalam modulo 94. Hasil perhitungan selanjutnya diubah ke dalam huruf sesuai dengan tabel kode (terlampir pada lampiran 1) sehingga didapatkan suatu ciphertext yang akan dikirim ke pihak 2. Proses enkripsi akan ditampilkan pada tabel berikut: Tabel 7 Proses Enkripsi Plaintext ( ) mod 94 Ciphertext M 48 77 31 6 o 14 19 33 8 t 19 54 73 _ o 14 59 73 _ r 17 9 26 1 39

Plaintext ( ) mod 94 Ciphertext <space> 93 79 78 { k 10 19 29 4 a 0 39 39 D m 12 39 51 P u 20 19 39 D <space> 93 79 78 { s 18 9 27 2 u 20 58 78 { d 3 54 57 V a 0 17 17 r h 7 77 84 : <space> 93 35 34 9 b 1 38 39 D a 0 70 70 * p 15 19 34 9 a 0 40 40 E k 10 59 69 & <space> 93 80 79 } k 10 29 39 D i 8 61 69 & r 17 64 81 [ i 8 22 30 5 m 12 82 0 a k 10 45 55 T a 0 41 41 F n 13 91 10 k <space> 93 20 19 t l 11 82 93 <space> e 4 60 64 @ 40

Plaintext ( ) mod 94 Ciphertext w 22 64 86 ; a 0 80 80 t 19 28 47 L <space> 93 90 89? K 46 56 8 i A 36 45 81 [ I 44 12 56 U <space> 93 72 71 ( k 10 25 35 0 e 4 36 40 E <space> 93 50 49 N s 18 18 36 A t 19 0 19 t a 0 59 59 X s 18 1 19 t i 8 29 37 B u 20 2 22 w n 13 14 27 2 <space> 93 5 4 e t 19 7 26 1 u 20 10 30 5 g 6 3 9 j u 20 21 41 F, 90 1 91. <space> 93 42 41 F n 13 0 13 n o 14 85 5 f m 12 0 12 m o 14 71 85 41

Plaintext ( ) mod 94 Ciphertext r 17 50 67 % <space> 93 42 41 F p 15 75 90, e 4 85 89? n 13 37 50 O g 6 71 77 = i 8 68 76 - r 17 42 59 X i 8 84 92 / m 12 84 2 c a 0 42 42 G n 13 68 81 [ <space> 93 71 70 * 1 26 36 62 ~ 3 28 85 19 t 5 30 72 8 i 6 31 42 73 _ 9 34 44 78 { A 36 71 13 n 6 31 89 26 1 7 32 35 67 % C 38 79 23 x D 39 67 12 m 9 34 58 92 / 9 34 83 23 x. 91 17 14 o berdasarkan hasil perhitungan,maka didapatkan suatu ciphertext : 68 1{4DPD{2{Vr:9D*9E&}D&[5aTFkt@; L?i[U(0EN AtXtBw2e15jF.Fnfm"%F,?O=-X/cG[*~ti_{n1%xm/xo. 42

3. Proses Dekripsi Pihak 2 akan mengubah ciphertext menjadi plaintext atau disebut dekripsi agar pesan dari pihak 1 dapat dibaca. Proses ini membutuhkan kunci yang sama dengan proses enkripsi yaitu K. Proses dekripsi mempunyai rumus: Dengan ( ) mod 94, (3.7) = Ciphertext = Kunci = Plaintext = 1,2,3,...,n. n = Jumlah karakter pesan. Pesan yang didapatkan dari pihak 1 akan diubah menjadi bentuk semula, yaitu 68 1{4DPD{2{Vr:9D*9E&}D&[5aTFkt @; L?i[U(0ENAtXtBw2e15jF.Fnfm"%F,?O=-X/cG[*~ti_{n1%xm/xo. Langkah - langkah dalam mendekripsikan pesan hampir sama seperti proses enkripsi hanya rumus yang digunakan berbeda. Proses dekripsi akan ditampilkan dalam tabel berikut: Tabel 8 Proses Dekripsi Ciphertext ( ) mod 94 Plaintext 6 31 77 48 M 8 33 19 14 o _ 73 54 19 t _ 73 59 14 o 1 26 9 17 r { 78 79 93 <space> 4 29 19 10 k 43

Ciphertext ( ) mod 94 Plaintext D 39 39 0 a P 51 39 12 m D 39 19 20 u { 78 79 93 <space> 2 27 9 18 s { 78 58 20 u V 57 54 3 d r 17 17 0 a : 84 77 7 h 9 34 35 93 <space> D 39 38 1 b * 70 70 0 a 9 34 19 15 p E 40 40 0 a & 69 59 10 k } 79 80 93 <space> D 39 29 10 k & 69 61 8 i [ 81 64 17 r 5 30 22 8 i a 0 82 12 m T 55 45 10 k F 41 41 0 a k 10 91 13 n t 19 20 93 <space> <space> 93 82 11 l @ 64 60 4 e ; 86 64 22 w 80 80 0 a 44

Ciphertext ( ) mod 94 Plaintext L 47 28 19 t? 89 90 93 <space> i 8 56 46 K [ 81 45 36 A U 56 12 44 I ( 71 72 93 <space> 0 35 25 10 k E 40 36 4 e N 49 50 93 <space> A 36 18 18 s t 19 0 19 t X 59 59 0 a t 19 1 18 s B 37 29 8 i w 22 2 20 u 2 27 14 13 n e 4 5 93 <space> 1 26 7 19 t 5 30 10 20 u j 9 3 6 g F 41 21 20 u. 91 1 90, F 41 42 93 <space> n 13 0 13 n f 5 85 14 o m 12 0 12 m 85 71 14 o % 67 50 17 r F 41 42 93 <space> 45

Ciphertext ( ) mod 94 Plaintext, 90 75 15 p? 89 85 4 e O 50 37 13 n = 77 71 6 g - 76 68 8 i X 59 42 17 r / 92 84 8 i c 2 84 12 m G 42 42 0 a [ 81 68 13 n * 70 71 93 <space> ~ 62 36 26 1 t 19 85 28 3 i 8 72 30 5 _ 73 42 31 6 { 78 44 34 9 n 13 71 36 A 1 26 89 31 6 % 67 35 32 7 x 23 79 38 C m 12 67 39 D / 92 58 34 9 x 23 83 34 9 o 14 17 91. berdasarkan hasil perhitungan,maka didapatkan suatu plaintext : Motor kamu sudah bapak kirimkan lewat KAI ke stasiun tugu, nomor pengiriman 13569A67CD99.. 46

4. Contoh Kasus Pembangkit Kunci Berbeda Pihak 3 berhasil mengetahui pembangkit kunci yang di gunakan pihak 1 dan pihak 2 dalam menyandikan pesan. Akan tetapi pembangkit kunci yang diketahui pihak 3 berbeda 1 digit dari pembangkit kunci yang di gunakan oleh pihak 1 dan 2, hal itu akan menyebabkan pesan yang di dekripsikan pihak penyadap berbeda. Berikut ini akan diberikan contoh kasus jika pihak ke 3 berhasil mengetahui pembangkit kunci yang berbeda 1 digit. 1) Misal pembangkit kunci yang diketahui pihak 3, x = 0,77580805 dan y = 0,196757508 akan di peroleh plaintext Mosoq jaku,snd[h^bnx/0>w x\p$cbiw+pcfsrk e?p!?q\.k(}hffh^lhr6zn?!sj- ]G`zDR$_7^FPUK-B3.nYO (hasil yang diperoleh berbeda dari pesan asli). 2) Misal pembangkit kunci yang diketahui pihak 3, x = 0,77480505 dan y = 0,196757508 akan di peroleh plaintext Motor kamu sudah bapak kjrkmpax 6e~a/NdZQl8SPE4WJ9 x1(}4jssdawx&\i:(%ed+t8 $/Z+.w&n/.)Egk (hasil yang diperoleh berbeda dari pesan asli). Berdasarkan contoh kasus, didapatkan kesimpulan jika pembangkit kunci yang digunakan berbeda 1 digit, maka akan bisa merubah kunci yang digunakan dan mengakibatkan plaintext yang didapatkan berbeda dari plaintext sebelum dikirimkan. 47

C. Penyandian Arnold s Cat Map Menggunakan Aplikasi Octave 1. Program Penyandian Arnold s Cat Map Menggunakan Aplikasi Octave Proses penentuan pesan dengan menggunakan sistem kriptografi Arnold s Cat Map merupakan salah satu cara dalam pengiriman pesan yang dapat menjaga kerahasiaan pesan. Untuk meminimalisir pihak 3 mengetahui isi pesan, akan digunakan matriks dengan isi dan perpangkatan yang besar dalam menentukan pembangkit kunci. Proses perhitungan akan memakan waktu yang sangat banyak jika dilakukan secara manual, oleh karena itu perlu dibuat suatu program untuk sistem kriptografi Arnold s Cat Map agar proses pembentukan kunci,enkripsi serta dekripsi dapat diselesaikan dengan waktu yang singkat. Oleh sebab itu perlu disusun suatu algoritma yang tepat agar ketiga proses bisa dijalankan menggunakan software. Software yang digunakan adalah Octave. Dalam sistem kriptografi Arnold s Cat Map terdapat tiga program utama, yaitu proses perjanjian kunci, proses enkripsi, serta proses dekripsi. Terdapat beberapa function yang digunakan, masing-masing function memiliki kegunaan yang berbeda-beda. Kegunaan setiap function dijelaskan pada tabel berikut. 48

Tabel 9 Function yang Disediakan Octave dan Kegunaannya Function Kegunaan disp(x) input(x) length(x) ones(x,y) floor(x) mod(x,y) ceil(x,y) size(x) strcmp(x,y) Menampilkan x di command window Menampilkan masukan x dari keyboard Menghitung panjang parameter x (baris/kolom terbesar dari x) Membuat matrik berisikan 1 berukuran x kali y Membulatkan ke bawah bilangan x Menghitung nilai dari x yang kongruen modulo y Membulatkan ke atas bilangan x Mengetahui dimensi matriks x Memeriksa apakah string x = y Tabel 10 Function yang Tidak Disediakan Octave dan Kegunaannya Function Kegunaan konversipesan(x) Menjalankan function ubah(x) dengan i dari 0 sampai dimensi matriks inputan pesan pembangkit1(x) Menjalankan function hitung3(x) dengan i dari 0 sampai setengah dari dimensi matriks inputan pesan yang dibulatkan ke atas pembangkit2(x) Menjalankan function hitung5(x) dengan i dari 0 ubah(x) hitung3(x) hitung5(x) sampai setengah dari dimensi matriks inputan pesan yang dibulatkan ke atas Mengubah pesan ke bentuk angka yang sudah ditentukan Melakukan perhitungan parameter x dalam membentuk kunci Melakukan perhitungan parameter y dalam membentuk kunci 49

Berikut ini akan dijelaskan program sistem kriptografi Arnold s Cat Map. a. Program Pembentukan Kunci Program pembentukan kunci dimulai dengan menginput matriks untuk parameter x serta y. Kedua belah pihak harus melakukan kesepakatan matriks apa yang ingin digunakan. Kemudian menginput nilai pangkat untuk matriks tersebut, kedua belah pihak tidak perlu melakukan perjanjian dalam menginput nilai pangkat. Setelah melakukan penginputan, octave akan menghitung sesuai dengan algoritma yang dituliskan. Selanjutnya, pihak 1 mengirimkan hasil dari perhitungan ke pihak 2, dan juga sebaliknya. Pihak 1 menginput hasil yang dikirimkan oleh pihak 2. Selanjutnya didapatkan dua pembangkit kunci yang akan digunakan pada proses enkripsi serta dekripsi. Penjelasan cara kerja program akan di jelaskan sebagai berikut. 1) Input Matriks yang digunakan untuk perhitungan ber ukuran n x n, oleh karena itu untuk memudahkan penginput, dituliskan algoritma sebagai berikut. X(i,j)=input('A='); dengan i = 1,...,n., j = 1,...,n. n input ukuran matriks. X,Y,C,D input matriks berukuran n x n yang determinannya tidak sama dengan 0 P,q,k,l input bilangan asli untuk perpangkatan matrik n x n U,V,W,Z input matriks n x n yang dikirimkan pihak lawan. 50

2) Proses a) Menghitung matrik U,W bagi pihak 1 dan V,Z bagi pihak 2. Xm=X^p; Ym=Y^q; Cm=C^k; Dm=D^l; U=Xm*Ym W=Cm*Dm. b) Setelah mendapatkan hasil perhitungan dari pihak lawan komunikasi, dilakukan perhitungan untuk mendapatkan pembangkit kunci. K=Xm*V*Ym L=Cm*Z*Dm. c) Mengkonversi matriks pembangkit kunci for i=1:n for j=1:n K(i,j)=K(i,j)*(10^-(((n*(i-1))*2)+((2*j)-1))); j=1+j; end i=1+i; end for i=1:n for j=1:n L(i,j)=L(i,j)*(10^-(((n*(i-1))*2)+((2*j)-1))); j=1+j; end i=1+i; end 51

KK=sum(sum(K)); LL=sum(sum(L)); disp('nilai awal x = ') while KK > 1 KK=KK*(10^-1); end disp(kk) disp('nilai awal y = ') while LL > 1 LL=LL*(10^-1); end 3) Output Output dalam proses ini berupa pembangkit kunci untuk parameter x dan parameter y. b. Program Enkripsi Program enkripsi dimulai dengan menginput pesan yang akan di enkripsikan. Pesan yang diinput diubah terlebih dahulu ke bentuk angkaangka yang sudah ditentukan sebelum dilakukan proses enkripsi dan selanjutnya diproses dengan memasukan pembangkit kunci yang sudah didapatkan, maka akan didapatkan pesan yang sudah di enkripsikan. Start Input: Plaintext & pembangkit kunci Membangkitkan kunci Stop Output : chipertext Mengubah plaintext menjadi chipertext Gambar 3.2 Bagan Alur Program Enkripsi 52

Algoritma program enkripsi akan ditampilkan sebagai berikut 1) Input m input pesan yang akan di enkripsikan kunci input pembangkit kunci x kunci2 input pembangkit kunci y. 2) Proses a) Menghitung banyaknya kata yang diinputkan dan membuat matriks berukuran (1 x setengah dari banyaknya kata dan dibulatkan ke atas). n=length(m); p=ones(1,ceil(n/2));. b) Mengubah pesan menjadi angka-angka yang sudah ditentukan(terlampir pada lampiran 1). o=konversipesan(m);. c) Pembentukan kunci. c=pembangkit1(p); d=pembangkit2(c);. d) Mengambil 2 digit dibelakang koma untuk dijadikan kunci. cc=floor(c*100); dd=floor(d*100);. e) Menghitung hasil penjumlahan bilangan pesan asli dengan kunci dan mengembalikan dari angka-angka ke pesan umum. for i=1:n if mod(i,2)==0 C='abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLM NOPQRSTUVWXYZ~!@#$%^&*()_+`-={} []\:";<>?,./ '; 53

z=mod(o(i)+dd(ceil(i/2)),94)+1; mat=c(z); a(i)=mat(1); else C='abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLM NOPQRSTUVWXYZ~!@#$%^&*()_+`-={} []\:";<>?,./ '; z=mod(o(i)+cc(ceil(i/2)),94)+1; mat=c(z); a(i)=mat(1); end end. f) Menampilkan pesan yang sudah dienkripsikan. disp(a). 3) Output Output yang didapatkan pada program ini adalah pesan yang sudah dienkripsikan. c. Program Dekripsi Program ini hampir sama dengan program enkripsi, hanya berbeda pada rumus perhitungan bilangan pesan dengan kunci. Start Input:chipertext & pembangkit kunci Membangkitkan kunci Stop Output : Plaintext Mengubah chipertext menjadi Plaintext Gambar 3.3 Bagan Alur Program Dekripsi 54

1) Input m input pesan yang akan di dekripsikan kunci input pembangkit kunci x kunci2 input pembangkit kunci y. 2) Proses a) Menghitung banyaknya kata yang di inputkan dan membuat matriks berukuran (1 x setengah dari banyaknya kata dan dibulatkan ke atas). n=length(m); p=ones(1,ceil(n/2));. b) Mengubah pesan menjadi angka-angka yang sudah di tentukan(terlampir pada lampiran 1). o=konversipesan(m);. c) Pembentukan kunci. c=pembangkit1(p); d=pembangkit2(c);. d) Mengambil 2 digit dibelakang koma untuk dijadikan kunci. cc=floor(c*100); dd=floor(d*100);. e) Menghitung hasil pengurangann bilangan pesan dengan kunci dan mengembalikan dari angka-angka ke pesan umum. for i=1:n if mod(i,2)==0 C='abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLM NOPQRSTUVWXYZ~!@#$%^&*()_+`-={} []\:";<>?,./ '; z=mod(o(i)-dd(ceil(i/2)),94)+1; 55

mat=c(z); a(i)=mat(1); else C='abcdefghijklmnopqrstuvwxyz1234567890ABCDEFGHIJKLM NOPQRSTUVWXYZ~!@#$%^&*()_+`-={} []\:";<>?,./ '; z=mod(o(i)-cc(ceil(i/2)),94)+1; mat=c(z); a(i)=mat(1); end end. f) Menampilkan pesan yang sudah di dekripsikan. disp(a). 3) Output Output yang didapatkan pada program ini adalah pesan yang sudah didekripsikan, yaitu berupa pesan asli. 2. Simulasi Penyandian Arnold s Cat Map Menggunakan Aplikasi Octave Berikut ini akan ditampilkan simulasi penyandian ACM menggunakan aplikasi octave. a. Simulasi pembentukan kunci 1) Proses penentuan pembangkit kunci pihak 1 dilakukan dengan mengetikan pembentukan1 pada command window, kemudian pihak 1 akan diminta untuk menginput nilai matriks yang sudah disepakati pihak 1 dan 2 serta nilai perpangkatan matriks. Misal matriks yang di input adalah * +, * +, * +, * +. 56

Gambar 3.4 Input Matriks Pembentukan Kunci 57

2) Akan didapatkan U dan W dari hasil perhitungan matriks. Gambar 3.5 Hasil Perhitungan Matriks 3) U dan W dikirimkan ke pihak 2,kemudian input V dan Z yang dikirim oleh pihak 2, misal * +, * +. Gambar 3.6 Input Matriks yang Dikirim Pihak 2 58

4) Didapatkan K dan L dari perhitungan, selanjutnya K dan L di konversi menjadi x dan y. Didapatkan x = 0,77780805 dan y = 0,196757508. Gambar 3.7 Hasil Proses Pembentukan Kunci b. Simulasi enkripsi 1) Proses enkripsi dilakukan dengan mengetikan enkripsi pada command window, kemudian pihak 1 menginputkan pesan yang akan di enkripsikan yaitu Motor kamu sudah bapak kirimkan lewat KAI ke stasiun tugu, nomor pengiriman 13569A67CD99.. Gambar 3.8 Input Pesan yang Akan Dienkripsikan 2) Inputkan x dan y yang didapatkan dari proses pembentukan kunci. Didapatkan pesan yang sudah dirahasiakan atau chipertext yaitu 68 1{4DPD{2{Vr:9D*9E&}D&[5aTFkt @; L?i[U(0ENAtXtBw2e15jF.Fnfm"%F,?O=- X/cG[*~ti_{n1%xm/xo. Gambar 3.9 Input Kunci dan Hasil Enkripsi 59

c. Simulasi Dekripsi 1) Proses dekripsi dilakukan dengan mengetikan dekripsi pada command window, kemudian pihak 2 menginput pesan yang akan di dekripsikan yaitu 68 1{4DPD{2{Vr:9D*9E&}D&[5aTFkt @; L?i[U(0ENAtXtBw2e15jF.Fnfm"%F,?O=X/cG[*~ti_{n1%xm/x o. Gambar 3.10 Input Pesan yang Akan Didekripsikan 2) Inputkan x dan y yang didapatkan dari proses pembentukan kunci. Didapatkan pesan asli atau plaintext yaitu Motor kamu sudah bapak kirimkan lewat KAI ke stasiun tugu, nomor pengiriman 13569A67CD99.. Gambar 3.11 Input Kunci dan Hasil Dekripsi Setelah menyelesaikan rangkaian proses pengamanan informasi menggunakan fungsi chaos Arnold s Cat Map. Disimpulkan bahwa fungsi Arnold s Cat Map bisa digunakan untuk mengamankan pesan. Skema pengamanan pesan dapat dilihat pada gambar 3.12. Plaintext Enkripsi Chipertext Dekripsi Plaintext Matriks Kunci Pembentukan Kunci Kunci Gambar 3.12 Skema Pengamanan Pesan Menggunakan ACM 60