Metode Penelitian Kriptografi Perancangan Dan Implementasi Sistem Keamanan Data Menggunakan Algoritma Simetri Tea Dengan Bahasa Pemrograman Delphi 7.0

1.6 Metode Penelitian

Adapun langkah-langkah yang akan ditempuh dalam proses penelitian selama pengerjaan tugas akhir ini adalah sebagai berikut : a. Studi literatur. Penulisan ini dimulai dengan studi kepustakaan, yaitu dengan mengumpulkan bahan-bahan referensi baik dari buku, artikel, paper, jurnal, makalah, situs internet mengenai algoritma kriptografi Tiny Encryption Algorithm TEA dan konsep matematis yang mendasarinya serta pemrograman untuk pembuatan aplikasinya, dan beberapa referensi lainnya untuk menunjang pencapaian tujuan tugas akhir yang dibuat. b. Analisis permasalahan. Pada tahap ini dilakukan analisis terhadap Tiny Encryption Algorithm TEA baik dari aspek matematis maupun proses penyandiannya. c. Perancangan Sistem. Perancangan sistem yang dapat menjaga keamanan data. d. Implementasi sistem yang dirancang kedalam sebuah bahasa pemrograman. e. Testing Program. Untuk mengetahui sejauh manakah tingkat kesuksesan program yang dibuat. f. Penyusunan laporan dan penarikan kesimpulan. Menyusun laporan hasil analisis dan perancangan ke dalam format penulisan tugas akhir disertai penarikan kesimpulan.

1.7 Sistematika Penulisan

BAB 1 : PENDAHULUAN

Bab ini akan menjelaskan mengenai latar belakang pemilihan judul, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metode penelitian, dan sistematika penulisan.

BAB 2 : LANDASAN TEORI

Pada bab ini dibahas mengenai teori-teori yang mendukung pembahasan bab selanjutnya.

BAB 3 : ANALISIS DAN PEMODELAN PERANGKAT LUNAK

Berisikan analisa permasalahan dan kebutuhan algoritma Tiny Encryption Algorithm TEA serta pemodelan sistem secara fungsional.

BAB 4 : PERANCANGAN DAN IMPLEMENTASI

Berisikan gambaran rancangan struktur program dan desain antar muka, serta memberikan gambaran dari rancang bangun yang lengkap kepada user dan pemakai komputer yang lain serta implementasinya yaitu menguji untuk menemukan kesalahan serta implementasi enkripsidekripsi data menggunakan algoritma Tiny Encryption Algorithm TEA.

BAB 5 : PENUTUP

Bab terakhir akan memuat kesimpulan isi dari keseluruhan uraian bab-bab sebelumnya dan saran-saran dari hasil yang diperoleh yang diharapkan dapat bermanfaat dalam pengembangan selanjutnya. BAB 2 LANDASAN TEORI

2.1 Kriptografi

2.1.1 Definisi Kriptografi

Untuk dapat mengenal kriptografi diperlukan pemahaman mengenai masalah yang berhubungan dengan keamanan informasi secara umum. Keamanan informasi membangun dirinya sendiri dalam berbagai cara sesuai dengan situasi dan kebutuhan Menezes, van Oorschot dan Vanstone, 1996. Kata kriptografi berasal dari bahasa Yunani, “krypós” yang berarti tersembunyi dan “gráphein” yang berarti tulisan. Sehingga kata kriptografi dapat diartikan berupa frase “tulisan tersembunyi”. Bishop 2005 menyatakan bahwa kriptografi merupakan seni dan ilmu yang ditujukan untuk menyembunyikan arti yang sesungguhnya. Menezes, van Oorschot dan Vanstone 1996 menyatakan bahwa kriptografi adalah suatu studi teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, otentikasi entitas dan otentikasi keaslian data. Kriptografi tidak hanya berarti penyediaan keamanan informasi, melainkan sebuah himpunan teknik-teknik. Selain definisi di atas, Scheiner 1996 mengemukakan pendapatnya tentang defenisi kriptografi yaitu : ilmu dan seni untuk menjaga keamanan pesan. Penggunaan kata “seni” di dalam definisi di atas berasal dari fakta sejarah bahwa pada masa-masa awal sejarah kriptografi, setiap orang mungkin mempunyai cara yang unik untuk merahasiakan pesan. Cara-cara unik tersebut mungkin berbeda-beda pada setiap pelaku kriptografi sehingga setiap cara menulis pesan rahasia pesan mempunyai nilai estetika tersendiri sehingga kriptografi berkembang menjadi sebuah seni merahasiakan pesan kata “graphy” di dalam “cryptography” itu sendiri sudah menyiratkan sebuah seni Munir, 2006.

2.1.2 Sejarah Kriptografi

Kriptografi mempunyai sejarah yang sangat menarik dan panjang. Kriptografi sudah digunakan 4000 tahun yang lalu dan diperkenalkan oleh bangsa mesir untuk mengirim pesan ke pasukan militer yang berada di lapangan. Mereka menggunakan hieroglyphcs untuk menyembunyikan tulisan dari pihak yang tidak diinginkan. Hieroglyphcs diturunkan dari bahasa Yunani hieroglyphica yang berarti ”ukiran rahasia”. Hieroglyphs berevolusi menjadi hieratic, yaitu stylized script yang lebih mudah untuk digunakan. Dengan demikian, pesan tersebut tidak dapat terbaca oleh pihak musuh walaupun kurir pembawa pesan tersebut tertangkap oleh musuh. Demikianlah hingga penggunaan kriptografi pada abad ke-20 Menezes, van Oorschot dan Vanstone, 1996 Ariyus, 2005. Sejarah kriptografi sebagian besar merupakan sejarah kriptografi klasik, yaitu metode enkripsi yang menggunakan kertas dan pensil atau mungkin dengan bantuan alat mekanik sederhana. Secara umum algoritma kriptografi klasik dikelompokkan menjadi dua kategori, yaitu algoritma transposisi transposition cipher dan algoritma substitusi substitution cipher. Transposition cipher mengubah susunan huruf-huruf di dalam pesan, sedangkan substitution cipher mengganti setiap huruf atau kelompok huruf dengan sebuah huruf atau kelompok huruf lain. Sejarah kriptografi klasik mencatat penggunaan cipher transposisi oleh tentara Sparta di Yunani pada permulaan tahun 400 SM. Mereka menggunakan alat yang namanya scytale. Scytale terdiri dari sebuah kertas panjang dari daun papyrus yang dililitkan pada sebuah silinder dari diameter tertentu diameter silender menyatakan kunci penyandian. Pesan ditulis secara horizontal, baris per baris. Bila pita dilepaskan, maka huruf-huruf di dalamnya telah tersusun secara acak membentuk pesan rahasia. Untuk membaca pesan, penerima pesan harus melilitkan kembali kertas tersebut ke silinder yang diameternya sama dengan diameter silinder pengirim. Sedangkan algoritma substitusi paling awal dan paling sederhana adalah Caesar cipher, yang digunakan oleh raja Yunani kuno, Julius Caesar. Caranya adalah dengan mengganti setiap karakter di dalam alfabet dengan karakter yang terletak pada tiga posisi berikutnya di dalam susunan alfabet Munir, 2006. Pada perang dunia kedua, Jerman menggunakan enigma atau juga disebut dengan mesin rotor yang digunakan Hitler untuk mengirim pesan kepada tentaranya. Jerman sangat percaya bahwa pesan yang dikirim melalui enigma tidak terpecahkan kode – kode enkripsinya. Akan tetapi, anggapan tersebut keliru. Ternyata setelah bertahun – tahun, sekutu dapat memecahkan kode – kode tersebut setelah mempelajarinya. Setelah jerman mengetahui bahwa kode – kode tersebut dapat terpecahkan, enigma yang digunakan pada perang dunia kedua beberapa kali mengalami perubahan. Demikianlah, karena Enigma berhasil dipecahkan oleh pihak Sekutu dan keberhasilan memecahkan Enigma sering dikatakan sebagai faktor yang memperpendek perang dunia kedua Ariyus, 2005. Gambar 2.1 Mesin enkripsi Enigma Kriptografi modern dipicu oleh perkembangan peralatan komputer digital. Dimulai dari usaha Feistel dari IBM di awal tahun 70-an dan mencapai puncaknya pada 1977 dengan pengangkatan DES Data Encryption Standard sebagai standar pemrosesan informasi federal Amerika Serikat untuk mengenkripsi informasi yang belum diklasifikasi. DES merupakan mekanisme kriptografi yang paling dikenal sepanjang sejarah. Kemudian karena lama kelamaan DES dianggap tidak aman, maka untuk menjawab tantangan dalam dunia kriptografi, NIST National Institue of Standards and Technology sebagai standar pengolah informasi Federal AS bersiap – siap mengganti DES. pada tahun 1997 dimulailah diadakan kontes yang diikuti oleh 21 pelamar. Kemuidan pada bulan agustus 1999 terpilihlah 5 kandidat sebagai finalis : Mars IBM Amerika, RC6 RSA corp, Amerika, Rijndaelbelgia, SerpentIsrael, Norwegia, dan Inggris, dan Twofish Counterpane Amerika. Kurniawan, 2004.

2.1.3 Tujuan Kriptografi

Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi, yaitu : a. Kerahasiaan confidentiality, adalah layanan yang digunakan untuk menjaga isi informasi dari siapapun kecuali yang memiliki otoritas atau kunci sandi untuk membukamengupas informasi yang telah disandi. Ada beberapa pendekatan untuk menjaga kerahasiaan, dari pengamanan secara fisik hingga penggunaan algoritma matematika yang membuat data tidak dapat dipahami. Istilah lain yang senada dengan confidentiality adalah secrecy dan privacy. b. Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya. Di dalam kriptografi, layanan ini direalisasikan dengan menggunakan tanda-tangan digital digital signature. Pesan yang telah ditandatangani menyiratkan bahwa pesan yang dikirim adalah asli. c. Autentikasi, adalah berhubungan dengan identifikasipengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian isi datanya, waktu pengiriman, dan lain-lain. Oleh karena itu, layanan integritas data selalu dikombinasikan dengan layanan otentikasi sumber pesan. Di dalam kriptografi, layanan ini direalisasikan dengan menggunakan tanda-tangan digital digital signature. Tanda-tangan digital menyatakan sumber pesan. d. Non-Repudiasi atau nirpenyangkalan, adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengirimanterciptanya suatu informasi oleh yang mengirimkanmembuat. Kurniawan, 2004.

2.1.4 Konsep Dasar Kriptografi

2.1.4.1 Message, Plaintext, dan Ciphertext

Pesan message adalah data atau informasi yang dapat dibaca dan dimengerti maknanya. Nama lain untuk pesan adalah plainteks atau data asli yang bisa memberikan informasi bila dibacadianalisa cleartext. Ciphertext adalah data yang sudah mengalami proses kriptografi, sehingga informasi yang terkandung di dalamnya biasa disembunyikan. Ciphertext inilah yang kemudian akan dikirimkan melalui jaringan. Encryptenkripsi adalah proses untuk mengubah Plaintext menjadi Ciphertext. Decryptdeskripsi adalah proses untuk mengubah Ciphertext menjadi Plaintext kembali. Secara sederhana proses tersebut digambarkan sebagai berikut : Gambar 2.2 Proses Enkripsi – Deskripsi Adapun dasar matematis yang mendasari proses enkripsi dan deskripsi adalah relasi dua himpunan yaitu himpunan berisi elemen plaintext dan himpunan berisi elemen ciphertext. B. Schneier, 1996. Adapun tujuan dari adanya enkripsi adalah untuk meningkatkan keamanan data tetapi juga berfungsi untuk : 1. Melindungi data agar tidak dapat dibaca oleh orang-orang yang tidak berhak. 2. Mencegah agar orang-orang yang tidak berhak, menyisipkan atau mengahapus data. a Plainteks teks b Cipherteks dari a Gambar 2.3 Contoh plainteks dan cipherteks.

2.1.4.2 Peserta Komunikasi

a. Entitas atau peserta adalah orang atau sesuatu yang mengirim, menerima, atau memanipulasi informasi. Entitas bisa berupa orang, terminal komputer, kartu kredit, dan sebagainya. Jadi, orang bisa bertukar pesan dengan orang lainnya contoh: Alice berkomunikasi dengan Bob sedangkan di dalam jaringan komputer, mesin komputer berkomunikasi dengan mesin contoh: mesin ATM berkomunikasi dengan komputer server di bank. b. Pengirim adalah entitas dalam komunikasi yang mengirimkan informasi kepada entitas lainnya lainnya. c. Penerima adalah entitas dalam komunikasi yang diharapkan menerima informasi. d. Penyusup adversary adalah entitas diluar pengirim dan penerima yang mencoba untuk membobol keamanan informasi. Penyusup biasanya bertindak seolah-olah sebagai pengirim yang sah ataupun penerima yang sah. Adapun keterangan tersebut dapat dilihat pada gambar berikut : Gambar 2.4 Skema komunikasi dengan proses enkripsi

2.1.4.3 Kriptologi

Kriptologi berasal dari bahasa Yunani, “kryptós” yang berarti “tersembunyi” dan “lógos” yang berarti “kata”. Jadi, kriptologi dapat diartikan sebagai frase kata yang tersembunyi Oppliger, 2005. Kriptologi dapt juga diartikan sebagai seni dan ilmu untuk membuat dan memecahkan kode rahasia. Kriptologi dibagi menjadi kriptografi seni dan ilmu membuat kode rahasia, kriptanalisis ilmu dan seni untuk memecahkan chiperteks menjadi plainteks tanpa mengetahui kunci yang digunakan dan steganografi metoda menyembunyikan pesan atau data lainnya Oppliger, 2005. Pelaku kriptanalisis disebut kriptanalis. Jika seorang kriptografer cryptographer mentransformasikan plainteks menjadi cipherteks dengan suatu algoritma dan kunci maka sebaliknya seorang kriptanalis berusaha untuk memecahkan cipherteks tersebut untuk menemukan plainteks atau kunci. Gambar 2.5. Hubungan kriptografi, kriptanalisis dan steganografi

2.1.4.4 Algoritma Kriptografi

Berdasarkan kunci yang dipakai algoritma kriptografi dapat dibedakan menjadi 2 golongan yaitu algoritma kriptografi simetris dan asimetris.

1. Algoritma Simetri

Algoritma kriptografi simetris maksudnya adalah proses enkripsi dan dekripsi dilakukan dengan memakai 1 key yang sama. Istilah lain untuk kriptografi kunci- simetri adalah kriptografi kunci privat private-key cryptography, kriptografi kunci rahasia secret-key cryptography, atau kriptografi konvensional conventional cryptography. Sistem kriptografi kunci-simetri atau disingkat menjadi “kriptografi simetri” saja, mengasumsikan pengirim dan penerima pesan sudah berbagi kunci yang sama sebelum bertukar pesan. Keamanan sistem kriptografi simetri terletak pada kerahasiaan kuncinya. Jadi, pembuat pesan dan penerimanya harus memiliki kunci yang sama persis. Sehingga siapapun yang memiliki kunci tersebut termasuk pihak – pihak yang tidak diinginkan dapat membuat dan membongkar rahasia cipherteks. Berikut ini adalah gambaran proses enkripsi dan deskripsi menggunakan algoritma simetri : Gambar 2.6 Proses Enkripsi – Deskripsi Menggunakan Algoritma Simetri Contoh algoritma kriptografi simetris yang terkenal diantaranya adalah TEA, DES, Blowfish, IDEA, RC4, dan lain sebagainya. Salah satu kelemahan algoritma ini adalah permasalahan distribusi kunci key distribution. Algoritma kriptografi simeteris dibagi menajdi 2 kategori yaitu algoritma aliran Stream Ciphers dan algoritma blok Block Cipher. Pada algoritma aliran, proses penyandiannya berorientasi pada satu bit atau satu byte data. Sedang pada algoritma blok, proses penyandiannya berorientasi pada sekumpulan bit atau byte data per blok. Kelebihan kriptografi simetri: 1. Algoritma kriptografi simetri dirancang sehingga proses enkripsidekripsi membutuhkan waktu yang singkat. 2. Ukuran kunci simetri relatif pendek. 3. Algoritma kriptografi simetri dapat digunakan untuk membangkitkan bilangan acak. 4. Algorima kriptografi simetri dapat disusun untuk menghasilkan cipher yang lebih kuat. 5. Otentikasi pengirim pesan langsung diketahui dari cipherteks yang diterima, karena kunci hanya diketahui oleh pengirim dan penerima pesan saja. Kelemahan kriptografi simetri: 1. Kunci simetri harus dikirim melalui saluran yang aman. Kedua entitas yang berkomunikasi harus menjaga kerahasisan kunci ini. 2. Kunci harus sering diubah, mungkin pada setiap sesi komunikasi.

2. Algoritma Asimetri

Pada kriptografi asimetris masing-masing pihak yang berkepentingan memiliki 2 key, yaitu secrete private key SK dan public key PK. Nama lainnya adalah kriptografi kunci-publik public-key cryptography. SK harus tetap disimpan dan dijaga kerahasiaannya dengan tidak pernah mengirimkannya melalui jalur pengiriman data. Sedangkan PK turut dikirimkan ke pihak penerima data. Perpaduan antara SK dan PK inilah yang nantinya dipakai pada proses enkripsi dan dekripsi. Berikut adalah gambaran untuk proses enkripsi dan deskripsi yang mengggunakan algoritma asimetri : Gambar 2.7 Proses Enkripsi – Deskripsi Menggunakan Algoritma Asimetri Contoh algoritma kriptografi asimetris, atau yang juga dikenal dengan kriptografi public key, misalnya adalah RSA, DSA, ECC, dan HECC, Elgamal, Hill Cipher, dan lain sebagainya. Keuntungan dari Algoritma ini ada dua. Pertama, tidak ada kebutuhan untuk mendistribusikan kunci privat sebagaimana pada sistem kriptografi simetri. Kunci publik dapat dikirim ke penerima melalui saluran yang sama dengan saluran yang digunakan untuk mengirim pesan. Saluran untuk mengirim pesan umumnya tidak aman. Kedua, jumlah kunci dapat ditekan. Untuk berkomunikasi secara rahasia dengan banyak orang tidak perlu kunci rahasia sebanyak jumlah orang tersebut, cukup membuat dua buah kunci, yaitu kunci publik bagi para koresponden untuk mengenkripsi pesan, dan kunci privat untuk mendekripsi pesan. Berbeda dengan kriptografi kunci-simetris dimana jumlah kunci yang dibuat adalah sebanyak jumlah pihak yang diajak berkorespondensi. Kelebihan kriptografi kunci-publik asimetri: 1. Hanya kunci privat yang perlu dijaga kerahasiaannya oleh setiap entitas yang berkomuniaksi tetapi, otentikasi kunci publik tetap harus terjamin. Tidak ada kebutuhan mengirim kunci kunci privat sebagaimana pada sistem simetri. 2. Pasangan kunci publikkunci privat tidak perlu diubah, bahkan dalam periode waktu yang panjang. 3. Dapat digunakan untuk mengamankan pengiriman kunci simetri. 4. Beberapa algoritma kunci-publik dapat digunakan untuk memberi tanda tangan digital pada pesan. Kelemahan kriptografi kunci-publik asimetri: 1. Enkripsi dan dekripsi data umumnya lebih lambat daripada sistem simetri, karena enkripsi dan dekripsi menggunakan bilangan yang besar dan melibatkan operasi perpangkatan yang besar. 2. Ukuran cipherteks lebih besar daripada plainteks bisa dua sampai empat kali ukuran plainteks. 3. Ukuran kunci relatif lebih besar daripada ukuran kunci simetri. 4. Karena kunci publik diketahui secara luas dan dapat digunakan setiap orang, maka cipherteks tidak memberikan informasi mengenai otentikasi pengirim. 5. Tidak ada algoritma kunci-publik yang terbukti aman sama seperti block cipher. Kebanyakan algoritma mendasarkan keamanannya pada sulitnya memecahkan persoalan-persoalan aritmetik pemfaktoran, logaritmik, dan sebagainya yang menjadi dasar pembangkitan kunci.

2.1.4.5 Sistem Kriptografi

Sistem kriptografi adalah suatu 5- tuple P, C, K, E, D yang memenuhi kondisi sebagai berikut : 1. P adalah himpunan plainteks, 2. C adalah himpunan cipherteks, 3. K atau ruang kunci keyspace, adalah himpunan kunci, 4. E adalah himpunan fungsi enkripsi : 5. D adalah himpunan fungsi dekripsi : , 6. Untuk setiap terdapat dan . Setiap dan merupakan fungsi sedemikian hingga , untuk setiap plainteks . . Suatu sistem kriptografi merupakan sebuah himpunan algoritma, seluruh kemungkinan plainteks, cipherteks, kunci, dan proses manajemen kunci yang digunakan. Sistem kriptografi merupakan suatu fasilitas untuk mengkonversikan plainteks menjadi cipherteks, dan sebaliknya. Oppliger, 2005 .

1. Keamanan Sistem Kriptografi

Suatu sistem kriptografi dikatakan aman jika para penyusup adversary dengan kemampuan yang dimilikinya tidak dapat memecahkan atau membobol sistem tersebut. Berdasarkan kemampuan yang dimiliki penyusup, terdapat dua jenis keamanan sistem kriptografi, yaitu Oppliger, 2005 : a. Keamanan tak kondisional : jika penyusup tidak dapat membobol sistem dengan kemampuan komputer yang tidak terbatas. Keamanan ini berhubungan dengan teori informasi dan teori probabilitas. b. Keamanan kondisional : jika secara teoritis mungkin bagi penyusup untuk membobol sistem tapi secara komputasi tidaklah mungkin karena keterbatasan sumberdaya dan kemampuan penyusup untuk mengakses informasi. Kemanan ini berhubungan dengan teori kompleksitas. Sistem kriptografi dikatakan aman bila memiliki keadaan sebagai berikut : a. Bila harga untuk membobol sistem lebih besar daripada nilai informasi yang dibuka. b. Bila waktu yang diperlukan untuk membobol sistem tersebut lebih lama daripada lamanya waktu yang diperlukan oleh informasi itu untuk tetap aman. c. Bila jumlah data yang dienkrip dengan kunci dan algoritma yang sama lebih sedikit dari jumlah data yang diperlukan untuk menembus algoritma tersebut Kurniawan, 2004. Pengamanan selalu bertolak belakang dengan kenyamanan. Semakin aman, sebuah sistem akan semakin tidak nyaman karena akan memerlukan beberapa langkah tambahan yang dirasa merepotkan. Dan semakin nyaman dan bebas, sebuah sistem menjadi semakin tidak aman.

2. Jenis-jenis Serangan

Berdasarkan keterlibatan penyerang dalam melakukan kegiatannya :

a. Serangan pasif passive attack : penyerang tidak terlibat dalam komunikasi