Home >Documents >One Time Pad Project

One Time Pad Project

Date post:11-Jun-2015
Category:
View:626 times
Download:11 times
Share this document with a friend
Transcript:

PA P E R SISTEM ONE TIME PAD

Disusun Oleh :

Paramitha (0807100773) Supapri Situmorang (0807100781) Tri Atmojo Adhi Jatmiko (0807100784)

Tingkat I Manajemen Persandian Sekolah Tinggi Sandi Negara

KATA PENGANTAR

Puji dan syukur kehadirat Allah SWT karena atas nikmat dan rahmat-Nya lah penulis dapat menyelesaikan tugas paper yang berjudul SISTEM ONE TIME PAD. Sholawat serta salam semoga tetap tercurah kepada Nabi Muhamad SAW. Tugas paper ini tidak dapat terselesaikan tanpa bantuan dan dukungan dari banyak pihak baik secara langsung maupun tidak langsung. Oleh karena itu pada kesempatan ini penulis ingin mengucapkan terima kasih kepada Bapak Prasetyo Adi selaku dosen mata kuliah Struktur Data, Algoritma dan Pemrograman serta kepada semua pihak yang telah membantu penulis dalam penyusunan paper ini. Tugas paper ini masih jauh dari sempurna, oleh karena itu penulis memohon kritik dan saran yang membangun demi kesempurnaan penulisan yang akan datang. Semoga penelitian ini bermanfaat.

Bogor,

Juli 2009

Penulis

BAB I PENDAHULUAN

1.1 Latar Belakang

Perkembangan ilmu pengetahuan dan teknologi termasuk di bidang informasi saat ini berkembang sangat cepat. Berbagai kemudahan di bidang persandian dan informasi juga telah menumbuhkan dimensi kerawanan yang baru. Oleh karena itu Kriptografi untuk mengamankan informasi menjadi sebuah kebutuhan di era informasi seperti sekarang ini. Kriptografi

(cryptography) berasal dari bahasa Yunani, terdiri dari dua suku kata yaitu kripto dan graphia. Kripto artinya menyembunyikan, sedangkan graphia artinya tulisan. Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi, seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data (Menezes, Oorschot and Vanstone, 1996). Tetapi tidak semua aspek keamanan informasi dapat diselesaikan dengan kriptografi. Kriptografi dapat pula diartikan sebagai ilmu atau seni untuk menjaga keamanan pesan. Ketika suatu pesan dikirim dari suatu tempat ke tempat lain, isi pesan tersebut mungkin dapat disadap oleh pihak lain yang tidak berhak untuk mengetahui isi pesan tersebut. Untuk menjaga pesan, maka pesan tersebut dapat diubah menjadi suatu kode yang tidak dapat dimengerti oleh pihak lain. Enkripsi adalah sebuah proses penyandian yang melakukan perubahan sebuah kode (pesan) dari yang bisa dimengerti (plainteks) menjadi sebuah kode yang tidak bisa dimengerti (cipherteks). Sedangkan proses kebalikannya untuk mengubah cipherteks menjadi plainteks disebut dekripsi. Proses enkripsi dan dekripsi memerlukan suatu mekanisme dan kunci tertentu. Kriptoanalisis (cryptanalysis) adalah kebalikan dari kriptografi, yaitu suatu ilmu untuk memecahkan mekanisme kriptografi dengan cara mendapatkan kunci dari cipherteks yang digunakan untuk mendapatkan plainteks. Kriptologi

(cryptology) adalah ilmu yang mencakup kriptografi dan kriptoanalisis. Ada empat tujuan mendasar dari kriptografi yang juga merupakan aspek keamanan informasi, yaitu: 1. Kerahasiaan, adalah aspek yang berhubungan dengan penjagaan isi informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka informasi yang telah dienkripsi. 2. Integritas data, adalah aspek yang berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihakpihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya. 3. Autentikasi, adalah aspek yang berhubungan dengan identifikasi atau pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain. 4. Non-repudiation (menolak penyangkalan), adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman suatu informasi oleh yang mengirimkan, atau harus dapat membuktikan bahwa suatu pesan berasal dari seseorang, apabila ia menyangkal mengirim informasi tersebut. Salah satu contoh sitem sandi yang bertujuan untuk mengubah plainteks menjadi chiperteks adalah system one time pad. Kami ingin menuangkan sistem tersebut kedalam sebuah aplikasi sehingga dapat digunakan dengan efektif dan efisien, tidak lagi menggunakan metode paper and pencil akan tetapi sesuai dengan perkembangan zaman yaitu dengan menggunakan bahasa pemrograman.

1.2 Tujuan

Tujuan penulis menyusun makalah ini adalah sebagai berikut : a. Sebagai sarana untuk memperluas ilmu pengetahuan dan teknologi khususnya dalam mata kuliah struktur data, algoritma dan pemrograman. b. Untuk mengetahui lebih dalam tentang sistem one time pad. c. Untuk mengetahui program aplikasi sistem one time pad.

1.3 Batasan Masalah

Penulisan makalah ini dibatasi seputar pengertian, dan program aplikasi sistem one time pad.

BAB II PEMBAHASAN

2.1 Landasan Teori

One-time pad ditemukan pada tahun 1917 oleh Major Joseph Mauborgne. Cipher ini termasuk ke dalam kelompok algoritma kriptografi simetri. One-time pad (pad = kertas bloknot) berisi barisan karakter-karakter kunci yang dibangkitkan secara acak. Aslinya, satu buah one-time pad adalah sebuah pita (tape) yang berisi barisan karakter-karakter kunci. Satu pad hanya digunakan sekali (one-time) saja untuk mengenkripsi pesan, setelah itu pad yang telah digunakan dihancurkan supaya tidak dipakai kembali untuk mengenkripsi pesan yang lain. Aturan enkripsi yang digunakan persis sama seperti pada cipher Vigenere. Pengirim pesan menggunakan setiap karakter kunci untuk mengenkripsikan satu karakter plainteks. Enkripsi dapat digambarkan sebagai penjumlahan modulo 26 dari satu karakter plainteks dengan satu karakter kunci one-time pads:

ci = (pi + ki) mod 26

yang dalam hal ini, pi : karakter plainteks ki : karakter kunci ci : karakter cipherteks

Perhatikan bahwa panjang kunci sama dengan panjang plainteks, sehingga tidak ada kebutuhan mengulang penggunaan kunci selama proses enkripsi. Setelah pengirim mengenkripsikan pesan dengan one-time pads, ia menghancurkan one-time pad tersebut (makanya disebut satu kali pakai atau one-

time). Penerima pesan menggunakan one-time pads yang sama untuk mendekripsikan karakter-karakter cipherteks menjadi karakter-karakter plainteks dengan persamaan :

pi = (ci ki ) mod 26

Contoh: Misalkan plainteks adalah

ONETIMEPAD

dan kunci one-time pad adalah

TBFRGFARFM

Nyatakan A = 0, B = 1, C = 2, , Z = 25, maka cipherteks yang dihasilkan adalah

HOJKOREGHP

yang mana diperoleh sebagai berikut:

(O + T) mod 26 = H (N + B) mod 26 = O (E + F) mod 26 = J dst

Sistem cipher one-time pads ini tidak dapat dipecahkan karena : 1. Barisan kunci acak yang ditambahkan ke pesan plainteks yang tidak acak menghasilkan cipherteks yang seluruhnya acak. 2. Beberapa barisan kunci yang digunakan untuk mendekripsi cipherteks mungkin menghasilkan pesan-pesan plainteks yang

mempunyai makna, sehingga kriptanalis tidak punya cara untuk menentukan plainteks mana yang benar. Contoh: Misalkan kriptanalis mencoba barisan kunci

LMCCAWAAZD

untuk mendekripsi cipherteks pada contoh sebelumnya,

HOJKOREGHP

Plainteks yang dihasilkan adalah

SALMONEGGS

Bila ia mencoba barisan kunci

ZDVUZOEYEO

maka plainteks yang dihasilkan adalah

GREENFIELD

Dua plainteks yang mempunyai makna ini membingungkan kriptanalis untuk memilih mana yang benar.

Meskipun one-time pad merupakan cipher yang sempurna aman, namun faktanya ia tidak diguanakan secara universal dalam aplikasi kriptografi sebagai satu-satunya sistem cipher yang tidak dapat dipecahkan (hanya sedikit sistem komunikasi yang menggunakan one-time pad). Malahan orang masih tetap menggunakan sistem cipher yang dapat dipecahkan.

Alasannya adalah dari segi kepraktisan, yaitu : 1. Karena panjang kunci harus sama dengan panjang pesan, maka one-time pad hanya cocok untuk pesan berukuran kecil. Semakin besar ukuran pesan, semakin besar pula ukuran kunci. Pada aplikasi kriptografi untuk mengenkripsikan data tersimpan, timbul masalah lain dalam penyimpanan kunci. 2. Karena kunci dibangkitkan secara acak, maka tidak mungkin pengirim dan penerima membangkitkan kunci yang sama secara simultan. Jadi, salah seorang dari mereka harus membangkitkan kunci lalu mengirimkannya ke pihak lain.

Karena kerahasiaan kunci harus dijamin, maka perlu ada perlindungan selama pengiriman kunci. Jika hanya ada satu saluran komunikasi, maka pengirim dan penerima pesan perlu barisan kunci one-time pad lain untuk melindungi kunci one-time pad pertama, one-time pad ketiga untuk melindungi one-time pad pertama, dan seterusnya. Hal ini menghasilkan kumpulan barisan kunci one-time pad yang tidak berhingga banyaknya. Mengirimkan barisan kunci melalui saluran komunikasi yang digunakan untuk pengiriman pesan juga tidak praktis karena pertimbangan lalu lintas (traffic) pesan yang padat. Oleh karena itu, one-time pad hanya dapat digunakan jika tersedia saluran komunikasi kedua yang cukup aman untuk mengirim kunci. Saluran kedua ini umumnya lambat dan mahal. Misalnya pada perang dingin antara AS dan Uni Soviet (dahulu), one-time pad dibangkitkan, disimpan, lalu dikirim dengan menggunakan jasa kurir yang aman. Penting diingat bahwa saluran kedua yang aman tersebut umumnya lambat dan mahal.

BAB IIILISTING PROGRAM DAN FLOWCHART

3.1 Listing Program

Aplikasi sistem one time pad yang kami rancang menggunakan bahasa C. User dapat memilih kunci yang akan digunakan. Ada dua pilihan kunci yang dapat dipilih. Yang pertama menggunakan adalah otomatis berdasarkan waktu sedangkan yang kedua adalah

Click here to load reader

Embed Size (px)
Recommended