• Tidak ada hasil yang ditemukan

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
29
0
0

Teks penuh

(1)

32 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.

(2)

33 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

(3)

34 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=K1=K2. 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

(4)

35 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 = A2B2 * + * + * + * + * + 3) Mengirim U kepada pihak 2 4) Menerima V dari pihak 2 5) Menghitung * + * + * + * + * + * + * +

1) Memilih secara rahasia bilangan asli r dan s. Misal : r=2 dan s=1 2) Menghitung V= A2B1 * + * + * + * + * + 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

(5)

36 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 = C1D2 * + * + * + * + * +

3) Mengirim W kepada pihak 2 4) Menerima Z dari pihak 2 5) Menghitung

* + * + * + * + * + * +

* +

1) Memilih secara rahasia bilangan asli i dan j.

Misal : i=1 dan j=3 2) Menghitung Z= C1D3 * + * + * + * + * + 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 ( )

(6)

37 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:

( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( ) ( )

(7)

38 ( ) ( )

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:

(8)

39 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 _

(9)

40 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 @

(10)

41 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 “

(11)

42 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

(12)

43 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: ( ) mod 94, (3.7) Dengan = 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

(13)

44 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

(14)

45 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>

(15)

46 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.”.

(16)

47 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.

(17)

48 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.

(18)

49 Tabel 9 Function yang Disediakan Octave dan Kegunaannya

Function Kegunaan

disp(x) Menampilkan x di command window

input(x) Menampilkan masukan x dari keyboard

length(x) Menghitung panjang parameter x (baris/kolom terbesar dari x)

ones(x,y) Membuat matrik berisikan 1 berukuran x kali y

floor(x) Membulatkan ke bawah bilangan x

mod(x,y) Menghitung nilai dari x yang kongruen modulo y ceil(x,y) Membulatkan ke atas bilangan x

size(x) Mengetahui dimensi matriks x

strcmp(x,y) 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 sampai setengah dari dimensi matriks inputan pesan yang dibulatkan ke atas

ubah(x) Mengubah pesan ke bentuk angka yang sudah ditentukan

hitung3(x) Melakukan perhitungan parameter x dalam membentuk kunci

hitung5(x) Melakukan perhitungan parameter y dalam membentuk kunci

(19)

50 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.

(20)

51 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

(21)

52 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 angka-angka 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.

Gambar 3.2 Bagan Alur Program Enkripsi Start Output : chipertext Membangkitkan kunci Mengubah plaintext menjadi chipertext

Input: Plaintext & pembangkit kunci

(22)

53 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~!@#$%^&*()_+`-={}|[]\:";<>?,./ ';

(23)

54 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.

Gambar 3.3 Bagan Alur Program Dekripsi Start Output : Plaintext Membangkitkan kunci Mengubah chipertext menjadi Plaintext Input:chipertext & pembangkit kunci Stop

(24)

55 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;

(25)

56 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 * +, * +, * +, * +.

(26)

57 Gambar 3.4 Input Matriks Pembentukan Kunci

(27)

58 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 * +, * +.

(28)

59 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”.

(29)

60 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.

Gambar 3.12 Skema Pengamanan Pesan Menggunakan ACM

Enkripsi Dekripsi

Pembentukan Kunci

Plaintext Chipertext Plaintext

Matriks

Kunci

Gambar

Gambar 3.1 Skema Pembentukan Kunci
Tabel 5  Perhitungan Protokol Perjanjian Kunci Stickel Atas    ( )  Pihak 1 atau pihak 2 mempublikasikan suatu    ( )dan A,B     ( )
Tabel 6  Perhitungan Protokol Perjanjian Kunci Stickel Atas    ( )  Pihak 1 atau pihak 2 mempublikasikan suatu   ( )dan C,D     ( )
Tabel 7  Proses Enkripsi
+7

Referensi

Dokumen terkait

Model CAPM merupakan suatu revolusi baru dalam ekonomi keuangan yang dapat menjelaskan dan menentukan apa itu ‘risiko’ dalam suatu pasar modal dan menetapkan suatu risiko

Fundraising dapat diartikan sebagai kegiatan dalam rangka menghimpun dana dan sumber daya lainnya seperti wāqif /donatur dari masyarakat 6 baik individu, kelompok,

Menurut Powers JM, dkk (2008), bahan cetak yang ideal adah bahan cetak yang memenuhi persyaratan yaitu: (1) mempunyai aroma dan rasa yang menyenangkan serta warna yang baik; (2)

Bioetanol yang dibuat dari limbah kulit kopi dilakukan dengan. menghidrolisis menjadi glukosa dengan menggunakan

Hal tersebut menunjukkan bahwa semakin seseorang percaya bahwa hasil yang didapat merupakan hasil dari usaha individu maka semakin tidak ada prokrastinasi karena

Skripsi Brillian Rosy dengan judul “Pelaksanaan Penilaian Kinerja Pegawai Puskesmas Demangan Kecamatan Taman Kota Madiun”. Berdasarkan hasil penelitian dapat

Sebanding dengan penelitian tersebut, hasil menunjukan bahwa saat profil risiko mempengaruhi kerelaan berdonasi secara individu memberikan nilai koefisien 0.118

Laporan akhir ini dibuat selain untuk memenuhi persyaratan dalam menyelesaikan pendidikan D3 di Politeknik Negeri Sriwijaya tetapi juga untuk proses belajar mahasiswa