207257567 Eko Hari Rachmawanto Lengkap sekali

LAPORAN TUGAS AKHIR TEKNIK KEAMANAN DATA MENGGUNAKAN KRIPTOGRAFI DENGAN ALGORITMA VERNAM CHIPER DAN STEGANOGRAFI DENGAN METODE END OF FILE (EOF)

Laporan ini disusun guna memenuhi salah satu syarat untuk menyelesaikan program studi

Teknik Informatika S-1 pada Fakultas Ilmu Komputer Universitas Dian Nuswantoro Disusun oleh:

Nama

: Eko Hari Rachmawanto

NIM

: A11.2006.02767

Program Studi :

Teknik Informatika ( S-1 )

FAKULTAS ILMU KOMPUTER UNIVERSITAS DIAN NUSWANTORO SEMARANG 2010

PERSETUJUAN LAPORAN TUGAS AKHIR

Nama Pelaksana

: Eko Hari Rachmawanto

NIM

: A11.2006.02767

Program Studi

: Teknik Informatika

Fakultas

: Ilmu Komputer

Judul Tugas Akhir : Teknik Keamanan Data Menggunakan Kriptografi dengan Algoritma Vernam Chiper dan Steganografi

dengan Metode End of File (EoF)

Tugas Akhir ini telah diperiksa dan disetujui, Semarang, 14 April 2010

Menyetujui : Mengtahui : Pembimbing

Dekan Fakultas Ilmu Komputer

M. Arief Soelaeman, M. Kom Dr.Eng.Yuliman Purwanto,M.Eng

PENGESAHAN DEWAN PENGUJI

Nama

: Eko Hari Rachmawanto

NIM

: A11.2006.02767

Program Studi

: Teknik Informatika

Fakultas

: Ilmu Komputer

Judul Tugas Akhir : Teknik Keamanan Data Menggunakan Kriptografi dengan Algoritma Vernam Chiper dan Steganografi dengan Metode End of File (EoF)

Tugas akhir ini telah diujikan dan dipertahankan dihadapan Dewan Penguji pada Sidang Tugas Akhir bulan 14 April 2010. Menurut pandangan kami, tugas akhir ini memadai dari segi kualitas maupun kuantitas untuk tujuan penganugrahan gelar Sarjana Komputer (S. Kom)

Semarang, 14 April 2010 Dewan Penguji

Slamet Sudaryanto, M.Kom Edi Faisal, M.Kom Anggota

Anggota

Agus Winarno, M.Kom Ketua Penguji

PERNYATAAN KEASLIAN TUGAS AKHIR

Sebagai mahasiswa Universitas Dian Nuswantoro, yang bertanda tangan dibawah ini, saya :

Nama

: Eko Hari Rachmawanto

NIM

: A11.2006.02767

Menyatakan bahwa karya ilmiah saya yang berjudul :

TEKNIK KEAMANAN DATA MENGGUNAKAN KRIPTOGRAFI DENGAN ALGORITMA VERNAM CHIPER DAN STEGANOGRAFI DENGAN METODE END OF FILE (EOF)

Merupakan karya asli saya (kecuali cuplikan dan ringkasan yang masing-masing telah saya jelaskan sumbernya). Apabila di kemudian hari, karya disinyalir bukan merupakan karya asli saya, yang disertai dengan bukti-bukti yang cukup, maka saya bersedia untuk dibatalkan gelar saya beserta hak dan kewajiban yang melekat pada gelar tersebut. Demikian surat pernyataan ini saya buat dengan sebenarnya.

Dibuat di : Semarang Pada tanggal : 13 April 2010

Yang menyatakan

(Eko Hari Rachmawanto)

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK KEPENTINGAN AKADEMIS

Sebagai mahasiswa Universitas Dian Nuswantoro, yang bertanda tangan dibawah ini, saya :

Nama

: Eko Hari Rachmawanto

NIM

: A11.2006.02767

Demi mengembangkan Ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Dian Nuswantoro Hak Bebas Royalti Non-Ekskusif (non-exclusif Royalti-Free Righ t) atas karya ilmiah saya yang berjudul :

TEKNIK KEAMANAN DATA MENGGUNAKAN KRIPTOGRAFI DENGAN ALGORITMA VERNAM CHIPER DAN STEGANOGRAFI DENGAN METODE END OF FILE (EOF)

beserta perangkat yang diperlukan (bila ada). Dengan Hak Bebas Royalti Non- Ekseklusif ini Universitas Dian Nuswantoro berhak untuk menyimpan, mengcopy ulang (memperbanyak), menggunakan, mengelolanya dalam bentuk pangkalan data (database), mendistribusikannya dan menampilkan/mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya selama tetap mencantumkan nama saya sebagai penulis/pencipta.

Saya bersedia untuk menanggung secara pribadi, tanpa melibatkan pihak Universitas Dian Nuswantoro, segala bentuk tuntutan hukum yang timbul atas pelanggaran Hak Cipta dalam karya ilmiah saya ini.

Demikian surat pernyataan ini saya buat dengan sebenarnya. Dibuat di : Semarang

Pada tanggal : 13 April 2010 Yang menyatakan

(Eko Hari Rachmawanto)

UCAPAN TERIMA KASIH

Dengan memanjatkan puji syukur kehadirat Allah, Tuhan yang Maha Pengasih dan Maha Penyayang yang telah melimpahkan segala rahmat-Nya kepada penulis sehingga laporan Tugas Akhir dengan judul “Teknik Keamanan Data Menggunakan Kriptografi dengan Algoritma Vernam Chiper dan Steganografi dengan Metode End of File (EoF) ” dapat penulis selesaikan sesuai dengan rencana karena dukungan dari berbagai pihak yang tidak ternilai besarnya. Oleh karena itu penulis menyampaikan terima kasih kepada :

1. Dr. Ir. Edi Noersasongko, M.Kom, selaku Rektor Universitas Dian Nuswantoro Semarang.

2. Dr.Eng.Yuliman Purwanto,M.Eng, selaku Dekan Fakultas Ilmu Komputer Universitas Dian Nuswantoro Semarang.

3. Ayu Pertiwi, S. Kom.,M.T, selaku Ka.Progdi Teknik Informatika

4. M. Arief Soelaeman, M.Kom, selaku pembimbing tugas akhir yang memberikan semangat, dukungan, membantu pemunculan ide penelitian, memberikan informasi referensi yang penulis butuhkan dan bimbingan yang berkaitan dengan penelitian penulis.

5. Dosen-dosen pengampu pada Fakultas Ilmu Komputer Teknik Informatika Universitas Dian Nuswantoro Semarang yang telah memberikan ilmu dan pengalamannya masing-masing, sehingga penulis dapat mengimplementasikan ilmu yang telah disampaikan.

6. Teman-teman seperjuangan angkatan 2006, yang telah memberikan semangat dan dukungan dalam penyelesaian Tugas Akhir ini.

Semoga Tuhan Yang Maha Esa memberikan balasan yang lebih besar kepada beliau-beliau, dan pada akhirnya penulis berharap bahwa penulisan laporan tugas akhir ini dapat bermanfaat dan berguna sebagaimana fungsinya.

Semarang, April 2010 Penulis

ABSTRAK

Seiring dengan perkembangan zaman, kebutuhan manusia meningkat, terutama kebutuhan akan informasi. Oleh sebab itu, pengiriman dan penyimpanan data memerlukan suatu proses yang mampu menjamin keamanan dan keutuhan dari data tersebut.

Untuk menjamin keamanan dan keutuhan dari suatu data, dibutuhkan suatu proses penyandian. Enkripsi dilakukan ketika data akan dikirim. Proses ini akan mengubah suatu data asal menjadi data rahasia yang tidak dapat dibaca. Sementara itu, proses dekripsi dilakukan oleh penerima data yang dikirim tersebut. Data rahasia yang diterima akan diubah kembali menjadi data asal.

Dengan cara penyandian tadi, data asli tidak akan terbaca oleh pihak yang tidak berkepentingan, melainkan hanya oleh penerima yang memiliki kunci dekripsi . Didorong oleh kegunaan yang penting tadi, teknik (algoritma) penyandian telah berkembang sejak zaman dahulu kala. Mulai dari era sebelum masehi, hingga sekarang algoritma penyandian ini selalu berkembang.

File merupakan salah satu media yang digunakan sebagai penympanan data pada era komputer sekarang ini. Banyak orang mengirim atau menerima file sebagai komunikasi jarak jauh.

Salah satu usaha untuk mengamankan file yaitu dengan mengimplementasikan kriptografi untuk penyandian data, contohnya adalah algoritma Vernam Cipher. Sebagai contoh sistem kriptografi simetri, algoritma ini cukup mampu untuk mengamankan informasi termasuk file. Sehingga algoritma ini dapat digunakan untuk mengamankan file.

Dalam hal ketajaman dalam keamanan, diperlukan teknik penyembunyian file ke dalam file lain yang sering kita sebut dengan steganografi. Hal ini untuk mengurangi kecurigaan pihak yang tidak berkepentingan untuk mengolah file. Pada hal ini digunakan teknik penyembunyian file dengan metode End of File supaya tidak terlihat secara jelas.

Dengan berdasar pada algoritma Vernam Cipher dan End of File, maka dibuatlah program aplikasi kriptosistem yang digunakan untuk melakukan pengamanan file sehingga hanya orang-orang tertentu saja yang dapat mengolah file.

Kata kunci: file, penyandian, kriptosistem, steganografi, algoritma, Vernam Cipher, End of File .

xiii + 83 halaman + 42 gambar + 9 tabel

BAB I PENDAHULUAN

1.1 Latar Belakang

Teknologi komunikasi dan informasi berkembang dengan pesat dan memberikan pengaruh besar bagi kehidupan manusia. Seiring dengan perkembangan teknologi sekarang ini yang semakin pesat maka proses pengiriman data dapat dilakukan dengan mudah dan melalui berbagai macam media yang telah ada antara lain, melalui media internet dengan menggunakan fasilitas e-mail, melalui transfer data antar perangkat mobile (handphone, PDA dan flashdisk) maupun dengan teknologi radio frequency (bluethooth, IrDA, GPRS) hingga dengan menggunakan jaringan komputer. [1]

Perkembangan yang pesat dalam proses pengiriman data membawa dampak yang besar, yaitu masalah keamanan data yang di kirim. Untuk itu, tidak mungkin mengirim data melalui media-media tersebut secara polos (plain), melainkan harus dilakukan proses pengamanan untuk data yang akan di kirim, salah satunya dilakukan dengan cara melakukan enkripsi pada sebuah file.

Kriptografi dapat menjadi jawaban dari masalah tersebut. Sebagai ilmu yang telah diaplikasikan untuk pengamanan data, kriptografi dapat

digunakan untuk mengamankan data-data penting pada sebuah file. Data yang terkandung dalam file disandikan atau dienkripsi untuk diubah menjadi simbol tertentu sehingga hanya orang tertentu saja yang dapat mengetahui isi dari data tersebut.

Dalam perkembangan ilmu kritografi masa sekarang ini, telah banyak tercipta algoritma-algoritma yang dapat digunakan untuk mengubah data asli (plain text) menjadi simbol tertentu (chiper text). Salah satu contohnya adalah algoritma Vernam Chiper. Algoritma ini termasuk Dalam perkembangan ilmu kritografi masa sekarang ini, telah banyak tercipta algoritma-algoritma yang dapat digunakan untuk mengubah data asli (plain text) menjadi simbol tertentu (chiper text). Salah satu contohnya adalah algoritma Vernam Chiper. Algoritma ini termasuk

Namun pada era sekarang ini masih di rasa kurang dalam pengamanan data menggunakan kriptografi. Setelah file tersebut di enkripsi , kita perlu melakukan penyembunyian file ke dalam file lain supaya pihak yang bukan berkepentingan tidak begitu curiga dalam melihat file tersebut. Langkah seperti ini sering disebut dengan Steganografi .

Steganografi merupakan salah satu cara yang sangat efektif untuk mengurangi rasa curiga dari pihak-pihak lain (selain pengirim dan penerima yang sah). Kebanyakan algoritma steganografi menggunakan sebuah kombinasi dari bidang jenis teknik untuk melakukan sebuah tugas dalam penyelubungan pesan rahasia dalam sebuah selubung file.

Dalam perkembangan ilmu steganografi sekarang ini, terdapat berbagai macam metode yang dapat digunakan untuk menyembunyikan file tersebut. Salah satu contohnya adalah metode End of File (EoF).

Ada sedikit perbedaan antara steganografi dengan kriptografi. Pada steganografi, penyembunyian atau penyamaran pesan ini dibuat sedemikian rupa sehingga pihak lain tidak mengetahui bahwa ada pesan lain di dalam pesan yang dikirim. Pesan inti tersebut tetap dipertahankan, hanya dalam penyampaiannya dikaburkan atau disembunyikan dengan berbagai cara. Hanya pihak penerima yang sah saja yang dapat mengetahui pesan lain tersebut.

Sedang pada kriptografi, karakter pesan diubah atau diacak menjadi bentuk lain yang tidak bermakna. Pesan yang disampaikan dalam kriptografi menjadi mencurigakan karena ketidakbermaknaannya tersebut. Sedang pesan dalam steganografi, terlihat seperti pesan biasa sehingga kecil kemungkinan untuk dicurigai. Namun demikian, bukan berarti tidak ada kekurangan pada steganografi ini. Kelemahan pada steganografi ini terjadi apabila kita mengubah format pesan yang dikirimkan, maka pesan rahasianyapun menjadi hilang.

Ada persamaan diantara steganografi dan kriptografi ini yaitu keduanya digunakan secara bersamaan untuk menjamin keamanan pesan rahasianya.

Berdasar pada analisa dari masalah tersebut, maka penulis mengusulkan judul penelitian “Teknik Keamanan Data Menggunakan Kriptografi dengan Algoritma Vernam Chiper dan Steganografi dengan

Metode End of File (EoF) ” sebagai bahan pertimbangan dalam proses pengamanan data sehingga diharapkan tidak terjadi pencurian atau penyadapan data.

1.2 Rumusan Masalah

Rumusan masalah yang muncul dari latar belakang yang telah di sajikan di atas adalah sebagai berikut :

1. Bagaimana efek perubahan file antara sebelum dan sesudah proses ?

2. Bagaimana pengaruh ukuran data terhadap ukuran media file ?

1.3 Batasan Masalah

Dalam penelitian ini, agar tidak menyimpang dari maksud dan tujuan dari penyusunan tugas akhir ini, maka penulis menitikberatkan pada cara implementasi dari algoritma Vernam Chiper pada Kriptografi ditambahkan metode End of File pada Steganografi. Aplikasi yang dihasilkan hanya digunakan untuk membantu menggambarkan proses enkripsi kemudian di sisipkan pada file lain dan dekripsi untuk pengamanan file. Adapun aplikasi tersebut dibangun dengan menggunakan software Microsoft Visual Basic 6.0.

1.4 Tujuan Penelitian

Tujuan dari penelitian ini adalah untuk mengamati perubahan file yang terbentuk dari sebelum dan sesudah diproses serta mengetahui pengaruh ukuran file terhadap ukuran media file yang terbentuk sehingga akan menghasilkan sebuah perangkat lunak yang dapat Tujuan dari penelitian ini adalah untuk mengamati perubahan file yang terbentuk dari sebelum dan sesudah diproses serta mengetahui pengaruh ukuran file terhadap ukuran media file yang terbentuk sehingga akan menghasilkan sebuah perangkat lunak yang dapat

1.5 Manfaat Penelitian

Manfaat yang diperoleh dalam penelitian ini adalah :

1. Manfaat bagi Universitas Sebagai usaha untuk mengamankan sebuah file yang merupakan data penting dimana hanya orang tertentu saja yang berhak mengetahui.

2. Manfaat bagi Akademik Sebagai bahan acuan bagi akademik untuk dijadikan tolak ukur pemahaman dan penguasaan tentang teori yang telah diberikan di bangku kuliah.

3. Manfaat bagi Penulis

a. Penulis dapat menerapkan ilmu yang telah diperoleh selama kuliah.

b. Memberi bekal pengetahuan yang dapat dipergunakan untuk persiapan dalam menghadapi kerja di masa yang akan datang.

BAB II TINJAUAN PUSTAKA

2.1 Data dan Informasi Data adalah sesuatu yang belum mempunyai arti bagi penerimanya dan masih memerlukan adanya suatu pengolahan. Data bisa berwujud suatu keadaan, gambar, suara, huruf, angka, matematika, bahasa ataupun simbol-simbol lainnya yang bisa kita gunakan sebagai bahan untuk melihat lingkungan, objek, kejadian ataupun suatu konsep. [2]

Data merupakan besaran yang menyampaikan suatu arti. Data komputer disimpan sebagai barisan muatan (listrik) yang diatur dalam satu pola sehingga merepresentasikan sebuah informasi. Dengan kata lain data menunjuk pada bentuk informasi (pola elektris). Data bukan merupakan informasi itu sendiri.

Sedang informasi merupakan hasil pengolahan dari sebuah model, formasi, organisasi ataupun suatu perubahan bentuk dari data yang memiliki nilai tertentu dan bisa digunakan untuk menambah pengetahuan bagi yang menerimanya. Informasi juga bisa disebut sebagai hasil pengolahan atau pemrosesan data.

2.2 Pengertian File File atau Berkas adalah sekumpulan data (informasi) yang berhubungan yang diberi nama dan tersimpan di dalam media penyimpanan sekunder (secondary storage). File memiliki ekstensi. Ekstensi berkas merupakan penandaan jenis berkas lewat nama berkas. Ekstensi biasanya ditulis setelah nama berkas dipisahkan dengan sebuah tanda titik. Pada sistem yang lama (MS-DOS) ekstensi hanya diperbolehkan maksimal 3 huruf, contohnya : exe, bat, com, txt. Batasan itu dihilangkan pada sistem yang lebih baru (Windows), contohnya : mpeg, 2.2 Pengertian File File atau Berkas adalah sekumpulan data (informasi) yang berhubungan yang diberi nama dan tersimpan di dalam media penyimpanan sekunder (secondary storage). File memiliki ekstensi. Ekstensi berkas merupakan penandaan jenis berkas lewat nama berkas. Ekstensi biasanya ditulis setelah nama berkas dipisahkan dengan sebuah tanda titik. Pada sistem yang lama (MS-DOS) ekstensi hanya diperbolehkan maksimal 3 huruf, contohnya : exe, bat, com, txt. Batasan itu dihilangkan pada sistem yang lebih baru (Windows), contohnya : mpeg,

Struktur pada file terdiri dari 2 bagian yaitu header file dan isi file. Pada header file terdapat kode biner maupun kode ASCII yang berisikan tentang fungsi utama pada file. Pada isi file terdapat isi dari file yang telah terbentuk baik berupa text, lagu, video, dll. Di bawah ini merupakan gambar struktur file yang ada pada semua file.[3]

Gambar 2.1 : Struktur File

2.3 Kode ASCII Beberapa aplikasi menggunakan data yang bukan hanya bilangan tetapi juga huruf dari alfabet dan karakter khusus lainnya. Data semacam ini disebut dengan data alfanumerik dan mungkin dapat ditunjukkan dengan kode numerik. Jika bilangan-bilangan dimasukkan dalam data, maka bilangan-bilangan tersebut juga dapat ditunjukkan dengan kode khusus.

Set karakter alfanumerik secara khusus mencakup 26 huruf alfabet (termasuk huruf besar dan huruf kecil), angka dalam digit sepuluh desimal, dan sejumlah simbol seperti + , =, *, $, …, dan !. Dua kode alfabet yang paling umum dipakai adalah ASCII (American Standard Code for Information Interchange) dan EBCDIC (Extended Binary Coded Decimal Interchange Code). ASCII merupakan kode 7-bit dan EBCDIC berupa kode 8- bit. Jika suatu komputer menangani 8-bit (1-byte) kode lebih efisien, versi 8-bit, disebut dengan ASCII-8 juga telah dikembangkan.

Sistem American Standard Code for Information Interchange (ASCII): ASCII dan EBCDIC merupakan cikal bakal dari set karakter lainnya. ASCII merupakan set karakter yang paling umum digunakan hingga sekarang. Set karakter ASCII terdiri dari 128 – (27) buah karakter yang masing-masing memiliki lebar 7-bit atau gabungan tujuh angka 0 dan

1, dari 0000000 sampai dengan 1111111. Mengapa 7-bit? Karena komputer pada awalnya memiliki ukuran memori yang sangat terbatas, dan 128 karakter dianggap memadai untuk menampung semua huruf Latin dengan tanda bacanya, dan beberapa karakter kontrol. ASCII telah dibakukan oleh ANSI (American National Standards Institute) menjadi standar ANSI X3.4-1986. Adapun kode-kode pada sistem-sistem tersebut di atas dapat dilihat pada tabel di bawah ini:

Tabel 2.1 : Kode ASCII [2]

Des Hex Biner ASCII Des Hex Biner

ASCII

0 0 00000000 null

10 A 00001010 ╽

8A 10001010 è

11 B 00001011 ☾

8B 10001011 ï

12 C 00001100 ☽

8C 10001100 î

13 D 00001101 ♃

8D 10001101 ì

14 E 00001110 ♄

8E 10001110 Ä

15 F 00001111 ☼

8F 10001111 Å

9E 10011110 Pt

42 2A 00101010 * 170 AA 10101010 ¬

45 2D 00101101 - 173 AD 10101101

46 2E 00101110 .

AE 10101110 «

47 2F 00101111 /

AF 10101111 »

B0 10110000 ╲

B1 10110001 ╳

B2 10110010 ╴

B3 10110011 |

B4 10110100 ┤

B5 10110101 ╡

B6 10110110 ╢

B7 10110111 ╖

B8 10111000 ╕

B9 10111001 ╣

74 4A 01001010 J

CA 11001010 ╩

75 4B 01001011 K

CB 11001011 ╦

76 4C 01001100 L

CC 11001100 ╠

77 4D 01001101 M

CD 11001101 ═

78 4E 01001110 N

CE 11001110 ╬

79 4F 01001111 O

90 5A 01011010 Z 218 DA 11011010 ┌

93 5D 01011101 ] 221 DD 11011101 ╰

94 5E 01011110 ^

DE 11011110 ╱

95 5F 01011111 _

DF 11011111 ╭

E0 11100000 Α

6A 01101010 j

EB 11101011 Ό 108

6B 01101011 k

EC 11101100 ∞ 109

6C 01101100 l

ED 11101101 Ф 110

6D 01101101 m

EE 11101110 Є 111

6E 01101110 n

EF 11101111  112

6F 01101111 o

7A 01111010 z

FC 11111100 N 125

FF 11111111 blank

2.4 Operator Logika Operator logika adalah simbol-simbol yang digunakan untuk melakukan ekspresi terhadap data-data logika. Proses operasi tersebut akan menghasilkan salah satu dari dua jenis nilai kebenaran yaitu TRUE 2.4 Operator Logika Operator logika adalah simbol-simbol yang digunakan untuk melakukan ekspresi terhadap data-data logika. Proses operasi tersebut akan menghasilkan salah satu dari dua jenis nilai kebenaran yaitu TRUE

Tabel 2.2 : Tabel Operator Logika

Exclusive Or

2.4.1 Operator XOR (Exclusive Or) Operator biner XOR banyak digunakan dalam perhitungan biner untuk algoritma kriptografi tertentu. Notasi matematis untuk operator XOR adalah . Operator XOR merupakan operator yang digunakan untuk dua buah ekspresi. Operator XOR akan menghasilkan nilai true atau

1 jika kedua ekpresi memiliki nilai yang berbeda. Operator xor akan menghasilkan nilai 0 atau 0 jika kedua espresi bernilai sama.

Tabel 2.3 : Tabel Nilai Kebenaran Operator XOR

Ekspresi1

Ekspresi2

Ekspresi 1 XOr Ekspresi2

2.5 Kriptografi

2.5.1 Gambaran Umum Kriptografi Kriptografi merupakan sebuah ilmu yang digunakan untuk penyandian data. Kriptografi telah dikenal dan dipakai cukup lama sejak kurang lebih tahun 1900 sebelum masehi pada prasasti-prasasti kuburan.

Ilmu Kriptografi sebenarnya sudah mulai dipelajari manusia sejak tahun 400 SM, yaitu pada zaman Yunani kuno. Dari catatan bahwa “Penyandian Transposisi” merupakan sistem kriptografi pertama yang digunakan atau dimanfaatkan. Bidang ilmu ini terus berkembang seiring dengan kemajuan peradaban manusia, dan memegang peranan penting dalam strategi peperangan yang terjadi dalam sejarah manusia, mulai dari sistem kriptografi “Caesar Chiper” ang terkenal pada zaman Romawi kuno, “Playfair Cipher” yang digunakan Inggris dan “ADFVGX Cipher” yang digunakan Jerman pada Perang Dunia I hingga algoritma-algoritma kriptografi rotor yang populer pada Perang Dunia II , seperti Sigaba / M- 134 (Amerika Serikat), Typex ( Inggris ), Purple (Jepang), dan mesin kriptografi legendaris Enigma (Jerman). Sejarah telah dipenuhi oleh contoh-contoh orang yang berusaha merahasiakan informasi rahasia mereka dari orang lain.

Seiring dengan perkembangan zaman, kebutuhan akan metode yang lebih canggih tidak dapat dihindari. Sekarang, dengan adanya era informasi, kebutuhan itu menjadi lebih penting lagi. Dengan adanya fasilitas internet, maka permintaan akan pelayanan informasi semakin meningkat dengan seiringnya perkembangan teknologi. Pertukaran data yang sensitif seperti nomor account kartu kredit, sudah sering dilakukan dan menjadi hal yang biasa di dalam dunia internet. Karena itu, melindungi data sudah menjadi hal penting yang sangat kruisal di dalam hidup.

Ada tiga istilah yang berkaitan dengan proteksi data yaitu kriptografi, kriptologi, dan kriptanalisis. Arti ketiganya kurang lebih sama. Secara teknis, kriptologi adalah ilmu yang mempelajari tentang komunikasi pada jalur yang tidak aman beserta masalah-masalah yang berhubungan dengan itu.

Kriptografi berasal dari kata “Crypto” yang berarti rahasia dan “graphy” yang berarti tulisan. Jadi, dapat dikatakan bahwa kriptografi adalah tulisan yang tersembunyi. Dengan adanya tulisan yang tersembunyi Kriptografi berasal dari kata “Crypto” yang berarti rahasia dan “graphy” yang berarti tulisan. Jadi, dapat dikatakan bahwa kriptografi adalah tulisan yang tersembunyi. Dengan adanya tulisan yang tersembunyi

Kriptografi berbasis pada algoritma pengkodean data informasi yang mendukung kebutuhan dari dua aspek keamanan informasi, yaitu secrecy (perlindungan terhadap kerahasiaan data informasi) dan authenticity (perlindungan terhadap pemalsuan dan pengubahan informasi yang tidak diinginkan.

Kriptografi menjadi dasar bagi keamanan komputer dan jaringan karena merupakan sarana bagi distribusi data dan informasi. Sehingga data dan informasi tersebut harus diamankan agar hanya orang-orang yang berhak mengaksesnya yang dapat mengetahui maupun menggunakan data tersebut. Salah satu cara yang paling banyak digunakan dalam mengamankan data adalah dengan kriptografi. Data-data tersebut diamankan dengan sedemikian rupa oleh pengirim sehingga orang lain tidak dapat mengenali data tersebut.

Pembakuan penulisan pada kriptografi dapat ditulis dalam bahasa matematika. Fungsi-fungsi yang mendasar dalam kriptografi adalah enkripsi dan dekripsi. Enkripsi adalah proses mengubah suatu pesan asli (plaintext) menjadi suatu pesan dalam bahasa sandi (ciphertext).

C = E (M), dimana : M= pesan asli E= proses enkripsi C= pesan dalam bahasa sandi (untuk ringkasnya disebut sandi)

Sedangkan dekripsi adalah proses mengubah pesan dalam suatu bahasa sandi menjadi pesan asli kembali. M = D (C)

D = proses dekripsi

Umumnya, selain menggunakan fungsi tertentu dalam melakukan enkripsi dan dekripsi, seringkali fungsi itu diberi parameter tambahan yang disebut dengan istilah kunci.

2.5.2 Tujuan Kriptografi Dalam teknologi informasi, telah dan sedang dikembangkan cara untuk menangkal berbagai bentuk serangan semacam penyadapan dan pengubahan data yang dikirimkan. Salah satu cara yang ditempuh mengatasi masalah ini ialah dengan menggunakan kriptografi yang menggunakan transformasi data sehingga data yang dihasilkan tidak dapat dimengerti oleh pihak yang tidak berhak mengakses.

Transformasi ini memberikan solusi pada dua macam masalah keamanan data, yaitu masalah privasi (privacy) dan keotentikan (authenticatioan). Privaci mengandung arti bahwa data yang dikirimkan hanya dapat dimengerti informasinya oleh penerima yang sah atau berhak. Sedangkan keotentikan mencegah pihak ketiga untuk mengirimkan data yang salah atau mengubah data yang dikirimkan.

Kriptografi yang baik tidak ditentukan oleh kerumitan dalam mengolah data atau pesan yang akan disampaikan. Ada 4 syarat yang perlu dipenuhi, yaitu:

a. Kerahasiaan. Pesan (plaintext) hanya dapat dibaca oleh pihak yang memliki kewenangan.

b. Autentikasi. Pengirim pesan harus dapat diidentifikasi dengan pasti, penyusup harus dipastikan tidak bisa berpura-pura menjadi orang lain.

c. Integritas. Penerima pesan harus dapat memastikan bahwa pesan yang dia terima tidak dimodifikasi saat dalam proses transmisi data.

d. Non-Repudiation. Pengirim pesan harus tidak bisa menyangkal pesan yang dia kirimkan.

2.6 Pola-pola Penyerangan Data Proteksi data dan informasi dalam komunikasi komputer menjadi penting karena nilai informasi itu sendiri dan meningkatnya penggunaan komputer di berbagai sektor. Melihat kenyataan semakin banyak data yang diproses dengan komputer dan dikirim melalui perangkat komunikasi elektronik maka ancaman terhadap pengamanan data akan semakin meningkat. Beberapa pola ancaman terhadap komunikasi data dalam komputer dapat diterangkan sebagai berikut [5]:

a. Interruption

Interception terjadi bila data yang dikirimkan dari A tidak sampai pada orang yang berhak B. Interruption merupakan pola penyerangan terhadap sifat availability (ketersediaan data).

b. Interception

Serangan ini terjadi bila pihak ketiga C berhasil membaca data yang dikirimkan. Interception merupakan pola penyerangan terhadap sifat confidentiality (kerahasiaan data).

c. Modification

Pada serangan ini pihak ketiga C berhasil merubah pesan yang dikirimkan. Modification merupakan pola penyerangan terhadap sifat integrity (keaslian) data.

d. Fabrication

Pada serangan ini, penyerang berhasil mengirimkan data ke tujuan dengan memanfaatkan identitas orang lain. Fabrication merupakan pola penyerangan terhadap sifat authenticity.

Ancaman-ancaman tersebut di atas menjadi masalah terutama dengan semakin meningkatnya komunikasi data yang bersifat rahasia seperti: pemindahan dana secara elektronik kepada dunia perbankan atau pengiriman dokumen rahasia pada instansi pemerintah. Untuk mengantisipasi ancaman-ancaman tersebut perlu dilakukan usaha untuk Ancaman-ancaman tersebut di atas menjadi masalah terutama dengan semakin meningkatnya komunikasi data yang bersifat rahasia seperti: pemindahan dana secara elektronik kepada dunia perbankan atau pengiriman dokumen rahasia pada instansi pemerintah. Untuk mengantisipasi ancaman-ancaman tersebut perlu dilakukan usaha untuk

2.7 Enkripsi dan Dekripsi Proses menyandikan plainteks menjadi chiperteks disebut enkripsi (encryption) atau enciphering (standard nama menurut ISO 7498-2) sedangkan proses mengembalikan chiperteks mejadi plainteks disebut dekripsi (decryption) atau dechiphering (standard ISO 7498-2).[6]

Enkripsi adalah transformasi data dalam bentuk yang tidak dapat terbaca dengan sebuah kunci tertentu. Tujuannya adalah untuk meyakinkan privasi dengan menyembunyikan informasi dari orang-orang yang tidak ditujukan, bahkan mereka yang memiliki akses ke data terenkripsi. Sedangkan dekripsi merupakan kebalikan dari enkripsi, yaitu transformasi data terenkripsi kembali ke bentuknya semula.

Enkripsi dilakukan pada saat pengiriman dengan cara mengubah data asli menjadi data rahasia, sedangkan dekripsi dilakukan pada saat penerimaan dengan cara mengubah data rahasia menjadi data asli. Jadi data yang dikirimkan selama proses pengiriman adalah data rahasia, sehingga data asli tidak dapat diketahui oleh pihak yang tidak berkepentingan. Data asli hanya dapat diketahui oleh penerima dengan menggunakan kunci rahasia.

Enkripsi dan dekripsi pada umumnya membutuhkan penggunaan sejumlah informasi rahasia, disebut sebagai kunci. Untuk beberapa mekanisme enkripsi, kunci yang sama digunakan baik untuk enkripsi dan dekripsi berbeda.

A Plaintext

Plaintext B

Gambar 2.2 : Skenario Komunikasi Dasar Kriptografi

Di dalam skenario komunikasi dasar, seperti yang diperlihatkan pada Gambar 2.1, terdapat dua belah pihak, sebut saja A dan B, yang ingin berkomunikasi satu sama lain.

Kemudian pihak ketiga, C, adalah seorang eavesdropper (orang yang mengakses informasi rahasia tanpa izin). Ketika A ingin mengirimkan informasi, yang disebut plaintext, kepada B, dia mengenkripsi plaintext tersebut dengan menggunakan metode yang telah dirancang oleh B. Biasanya, metode enkripsi diketahui oleh si eavesdropper , dalam hal ini adalah C. Yang membuat pesan tersebut tetap bersifat rahasia adalah key-nya. Ketika B menerima pesan yang telah dienkripsi, yang disebut dengan ciphertext, dia mengubahnya kembali menjadi plaintext dengan menggunakan key dekripsi.

2.8 Algoritma Kriptografi Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi 2.8 Algoritma Kriptografi Cryptographic system atau cryptosystem adalah suatu fasilitas untuk mengkonversikan plaintext ke ciphertext dan sebaliknya. Dalam sistem ini, seperangkat parameter yang menentukan transformasi pencipheran tertentu disebut suatu set kunci. Proses enkripsi dan dekripsi

1. Kriptosistem simetri

2. Kriptosistem asimetri

Dalam kriptosystem simetri, algoritma yang digunakan hanya membutuhkan satu kunci untuk proses enkripsi dan dekripsi. Sedang dalam kriptografi asimetri, algoritma yang digunakan membutuhkan dua kunci yang berbeda dalam proses enkripsi dan dekripsi pesan. Kriptosistem dengan menggunakan symmetric cryptography kadang disebut sebagai Secret-key cryptography merupakan bentuk kryptografi yang lebih tradisional, dimana sebuah kunci tunggal dapat digunakan untuk mengenkrip dan mendekrip pesan. Secret-key cryptography tidak hanya berkaitan dengan enkripsi tetapi juga berkaitan dengan otentikasi, disebut juga message authentication codes.

Masalah utama yang dihadapi secret-key cryptography adalah membuat pengirim dan penerima menyetujui kunci rahasia tanpa ada orang lain yang mengetahuinya. Ini membutuhkan metode dimana dua pihak dapat berkomunikasi tanpa takut akan disadap. Kelebihan secret-key cryptography dari public-key cryptography adalah lebih cepat. Teknik yang paling umum dalam secret-key cryptography adalah block ciphers, stream ciphers , dan message authentication codes. Berdasarkan

jenis kunci yang digunakannya, algoritma kriptografi dikelompokan menjadi dua bagian, yaitu :

a. Symmetric Algorithm

Symmetric algorithm atau disebut juga secret key algorithm adalah algoritma yang kunci enkripsinya dapat dihitung dari kunci dekripsi dan begitu pula sebaliknya, kunci dekripsi dapat dihitung dari kunci enkripsi.

Pada sebagian besar symmetric algorithm kunci enkripsi dan kunci dekripsi adalah sama. Symmetric algorithm memerlukan kesepakatan antara pengirim dan penerima pesan pada suatu kunci sebelum dapat berkomunikasi secara aman. Keamanan symmetric algorithm tergantung pada rahasia kunci. Pemecahan kunci berarti memungkinkan setiap orang dapat mengenkripsi dan mendekripsi pesan dengan mudah. Symmetric algorithm dapat dikelompokkan menjadi dua jenis, yaitu stream cipher dan block cipher. Stream cipher beroperasi bit per bit (atau byte per byte) pada satu waktu. Sedangkan block cipher beroperasi per kelompokkelompok bit yang disebut blok (block) pada satu waktu.

b. Asymmetric Algorithm

Asymmetric algorithm atau disebut juga public key algorithm didesain agar memudahkan dalam distribusi kunci yang digunakan untuk enkripsi dan dekripsi. Kunci dekripsi pada public key algorithm secara praktis tidak dapat dihitung dari kunci enkripsi. Algoritma ini disebut “public key” karena kunci dapat dibuat menjadi publik. Setiap orang dapat menggunakan kunci enkripsi untuk mengenkripsi pesan, tetapi hanya orang yang memiliki kunci dekripsi yang dapat mendekripsi pesan tersebut. Pada sistem ini kunci enkripsi sering disebut kunci publik (public key ), dan kunci dekripsi disebut kunci rahasia (private key).

Metode kriptosystem simetri disebut juga dengan enkripsi simetri atau enkripsi konvensional. Gambar di bawah ini mengilustrasikan kinerja dari proses enkripsi konvensional.

Gambar 2.3 : Ilutrasi Kinerja Proses Enkripsi Konvensional

Proses enkripsi terdiri dari sebuah algoritma dan sebuah kunci. Kunci adalah sebuah nilai yang terlepas dari pesan asli (plaintext) dan mengontrol algoritma yang dipakai. Penerapan algoritma akan menghasilkan output yang berbeda sesuai dengan kunci yang digunakan. Mengubah kunci berarti mengubah output dari algoritma yang dipakai.

Setelah chipertext dihasilkan, chipertext tersebut dapat diubah kembali menjad pesan asli dengan algoritma dekripsi dan dengan kunci yang sama seperti yang digunakan pada saat enkripsi.

Keamanan dari enkripsi konvensional ini terdiri dari beberapa faktor. Pertama, algoritma enkripsi harus benar-benar teruji, sehingga tidak dimungkinkan untuk mendekripsi sebuah pesan hanya dalam bentuk ciphertext. Kedua, keamanan enkripsi konvensional juga ditentukan oleh kerahasiaan kunci yang digunakan, bukan kerahasiaan algoritma yang digunakan. Jadi, kita juga harus yakin bahwa dekripsi tidak dimungkinkan hanya dengan mengetaui ciphertext dan algoritma yang digunakan tanpa mengetahui kunci yang digunakan.

Bentuk umum enkripsi konvensional dapat dilihat dari contoh berikut. User A akan mengenkripsi plaintext X=[x1,X2,…,Xm] (m elemen dari X merupakan huruf dari alphabet pesan) dengan kunci K=[K1,K2,…,Kj]. Dengan pesan X dan kunci K tersebut, akan dihasilkan

chipertext Y=[Y1,Y2,…,Yn]. Maka kita dapat menuliskan rumus :

Y=E k (X)

Selanjutnya, chipertext tersebut dikirimkan ke user B. User B akan mendekripsi chipertext tersebut agar menjadi pesan asli dengan algoritma dekripsi dan kunci yang sama seperti yang digunakan pada saat enkripsi. Hal ini dapat dirumuskan sebagai berikut:

X=D k (Y)

2.9 Algoritma Kriptografi Modern

Gambar 2.4 : Klasifikasi Kriptografi

Kriptografi dibagi dalam dua bagian, yaitu cipher modern dan klasikal. Mode klasikal biasanya menggunakan mode karakter, sehingga kemampuan dari mode ini terbatas karena keterbatasan jumlah karakter.

Sedang pada kriptografi modern, pada proses enkripsi dan dekripsi menggunakan rangkaian bit dalam bentuk biner, 0 dan 1. Rangkaian bit yang menyatakan plainteks dienkripsi menjadi ciphertext dalam bentuk rangkaian bit, begitu pula sebaliknya.

Perkembangan algoritma kriptografi modern berbasis bit didorong oleh penggunaan komputer digital yang merepresentasikan data dalam bentuk biner. Algoritma kriptografi yang beroperasi dalam mode bit dapat dikelompokkan menjadi dua kategori :

a. Cipher Aliran (Stream Cipher) Merupakan algoritma kriptografi yang beroperasi pada plaintext atau cipher text dalam bentuk bit tunggal, yang dalam hal ini rangkaian bit dienkripsikan atau didekripsikan bit per bit.Yang termasuk dalam kelompoh cipher aliran adalah algoritma vernam cipher.

b. Cipher Block(Block Cipher) Adalah algoritma kriptografi yang beroperasi pada plaintext atau ciphertext dalam bentuk blok bit, yang dalam hal ini rangkaian bit dibagi menjadi blok-blok bit, yang panjangnya sudah ditentukan b. Cipher Block(Block Cipher) Adalah algoritma kriptografi yang beroperasi pada plaintext atau ciphertext dalam bentuk blok bit, yang dalam hal ini rangkaian bit dibagi menjadi blok-blok bit, yang panjangnya sudah ditentukan

2.9.1 Algoritma Subtitusi Caesar cipher adalah cipher substitusi sederhana yang mencakup pergeseran alfabet 3 posisi ke kanan. Caesar cipher merupakan subset dari cipher polialfabetik Vigenere. Pada Caesar cipher karakter-karakter pesan dan pengulangan kunci dijumlahkan bersama, modulo 26. Dalam penjumlahan modulo 26, huruf-huruf A-Z dari alfabet masing-masing memberikan nilai 0 sampai 25.

Caesar Cipher diperkenalkan oleh Julius Caesar yang mengubah huruf-huruf dalam plaintext dengan huruf-huruf lain yang dilakukan secara konsisten.

Contoh: Plain : a b c d e f g h i j k l m n o p q r s t u v w x y z Chipper : D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

Sehingga, ketika pesan yang akan dikirim (plaintext) berbunyi “universitas” maka ditulis (ciphertext) dengan ”XQLYHUVLWDV

JXQDGDUPD”. Si Penerima pesan tentu harus mengetahui kode pembacaannya (yang diberikan oleh si Pengirim) atau ia mengotak-atik sendiri kode-kode itu.

Algoritma di atas adalah setiap huruf plaintext p, akan disubstitusi menjadi huruf ciphertext c dengan formula: C=E(3, p) = (p + 3) mod 26, atau secara umum algoritma Caesar adalah :

C = E(k, p) = (p + k) mod 26 di mana k, diambil dari rentang 0 (huruf A) sampai 25 (huruf Z). Algoritma dekripsi menjadi:

p = D(k,c) = (C – k) mod 26.

Tipe cipher ini dapat diserang menggunakan analisis frekuensi. Dalam frekuensi analisis, digunakan karakteristik frekuensi yang tampak dalam penggunaan huruf-huruf alfabet pada bahasa tertentu. Tipe cryptanalysis ini dimungkinkan karena Caesar cipher adalah monoalfabetik cipher atau cipher substitusi sederhana, dimana karakter ciphertext disubstitusi untuk setiap karakter plaintext. Serangan ini dapat diatasi dengan menggunakan substitusi polialfabetik. Substitusi polialfabetik dicapai melalui penggunaan beberapa cipher substitusi. Namun substitusi ini dapat diserang dengan penemuan periode, saat substitusi berulang kembali.

2.9.2 Algoritma Transposisi Pada cipher ini, huruf-huruf plaintext dipermutasi. Sebagai contoh, huruf-huruf plaintext A T T A C K A T D A W N dapat dipermutasi menjadi D C K A A W N A T A T T. Cipher transposisi kolumnar adalah cipher dimana plaintext ditulis secara horisontal pada kertas dan dibaca secara vertikal. Cipher transposisi dapat diserang melalui analisis frekuensi, namun cipher menyembunyikan properti statistik dari pasangan huruf-huruf, seperti IS dan TOO.

2.9.3 Book Key Cipher Cipher ini menggunakan teks dari sebuah sumber (misalnya buku) untuk mengenkripsi plaintext. Kunci, diketahui oleh pengirim dan penerima yang dimaksud, dapat berupa halaman dan jumlah baris dari teks pada buku. Teks ini adalah karakter yang sesuai untuk karakter dengan plaintext , dan penjumlahan modulo 26 dijalankan untuk memperngaruhi enkripsi. Running key cipher mengeliminasi periodisitas, namun masih dapat diserang dengan memanfaatkan redundansi pada kunci.

2.9.4 Vernam Cipher 2.9.4 Vernam Cipher

Dalam proses enkripsi,cipherteks diperoleh dengan melakukan penjumlahan modulo 2 satu bit plainteks dengan satu bit kunci, seperti terlihat pada rumus di bawah ini :

c 1 = cipher teks p1 = plainteks k1 = kunci

Sedangkan dalam proses dekripsi, untuk mendapatkan kembali plainteks, diperoleh dengan melakukan penjumlahan modulo 2 satu bit cipherteks dengan satu bit kunci :

p 1 =( c 1- k 1 ) mod 2 …… 2.2

Pada cipher aliran, bit hanya mempunya dua buah nilai, sehingga proses enkripsi hanya menyebabkan dua keadaan pada bit tersebut, yaitu berubah atau tidak berubah. Dua keadaan tersebut ditentukan oleh kunci enkripsi yang disebut dengan aliran-bit-kunci (keystream). Oleh karena Pada cipher aliran, bit hanya mempunya dua buah nilai, sehingga proses enkripsi hanya menyebabkan dua keadaan pada bit tersebut, yaitu berubah atau tidak berubah. Dua keadaan tersebut ditentukan oleh kunci enkripsi yang disebut dengan aliran-bit-kunci (keystream). Oleh karena

c 1 =p 1 XOR k 1 …… 2.3

Sedangkan pada proses pendekripsian dituliskan: p 1 =c 1 XOR k 1 …… 2.4

Dalam operator logika XOR, hasil akan T (benar) apabila salah satu dari kedua operand (tetapi tidak keduanya) bernilai T atau 1. Atau dengan kata lain, apabila diaplikasikan dalam bit maka operator XOR akan menghasilkan 1 jika dan hanya jika salah satu operand bernilai 1.

Contoh :

X: 00111010 10101011

Y: 10100100 01010101 Hasil : 10011110 11111110

Sedangkan suatu bilangan dalam biner apabila di- XOR-kan dengan dirinya sendiri akan menghasilkan 0. Contoh :

X : 01010101 10101010 Y : 01010101 10101010 Hasil :00000000 00000000

b. Proses Enkripsi dan Dekripsi Perhitungan di atas merupakan salah satu dasar dalam penerapan algoritma Vernam dalam kriptografi, yaitu suatu string yang diterjemahkan ke dalam biner dapat dienkripsikan dengan suatu kunci tertentu dan dapat pula diperoleh kembali dari pesan sandi dengan menggunakan operator XOR pada kunci yang sama.

Dalam algoritma ini, terdapat beberapa langkah untuk proses enkripsi dan dekripsi. Misalnya kita akan mengenkripsi plainteks “Vernam” dengan kunci “Cipher”. Maka langkah-langkahnya adalah :

1. Karakter-karakter yang terdapat pada plainteks dan kunci merupakan karakter ASCII. Maka, ubah plainteks dan kunci menjadi bilangan biner :

ASCII

Biner Vernam 01010110 01100101 01110010 01101110 01100001 01101101 Cipher 01000011 01101000 01101001 01110000 01100101 01110010

2. Lalu, kedua bilangan biner itu kita XOR-kan menurut persamaan 2.3 :

Plainteks : 01010110 01100101 01110010 01101110 01100001 01101101 Kunci : 01000011 01101001 01110000 01101000 01100101 01110010 Cipherteks : 00010101 00001100 00000010 00000110 00000100 00011111

Hasil dari XOR tersebut adalah : “00010101 00001100 00000010 00000110 00000100 00011111”. Rangkaian bilangan bit ini merupakan bit cipherteks dalam bentuk biner. Untuk mengetahui nilai SCII dari cipherteks tersebut, maka kita perlu konversikan rangkaian biner tersebut ke bilangan ASCII sesuai dengan tabel 2.1. Dengan berdasar pada tabel tersebut, maka dapat kita lihat bahwa rangkaian bit dari cipherteks tersebut mempunyai nilai ASCII :

Proses dekripsi dalam algoritma Vernam Cipher merupakan kebalikan dari proses enkripsi. Cipherteks dari hasil enkripsi di-XOR-kan dengan kunci yang sama. Misalnya dengan mengambil contoh sebelumnya, dimana cipherteks : “§ ☽ ☻ ☿ ♂ ╹” dan kunci : “Cipher”. Maka langkah pendekripsiannya adalah sebagai berikut :

1. Ubah karakter ASCII dari cipherteks dan kunci ke dalam rangkaian biner :

ASCII Biner

2. Lalu, kedua rangkaian biner itu kita XOR-kan dengan berdasar pada persamaan 2.4 :

Maka didapat rangkaian bit plainteks “01010110 01100101 01110010 01101110 01100001 01101101”. Dengan berdasar pada tabel 2.1, maka kita dapat mengubah rangkaian bit menjadi bilangan ASCII, yaitu menjadi : “Vernam”. Terbukti plain teks pada hasil dekripsi adalah sama dengan plainteks pada proses enkripsi.

2.10 Jenis Serangan terhadap Cipher Aliran Serangan yang dapat dilakukan oleh kriptanalis terhadap cipher aliran

adalah:

1. Known-plaintext attack Misalkan kriptanalis memiliki potongan plainteks (P) dan cipherteks (C) yang berkoresponden, maka ia dapat menemukan bagian bit-aliran- kunci (K) yang berkoresponden dengan meng-XOR-kan bit-bit plainteks dan cipherteks:

P  C = P  (P  K) = (P  P)  K = 0  K = K

2. Ciphertext-only attack Misalkan kriptanalis memiliki dua potongan cipherteks berbeda (C 1 dan C 2 ) yang dienkripsi dengan bit-aliran-kunci yang sama. Ia meng- XOR-kan kedua cipherteks tersebut dan memperoleh dua buah plainteks yang ter-XOR satu sama lain:

C 1 C 2 = (P 1  K )  (P 2  K) = (P 1 P 2 )  (K  K)

= (P 1 P 2 ) 0 1 = (P P 2 )

P 1 dan P 2 dapat diperoleh dengan mudah. Selanjutnya, XOR-kan salah satu plainteks dengan cipherteksnya untuk memperoleh bit-aliran- kunci K yang berkoresponden:

P 1 C 1 =P 1  (P 1  K) = K

Pesan dari dua serangan di atas adalah: pengguna cipher aliran harus mempunyai bit-aliran-kunci yang tidak dapat diprediksi sehingga mengetahui sebagian dari bit-aliran-kunci tidak memungkinkan kriptanalis dapat mendeduksi bagian sisanya.

2.11 Steganografi Steganografi berasal dari bahasa Yunani yaitu Steganós yang berarti menyembunyikan dan Graptos yang artinya tulisan sehingga secara keseluruhan artinya adalah tulisan yang disebunyikan. Secara umum steganografi merupakan seni atau ilmu yang digunakan untuk menyembunyikan pesan rahasia dengan segala cara sehingga selain orang yang dituju, orang lain tidak akan menyadari keberadaan dari pesan rahasia tersebut.

Kini, istilah steganografi termasuk penyembunyian data digital dalam file-file komputer. Contohnya, si pengirim mulai dengan file gambar biasa, lalu mengatur warna setiap pixel ke-100 untuk menyesuaikan suatu huruf dalam alphabet (perubahannya begitu halus sehingga tidak ada seorangpun yang menyadarinya jika ia tidak benar- benar memperhatikannya).

Pada umumnya, pesan steganografi muncul dengan rupa lain seperti gambar, artikel, daftar belanjaan, atau pesan-pesan lainnya. Pesan Pada umumnya, pesan steganografi muncul dengan rupa lain seperti gambar, artikel, daftar belanjaan, atau pesan-pesan lainnya. Pesan

Teknik steganografi meliputi banyak sekali metode komunikasi untuk menyembunyikan pesan rahasia (teks atau gambar) di dalam file-file lain yang mengandung teks, image, bahkan audio tanpa menunjukkan ciri- ciri perubahan yang nyata atau terlihat dalam kualitas dan struktur dari file semula. Metode ini termasuk tinta yang tidak tampak, microdots, pengaturan kata, tanda tangan digital, jalur tersembunyi dan komunikasi spektrum lebar.

Tujuan dari steganografi adalah merahasiakan atau menyembunyikan keberadaan dari sebuah pesan tersembunyi atau sebuah informasi. Dalam prakteknya kebanyakan diselesaikan dengan membuat perubahan tipis terhadap data digital lain yang isinya tidak akan menarik perhatian dari penyerang potensial, sebagai contoh sebuah gambar yang terlihat tidak berbahaya. Perubahan ini bergantung pada kunci (sama pada kriptografi) dan pesan untuk disembunyikan. Orang yang menerima gambar kemudian dapat menyimpulkan informasi terselubung dengan cara mengganti kunci yang benar ke dalam algoritma yang digunakan.

Pada metode steganografi cara ini sangat berguna jika digunakan pada cara steganografi komputer karena banyak format file digital yang dapat dijadikan media untuk menyembunyikan pesan. Format yang biasa digunakan diantaranya: Format image : bitmap (bmp), gif, pcx, jpeg, dll. Format audio : wav, voc, mp3, dll. Format lain : teks file, html, pdf, dll.

Kelebihan steganografi daripada kriptografi adalah pesan- pesannya tidak menarik perhatian orang lain. Pesan-pesan berkode dalam kriptografi yang tidak disembunyikan, walaupun tidak dapat dipecahkan, akan menimbulkan kecurigaan. Seringkali, steganografi dan kriptografi digunakan secara bersamaan untuk menjamin keamanan pesan rahasianya.