• Tidak ada hasil yang ditemukan

Sistem Kriptografi untuk Keamanan Informasi Menggunakan Fungsi Chaos Arnold’s Cat Map.

N/A
N/A
Protected

Academic year: 2017

Membagikan "Sistem Kriptografi untuk Keamanan Informasi Menggunakan Fungsi Chaos Arnold’s Cat Map."

Copied!
94
0
0

Teks penuh

(1)

BAB I PENDAHULUAN A. Latar Belakang

Keamanan informasi merupakan hal yang penting. Informasi rahasia tidak boleh bocor ke publik atau segelintir orang yang tidak berkepentingan dalam informasi tersebut. Jika informasi bocor maka akan merugikan pihak pengirim ataupun penerima informasi. Seiring dengan perkembangan jaman, kemajuan teknologi semakin pesat. Seseorang yang tidak berkepentingan dalam informasi tersebut bisa dengan mudah mengetahui isi dari informasi. Pengirim informasi harus merahasiakan pesannya agar tidak mudah diketahui oleh orang luar, pengamanan informasi bisa dilakukan dengan menyandikan pesan menjadi kode -kode yang rumit untuk diketahui, namun tidak menutup kemungkinan orang yang tidak bertanggung jawab untuk bisa mengetahui isi pesan. Oleh sebab itu, dibutuhkan ilmu yang mempelajari keamanan informasi. Salah satu ilmu yang mempelajari sistem keamanan informasi adalah kriptografi.

(2)

Dekripsi. Pesan asli disebut Plaintext dan pesan yang sudah dirahasiakan disebut ciphertext.

Proses enkripsi dan dekripsi membutuhkan kunci, sistem kriptografi digolongkan menjadi dua macam, yaitu sistem kriptografi simetri dan sistem kriptografi asimetri. Perbedaan antara dua sistem kriptografi ini adalah kunci untuk enkripsi dan dekripsi. Sistem kriptografi simetri, kunci yang digunakan untuk enkripsi dan dekripsi sama, dan dalam sistem kriptografi asimetri kunci yang digunakan untuk enkripsi dan dekripsi berbeda. Sistem kriptografi simetri mempunyai kelemahan yaitu kunci harus dikirim melalui jalur yang aman. Pengirim dan penerima harus menjaga kerahasiaan kunci ini. Sementara itu, untuk sistem kriptografi asimetri, kunci enkripsi tidak perlu dijaga kerahasiaanya yaitu berupa kunci publik, dan kunci dekripsi yang akan dirahasiakan dan diketahui oleh penerima saja.

(3)

Aplikasi yang digunakan untuk membuat kunci dalam sistem kriptografi sudah di bahas sebelumnya oleh Dimas Ridwan Wicaksono(2014) dalam skripsi yang berjudul Aplikasi Aljabar Min-Plus untuk Mengamankan Informasi rahasia yang membahas tentang kegunaan Aljabar Min-Plus dalam menentukan kunci pada proses pengamanan informasi rahasia. Dalam artikel yang dibahas oleh Dwi Lestari dan Muhamad Zaki Riyanto (2012) yang berjudul Suatu Algoritma Kriptografi Stream Cipher Berdasarkan Fungsi Chaos menjelaskan tentang fungsi chaos logistic map yang digunakan untuk menyandikan pesan. Dalam skripsi ini akan di bahas aplikasi fungsi chaos arnold’s cat map dalam kriptografi untuk keamanan informasi.

Ada beberapa fungsi chaos dalam memunculkan bilangan secara acak yang akan dimanfaatkan sebagai kunci dalam algoritma kriptografi, salah satunya fungsi chaos arnold’s cat map. Arnold’s Cat Map(ACM) ditemukan oleh Vladimir Arnold pada tahun 1960 dengan menggunakan gambar kucing. Fungsi ini memiliki periode, yaitu akan kembali ke bentuk semula pada saat jumlah iterasi tertentu. ACM mempunyai keunggulan dalam kecepatan mengenkripsikan data. Oleh karena itu, penulis tertarik dalam mendalami Teori Chaos Arnold’s Cat Map dalam penerapan kemanan informasi sistem kriptografi dan mengangkat judul “Sistem Kriptografi untuk keamanan

informasi menggunakan Fungsi Chaos Arnold’s Cat Map”.

(4)

B. Identifikasi Masalah

1. Masalah keamanan informasi perlu mendapat perhatian.

2. Teori Chaos dapat digunakan dalam membantu keamanan informasi. 3. Kebutuhan software komputer untuk sistem keamanan informasi yang

efektif dan efisien.

C. Pembatasan Masalah

Dalam penulisan skripsi ini, pembahasan sistem kriptografi teori chaos arnold’s cat map dibatasi pada konsep – konsep matematis yang

melandasi sistem kriptografi teori chaos arnold’s cat map, serta proses perhitungan penyandian pengiriman pesan digunakan suatu program aplikasi, yaitu OCTAVE. Pada skripsi ini tidak membahas perkembangan sistem kriptografi lainnya.

D. Rumusan Masalah

Berdasarkan latar belakang masalah di atas, dirumuskan pokok permasalahan yang akan menjadi kajian skripsi ini, yaitu “Bagaimana

menerapkan fungsi chaos arnold’s cat map dalam mengamankan informasi ?”

E. Tujuan Penelitian

(5)

F. Manfaat Penelitian

1. Bagi Universitas

Dapat menambah wawasan baru bagi seluruh warga universitas tentang keamanan informasi.

2. Bagi Masyarakat

Dapat memberi pemahaman kepada masyarakat pentingnya keamanan informasi dan cara untuk mengamankan informasi.

3. Bagi Pembaca/Peneliti

(6)

BAB II

KAJIAN PUSTAKA A. Matriks

Matriks adalah susunan berbentuk persegi panjang dari bilangan-bilangan yang diatur dalam baris dan kolom (Hadley, 1992). Bilangan-bilangan di dalam susunan tersebut dinamakan entri dalam matriks. Secara umum matriks ditulis sebagai berikut :

[

] (2.1)

Susunan di atas disebut sebuah matriks m kali n ( ditulis m x n ) karena memiliki m baris dan n kolom. Setiap matriks yang banyak baris dan kolomnya sama disebut matriks persegi. Sebuah matriks dengan n baris dan n kolom disebut matriks persegi berordo n (Hadley, 1992).

Matriks mempunyai operasi yaitu (Hadley, 1992):

1. Kesamaan

Dua matriks A dan B disebut sama jika kedua elemen-elemen matriks tersebut sama atau

(7)

2. Perkalian dengan skalar

Terdapat sebuah matriks A dan sebuah skalar , hasil perkalian dan A, ditulis A, didefinisikan sebagai

[ mempunyai m baris dan n kolom dan matriks B yang mempunyai m baris dan n kolom merupakan sebuah matriks yang mempunyai m baris dan n kolom dimana elemen-elemennya diberikan oleh , di

Operasi pengurangan didefinisikan sebagai :

. (2.4)

4. Perkalian

(8)

∑ (2.5) Perkalian matriks AB bisa dilakukan jika dan hanya jika jumlah kolom matriks A sama dengan jumlah baris matriks B.

Selain ada operasi matriks, aturan-aturan ilmu hitung matriks harus diperhatikan dalam melakukan operasi matriks, berikut aturan-aturan hitung matriks, dengan A,B,C adalah matriks, a,b adalah sembarang konstanta dan r,s adalah bilangan bulat (Anton,2014) :

a)

b) c)

d) e) f) g) h)

i) j)

k)

B. Grup

(G,*) yang berisikan himpunan tak kosong G dan operasi * disebut grup jika memenuhi aksioma-aksioma berikut (Sukirman: 2005):

1. Operasi * bersifat tertutup di G

maka

(9)

3. G memuat elemen identitas terhadap operasi *,misal e.

4. Setiap unsur di G mempunyai invers terhadap operasi *, untuk setiap

terdapat sedemikian sehingga .

Suatu himpunan tak kosong disebut semi grup jika memenuhi aksioma 1 dan 2.

Contoh 2.1:

Misalkan adalah himpunan matriks 2 x 2 dan determinan tidak sama dengan nol dengan entri bilangan rill,maka ( , ) adalah grup karena berlaku :

1. maka . ( tertutup ) Karena det(A) ≠ 0 dan det(B) ≠ 0 maka det(AB) ≠ 0

2. menurut sifat matriks yang c, maka

( asosiatif )

3. Ambil sehingga (mempunyai

identitas yaitu

)

4. terdapat . Sehingga

(mempunyai invers yaitu

(10)

C. Kekongruenan

Definisi 2.1(Burton, 2007) :

Misalkan n suatu bilangan bulat positif, bilangan bulat a kongruen dengan b modulo n ditulis a ≡ b (mod n), bila n membagi (a-b) yaitu jika a –

b = kn untuk suatu bilangan bulat k.

Contoh 2.2 :

22 2 ( mod 10). Terdapat bilangan bulat k sehingga 22 – 2 = 10k.

13 6 ( mod 7). Terdapat bilangan bulat k sehingga 13 – 6 = 7k.

Relasi kekongruenan mempunyai sifat, yaitu (Burton, 2007):

1) a a (mod n)

2) Jika a ≡ b (mod n) maka b a (mod n)

3) Jika a ≡ b (mod n) dan b c (mod n) maka a c (mod n)

4) Jika a ≡ b (mod n) dan c d (mod n) maka a + c b + d (mod n) dan ac bd (mod n)

5) Jika a ≡ b (mod n) maka a + c b + c (mod n) dan ac bc (mod n)

(11)

Bukti:

1) Untuk setiap bilangan bulat a diketahui bahwa , sedemikian sehingga a ≡ a (mod n).

2) Jika a ≡ b (mod n) maka, , untuk setiap bilangan bulat . Karena itu, , untuk setiap bilangan bulat . Sehingga dapat ditulis b ≡ a (mod n).

3) Jika a ≡ b (mod n) maka, , untuk setiap bilangan bulat

Jika b c (mod n) maka, , untuk setiap bilangan

bulat

dapat ditulis a c (mod n), untuk setiap bilangan

bulat .

4) Jika a ≡ b (mod n) maka, , untuk setiap bilangan bulat

Jika c d (mod n) maka, , untuk setiap bilangan

bulat

dapat ditulis a + c b + d (mod n),

untuk setiap bilangan bulat .

(12)

,

dapat ditulis , untuk setiap bilangan bulat

5) Jika a ≡ b (mod n) maka, , untuk setiap bilangan bulat

, dapat ditulis a + c ≡ b + c (mod n), untuk

setiap bilangan bulat k.

, dapat ditulis untuk setiap

bilangan bulat kc.

6) Dibuktikan benar untuk k = 1 a b (mod n) (diketahui) diasumsikan benar untuk k = p

(mod n)

akan dibuktikan benar untuk k = p + 1

dari sifat 4, jika a b (mod n) dan (mod n) maka

(mod n) equivalent dengan (mod n) (terbukti).

(13)

D. Kriptografi

Kriptografi merupakan ilmu sekaligus seni dalam mengamankan pesan. Dalam buku pengantar ilmu kriptografi karya Dony Ariyus (2007) dijelaskan bahwa kriptografi muncul lebih dari 4000 tahun yang lalu yang diperkenalkan oleh orang mesir. Dahulu kriptografi digunakan dalam dunia militer untuk mengirimkan pesan rahasia ke medan perang.

1. Definisi Kriptografi

Kriptografi adalah ilmu yang mempelajari prinsip – prinsip dan teknik – teknik sedemikian sehingga dapat menyembunyikan suatu informasi atau

pesan menjadi sebuah teks tersembunyi atau ciphertexts dan kemudian ciphertext tersebut diubah menjadi pesan asli plaintext oleh pengguna resmi dengan menggunakan kunci rahasia atau secret key (Yan, 2002). Kriptografi merupakan cara untuk mengamankan pesan dan berperan penting dalam pengiriman informasi atau pesan yang bersifat rahasia. Proses penyandian dilakukan dengan aturan tertentu sehingga hanya dapat dibaca oleh yang berhak.

2. Tujuan Kriptografi

Tujuan dari kriptografi menurut (Menezes, Oorscoot dan Vanstone, 1996) :

(14)

kerahasiaan, mulai dari keamanan fisik sampai algoritma matematika yang mana diberikan agar data sulit dipahami.

b. Integritas Data(Data Integrity) adalah layanan penjagaan perubahan data oleh pihak yang tidak ber hak. Untuk meyakinkan integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data yang dilakukan oleh pihak yang tidak ber hak. Termasuk hal-hal manipulasi data seperti sisipan, penghapusan dan pergantian.

c. Otentikasi (Authentication) adalah layanan yang berhubungan dengan identifikasi. Fungsi ini berlaku untuk sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus mengidentifikasi satu sama lain. Informasi dikirim melalui saluran harus di identifikasi keasliannya, isi data, waktu pengiriman dan lainnya. Aspek dari kriptografi dibagi menjadi dua kelas utama : entity authentication dan data origin authentication.

d. Nirpenyangkalan (non-repudiation) adalah layanan yang mencegah terjadinya penyangkalan pengiriman suatu informasi oleh yang mengirimkan maupun yang menerima.

3. Terminologi Kriptografi

(15)

a. Pesan, Plaintext, dan Ciphertext.

Pesan adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. Nama lain untuk pesan adalah plaintext, atau takjelas (cleartext) (Munir, 2006). Pesan dalam bentuk umum dapat dengan mudah dimengerti oleh orang lain. Oleh karena itu, agar pesan yang dikirimkan tidak diketahui oleh orang yang tidak ber hak, pesan perlu disandikan ke bentuk yang tidak dipahami. Bentuk pesan yang tersandi disebut ciphertext.

Contoh 2.3 ( contoh plaintext ) Ayah sedang pergi ke bandung. Contoh 2.4 ( contoh ciphertext ) Ecel wiherk tivkm oi ferhyrk. b. Pengirim dan Penerima

Pengirim dan penerima merupakan objek dalam aktifitas komunikasi yang mengakibatkan pertukaran pesan bisa dilakukan. Pengirim(sender) adalah entitas yang mengirim pesan kepada entitas lainnya. Penerima(receiver) adalah entitas yang menerima pesan (Munir, 2006). Entitas berupa manusia, mesin komputer, dan lainnya.

c. Enkripsi dan Dekripsi

(16)

Proses enkripsi dapat menyandikan pesan yang bersifat rahasia, dengan proses enkripsi, pesan yang mudah untuk diketahui bisa menjadi pesan yang sulit untuk di ketahui. Harus mempunyai teknik khusus untuk mendekripsikan pesan yang sudah dienkripsi. Jika tidak mengetahui kunci yang digunakan, maka akan sulit untuk mengetahui pesan yang sudah dienkripsikan. Skema enkripsi dan dekripsi terdapat pada gambar 2.1.

Gambar 2.1 Skema Enkripsi dan Dekripsi d. Algoritma dan Kunci

(17)

Kunci untuk proses enkripsi dan dekripsi terbagi menjadi dua, yaitu algoritma simetri (secret key algorithm) dan algoritma asimetri (public key algorithm). Pada algoritma simetri kunci yang digunakan dalam proses enkripsi dan dekripsi adalah sama, sehingga kedua belah pihak harus sepakat menentukan kunci yang akan dipilih dan agar pesan yang dikirim aman, kunci harus dirahasiakan. Tingkat keamanan algoritma simetri tergantung pada kerahasiaan kunci yang digunakan. Algoritma asimetri, kunci yang digunakan dalam proses enkripsi dan dekripsi akan berbeda. Pada algoritma asimetri, kunci enkripsi disebut kunci publik (public key), kunci ini dapat diketahui oleh setiap orang, dan kunci dekripsi disebut dengan kunci rahasia (private key), kunci ini hanya diketahui oleh penerima pesan (Munir,2006).

Ada dua jenis algoritma kriptografi simetri, yaitu block cipher dan stream cipher (Dwi,2012). Algoritma kriptografi block cipher, proses enkripsi dekripsi dilakukan dengan memotong plaintext menjadi blok-blok. Sedangkan algoritma kriptografi stream cipher, proses enkripsi dekripsi dilakukan secara mengalir dan dengan kunci yang mengalir juga (Dwi,2012). Algoritma kriptografi stream cipher memiliki ke unggulan yaitu tidak membatasi panjang plaintext. Algoritma ini cocok untuk digunakan dalam enkripsi suatu komunikasi yang berlangsung dan berkelanjutan, seperti komunikasi melalui telepon.

(18)

Algoritma Vigenere cipher atas grup akan dijelaskan sebagai berikut (Dwi, 2012):

Diberikan plaintext dengan dan kunci

dengan . Ciphertext diperoleh proses

enkripsi sebagai berikut

(mod 26).

Dalam penelitian ini akan menggunakan Vigenere cipher modulo 94 untuk melakukan proses enkripsi dan dekripsi.

e. Sistem kriptografi

Sistem kriptografi terdiri dari 5 tupel (P,C,K, ε , D) yang memenuhi syarat sebagai berikut (Stinson, 2006) :

1) P adalah himpunan berhingga semua plaintext; 2) C adalah himpunan berhingga semua ciphertext;

3) Ruang kunci K adalah himpunan berhingga semua kunci;

4) Untuk setiap , terdapat aturan enkripsi dan korespondensi aturan deskripsi . Untuk setiap

dan , adalah fungsi sedemikian sehingga ( ) ,

untuk setiap plaintext x .

(19)

f. Penyadap

Penyadap adalah orang yang berusaha menangkap pesan selama ditransmisikan dengan tujuan mendapatkan informasi sebanyak-banyaknya mengenai sistem kriptografi yang digunakan untuk berkomunikasi dengan maksud memecahkan ciphertext. Nama lain dari penyadap adalah enemy, bad guy, intruder dan lainnya (Munir,2006). g. Kriptoanalisis

Kriptoanalisis berasal dari bahasa yunani yang terdiri dari dua suku kata yaitu kriptos dan analyein. Kriptos artinya menyembunyikan sedangkan analyein artinya memecahkan, sehingga kriptoanalisis adalah ilmu dan seni untuk memecahkan ciphertext menjadi plaintext tanpa mengetahui kunci yang digunakan. Pelakunya disebut kriptoanalis ( Munir, 2006).

E. Teori Chaos

Chaos merupakan hal yang berhubungan dengan kekacauan, keacakan, ketidakberaturan. Teori chaos merupakan cabang dari matematika yang mempelajari bagaimana membangkitkan bilangan secara acak (Alvin:tanpa tahun). Meskipun chaos menunjukan keacakan, sistem chaotic dapat ditentukan secara matematis.

(20)

yang berarti tidak bekerja secara teratur. Awalnya gagasan Henri tidak terlalu dihargai oleh para ilmuan, namun pada tahun 1898 Jacques Hadamard mempublikasikan teori yang hampir sama dengan Teori Henri.

Teori Chaos pertama kali dicetuskan oleh Edward Lorenz yang merupakan seorang ahli metereologi AS pada tahun 1961. Edward menemukan teori chaos secara tidak sengaja saat melakukan peramalan cuaca dengan bantuan komputer. Dalam melakukan percobaan Edward hanya mengambil 3 digit dibelakang koma dari hasil yang didapatkan pada saat melakukan peramalan cuaca untuk dijadikan kondisi awal yang baru. Hasil yang didapatkan sangat jauh berbeda. Data dari hasil percobaan dimasukkan dalam bentuk grafik maka terciptalah yang biasa disebut efek kupu-kupu.

(21)

1. Definisi Teori Chaos

Chaos adalah tingkah laku yang sangat kompleks, irregular dan random di dalam sebuah sistem yang deterministik (Steward, 1994). Suatu keadaan di mana sebuah sistem tidak dapat diprediksi di mana akan ditemukan di tempat berikutnya disebut chaos. Chaos bersifat acak akan tetapi, apabila keadaan lebih diperhatikan dalam jangka waktu yang cukup lama maka akan menemukan keteraturan dari chaos itu sendiri.

2. Jenis Fungsi dalam Teori Chaos

Teori Chaos memiliki banyak fungsi, beberapa fungsi yang umum dalam teori chaos yaitu (Alvin:tanpa tahun):

a. Logictic Map

Fungsi logistic merupakan fungsi chaos. Bentuk fungsi logistic:

(2.8)

Dengan

Sembarang bilangan rill ( 0  r  4 ).

Selanjutnya, dalam sistem kriptografi fungsi logistic digunakan secara iteratif sehingga menghasilkan persamaan (2.9)

(22)

. (2.9) b. Henon Map

Fungsi Henon (Henon Map) disajikan secara iteratif dalam persamaan (2.10) dan (2.11). Henon Map adalah persamaan sistem dinamis yang menerapkan sistem diskrit. Michel Henon adalah orang yang memperkenalkan persamaan henon sebagai model sederhana dari Poincare section Lorenz model. Persamaan ini menggunakan sebuah titik (x,y) dan sangat bergantung pada dua parameter. Persamaan henon yaitu :

(2.10)

. (2.11)

Dengan

a,b = sembarang bilangan rill

c. Arnold’s Cat Map

Arnold’s Cat Map ditemukan oleh Vladimir Arnold pada tahun

1960. Ketika melakukan penelitian, Arnold menggunakan sebuah gambar kucing dalam melakukan percobaan, sehingga algoritma ini dinamakan dengan Arnold’s Cat Map(ACM). ACM mentransformasikan koordinat

(x,y). Fungsi ACM dituliskan sebagai berikut:

{

.(2.12)

(23)

Contoh dari periode akan di tampilkan pada gambar 2.2, dimana informasi yang akan di sandikan berupa gambar berukuran 150 x 150 pixels. Gambar tersebut akan kembali ke gambar asli setelah di lakukan iterasi yang ke 300.

Gambar 2.2Proses enkripsi gambar menggunakan Arnold’s Cat Map

d. Duffing Map

Duffing Map merupakan salah satu sistem dinamis dengan menggunakan waktu diskrit yang menerapkan sifat chaos. Duffing map mengambil sebuah titik pada sebuah kordinat lalu memetakan menjadi sebuah titik yang baru. Pemetaan dipengaruhi oleh dua buah nilai yang merupakan konstanta. Duffing Map dituliskan sebagai berikut :

(2.13)

. (2.14)

Dengan

(24)

Dalam penelitian ini dipilih Fungsi Arnold’s Cat Map dalam

Membangkitkan kunci, karena terdapat dua parameter x dan y yang membuat kunci makin sulit ditebak oleh pihak 3.

F. Protokol Perjanjian Kunci

Protokol perjanjian kunci merupakan skema dalam kriptografi yang digunakan untuk mengatasi masalah perjanjian kunci rahasia. Dalam kriptografi simetris, kunci yang digunakan harus benar-benar dirahasiakan agar pihak 3 tidak bisa mengetahui kunci. Kunci berguna dalam proses enkripsi dan dekripsi diantara dua pihak yang saling bertukar pesan, oleh karena itu kunci harus sangat dirahasiakan agar pesan asli tidak dapat diketahui oleh pihak 3.

(25)

Tabel 1 Skema Protokol Perjanjian Kunci Diffie-Hiellman (Myasnikov dkk,2008)

Pihak 1 atau pihak 2 mempublikasikan suatu grup siklik G dengan elemen pembangkit

Pihak 1 Pihak 2

1) Memilih secara rahasia suatu bilangan positif a

2) Menghitung

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

1) Memilih secara rahasia suatu bilangan positif b

2) Menghitung

3) Mengirim kepada pihak 1 4) Menerima dari pihak 1 5) Menghitung

Pihak 1 dan pihak 2 telah menyepakati kunci rahasia K=

(26)

Tabel 2 Skema Protokol Perjanjian Kunci Stickel (Myasnikov dkk, 2008) Pihak 1 atau pihak 2 mempublikasikan suatu grup non-komutatif G

dan a,b , dengan N order dari a dan M order dari b.

Pihak 1 Pihak 2

1) Memilih secara rahasia

, & 2) Menghitung U = anbm

3) Mengirim U Kepada pihak 2 4) Menerima V dari pihak 2 5) Menghitung

1) Memilih secara rahasia

, & 2) Menghitung V = arbs

3) Mengirim V Kepada pihak 1 4) Menerima U dari pihak 1

Dipilih perjanjian kunci stickel untuk menentukan pembangkit kunci karena bisa menggunakan matriks non komutatif dan sebarang bilangan asli untuk perpangkatan matriks yang hanya diketahui oleh dirinya sendiri yang membuat pihak 3 sulit untuk menebak kunci.

G. Octave

(27)

Gambar 2.3 Tampilan Awal Octave 1. Tools

Terdapat beberapa tools utama dalam octave, yaitu :

a. Command Window

Comman window digunakan untuk memasukan variabel dan menjalankan fungsi atau biasa disebut script. Perintah yang ditulis di command window langsung ditampilkan, dan jika perintah salah maka akan muncul pesan eror dalam command window.

b. Command History

(28)

c. Text Editor

Text editor berguna untuk membuat M-file atau script. Hampir sama dengan command window, tetapi text editor tidak langsung memunculkan hasil dari perintah. Perintah dalam text editor harus dipanggil dalam command window agar hasilnya keluar.

2. Operasi

Octave memiliki beberapa operasi aritmatika, beberapa operasi yang sering digunakan dalam Octave akan ditampilkan dalam tabel berikut:

Tabel 3: Operasi Aritmatika dalam Octave

Simbol Kegunaan

+ Penjumlahan

- Pengurangan * Perkalian

/ Pembagian

^ Perpangkatan

Selain operasi aritmatika, octave juga memiliki operasi perbandingan. Beberapa operasi perbandingan akan ditampilkan dalam tabel berikut:

Tabel 4 : Operasi Perbandingan dalam Octave

Simbol Dekripsi

< Kurang dari

<= Kurang dari sama dengan

== Sama dengan

> Lebih dari

(29)

3. Pernyataan

Octave menyediakan beberapa struktur-struktur pernyataan. Beberapa pernyataan yang sering digunakan dalam Octave, yaitu pernyataan if, pernyataan switch, pernyataan while, dan pernyataan for. Adapun penjelasan dari beberapa pernyataan, yaitu (Eaton,2007):

a. Pernyataan if

Pernyataan ini mempunyai bentuk if-else-end. Jika kondisi if terpenuhi, maka akan penjalankan perintah yang ada di dalam if tersebut. Jika tidak maka akan menjalankan perintah selanjutnya atau else. Ada beberapa bentuk dalam pernyataan if, yaitu :

If (kondisi) Perintah Else Perintah End

If (kondisi1) Perintah Elseif (kondisi2) Perintah Elseif... . . . Else

(30)

b. Pernyataan switch Switch (kondisi1) Case (kondisi2)

Perintah

Case (kondisi3)

Perintah

Case ...

.

.

.

Otherwise

Perintah

End.

Penyataan ini membandingkan antara kondisi1 dan setelahnya, jika kondisi1 sama dengan kondisi2 maka perintah yang ada di dalam kondisi2 akan dijalankan, dan seterusnya. Jika semua kondisi tidak terpenuhi maka akan dijalankan perintah pada otherwise.

c. Pernyataan for For (x = array) Perintah End.

(31)

d. Pernyataan while

Sedikit berbeda dengan pernyataan for yang melakukan perulangan dengan jumlah ditentukan, pernyataan while melakukan perulangan dengan jumlah yang tak terbatas.

Pernyataan while akan terus berulang selama elemen dalam kondisi terpenuhi, jika tidak terpenuhi maka pernyataan while akan berenti. Bentuk umumnya yaitu:

(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

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

{[

Setelah menyepakati pembangkit kunci, selanjutnya akan dilakukan pembentukan kunci menggunakan Fungsi Arnold’s cat Map dengan

(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)

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

3) Mengirim U kepada pihak 2 4) Menerima V dari pihak 2 5) Menghitung

1) Memilih secara rahasia bilangan asli r dan s.

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

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

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

1) Memilih secara rahasia bilangan asli i dan j. 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

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

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

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

(40)
(41)
(42)

Plaintext mod 94 Ciphertext

berdasarkan hasil perhitungan,maka didapatkan suatu ciphertext : 68__1{4DPD{2{Vr:9D*9E&}D&[5aTFkt@;|L?i[U(0EN

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

(44)
(45)
(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

(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).

(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

(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

(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

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

(52)

KK=sum(sum(K)); 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.

(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

(54)

z=mod(o(i)+dd(ceil(i/2)),94)+1;

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

Input:chipertext & pembangkit kunci

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

(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

(57)
(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

, .

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

(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

(61)

BAB IV PENUTUP A. Kesimpulan

Berdasarkan hasil penelitian tersebut, dapat diambil kesimpulan yaitu fungsi chaos Arnold Cat Map dapat diterapkan dalam mengamankan informasi sebagai pembangkit kunci yang akan digunakan sebagai proses enkripsi dan dekripsi. Langkah-langkah mengamankan informasi

menggunakan Arnold’s Cat Map yaitu

1) Melakukan proses perjanjian pembangkit kunci menggunakan protokol perjanjian kunci stickel. Adapun algoritma yang digunakan untuk perjanjanjian pembangkit kunci yaitu:

Pihak 1 atau pihak 2 mempublikasikan suatu semigrup dan 3) Mengirim U Kepada pihak 2 4) Menerima V dari pihak 2 5) Menghitung

1) Memilih secara rahasia dan &

2) Menghitung U = ArBs

3) Mengirim V Kepada pihak 1 4) Menerima U dari pihak 1 5) Menghitung Pihak 1 dan pihak 2 berhasil menyepakati nilai awal yang sama

K =

2) Mengkonversi martiks K yang diperoleh dari proses perjanjian pembangkit kunci mengunakan persamaan (3.2) dan di ubah ke bentuk desimal dengan cara menjumlahkan semua entri matriks , jika

(62)

3) Proses pembangkitan kunci menggunakan fungsi Chaos Arnold’s Cat Map (3.5) yang di ambil dua digit pertama di belakang koma. Berikut ini adalah fungsi Chaos yang digunakan.

{

.

4) Proses enkripsi dilakukan pihak ke 1 dengan cara mengubah pesan yang akan di kirim atau pesan asli(Plaintext) ke dalam bentuk pesan rahasia(ciphertext) dengan rumus pada persamaan 3.6 yaitu:

mod 94,

5) Proses dekripsi dilakukan oleh pihak 2 dengan cara mengubah pesan yang diterima atau pesan rahasia(ciphertext) ke dalam bentuk pesan asli(plaintext) dengan menggunakan rumus 3.7 yaitu:

mod 94,

B. Saran

Berdasarkan hasil penulisan skripsi ini, penulis ingin menyampaikan saran, antara lain:

1. Untuk menjaga kerahasiaan ciphertext, kunci harus dijaga keamanannya agar pihak 3 tidak bisa mengetahui isi pesan, dengan cara mengubah kunci setiap melakukan komunikasi.

2. Pada skripsi ini untuk membangkitkan kunci hanya menggunakan fungsi

Chaos Arnold’s Cat Map. Penulis menyarankan untuk menggabungkan

(63)

DAFTAR PUSTAKA

Alvin Susanto.___. Penerapan Teori Chaos di Dalam Kriptografi. Jurnal Teknik Informatika.

Anton,Howard & Rorres,Chris.(2014). Elementary Linear Algebra : Applications Version. New Jersey:Wiley.

Arief,S.(2008).Pengenalan GNU Octave. Diakses dari http://ilmukomputer.org/wp-content/uploads/2008/04/sarief-octave.pdf. pada tanggal 26 Januari 2017, Jam 19.30 WIB.

Ariyus, Dony.(2007). Pengantar Ilmu Kriptografi teori Analisis dan Implementasi.Yogyakarta : Penerbit Andi

Burton,David M.(2007). Elementary number Theory.NewYork: Mcgraw-Hill International Edition.

Dimas Ridwan W.(2014).Aplikasi Aljabar Min-Plus untuk Mengamankan Informasi Rahasia. Skripsi. Yogyakarta : Universitas Negeri Yogyakarta Dwi Lestari dan Zaki Riyanto.(2012). Suatu Algoritma Kriptografi Stream Cipher

Berdasarkan Fungsi Chaos. Prosiding,Seminar Nasional. Yogyakarta : FMIPA UNY.

Eaton, J. W., Bateman, D.& Hauberg, S. (2007).GNU Octave.Boston: Free Software Foundation, Inc.

Hadley,G.(1992).Aljabar Linear. Jakarta: Erlangga.

Kusmarni, Yani.(2008). TEORI CHAOS:Sebuah Keteraturan Dalam Keacakan.Bandung:UPI

Menezes, Oorchshot,& Vanstone. (1996).Handbook of Applied Cryptography. Florida: CRC Press.

Munir ,Rinaldi.(2006). Kriptografi.Bandung:Informatika Bandung.

Myasnikov, A., Shpilrain, M. & Ushakov, A. (2008). Group-based Cryptography. Basel Switzerland: Birkhauser Verlag.

Stewart,Ian & Cohen,Jack.(1994). The Collapse of Chaos: Discovering Simplicity in a Complex World.london: penguin books.

Stinson, Douglas R. (2006).Cryptography: theory and Practice Third Edition. Florida: CRC Press.

Sukirman.(2005). Pengantar Aljabar Abstrak.Malang : UM Press

(64)
(65)

Lampiran 1.

Tabel Kode (0-93)

No Kode No Kode No Kode No Kode

0 a 24 y 48 M 72 )

1 b 25 z 49 N 73 _

2 c 26 1 50 O 74 +

3 d 27 2 51 P 75 `

4 e 28 3 52 Q 76 =

5 f 29 4 53 R 77 -

6 g 30 5 54 S 78 {

7 h 31 6 55 T 79 }

8 i 32 7 56 U 80 |

9 j 33 8 57 V 81 [

10 k 34 9 58 W 82 ]

11 l 35 0 59 X 83 \

12 m 36 A 60 Y 84 :

13 n 37 B 61 Z 85 "

14 o 38 C 62 ~ 86 ;

15 p 39 D 63 ! 87 <

16 q 40 E 64 @ 88 >

17 r 41 F 65 # 89 ?

18 s 42 G 66 $ 90 ,

19 t 43 H 67 % 91 .

20 u 44 I 68 ^ 92 /

21 v 45 J 69 & 93 <space>

22 w 46 K 70 * 94 ‘

(66)

Lampiran 2.

Program untuk Proses Menentukan Pembangkit Kunci.

Pihak 1

function pembentukan1 format long g

disp('masukkan nilai n untuk menentukan ukuran matriks n x n'); n=input('n= ');

disp('masukkan nilai matriks yang determinannya tidak sama dengan 0'); disp('11 A sampai nn A untuk membentuk matriks A dan seterusnya'); for i=1:n

disp('detererminan A = 0');

(67)

end dy=det(Y); while dy == 0

disp('detererminan B = 0');

disp('ulangi menginputkan matriks');

disp('detererminan C = 0');

(68)

D(i,j)=input( 'D(i,j)=');

disp('detererminan D = 0');

disp('ulangi menginputkan matriks');

(69)

i=i

(70)

disp('masukkan nilai matriks yang determinannya tidak sama dengan 0'); disp('11 A sampai nn A untuk membentuk matriks A dan seterusnya'); for i=1:n

disp('detererminan A = 0');

disp('ulangi menginputkan matriks');

disp('detererminan B = 0');

(71)

j=1+j;

disp('detererminan C = 0');

disp('ulangi menginputkan matriks');

disp('detererminan D = 0');

(72)

i=i

disp('masukan sebarang bilangan asli p,q,k dan l'); p=input('r= ');

(73)

for i=1:n

Program untuk Proses Mengkonversi Pesan.

function [angka] = konversipesan(huruf) angka = [];

for i=1:size(huruf,2) angka(i) = ubah(huruf(i)); end

function [angka] = ubah(huruf) if strcmp(huruf,'a')==1

angka=0;

elseif strcmp(huruf,'b')==1 angka=1;

(74)
(75)
(76)
(77)
(78)

angka=90;

Program untuk Proses Pembangkitan Kunci.

function [angka1] = pembangkit1(huruf1) angka1 = [];

function [angka2] = pembangkit2(huruf2) angka2 = [];

for i=1:size(huruf2,2) if i==1

angka2(i) = input('y='); else

angka2(i) = hitung5(angka2(i-1),huruf2(i-1)); end

end

function [angka1] = hitung3(huruf1) if huruf1 <= 0.5

angka1=(2*huruf1); else

angka1=((2*huruf1)-1); end

(79)

angka1=(huruf2/2); else

angka1=((huruf2+1)/2); end

Lampiran 5.

Program untuk Proses Enkripsi.

function enkripsi format long g

m=input('tulis pesan= ','s');

(80)

Lampiran 6.

Program untuk Proses Dekripsi.

function dekripsi format long g

m=input('tulis pesan= ','s');

(81)

SISTEM KRIPTOGRAFI UNTUK KEAMANAN INFORMASI

MENGGUNAKAN FUNGSI CHAOS ARNOLD’S CAT MAP

SKRIPSI

Diajukan kepada Fakultas Matematika dan Ilmu Pengetahuan Alam Universitas Negeri Yogyakarta

untuk Memenuhi Sebagian Pesyaratan guna Memperoleh Gelar Sarjana Sains

Oleh:

Muhamad Wildan Habiby NIM 13305141038

PROGRAM STUDI MATEMATIKA JURUSAN PENDIDIKAN MATEMATIKA

FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM UNIVERSITAS NEGERI YOGYAKARTA

(82)
(83)

PERNYATAAN

Yang bertanda tangan dibawah ini:

Nama : Muhamad Wildan Habiby

NIM : 13305141038

Prodi : Matematika

Judul TAS : Sitem Kriptografi untuk Keamanan Informasi Menggunakan

Fungsi Chaos Arnold’s Cat Map

Menyatakan bahwa skripsi ini benar-benar karya saya sendiri. Sepanjang

pengetahuan saya tidak terdapat karya atau pendapat yang ditulis atau diterbitkan orang lain kecuali sebagai acuan atau kutipan dengan mengikuti tata penulisan karya ilmiah yang telah lazim. Apabila terbukti pernyataan saya ini tidak benar, maka saya bersedia menerima sanksi sesuai ketentuan yang berlaku.

Yogyakarta, Maret 2017 Yang menyatakan,

(84)
(85)

MOTO

Buatlah bangga orang tua mu dengan hal-hal yang bisa engkau lakukan

Kerjakan apa yang engkau bisa kerjakan, jangan menunggu orang lain yang bisa menghambatmu jika itu bisa engkau lakukan sendiri.

Berbuat baiklah kepada orang lain jika engkau ingin mendapat perlakuan yang sama.

“Sesungguhnya Allah tidak akan mengubah nasib suatu kaum hingga mereka

mengubah diri mereka sendiri”. (Q.S. Ar-Ra’d:11)

“Maka sesungguhnya bersama kesulitan itu ada kemudahan. Sesungguhnya

(86)

PERSEMBAHAN

ِميِحَرلا ِنمْحَرلا ِه ِمْسِب

Kupersembahkan karya ini untuk

Ayah dan mama serta Nanda dan Aji

Yang telah memberikan do’a, motivasi dan banyak hal lain yang tidak bisa disebutkan.

Motivasi serta doa yang engkau berikan telah membimbing ku sampai saat ini.

Kuucapkan terima kasih kepada

Muhajir,Andira,Tina,Dwi,Sisca yang telah memberi keceriaan, kebersamaan serta pengalaman yang berharga kepada penulis, semoga persahabatan kita bisa terus berlanjut.

rani atas kesabaran, doa serta motivasi yang engkau berikan. Motivasimu membuat penulis semakin bersemangat

(87)

Sistem Kriptografi untuk Keamanan Informasi Menggunakan Fungsi Chaos

Pertukaran informasi banyak dilakukan oleh orang yang saling berkomunikasi. Informasi yang rahasia sangat rawan bila pihak 3 tidak mengkodekan informasi tersebut. Pihak penyerang bisa dengan mudah mengetahui atau mengubah isi informasi sebelum sampai ke pihak penerima informasi. Perlu dilakukan pengamanan terhadap informasi rahasia yang akan dikirim ke penerima informasi. Tujuan dari penelitian ini adalah menjelaskan konsep - konsep matematis tentang sistem kriptografi teori chaos arnold’s cat map dalam mengamankan informasi.

Teori chaos merupakan tingkah laku yang sangat kompleks, irregular dan random di dalam sebuah sistem yang deterministik. Chaos mempunyai sifat yang acak, perubahan sedikit saja akan membangkitkan bilangan yang berbeda, hal ini berguna dalam membangkitkan kunci. Teori chaos mempunyai banyak fungsi,

salah satunya Arnold’s Cat Map (ACM). Keunggulan dari ACM sendiri adalah kecepatan dalam mengenkripsikan data. Fungsi ACM membutuhkan pembangkit kunci, dalam menentukan pembangkit kunci digunakan protokol perjanjian kunci stickel.

Hasil penelitian menunjukan bahwa fungsi chaos arnold’s cat map dapat

digunakan dalam membangkitkan kunci untuk mengamankan informasi rahasia. Diperoleh pembangkit kunci yang sama antara pihak 1 dan pihak 2, yaitu K = . Pembangkit kunci akan di proses menggunakan fungsi chaos arnold’s cat map dan akan diperoleh kunci yang akan digunakan untuk enkripsi serta dekripsi. Pada proses enkripsi dilakukan perhitungan dengan rumus

mod 94, sedangkan proses dekripsi dilakukan perhitungan dengan rumus mod 94, dengan adalah Ciphertext, adalah Plaintext, serta adalah Kunci.

(88)

KATA PENGANTAR

Puji syukur kehadirat Allah SWT, Tuhan semesta alam atas segala rahmat, nikmat dan karunianya tugas akhir skripsi ini bisa terselesaikan dengan lancar.

Skripsi yang berjudul “ Sistem Kriptografi untuk Mengamankan Informasi Menggunakan Fungsi Chaos Arnold’s Cat Map” ini disusun untuk memenuhi

salah satu syarat kelulusan meraih gelar sarjana sains pada Universitas Negeri Yogyakarta.

Penulis menyadari bahwa tugas akhir skripsi ini bisa terselesaikan karena bantuan, bimbingan, dukungan berbagai pihak. Sehingga, pada kesempatan ini penulis ingin menyampaikan terimakasih kepada:

1. Bapak Dr. Hartono selaku Dekan Fakultas Matematika dan Ilmu pengetahuan Alam Universitas Negeri Yogyakarta.

2. Bapak Dr. Ali Mahmudi selaku Ketua Jurusan Pendidikan Metamatika FMIPA UNY.

3. Bapak Dr. Agus Maman Abadi, selaku kordinator program studi Matematika FMIPA UNY.

4. Ibu Dwi Lestari, M.Sc. selaku dosen pembimbing yang telah dengan sabar membimbing dan memberikan masukan dalam proses penulisan skripsi ini.

(89)

6. Seluruh dosen jurusan pendidikan matematika FMIPA UNY yang telah memberi banyak ilmu dan pengalaman yang berharga.

7. Teman-teman matematika 2013 khusunya Kelas B yang selalu memberi dukungan, motivasi serta hiburan kepada penulis dalam proses penyusunan skripsi ini.

8. Semua pihak yang tidak dapat penulis sebutkan satu per satu.

Penulis penyadari bahwa dalam penulisan skripsi ini masih terdapat banyak kekurangan. Oleh karena itu, saran dan kritik sangat diharapkan penulis sebagai koreksi demi kesempurnaan skripsi ini. semoga tugas akhir skripsi ini dapat memberi manfaat bagi semua pihak yang membutuhkan.

Yogyakarta, Maret 2017 Penulis,

(90)

DAFTAR ISI

HALAMAN JUDUL ... i

HALAMAN PERSETUJUAN ... ii

HALAMAN PERNYATAAN ... iii

HALAMAN PENGESAHAN ... iv

HALAMAN MOTTO ... v

HALAMAN PERSEMBAHAN ... vi

ABSTRAK ... vii

KATA PENGANTAR ... viii

DAFTAR ISI ... x

DAFTAR GAMBAR ... xii

DAFTAR TABEL ... xiii

DAFTAR LAMPIRAN ... xiv

BAB I PENDAHULUAN A. Latar Belakang Masalah ... 1

B. Identifikasi Masalah ... 4

C. Batasan Masalah ... 4

D. Rumusan Masalah ... 4

E. Tujuan Penelitian ... 4

F. Manfaat Penelitian ... 5

BAB II KAJIAN TEORI A. Matriks ... 6

B. Grup ... 8

C. Kekongruenan ... 10

D. Kriptografi ... 13

1. Definisi Kriptografi ... 13

2. Tujuan Kriptografi ... 13

(91)

E. Teori Chaos ... 19

1. Definisi Teori Chaos ... 21

2. Jenis Fungi dalam Teori Chaos ... 21

F. Protokol Perjanjian kunci ... 24

G. Octave ... 26

1. Tools ... 27

2. Operasi ... 28

3. Pernyataan ... 29

BAB III PEMBAHASAN A. Permasalahan Nyata Keamanan Informasi ... 32

B. Proses Penyandian Menggunakan Arnold’s Cat Map ... 33

1. Pembentukan Kunci ... 34

2. Proses Enkripsi ... 38

3. Proses Dekripsi ... 43

4. Contoh Kasus Pembangkit Kunci Berbeda ... 47

C. Proses Penyandian Arnold’s Cat map Menggunakan Aplikasi Octave ... 48

1. Program Penyandian Arnold’s Cat map Menggunakan Aplikasi Octave ... 48

2. Simulasi Penyandian Arnold’s Cat map Menggunakan Aplikasi Octave ... 56

BAB IV PENUTUP A. Kesimpulan ... 61

B. Saran ... 62

(92)

DAFTAR GAMBAR

Gambar 2.1 Skema Enkripsi dan Dekripsi ... 16

Gambar 2.2 Proses enkripsi gambar menggunakan Arnold’s Cat Map ... 23

Gambar 2.3 Tampilan Awal Octave ... 27

Gambar 3.1 Skema Pembentukan Kunci ... 34

Gambar 3.2 Diagram Alur Prgoram Enkripsi ... 52

Gambar 3.3 Diagram Alur Program Dekripsi ... 54

Gambar 3.4 Input Matriks Pembentukan Kunci ... 57

Gambar 3.5 Hasil Perhitungan Matriks ... 58

Gambar 3.6 Input Matriks yang Dikirim Pihak 2 ... 58

Gambar 3.7 Hasil Proses Pembentukan Kunci ... 59

Gambar 3.8 Input Pesan yang Akan Dienkripsikan ... 59

Gambar 3.9 Input Kunci dan Hasil Enkripsi ... 59

Gambar 3.10 Input Pesan yang Akan Didekripsikan ... 60

Gambar 3.11 Input Kunci dan Hasil Dekripsi ... 60

Gambar

Gambar 2.1 Skema Enkripsi dan Dekripsi
Gambar 2.2 Proses enkripsi gambar menggunakan Arnold’s Cat Map
Tabel 1 Skema Protokol Perjanjian Kunci Diffie-Hiellman (Myasnikov
Tabel 2 Skema Protokol Perjanjian Kunci Stickel (Myasnikov dkk, 2008)
+7

Referensi

Dokumen terkait

Penulis ingin menyajikan pada penelitian ini dalam bentuk Prototype untuk menjadi alat yang dapat membantu memahami konversi rangkaian kombinasi tersebut ke dalam

Jadi pemberian serifikat halal bertujuan untuk memberikan kepastian hukum dan perlindungan bagi konsumen muslim dari produk pangan yang tidak bersertifikat halal dapat

Berdasarkan hasil analisis ekologis pada penelitian ini menunujukkan bahwa di lokasi Gilisulat, kondisi mangrove alarni masih bagus, sedangkan pada penelitian Idrus

Hal ini dapat di simpulkan bahwa Semakin tinggi temperatur kalsinasi maka semakin tinggi ukuran kristal yang diikuti oleh naiknya ukuran butir berakibat pada menurunkan

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

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,

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