Implementasi kriptografi dengan menggunakan metode DES dan kunci publik RSA untuk keamanan data pada kandepag kota Jakarta Timur

(1)

Aspek keamanan data telah menjadi aspek yang sangat penting dari suatu sistem

informasi. Kepedulian pegawai Kandepag Kota Jakarta Timur terhadap data-data kantor

dan kurangnya informasi mengenai keamanan data, membuat mereka menginginkan

sebuah aplikasi yang mudah untuk digunakan dan dapat membantu mereka dalam

mengamankan data-data penting, seperti data kepegawaian, data umum, data keuangan dan

data internal kantor lainnya. Salah satu cara menjaga keamanan dan kerahasiaan data

tersebut yaitu dengan digunakannya algoritma kriptografi untuk melakukan penyandian

data. Kriptografi adalah ilmu yang mempelajari bagaimana supaya pesan atau dokumen

kita aman, tidak bisa dibaca oleh pihak yang tidak berhak, sehingga tidak menimbulkan

banyak kerugian.

Dalam pembuatan aplikasi keamanan data ini, penulis menggunakan algoritma

simetris yaitu DES (Data Encryption Standard) dan asimetris RSA (Rivest, Shamir,

Addlemen). Dengan menggabungkan dua algoritma yang berbeda ini dapat menghasilkan

sebuah aplikasi keamanan data yang cukup aman dan mudah untuk digunakan. Penulis

menggunakan

Visual Basic 6.0

Enterprise Edition sebagai bahasa pemrograman,

Adobe

Photoshop 7.0,

Macromedia Fireworks MX, dan

Dreamwever MX untuk mendesain

background aplikasi serta HTML Help Workshop Install version 4.74.8703 untuk membuat

menu bantuan aplikasi dan

Clickteam Install Creator version

2.0.0.29 untuk membuat

instalasi program MeinCrypt. Metode penelitian yang penulis gunakan terdiri dari

observasi, wawancara dan metode literatur. Sedangkan metode pengembangan sistem yang

penulis gunakan ialah metode Sekuensial Linier.

Dari pembahasan materi sebelumnya, penulis menarik kesimpulan bahwa di

Kandepag belum terdapat sistem keamanan data yang dapat memberikan solusi keamanan

yang baik, Kriptografi dengan menggunakan kombinasi cipher simetris dan asimetris

melalui metode DES dan RSA dapat memberikan pengamanan ganda terhadap kerahasiaan

data dan info penting di kandepag.

Kata kunci : keamanan, kriptografi, algoritma, DES, RSA

xxii halaman + 162 halaman + 18 tabel + 64 gambar + 7 lampiran

Daftar Pustaka : 21 (1996-2007)


(2)

Halaman Judul ... i

Lembar Persetujuan Pembimbing ... ii

Lembar Pengesahan Ujian ... iii

Lembar Pengesahan Pembimbing ... iv

Lembar Pernyataan ... v

Abstrak... vi

Kata Pengantar ... vii

Lembar Persembahan ... viii

Daftar Isi ... ix

Daftar Tabel ... xv

Daftar Gambar ... xvi

Daftar Lampiran ... xix

Daftar Simbol ... xx

BAB I PENDAHULUAN... 1

1.1 Latar Belakang ... 1

1.2 Perumusan Masalah ... 2

1.3 Batasan Masalah ... 2

1.4 Tujuan Penelitian ... 3

1.5 Manfaat Penelitian ... 3

1.6 Metodologi Penelitian ... 4


(3)

BAB II LANDASAN TEORI ... 8

2.1 Keamanan Data ... 8

2.2 Aspek-Aspek Keamanan Data ... 8

2.3 Enkripsi dan Dekripsi ... 10

2.3.1 Pengertian Dasar ... 10

2.4 Kriptografi... 10

2.4.1 Sejarah Kriptografi... 10

2.4.2 Tujuan Kriptografi ... 12

2.4.3 Algoritma Kriptografi ... 13

2.4.4 Macam-macam Algoritma Kriptografi ... 15

2.4.4.1 Algoritma Kriptografi Kunci Rahasia... 15

2.4.4.1 Algoritma Kriptografi Kunci Publik ... 17

2.4.4.1 Algoritma Hash ... 18

2.4.5 Kriptografi Klasik ... 21

2.4.6 Kriptografi Modern ... 26

2.5 Metode DES ... 28

2.6 Algoritma DES... 28

2.7 Metode RSA... 36

2.8 Algoritma RSA ... 38

2.8.1 Properti Algoritma RSA ... 38

2.8.2 Algoritma Membangkitkan Pasangan Kunci ... 38


(4)

2.8.4 Keamanan RSA... 40

2.9 Keamanan Algoritma ... 42

2.10 Standar Kriptografi... 43

2.10.1 ANSI X3.92 ... 44

2.10.2 FIPS... 45

2.10.3 PKCS... 46

2.10.4 IEEE P1363 ... 48

2.11 Metode Pengembangan Sistem ... 48

2.12 Tools Perancangan Sistem ... 50

2.12.1 Diagram Alir (Flowchart) ... 50

2.12.2 STD (State Transition Diagram) ... 51

2.13 Pengenalan Microsoft Visual Basic 6.0 ... 52

2.13.1 Pengertian Dasar ... 52

2.13.2 Mengenal Integrated Development Environment(IDE) ... 53

BAB III METODOLOGI PENELITIAN ... 56

3.1 Metode Pengumpulan Data ... 56

3.1.1 Metode Pengamatan Langsung ... 56

3.1.2 Metode Wawancara (Interview) ... 57

3.1.3 Metode Literatur ... 57

3.2 Metode Pengembangan Sistem ... 57

3.2.1 Rekayasa Sistem ... 57


(5)

3.2.4 Coding (Kode) ... 59

3.2.5 Testing (Pengujian) ... 59

3.2.6 Implementation (Implementasi) ... 60

3.2.7 Maintenance (Pemeliharaan) ... 60

3.3 Bahan dan Peralatan... 61

3.3.1 Bahan ... 61

3.3.2 Peralatan... 61

BAB IV PEMBAHASAN DAN IMPLEMENTASI ... 63

4.1 Gambaran Umum Kandepag Kota Jakarta Timur... 63

4.1.1 Sejarah Departemen Agama Republik Indonesia ... 63

4.1.2 Geografi dan Iklim ... 65

4.1.3 Jumlah Penduduk Menurut Agama... 66

4.1.4 Jumlah Tempat Ibadah Menurut Agama... 66

4.1.5 Tugas Pokok Departemen Agama Kota Jakarta Timur ... 67

4.1.6 Pelaksana Tupoksi ... 70

4.2 Aplikasi MeinCrypt ... 75

4.3 Analisis ... 75

4.4 Perancangan (Desain) ... 76

4.4.1 Perancangan Algoritma Program Kriptografi ... 76

4.4.2 Desain Prosedural ... 77


(6)

2. Perancangan STD (State Transition Diagram) ... 87

3. Perancangan Blok Diagram ... 89

4.4.3 Desain Interface (Antarmuka) ... 92

4.4.3.1 Perancangan Form Splash ... 92

4.4.3.2 Perancangan Form Menu Utama ... 93

4.4.3.3 Perancangan Form Input DES Passphrase ... 94

4.4.3.4 Perancangan Form Input Key RSA... 95

4.4.3.5 Perancangan Form Info ... 95

4.4.3.6 Perancangan Form Bantuan ... 96

4.5 Kode ... 97

4.6 Pengujian (Testing) ... 97

4.6.1 Pengujian Enkripsi ... 98

4.6.2 Pengujian Dekripsi ... 99

4.7 Implementasi... 100

4.7.1 Instalasi Aplikasi MeinCrypt ... 101

4.7.2 Penggunaan Aplikasi MeinCrypt ... 101

4.8 Pemeliharaan ... 101

BAB V PENUTUP... 102

5.1 Kesimpulan ... 102

5.2 Saran ... 102


(7)

(8)

Halaman

Tabel 2. 1 : Tabel PC-1... 29

Tabel 2. 2 : Tabel Pemindahan Bit... 30

Tabel 2. 3 : Tabel PC-2 ... 31

Tabel 2. 4 : Tabel Pemilihan Bit E... 32

Tabel 2. 5 : Tabel Sbox 1 ... 33

Tabel 2. 6 : Tabel Sbox 2 ... 33

Tabel 2. 7 : Tabel Sbox 3 ... 33

Tabel 2. 8 : Tabel Sbox 4 ... 34

Tabel 2. 9 : Tabel Sbox 5 ... 34

Tabel 2. 10 : Tabel Sbox 6 ... 34

Tabel 2. 11 : Tabel Sbox 7 ... 35

Tabel 2. 12 : Tabel Sbox 8 ... 35

Tabel 2. 13 : Tabel Lima Hak Paten dalam Kriptografi ... 44

Tabel 2. 14 : Tabel Publikasi FIPS ... 45

Tabel 4. 6. 1 : Tabel Ukuran dan Waktu Enkripsi ... 99

Tabel 4. 6. 2 : Tabel Ukuran dan Waktu Dekripsi ... 100

Tabel a. 1 : Jadwal Waktu Pengerjaan ... 106

Tabel f. 1 : Tabel Summary of security requirements... 129


(9)

Halaman

Gambar 2. 1 : Proses Enkripsi/ Dekripsi Sederhana ... 10

Gambar 2. 2 : Algoritma kriptografi kunci rahasia ... 16

Gambar 2. 3 : Algoritma kriptografi kunci publik ... 18

Gambar 2. 4 : Skema Fungsi Hash ... 19

Gambar 2. 5 : Skema Kriptografi Modern ... 27

Gambar 2. 6 : Skema Global Algoritma DES ... 29

Gambar 2. 7 : Model Sequensial Linier ... 50

Gambar 2. 8 : Kotak Dialog New Project ... 53

Gambar 2. 9 : Integrated Development Enviroment ... 54

Gambar 2. 10 : Komponen Toolbox... 55

Gambar 3. 1 : Model Sequensial Linier ... 61

Gambar 4. 1 : Lambang Departemen Agama RI ... 70

Gambar 4. 2 : Struktur Kandepag Kota Jakarta Timur ... 75

Gambar 4. 3 : Proses Enkripsi dan Dekripsi ... 77

Gambar 4. 4 : Flowchart Proses Enkripsi ... 78

Gambar 4. 5 : Flowchart Proses Enkripsi dengan Metode DES ... 79

Gambar 4. 6 : Flowchart Proses Enkripsi dengan Metode RSA ... 80

Gambar 4. 7 : Flowchart Generate Key ... 81

Gambar 4. 8 : Flowchart Proses Kompresi Dengan Metode Huffman ... 82

Gambar 4. 9 : Flowchart Proses Dekripsi ... 83

Gambar 4. 10 : Flowchart Proses Dekompresi Dengan Metode Huffman .... 84


(10)

Gambar 4. 12 : Flowchart Proses Dekripsi Dengan Metode DES ... 86

Gambar 4. 13 : STD Menu Utama ... 87

Gambar 4. 14 : STD Form Splash... 88

Gambar 4. 15 : STD Form Input DES Passphrase ... 88

Gambar 4. 16 : STD Form Input Key RSA ... 88

Gambar 4. 17 : STD Form Info... 88

Gambar 4. 18 : STD Form Bantuan ... 88

Gambar 4. 19 : Blok Diagram Enkripsi DES... 89

Gambar 4. 20 : Blok Diagram Enkripsi RSA... 90

Gambar 4. 21 : Blok Diagram Dekripsi RSA ... 91

Gambar 4. 22 : Blok Diagram Dekripsi DES... 92

Gambar 4. 23 : Rancangan Form Splash ... 93

Gambar 4. 24 : Rancangan Form Menu Utama ... 94

Gambar 4. 25 : Rancangan Form Input DES Passphrase... 94

Gambar 4. 26 : Rancangan Form Input Key RSA... 95

Gambar 4. 27 : Rancangan Form Info ... 95

Gambar 4. 28 : Rancangan Form Bantuan ... 97

Gambar 4. 6. 1 : Tujuh Tipe File Yang Terenkripsi ... 98

Gambar 4. 6. 2 : Tujuh Tipe File Yang Terdekripsi ... 100

Gambar a. 1 : Tampilan Setup MeinCrypt ... 108

Gambar a. 2 : Tampilan Aplikasi MeinCrypt Setup ... 108

Gambar a. 3 : Tampilan Informasi MeinCrypt ... 109


(11)

Gambar a. 6 : Tampilan konfirmasi untuk memulai instalasi ... 111

Gambar a. 7 : Tampilan Akhir Proses Instalasi Program... 112

Gambar b. 1 : Form Splash ... 112

Gambar b. 2 : Form Menu Utama ... 113

Gambar b. 3 : Tampilan Window Pilih File Sumber ... 114

Gambar b. 4 : Tampilan Form DES Passphrase... 114

Gambar b. 5 : Tampilan Jendela Peringatan ... 114

Gambar b. 6 : Tampilan Form Input Key RSA... 115

Gambar b. 7 : Tampilan Jendela Pesan Enkripsi Selesai ... 115

Gambar b. 8 : Tampilan Form Pilih File yang akan didekripsi... 116

Gambar b. 9 : Tampilan Form Dekripsi ... 116

Gambar b. 10 : Tampilan Form Input Key RSA ... 117

Gambar b. 11 : Tampilan Form DES Passphrase... 117

Gambar b. 12 : Tampilan Jendela Peringatan Deksripsi selesai ... 117

Gambar b. 13 : Tampilan Form Dekripsi ... 117

Gambar b. 14 : Tampilan Jendela Pesan Untuk Exit... 118

Gambar b. 15 : Tampilan Form Info ... 118

Gambar b. 16 : Tampilan Form Bantuan ... 118


(12)

Halaman

Lampiran Surat Keterangan Riset... 105

Lampiran A : Jadwal Waktu Pengerjaan... 106

Lampiran B : Wawancara... 107

Lampiran C : Penggunaan Aplikasi MeinCrypt... 108

Lampiran D : Kode ASCII... 119

Lampiran E : Pengertian Algoritma Kompresi Huffman... 125

Lampiran F : Standar Kriptografi... 126

Lampiran G : Kode Program... 131


(13)

1. TERMINAL Simbol ini digunakan untuk mengawali dan mengakhiri suatu proses atau kegiatan.

2. PREPARATION Simbol ini digunakan untuk mempersiapkan harga

awal atau nilai awal dari suatu variable yang akan diproses dan juga untuk penggunaan proses Loop.

3. DECISION Simbol ini digunakan untuk mengambil keputusan

dalam pengujian suatu kondisi yang sedang diproses.

4. PROSES Simbol ini digunakan untuk melakukan kegiatan

proses instruksi di dalam suatu program.

5. INPUT/OUTPUT Simbol ini digunakan untuk menggambarkan proses

Input dan Output Program.

6. SUBROUTIN Simbol ini digunakan untuk menggambarkan proses

pemanggilan (Call System) pada Sub Program dari Sebagaimana penulis sudah jelaskan mengenai Diagram Alur (Flowchart) yang memiliki beberapa simbol untuk digunakan sebagai gambaran dari rangkaian proses yang harus dilaksanakan, akan tetapi simbol-simbol tersebut ada yang sering digunakan dan ada juga yang jarang digunakan. Berikut ini akan dijelaskan gambar simbol tersebut dan arti atau kegunaannya di bawah ini (Sugiyono, 2005:32) :

Main Program.


(14)

atau jalur proses dari suatu kegiatan yang menuju pada kegiatan lain.

8. CONNECTOR Simbol ini digunakan untuk penghubung antara suatu proses dengan proses lainnya yang berada pada posisi halaman yang sama.

9. PAGE CONNECTOR Simbol ini digunakan untuk penghubung antara suatu proses dengan proses lainnya yang berada pada posisi halaman yang berbeda.

10. PRINTER Simbol ini digunakan untuk menggambarkan suatu

Dokumen atau untuk kegiatan Mencetak.

11. CONSOLE Simbol ini digunakan untuk menggambarkan

kegiatan dalam menampilkan data atau informasi dengan Media Visual Display Unit (VDU) atau disebut juga Monitor.

12. MANUAL INPUT Simbol ini digunakan untuk menggambarkan kegiatan pemasukan Data dengan Media Keyboard.


(15)

Menurut Roger, S. Pressman

No Simbol Name Keterangan

1 Tindakan Menggambarkan tindakan yang

diambil jika suatu even terjadi

2 Tampilan Menggambarkan tayangan atau

layer yang tampil


(16)

1.1 Latar Belakang

Aspek keamanan data telah menjadi aspek yang sangat penting dari suatu sistem informasi. Banyak orang mulai mencari cara untuk mengamankan data atau informasi, karena perkomputeran secara global telah menjadi tidak aman dan seringkali luput dari perhatian pemakai komputer dan mulai menjadi isu yang sangat serius. Sehingga, diperlukan suatu cara untuk mengamankan data yang rahasia dan penting. Salah satu cara menjaga keamanan dan kerahasiaan data tersebut yaitu dengan digunakannya algoritma kriptografi untuk melakukan penyandian data.

Kepedulian pegawai Kandepag Kota Jakarta Timur terhadap data-data kantor dan kurangnya informasi mengenai keamanan data, merupakan salah satu alasan penulis untuk membuat sebuah aplikasi yang mudah untuk digunakan dan dapat membantu mereka dalam mengamankan data-data penting, seperti data kepegawaian, data umum, data keuangan dan data internal kantor lainnya.

Dengan tingginya kepedulian mereka, maka penulis berupaya untuk membantu mewujudkan implementasi kriptografi menggunakan metode kriptografi algoritma DES dan RSA ke dalam suatu perangkat lunak yang mudah digunakan dalam skripsi yang berjudul “Implementasi Kriptografi Dengan Menggunakan Metode DES Dan Kunci Publik RSA Untuk Keamanan Data Pada Kandepag Kota Jakarta Timur”.


(17)

1.2 Rumusan Masalah

Berdasarkan latar belakang di atas, masalah pokok yang akan di bahas penulis adalah :

a. Bagaimana menjaga kerahasiaan data atau informasi penting yang ada di komputer user ?

b. Bagaimana membangun aplikasi yang mudah digunakan untuk mengamankan data atau informasi penting dengan metode DES dan kunci publik RSA?

1.3 Batasan Masalah

Berdasarkan penelitian yang penulis lakukan, penulis akan membatasi beberapa hal, yaitu :

1. Terdapat banyak sekali metode kriptografi yang dapat digunakan untuk mengamankan data. Oleh karena itu, penulis membatasi penulisan dengan menggunakan metode DES (Data Encryption Standard) dan kunci publik RSA (Rivest, Shamir, Adlemen).

2. Pada program ini proses enkripsi dan dekripsi yang dilakukan hanya terbatas pada satu file dan tidak dapat memproses lebih dari satu file secara bersamaan.

3. Aplikasi yang dirancang tidak membahas sistem keamanan data pada jaringan.


(18)

1.4 Tujuan Penelitian

Tujuan penelitian ini ialah :

a. Membuat suatu aplikasi kriptografi yang mengimplementasikan algoritma DES dan RSA sehingga dapat mengatasi masalah keamanan data serta menjaga kerahasiaan data di Kandepag Kota Jakarta Timur.

1.5 Manfaat Penelitian

Manfaat yang didapat oleh penulis dalam menulis skripsi ini adalah :

1. Bagi Penulis

a. Menerapkan ilmu-ilmu yang diperoleh selama kuliah

b. Guna menumbuhkan kesiapan mental mahasiswa untuk memasuki dunia kerja.

c. Dapat mempelajari lebih jauh mengenai algoritma DES dan RSA serta mengimplementasikannya untuk penyandian data.

2. Bagi Kandepag

a. Mendapatkan pengetahuan mengenai algoritma DES dan kunci publik RSA untuk penyandian data.

b. Keamanan yang berlapis karena menggunakan dua metode yang berbeda.

3. Bagi Universitas

a. Memberikan kemajuan ilmu pengetahuan dalam bidang keamanan data khususnya mengenai kriptografi di lingkungan Fakultas Sains dan Teknologi, UIN Syarif Hidayatullah Jakarta.


(19)

1.6 Metodologi Penelitian

1.6.1 Metode Pengumpulan Data

Metodologi pengumpulan data yang digunakan penulis dalam skripsi ini adalah :

1.6.1.1 Metode Pengamatan Langsung Metode Observasi

Pengamatan dilakukan secara langsung pada bagian umum dan kepegawaian di Kandepag (Kantor Departemen Agama).

1.6.1.2 Metode Wawancara (Interview)

Wawancara adalah proses memperoleh keterangan untuk tujuan penelitian dengan cara Tanya-jawab sambil bertatap muka antara penanya atau pewawancara dengan yang ditanya (penjawab).

1.6.1.3 Metode Literatur

Membaca maupun mempelajari referensi yang ada sebagai pelengkap dan mencari referensi tambahan dari internet.

1.6.2 Metode Pengembangan Sistem

Pengembangan sistem dalam penelitian ini, penulis lakukan menggunakan model sekuensial linier (Pressman, 2002:38), terdiri dari tahap- tahap :


(20)

1. Rekayasa Sistem

Yaitu mengumpulkan kebutuhan pada tingkat sistem, tingkat bisnis strategis dan tingkat area bisnis.

2. Analysis (Analisis)

Proses pengumpulan kebutuhan diintensifkan dan difokuskan, khususnya pada sistem yang dibuat. Untuk memahami sifat program yang dibangun, analis harus memahami domain informasi, proses, dan antarmuka (interface) yang diperlukan.

3. Design (Desain)

Desain, yaitu melakukan desain untuk membuat gambaran sistem dan lain sebagainya yang diperlukan untuk pengembangan sistem informasi. Pada tahap ini digunakan :

a. Flowchart atau Diagram Alir adalah gambar simbol-simbol yang digunakan untuk menggambarkan urutan proses atau instruksi- instruksi yang terjadi di dalam suatu program komputer secara sistematis dan logis.

b. State Transition Diagram merupakan suatu modeling tools yang menggambarkan sifat ketergantungan dari suatu sistem.

4. Coding (Kode)

Desain harus diterjemahkan ke dalam bentuk mesin yang bisa dibaca. 5. Testing (Pengujian)

Pada tahap ini dilakukan uji coba terhadap sistem yang akan dikembangkan. Hal ini berfungsi untuk menemukan kesalahan-kesalahan


(21)

dan memastikan bahan input yang dimasukkan akan memberikan hasil aktual yang sesuai dengan hasil yang dibutuhkan.

6. Implementation (Implementasi)

Pada tahap ini sistem diimplementasikan ke dalam komputer pengguna, sehingga dapat menjamin bahwa program dapat berjalan secara optimal. 7. Maintenance (Pemeliharaan)

Pada tahap ini sistem yang telah diuji coba dan dinyatakan lolos dapat mulai digunakan untuk menangani prosedur bisnis yang sesungguhnya.

1.7 Sistimatika Penulisan

Untuk mempermudah pembaca dalam memahami isi skripsi ini, maka penulis membagi laporan ini menjadi beberapa bab yang singkat serta dapat dijelaskan sebagai berikut :

BAB I PENDAHULUAN

Bab ini berisi pendahuluan yang terdiri dari latar belakang, rumusan masalah, ruang lingkup masalah, tujuan dan manfaat, metodologi penulisan serta sistimatika penulisan.

BAB II LANDASAN TEORI

Bab ini membahas tentang landasan teori yang berhubungan dengan materi yang penulis buat. Teori-teori tersebut antara lain adalah aspek keamanan data, konsep dasar kriptografi, menjabarkan pengertian algoritma kriptografi DES dan kunci publik RSA, pengenalan Microsoft Visual Basic 6.0.


(22)

BAB III METODOLOGI PENELITIAN

Bab ini berisi metode-metode penelitian yang penulis gunakan dalam melakukan analisa pada laporan ini.

BAB IV PEMBAHASAN DAN IMPLEMENTASI

Bab ini menguraikan tentang gambaran umum objek penelitian yaitu Kandepag Kota Jakarta Timur serta pengembangan sistem aplikasi kriptografi yang dibuat.

BAB V PENUTUP

Bab ini berisi kesimpulan akhir serta saran-saran yang berguna bagi perbaikan dan pengembangan sistem kriptografi lebih lanjut.

DAFTAR PUSTAKA DAFTAR TABEL DAFTAR GAMBAR DAFTAR LAMPIRAN


(23)

2.1 Keamanan Data

Keamanan dan kerahasiaan data merupakan sesuatu yang sangat penting

dalam era informasi ini dan telah menjadi kebutuhan dasar karena perkomputeran

secara global telah menjadi tidak aman. Informasi akan tidak berguna lagi apabila

di tengah jalan informasi itu disadap atau dibajak oleh orang yang tidak berhak.

Bahkan mungkin beberapa pengguna dari sistem itu sendiri, mengubah data yang

dimiliki menjadi sesuatu yang tidak kita inginkan.

Keamanan data pada komputer tidak hanya tergantung pada teknologi

saja, tetapi dari aspek prosedur dan kebijakan keamanan yang diterapkan serta

kedisiplinan sumber daya manusianya. Jika firewall dan perangkat keamanan

lainnya bisa dibobol oleh orang yang tidak berhak maka, peran utama kriptografi

untuk mengamankan data atau dokumen dengan menggunakan teknik enkripsi

sehingga data atau dokumen tidak bisa dibaca (Dony Ariyus, 2006).

2.2 Aspek-aspek Keamanan Data

Menurut Yusuf Kurniawan (2004:2) di dalam keamanan data, terdapat 5

(lima) aspek utama, yaitu :


(24)

1. Kerahasiaan (

Privacy

).

Privacy

menjamin perlindungan data / informasi yang bersifat pribadi (user

ID, password, nomor rekening kartu kredit, dsb) dari akses pihak-pihak yang

tidak berhak dan berwenang.

2. Keutuhan (

Integrity

).

Penerima harus dapat memeriksa, apakah data/informasi yang dikirim atau

dipertukarkan oleh pihak yang mengirimkan terjadi perubahan di tengah

jalan atau tidak.

3. Keaslian (

Authentication

).

Penerima pesan dapat memastikan keaslian pengirimnya yang dapat

dibuktikan keabsahannya.

4.

Authority

.

Informasi yang berada pada sistem jaringan seharusnya hanya dapat

dimodifikasi oleh pihak yang berwenang. Modifikasi yang tidak diinginkan,

dapat berupa penulisan tambahan pesan, pengubahan isi, pengubahan status,

penghapusan, pembuatan pesan baru (pemalsuan), atau menyalin pesan untuk

digunakan kemudian oleh penyerang.

5. Tidak ada penyangkalan (

Non Repudiation

).

Pengirim seharusnya tidak dapat mengelak bahwa dialah pengirim pesan yang

sesungguhnya.


(25)

2.3 Enkripsi dan Dekripsi

2.3.1 Pengertian Dasar

Pesan asli atau informasi yang dapat dibaca disebut sebagai

plaintext atau cleartext. Proses yang dilakukan untuk membuat pesan

menjadi tidak dapat dibaca disebut sebagai

encryption

atau enkripsi.

Sedangkan proses untuk mengubah ciphertext kembali ke plaintext disebut

decryption

atau dekripsi. Secara sederhana istilah-istilah di atas dapat

digambarkan sebagai berikut (Materi Kuliah e-Business, 1998:11) :

Gambar 2.1 Proses Enkripsi/Dekripsi Sederhana

2.4 Kriptografi

2.4.1 Sejarah Kriptografi

Kriptografi berasal dari bahsa Yunani, menurut bahasa dibagi

menjadi dua kata, yakni kripto berarti

secret

(rahasia) dan graphia berarti

writing

(tulisan) (Ariyus, 2006:9). Menurut Yusuf Kurniawan (2004:17),

Kriptografi adalah ilmu yang mempelajari bagaimana supaya pesan atau

dokumen kita aman, tidak bisa dibaca oleh pihak yang tidak berhak,

sehingga tidak menimbulkan banyak kerugian. Pada mulanya Kriptografi


(26)

ini digunakan dibidang militer dan intelejen untuk menyandikan pesan-

pesan panglima perang kepada prajurit-prajurit yang berada di garis depan

pertahanan. Pertumbuhan teknologi yang semakin cepat menyebabkan

para ilmuwan selalu membahas topik ini untuk diteliti lebih dalam lagi.

Ilmu Kriptografi sudah lama digunakan oleh tentara Sparta di

Yunani pada permulaan abad 400 SM. Mereka menggunakan alat yang

bernama scytale.

Scytale

merupakan pita panjang dari daun

papyrus

ditambah dengan sebatang silinder (Rinaldi Munir: Bahan Kuliah Ke-1,

2004:4). Ketika zaman Romawi, Yulius Caesar telah menggunakan teknik

kriptografi (“Caesar

Cipher”) yang sekarang dianggap kuno dan sangat

mudah dibobol untuk keperluan militernya. Pada perang dunia kedua,

Jepang dan Jerman juga menggunakan kriptografi untuk keperluan

komunikasi militernya. Namun sekutu dapat menembus produk kriptografi

buatan mereka, sehingga sekutu memenangkan perang dunia kedua.

Seiring waktu, penelitian di bidang kriptografi semakin bertambah

cepat karena kemajuan teknologi komputasi komputer menambah

cepatnya perkembangan kriptografi. Sehingga, kriptografi tidak lagi

digunakan di bidang militer, tetapi setiap individu berhak mengamankan

data ataupun berkomunikasi melalui jaringan komputer tanpa takut

diketahui oleh pihak lain (Kurniawan, 2004:17).


(27)

2.4.2 Tujuan Kriptografi

Dalam teknologi informasi, telah dan sedang dikembangkan cara-

cara untuk menangkal berbagai bentuk serangan semacam penyadapan

maupun pengubahan data. Salah satu cara yang ditempuh untuk mengatasi

masalah ini ialah dengan menggunakan kriptografi, yang memberikan

solusi pada dua masalah utama keamanan data, yaitu masalah privasi

(privacy) dan keautentikan (authentication). Privasi mengandung arti

bahwa data yang dikirimkan hanya dapat dimengerti oleh penerima yang

sah. Sedangkan keautentikan mencegah pihak ketiga untuk mengirimkan

data yang salah atau mengubah data yang dikirimkan.

Adapun tujuan dari sistem kriptografi adalah sebagai berikut

(WAHANA KOMPUTER, 2003:95-96) :

Confidentiality

Yaitu memberikan kerahasiaan pesan dan menyimpan data dengan

menyembunyikan informasi lewat teknik-teknik enkripsi.

Message Integrity

Yaitu memberikan jaminan untuk tiap bagian bahwa pesan tidak akan

mengalami perubahan dari saat ia dibuat sampai saat ia dibuka.


(28)

Non-repudiation

Yaitu memberikan cara untuk membuktikan bahwa suatu dokumen

datang dari seseorang apabila ia mencoba menyangkal memiliki

dokumen tersebut.

Authentication

Yaitu memberikan dua layanan. Pertama, mengidentifikasi keaslian

suatu pesan dan memberikan jaminan keautentikannya. Kedua,

menguji identitas seseorang apabila ia akan memasuki sebuah sistem.

2.4.3 Algoritma Kriptografi

Kata algoritma mempunyai sejarah yang menarik, kata ini muncul

di dalam kamus Webster sampai akhir tahun 1975 hanya menemukan kata

algorism

yang mempunyai arti proses perhitungan dengan bahasa Arab.

Algoritma berasal dari nama penulis buku Arab yang terkenal yaitu Abu

Ja’far Muhammad Ibnu Musa Al-Khuwarizmi (al-khuwarizmi dibaca oleh

orang Barat menjadi algorism). Kata

algorism

lambat laun berubah

menjadi algorithm (Ariyus, 2006:13).

Definisi terminologinya Algoritma adalah urutan langkah-langkah

logis untuk penyelesaian masalah yang disusun secara sistematis.

Algoritma kriptografi merupakan langkah-langkah logis bagaimana

menyembunyikan pesan dari orang-orang yang tidak berhak atas pesan


(29)

tersebut. Menurut Ariyus (2006:13), algoritma kriptografi terdiri dari tiga

fungsi dasar, yaitu :

Enkripsi: Enkripsi merupakan pesan asli disebut

plaintext

yang

dirubah menjadi kode-kode yang tidak dapat dimengerti. Enkripsi bisa

diartikan dengan chiper atau kode.

Dekripsi: Dekripsi merupakan kebalikan dari enkripsi, pesan yang

telah dienkripsi dikembalikan ke bentuk asalnya (Plaintext) disebut

dengan dekripsi pesan. Algoritma yang digunakan untuk dekripsi tentu

berbeda dengan yang digunakan untuk enkripsi.

Kunci: Kunci yang dimaksud di sini adalah kunci yang dipakai untuk

melakukan enkripsi dan dekripsi, kunci terbagi jadi dua bagian, yaitu

kunci pribadi (private key) dan kunci umum (public key).

Secara umum operasi enkripsi dan dekripsi dapat diterangkan

secara matematis sebagai berikut (Wahana Komputer, 2003:97) :

EK (M) = C (Proses Enkripsi)

DK (C) = M (Proses Dekripsi)

Pada saat proses enkripsi kita menyandikan pesan M dengan suatu

kunci K lalu dihasilkan pesan C. Sedangkan pada proses dekripsi, pesan C

tersebut diuraikan dengan menggunakan kunci K sehingga dihasilkan

pesan M yang sama seperti pesan sebelumnya.


(30)

Dengan demikian, keamanan suatu pesan tergantung pada kunci

ataupun kunci-kunci yang digunakan dan tidak tergantung pada algoritma

yang digunakan sehingga algoritma-algoritma yang digunakan tersebut

dapat dipublikasikan dan dianalisis, serta produk-produk yang

menggunakan algoritma tersebut dapat diproduksi secara umum. Tidaklah

menjadi masalah apabila seseorang mengetahui algoritma yang kita

gunakan. Selama ia tidak mengetahui kunci yang dipakai, ia tetap tidak

dapat membaca pesan (Wahana Komputer, 2003:98).

2.4.4 Macam-macam Algoritma Kriptografi

Algoritma Kriptografi secara umum dibagi menjadi 2 (dua)

berdasarkan jenis kuncinya dan fungsi hash.

2.4.4.1 Algoritma Kriptografi Kunci Rahasia

Dalam algoritma kriptografi kunci rahasia, kunci digunakan untuk

enkripsi data dan tidak diberi kuasa kepada publik melainkan hanya kepada orang

tertentu yang tahu dan dapat membaca data yang dienkrip. Karakteristik algoritma

kriptografi kunci rahasia adalah bahwa kunci enkripsi sama dengan kunci dekripsi

seperti ditunjukkan pada gambar di bawah ini (WAHANA KOMPUTER,

2003:100-102) :


(31)

Gambar 2.2 Algoritma kriptografi kunci rahasia

(Materi Kuliah e-Business, 1998:13)

Algoritma kriptografi kunci rahasia juga disebut algoritma kriptografi

kunci simetris. Disebut juga algoritma kriptografi konvensional, karena algoritma

yang biasa digunakan orang sejak berabad-abad lalu adalah algoritma jenis ini.

Keamanan algoritma kriptografi simetri tergantung

pada kunci

(password). Membocorkan kunci berarti orang lain dapat mengenkrip dan

mendekrip pesan. Agar komunikasi tetap aman, kunci harus tetap dirahasiakan.

Yang termasuk algoritma kunci simetri adalah OTP, DES, RC2, RC4, RC5, RC6,

IDEA, Twofish, Magenta, FEAL, SAFER, LOKI, CAST, Rijndael (AES),

Blowfish, GOST, A5, Kasumi dan lain-lain.

Algoritma kriptografi kunci rahasia (simetri) dapat dibagi dalam dua

kategori ( Kurniawan, 2004: 9 dan 50), yaitu :

a.

Jenis pertama beroperasi pada satu waktu, yang disebut

stream

algorithms

(algoritma aliran atau

stream ciphers

). Yang termasuk

dalam algoritma stream ciphers ialah OTP, A5, dan RC4.


(32)

b.

Jenis kedua beroperasi pada plaintext dalam grup bit-bit. Grup bit-bit

ini disebut blok. Dan algoritmanya disebut sebagai algoritma blok

atau

kode rahasia blok. Untuk algoritma komputer modern, ukuran

blok dasarnya adalah 64 bit atau 128 bit, cukup besar untuk

menghindari analisis pemecahan kode dan cukup kecil agar dapat

bekerja dengan cepat. Yang termasuk dalam algortima blok

ciphers

ialah DES, AES, dan IDEA.

2.4.4.2 Algoritma Kriptografi Kunci Publik

Algoritma kriptografi kunci publik bekerja dengan kunci yang berbeda

untuk enkripsi dan dekripsi. Dimana cara kerja enkripsi dengan kunci publik

adalah setiap orang yang menggunakan enkripsi ini harus mempunyai dua buah

kunci yaitu satu kunci rahasia yang hanya boleh diketahui oleh dirinya sendiri dan

kunci publik yang disebarkan kepada orang lain. Kunci enkripsi sering disebut

kunci publik, sementara kunci dekripsi sering disebut kunci privat ( Kurniawan,

2004:9). Karena menggunakan algoritma dengan kunci enkripsi dan dekripsi yang

berbeda, maka cara ini sering disebut dengan kriptografi asimetrik. Yang

termasuk algoritma kriptografi asimetri adalah ECC, LUC, RSA, El Gamal dan

DH. Berikut ini gambar algoritma kriptografi kunci publik (Materi Kuliah e-

Business, 1998:13)


(33)

Gambar 2.3 Algoritma kriptografi kunci publik

2.4.4.3 Algoritma

Hash

Fungsi satu arah (one-way function) sering disebut juga sebagai fungsi

hash,

message digest, fingerprint

(sidik jari), fungsi kompresi dan

message

authentication code

(MAC). Fungsi ini biasanya diperlukan bila kita

menginginkan pengambilan sidik jari suatu pesan.

Fungsi hash dalam kriptografi dapat dibuat oleh siapa pun, tetapi biasanya

sering dikombinasikan dengan fungsi kriptografi yang punya integritas, seperti

dalam hal kombinasi antara algoritma tanda tangan digital dan fungsi

hash

atau

fungsi

hash

dengan algoritma kriptografi kunci rahasia (WAHANA

KOMPUTER, 2003:107). Di bawah ini merupakan gambar skema fungsi hash.


(34)

Gambar 2.4 Skema Fungsi Hash (Materi Kuliah e-Business, 1998:20)

Fungsi hash beroperasi pada pesan M dengan panjang sembarang dan

menghasilkan keluaran h yang selalu sama panjangnya. Jadi persamaannya yaitu

h = H (M)

M = pesan panjang sembarang

h = nilai hash (hash value) atau pesan-ringkas (message-digest)

h <<<< M

Fungsi hash harus memiliki sifat-sifat sebagai berikut:

1. Diberikan M, harus mudah menghitung H (M) = h;

2. Diberikan h, sangat sulit atau mustahil mendapatkan M sedemikian

sehingga H(M) = h;

3. Diberikan M, sangat sulit atau mustahil mendapatkan M’ sedemikian

sehingga H(M) = H(M’). bila diperoleh pesan M’ yang semacam ini,

maka disebut tabrakan (collision);


(35)

4. Sangat sulit atau mustahil mendapatkan dua pesan M dan M’

sedemikian sehingga H(M) = H(M’).

1. Secure Hash Algorithm (SHA)

NIST bersama NSA mendesain Secure Hash Algorithm (SHA) untuk

digunakan sebagai komponen

Digital Signature Standard (DSS). Standar hash

adalah Secure Hash Standard (SHS) sedangkan SHA adalah Algoritma. SHA

dikatakan aman karena didesain supaya secara matematis tidak dimungkinkan

untuk mendapatkan pesan aslinya bila diberikan

hash-nya atau tidak mungkin

mendapatkan dua pesan yang berbeda yang menghasilkan MD (Message Digest)

yang sama (Kurniawan, 2004:116).

2. MD5

Salah satu fungsi

hash yang paling banyak digunakan dalam keamanan

jaringan komputer dan internet adalah MD5 (Message Digest) versi 5 yang

dirancang oleh Ron Rivest. MD5 merupakan kelanjutan MD4 yang dirancang

dengan tujuan sebagai berikut ( Kurniawan, 2004:120) :

Keamanan. Secara perhitungan matematis tidak dimungkinkan untuk

mendapatkan dua pesan yang memiliki hash yang sama. Tidak ada serangan

yang lebih efisien dibanding brute force (suatu bentuk serangan dimana


(36)

penyerang mencoba kemungkinan-kemungkinan untuk menemukan kunci

sampai kunci itu ditemukan).

Keamanan Langsung. Keamanan MD5 tidak didasarkan pada suatu asumsi,

seperti kesulitan pemfaktoran.

Kecepatan. MD5 sesuai untuk diimplementasikan dengan perangkat lunak

yang berkecepatan tinggi, karena berdasar pada sekumpulan manipulasi

operan 32-bit.

Kesederhanaan dan Kompak. MD5 sederhana tanpa struktur data atau

program yang komplek.

Selain pada PGP, MD5 juga digunakan untuk mengkodekan password pada

Windows NT 4.0, Windows 2000 dan sistem operasi Linux.

2.4.5 Kriptografi Klasik

Kriptografi klasik (konvensional) merupakan suatu algoritma yang

menggunakan satu kunci untuk mengamankan data. Teknik ini sudah

digunakan sejak beberapa abad yang lalu (Ariyus, 2006:16). Dua teknik

dasar yang biasa digunakan pada algoritma jenis ini, diantaranya adalah

teknik Subtitusi dan teknik Transposisi (Permutasi).


(37)

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

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

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

3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 0 1 2

2.4.5.1 Teknik Substitusi

Substitusi adalah penggantian setiap karakter plaintext dengan karakter

lain. Beberapa istilah yang mungkin perlu diingat adalah:

a.

Monoalphabet

: Setiap karakter ciphertext mengganti satu macam karakter

plaintext tertentu.

b.

Polyalphabet

: Setiap karakter ciphertext dapat mengganti lebih dari satu

macam karakter plaintext.

c.

Monograf / unilateral

: Satu enkripsi dilakukan terhadap satu karakter

plaintext.

d.

Polygraph / multilateral

: Satu enkripsi dilakukan terhadap lebih dari satu

karakter plaintext sekaligus.

Jenis-jenis Teknik Substitusi yang ada saat ini yaitu :

1. Caesar Cipher

Substitusi chiper yang pertama dalam dunia penyandian pada waktu

pemerintahan Yulius Caesar dikenal dengan nama

Caesar Cipher

(Ariyus,

2006:16), dengan mengganti posisi huruf awal dari alphabet sebagai contoh :


(38)

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

D O N Y A R I U S B C E F G H J K L M P Q T V W X Z

Jika pergeseran yang dilakukan sebanyak tiga kali maka, kunci untuk

dekripsinya adalah 3, penggeseran kunci yang dilakukan tergantung dari

keinginan pengirim pesan. Bisa saja kunci yang dipakai a = 7, b = 9 dan

seterusnya. Untuk plaintext diberikan symbol “P” dan ciphertextnya “C” dengan

kunci “K”, jadi rumusnya adalah sebagai berikut (Ariyus, 2006:17) :

C = E (P) = (P+K) mod 26

Dan rumus untuk dekripsinya sebagai berikut :

P = D (C) = (C-K) mod 26

2. Substitusi Deret Campuran Kata Kunci

Caesar Cipher dengan menggunakan satu kunci atau bisa disebut dengan

substitusi deret campur kata kunci, yang perlu diingat, tidak ada perulangan huruf

dalam hal ini. DONY ARIYUS menjadi DONYARIUS, huruf Y terjadi

perulangan jadi tidak dipakai lagi

Menggunakan satu kunci :

Plaintext

: “KENAIKAN HARGA BBM MEMBUAT RAKYAT

KECIL MENDERITA”

Kunci

: DONY ARIYUS menjadi DONYARIUS

Ciphertext

: CAGDSCDGUDLIDOOFFAFOQDPLDCXDP


(39)

3. Substitusi Monome-Dinome-Trinome

Monome berarti bahwa setiap satu karakter

plaintext akan disubstitusi oleh 1

karakter ciphertext, dinome disubstitusi 2 karakter ciphertext, sedangkan trinome

disubstitusi 3 karakter ciphertext. Jadi sistem monomer-dinome-trinome berarti

sistem yang menggunakan campuran ketiga sistem dasarnya.

4. Substitusi Polialfabet Periodik

Dalam sistem Polialfabet, setiap

ciphertext dapat memiliki banyak

kemungkinan plaintext. Jadi, bila plaintext “a” memiliki ciphertext “1” atau “23””

atau “43”, maka sistem tetap dikatakan sebagai mono alfabet, karena ciphertext

“1” pasti melambangkan

plaintext “a”, demikian pula dengan plaintext

“23” dan

“43”. Sedangkan, pada sistem Polialfabet, ciphertext

“1” mungkin menggantikan

plaintext “a” pada suatu saat dan dapat menggantikan plaintext “b” pada saat yang

lain. Jenis poli alfabet klasik yang terkenal adalah

Vigenere

(Kurniawan,

2004:29). Pada teknik vigenere, setiap

ciphertext bisa memiliki banyak

kemungkinan plaintextnya. Teknik dari substitusi

vigenere bisa dilakukan dengan

dua cara, yaitu angka dan huruf.

2.4.5.2 Teknik Transposisi

Teknik ini menggunakan permutasi karakter sehingga, dengan

menggunakan teknik ini pesan yang asli tidak dapat dibaca kecuali memiliki


(40)

M

S

A Y A

B E L A J

A R K E A M A

N A N K O M P U T

E R X X X X X X X X X

kunci untuk mengembalikan pesan tersebut ke bentuk semula atau disebut dengan

dekripsi (Ariyus, 2006:36). Metode transposisi dapat berupa :

Zig –zag : Memasukkan plaintext degan pola zig-zag seperti contoh di bawah

ini :

A G A A X

Y S N B J R N O P R

A E A E A K A A K U E

S D

L

E

N

T

Ciphertext dari teknik ini yaitu dengan membaca dari baris atas ke baris

bawah, yaitu

“AGAAMXYSNBJRMNOPRAEAEAKAAKUESDLENTX”

Segi tiga

: dengan pola ini masukkan plaintext dengan pola segi tiga dan

dibaca dari atas ke bawah.

Ciphertextnya adalah :

“ENRAAX BRNXAE KKXSYL EOXAAA MXJMPX AUXTXX”

Spiral

: dengan mengggunakan pola ini, plaintext dimasukkan dengan cara

spiral dan dapat dibaca dari atas ke bawah, lihat contoh di bawah ini :


(41)

S A Y A S E

A M A N A D

E E R X N A

K T X X K N

R U P M O G

A J A L E B

Ciphertextnya adalah :

“SAEKRA AMETUJ YARXPA ANXXML SANKOE EDANGB”

Diagonal

: dengan menggunakan pola ini, plaintext dimasukkan dengan cara

diagonal, perhatikan contoh dibawah ini :

S D L E N T

A A A A K E

Y N J M O R

A G A A M X

S B R N P X

E E K A U X

Ciphertextnya adalah :

“SDLENT AAAAKE YNJMOR AGAAMX SBRNPX EEKAUX”

Dari teknik Transposisi (Permutasi) dengan berbagai macam pola yang

bisa dilakukan untuk menyembunyikan pesan dari orang-orang yang tidak berhak.

Dari kombinasi tersebut merupakan dasar dari pembentukan algoritma kriptografi

yang kita kenal sekarang ini (modern).

2.4.6 Kriptografi Modern

Enkripsi modern berbeda dengan enkripsi konvensional, karena

pada

enkripsi

modern

sudah

menggunakan

komputer

dalam


(42)

H ash Function

pengoperasiannya, yang berfungsi mengamankan data baik yang ditransfer

melalui jaringan komputer maupun tidak. Hal ini sangat berguna untuk

melindungi

privacy, integritas data, authentication dan non repudiation

(Ariyus, 2006:49). Di bawah ini digambarkan bagaimana enkripsi modern

saling mendukung satu dengan yang lainnya.

S ecure Network Protocols

Confidentiality Data

Integrity A uthentication R epudiation N on-

Encryption M ACs M ICs Challenge R esponses Sm art Cards D igital Signatures

Sym m etric Key Cryptograph y

M essage

D igest IVs Nonces Secret Ke ys

Public Key C ryptography Block C ipher Stream C ipher Pseudo Random Random Source Elliptic C urve DH R SA

Gambar 2.5 Skema Kriptografi Modern (Munir, 2006:4)

Pada gambar satu dengan yang lainnya saling berhubungan untuk

mendapatkan suatu keamanan yang dikehendaki, seperti Privacy didukung

oleh enkripsi, integritas data didukung oleh pemberian MAC,

Authentication didukung oleh MAC,

Challenge Response

dan

digital

signature.


(43)

Enkripsi terdiri dari symmetric key, public key

dan IVs, sedangkan

symmetric key terdiri dari block cipher dan stream cipher. Sedangkan

public key

terdiri dari ECC dan RSA. MAC dibentuk dari hash function

yang kan menghasilkan message digests,

Pseudo Random digunakan

untuk IVs, Nonces, serta pembuatan

Secret Key

yang disimpan di dalam

Smart Cards, sedangkan untuk Nonces sendiri digunakan untuk

menghasilkan Challenge Response (Ariyus, 2006:50).

2.5 Metode DES (

Data Encryption Standard

)

Data Encryption Standard

(DES) merupakan algoritma yang paling

banyak dipakai di dunia yang diadopsi oleh NIST (National Institute of Standards

and Technology) sebagai standar pengolahan informasi

Federal

AS. Secara

umum Data Encryption Standard (DES) terbagi menjadi tiga kelompok, yaitu

pemrosesan kunci, enkripsi data 64-bit, dan dekripsi data 64-bit

yang

masing-masing saling berinteraksi satu dengan yang lainnya (Ariyus, 2006:64).

2.6 Algoritma DES

Data dienkrip dalam block-block 64-bit dengan menggunakan kunci 56

bit, DES mentransformasikan input 64-bit dalam beberapa tahap enkripsi ke

dalam output 64-bit. Dengan demikian, DES termasuk dalam block cipher dengan

tahapan pemakaian kunci yang sama untuk dekripsinya.


(44)

Setiap blok (plainteks dan cipherteks) dienkripsi dalam 16 putaran. Setiap

putaran menggunakan kunci internal berbeda. Kunci internal (56-bit)

dibangkitkan dari kunci eksternal. Setiap blok mengalami permutasi awal (IP), 16

putaran enciphering dan inverse permutasi awal (IP

-1

).

Gambar 2.6 Skema Global Algoritma DES

(Rinaldi Munir:Bahan Kuliah ke-1 DES, 2004:8)

57 49 41 33 25 17 9 1 58 50 42 34 26 18 10 2 59 51 43 35 27 19 11 3 60 52 44 36 63 55 47 39 31 23 15 7 62 54 46 38 30 22 14 6 61 53 45 37 29 21 13 5 28 20 12 4

Tabel 2.1 Tabel PC-1

64 bit kunci

K

dipermutasikan mengikuti tabel

PC-1

di atas. Pada tabel

PC-1

di atas, tiap angka mewakili posisi bit kunci

K

jadi 57 adalah bit dari

K

pada posisi 57 dari 64 bit K yang diambil PC-1 hanya sebanyak 56 bit dan ke-56


(45)

bit tersebut diurutkan perbaris dari 57 sampai 4 menjadi K+ , jadi bit pertama K+

adalah bit

57

dari bit K, bit kedua

K+

adalah bit ke-49 dari bit

K

dan begitu

seterusnya sampai bit K+ 56 adalah bit ke-4 dari

K, setelah itu, kunci K+ dibagi

menjadi 2 (dua)

K

kiri

n

dan

K

kanan

n

dari

K

kiri

n dan

K

kanan

n

dibagi 16 (enam

belas) blok, dimana 1<=n<=16.

Pemindahan Bit

Iterasi

Ke

Jumlah

Step

1

1

2

1

3

2

4

2

5

2

6

2

7

2

8

2

9

1

10

2

11

2

12

2

13

2

14

2

15

2

16

1

Tabel 2.2 Tabel Pemindahan Bit

Tiap pasang K

kiri

n dan K

kanan

n dibuat dari pasang K

kiri

n-1 dan K

kanan

n-1

yang bit sebelah Kanan ke Kiri sesuai dengan tabel pemindahan bit. Untuk

mendapatkan K

kiri

1

dan K

kanan

1 pindahkan bit paling sebelah Kiri sebanyak 1 bit


(46)

ke paling Kanan dari bit K

kiri

0 dan

K

kanan

0, untuk mendapatkan K

kiri

4 dan K

kanan

4

pindahkan bit paling sebelah Kiri sebanyak 2 bit ke paling Kanan dari bit K

kiri

3

dan K

kanan

3, begitu seterusnya sampai putaran ke 16 yaitu n sudah mencapai 16.

Setelah selesai

K

kiri

n

dan

K

kanan

n

digabungkan kembali dan di

permutasikan kembali mengikuti aturan tabel PC-2

menjadi 48 bit, hasilnya akan

mendapatkan Kn dimana 1<=n<=16.

PC-2

14

17

11

24

1

5

3

28

15

6

21

10

23

19

12

4

26

8

16

7

27

20

13

2

41

52

31

37

47

55

30

40

51

45

33

48

4

49

39

56

34

53

46

42

50

36

29

32

Tabel 2.3 Tabel PC-2

Setelah selesai, gabungkan K

kiri

dan K

kanan

kembali setelah digabung

permutasikan

K

kiri

n dan

K

kanan

n sesuai aturan

PC-2 yang akan menghasilkan

Pn

pada PC-2 di atas dari 64 bit K

kiri

n dan K

kanan

n hanya diambil 48 bit. Bit pertama

pada Kn adalah bit ke-14 dan K

kiri

n dan K

kanan

n

bit ke-2 dari Pn adalah bit ke-17

dari K

kiri

n dan K

kanan

n begitu seterusnya sampai bit ke-48 dari Pn adalah bit ke-32

dari K

kiri

n dan K

kanan

n.

Pada proses enkripsi, pesan M 64 bit dipermutasikan mengikuti aturan

tabel IP menjadi M+, dibagi menjadi dua bagian M

kiri

0 32 bit setelah kita


(47)

melakukan 16 iterasi untuk 1<=n<=16 menggunakan fungsi yang beroperasi pada

2 blok 32 bit kita anggap

adalah penambahan XOR (pertambahan bit demi bit

Modulo 2) dan n bertambah sampai 16

M

kiri

n = M

kanan

n-1

M

kanan

n = M

kiri

n-1

f (M

kanan

n-1, Kn)

Pemilihan Bit E

32

1

2

3

4

5

4

5

6

7

8

9

8

9

10

11

12

13

12

13

14

15

16

17

16

17

18

19

20

21

20

21

22

23

24

25

24

25

26

27

28

29

28

29

30

31

32

1

Tabel 2.4 Tabel Pemilihan Bit E

Untuk fungsi f pertama, kita harus menambahkan tiap blok M

kanan

n-1

menjadi

E(M

kanan

n-1) dari 32 bit menjadi 48 bit agar bisa dioperasikan dengan

Kn. Untuk itu, perlu tabel pemilihan bit

E

sehingga persamaan M

kanan

n-1

menjadi

E(M

kanan

n-1)

setelah itu

kita

XOR-kan E(M

kanan

n-1)dengan

persamaannya menjadi : Kn

E(M

kanan

n-1).

Hasil dari persamaan di atas adalah Kn 48 bit atau enam kelompok bit (6

bit). Kita lakukan sesuatu pada setiap kelompok 6 bit tersebut, kita gunakan

kelompok-kelompok tersebut sebagai alamat di tabel yang disebut

SBox. Dari

hasil persamaan di atas bisa untuk menghitung :


(48)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 14 4 13 1 5 15 11 8 3 10 6 12 5 9 0 7

1 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8

2 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0

3 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 15 1 8 14 6 11 3 4 9 7 2 13 12 0 5 10

1 3 13 4 7 15 2 8 14 12 0 1 10 6 9 11 5

2 0 14 7 11 10 4 13 1 5 8 12 6 9 3 2 15

3 13 8 10 1 3 15 4 2 11 6 7 12 0 5 14 9

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 10 0 9 14 6 3 15 5 1 13 12 7 11 4 2 8

1 13 7 0 9 3 4 6 10 2 8 5 14 12 11 15 1

2 13 6 4 9 8 15 3 0 11 1 2 12 5 10 14 7

3 1 10 13 0 6 9 8 7 4 15 14 3 11 5 2 12

Kn + E(M

kanan

n-1) = B1, B2, B3, B4, B4, B5, B6, B7, B8

Dimana setiap B1 adalah sekumpulan bit. Sekarang kita hitung :

S1(B1), S2(B2), S3(B3), S4(B4), S5(B5), S6(B6), S7(B7), S8(B8)

Dimana setiap S1B1 adalah hasil dari Sbox ke

Sbox 1

Tabel 2.5 Tabel Sbox 1

Sbox 2

Tabel 2.6 Tabel Sbox 2

Sbox 3


(49)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 7 13 14 3 0 6 9 10 1 2 8 5 11 12 4 15

1 13 8 11 5 6 15 0 3 4 7 2 12 1 10 14 9

2 10 6 9 0 12 11 7 13 15 1 3 14 5 2 8 4

3 3 15 0 6 10 1 13 8 9 4 5 11 12 7 2 14

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 2 12 4 1 7 10 11 6 8 5 3 15 13 0 14 9

1 14 11 2 12 4 7 13 1 5 0 15 10 3 9 8 6

2 4 2 1 11 10 13 7 8 15 9 12 5 6 3 0 14

3 11 8 12 7 1 14 2 13 6 15 0 9 10 4 5 3

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 12 1 10 15 9 2 6 8 0 13 3 4 14 7 5 11

1 10 15 4 2 7 12 9 5 6 1 13 14 0 11 3 8

2 9 14 15 5 2 8 12 3 7 0 4 10 1 13 11 6

3 4 3 2 12 9 5 15 10 11 14 1 7 6 0 8 13

Sbox 4

Tabel 2.8 Tabel Sbox 4

Sbox 5

Tabel 2.9 Tabel Sbox 5

Sbox 6


(50)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 4 11 2 14 15 0 8 13 3 12 9 7 5 10 6 1

1 13 0 11 7 4 9 1 10 14 3 5 12 2 15 8 6

2 1 4 11 13 12 13 7 14 10 15 6 8 0 5 9 2

3 6 11 13 8 1 4 10 7 9 5 0 15 14 2 3 12

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 13 2 8 4 6 15 11 1 10 9 3 14 5 0 12 7

1 1 15 13 8 10 3 7 4 12 5 6 11 0 14 9 2

2 7 11 4 1 9 12 14 2 0 6 10 13 15 3 5 8

3 2 1 14 7 4 10 8 13 15 12 9 0 3 5 6 11

Sbox 7

Tabel 2.11 Tabel Sbox 7

Sbox 8

Tabel 2.12 Tabel Sbox 8

Setiap kelompok akan memberikan kita sebuah alamat pada sebuah Sbox

yang berbeda. Ada 4 bit angka pada alamat tersebut yang akan menggantikan 6

bit tersebut, hasil setiap kelompok 6 bit dirubah menjadi 4 bit untuk menjadi 32

bit. Misalkan kita memasukkan sebuah nilai 32

10

= 100000

2

ke dalam Sbox1,

pertama pisahkan bit pertama dan terakhir kemudian satukan keduanya menjadi

10

2

= 2

10

nilai yang kita dapat akan kita gunakan untuk menentukan baris pada

Sbox1 kemudian bit ke-2 sampai bit-5 atau nilai tengah 0000

2

= 0

10

kita gunakan


(51)

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

0 14 4 13 1 5 15 11 8 3 10 6 12 5 9 0 7

1 0 15 7 4 14 2 13 1 10 6 12 11 9 5 3 8

2 4 1 14 8 13 6 2 11 15 12 9 7 3 10 5 0

3 15 12 8 2 4 9 1 7 5 11 3 14 10 0 6 13

Sbox 1

Tabel 2.5 Tabel Sbox 1

Nilai yang kita dapatkan akan kita substitusi dengan nilai yang kita input

(32=>4). Dengan penjelasan tersebut, maka akan kita dapatkan nilai

M

kanan

n =

M

kir

in-1

f

(M

kanan

n-1,

Kn) dan ini berlangsung sampai nilai

n

mencapai 16,

setelah didapati nilai

M

kiri

16

dan M

kanan

16

gabungkan kembali, akan tetapi

dengan urutan di balik menjadi 64 bit blok : M

kanan

16 M

kiri

16.

Setelah digabungkan, maka lakukan operasi terakhir dengan mengikuti

aturan IP-1 hasilnya adalah ciphertext. Untuk melakukan dekripsi cukup

membalik dari yang akhir ke paling awal dari proses enkripsi (Wirawan,

2006:42).

2.7 Metode RSA (Rivest, Shamir, Adleman)

RSA ditemukan oleh tiga orang yang kemudian disingkat menjadi RSA.

Ketiga penemu itu adalah Ron Rivest, Adi

Shamir, dan Leonard

Adleman yang

menemukannya pada tahun 1977 di MIT. Algoritma ini merupakan cara enkripsi

publik yang paling kuat saat ini karena, sulitnya pemfaktoran bilangan yang


(52)

sangat besar. RSA termasuk algoritma asimetri, yang berarti memiliki dua kunci,

yaitu kunci publik dan kunci privat.

Skema yang dikembangkan oleh Rivest, Shamir dan Adleman

mengekspresikan bahwa plaintext dienkripsi menjadi block-block yang setiap

block

memiliki nilai bilangan biner yang diberi simbol “n”,

plaintext

blok “M”

dan ciphertext “C”. Untuk melakukan enkripsi pesan “M”, pesan dibagi ke dalam

block-block numeric yang lebih kecil daripada “n” (data biner dengan pangkat

terbesar), jika bilangan prima yang panjangnya 200 digit dan dapat menambah

beberapa bit 0 di kiri bilangan untuk menjaga agar pesan tetap kurang dari nilai

“n” (Ariyus, 2006:113).

Sekali kunci telah diciptakan, sebuah pesan dapat dienkrip dalam blok dan

melewati persamaan berikut ini :

C = M

e

mod n (1), dimana C adalah ciphertext. M adalah message

(plaintext), sedangkan

e

adalah kunci publik penerima. Dengan demikian, pesan

di atas dapat didekrip dengan persamaan berikut :

M = C

d

mod n (2), dimana d adalah kunci pribadi penerima.

Oleh karena itu, hanya orang yang mempunyai kunci rahasia yang sesuai

yang dapat membuka pesan yang disandi dengan kunci publik tertentu.


(53)

2.8 Algoritma RSA

2.8.1 Properti Algoritma RSA

Besaran-besaran yang digunakan pada algoritma RSA (Rinaldi Munir:

Bahan Kuliah ke-15, 2004:1) :

1)

p

dan

q

bilangan prima

(rahasia)

2)

n

=

p . q

(tidak rahasia)

3)

φ

(

n

) = (

p

– 1)(

q

– 1)

(rahasia)

4)

e

(kunci enkripsi)

(tidak rahasia)

5)

d

(kunci dekripsi)

(rahasia)

6)

m

(plainteks)

(rahasia)

7)

c

(cipherteks)

(tidak rahasia)

2.8.2 Algoritma Membangkitkan Pasangan Kunci (Stallings, 2004:569)

1. Pilih dua buah bilangan prima sembarang, p dan q dan p

q.

2. Hitung

n

=

p x q

3. Hitung

φ

(

n

) = (

p

– 1)(

q

– 1)

4. Pilih bilangan integer e, gcd(

φ

(

n

),

e

) = 1; 1<e<

φ

(n)

5. Hitung d yang didapatkan dari :

de

mod

φ

(

n

) = 1

6.

Public Key

KU = {e, n}


(54)

2.8.3 Algoritma Enkripsi/Dekripsi (Stallings, 2004:569)

Enkripsi

1. Plaintext

:

M < n

2. Ciphertext

:

C = M

e

(mod n)

Contoh (1) Misalkan A mengirim pesan ke B. pesan (plainteks) yang akan

dikirim oleh A adalah : m = PUASA atau dalam sistem desimal

(pengkodean ASCII) adalah : 8085658365.

B memecah m menjadi blok yang lebih kecil, misalnya m dipecah menjadi

enam blok yang berukuran 3 digit :

m

1

= 808

m

3

= 836

m

2

= 565

m

4

= 005

A memilih p = 53 dan q = 61 (keduanya prima). Hitung n = 53x61 = 3233.

Hitung

φ

(

n

) = (p – 1)(q – 1) = (53-1)(61-1) = 52x60 = 3120.

Pilih e = 71 karena gcd(

φ

(n), e) = 1; 1<e<

φ

(n)

Hitung de mod

φ

(n) = 1, d*71 mod 3120 = 1 dan d < 3120, maka

didapatkan d = 791, karena 791*71 mod 3120 = 1.

C

1

= 808

71

mod 3233 = 2696

C

3

= 836

71

mod 3233 = 722

C

2

= 565

71

mod 3233 = 2770

C

4

= 005

71

mod 3233 = 2261

Maka C = 26962770722261 atau C = 26 96 27 70 72 22 61

Jadi Cipherteksnya menjadi C =

` FH =


(55)

Dekripsi

1. Ciphertext

:

C

2. Plaintext

:

M = C

d

(mod n)

Contoh (2) dekripsi dilakukan dengan mengunakan kunci privat, d = 791

Blok-blok cipherteks didekripsikan sebagai berikut :

M

1

= 2696

791

mod 3233 = 808

M

3

= 722

791

mod 3233 = 836

M

2

= 2770

791

mod 3233 = 565

M

4

= 2261

791

mod 3233 = 005

Akhirnya kita memperoleh kembali plainteks semula

M = 8085658365 atau M = PUASA

2.8.4 Keamanan RSA

Keamanan algoritma RSA didasarkan pada sulitnya memfaktorkan

bilangan besar menjadi faktor-faktor primanya. Masalah pemfaktoran:

Faktorkan n, yang dalam hal ini n adalah hasil kali dari dua atau lebih

bilangan prima.

Pada RSA, masalah pemfaktoran berbunyi: Faktorkan

n

menjadi dua

faktor primanya, p dan q, sedemikian sehingga

n = p . q


(56)

φ

(n) = (p – 1) (q – 1) dapat dihitung. Selanjutnya, karena kunci

enkrispi

e

diumumkan (tidak rahasia), maka kunci dekripsi d

dapat

dihitung dari persamaan de mod

φ

(n)

1

Penemu algoritma RSA menyarankan nilai

p dan

q panjangnya lebih

dari 100 digit. Dengan demikian hasil kali

n =

p

• q

akan berukuran

lebih dari 200 digit.

Menurut Rivest dan kawan-kawan, usaha untuk mencari faktor prima

dari bilangan 200 digit membutuhkan waktu komputasi selama 4

milyar tahun, sedangkan untuk bilangan 500 digit membutuhkan

waktu 10

25

tahun! (dengan asumsi bahwa algoritma pemfaktoran yang

digunakan adalah algoritma yang tercepat saat ini dan komputer yang

dipakai mempunyai kecepatan 1 milidetik).

Untunglah algoritma yang dapat memfaktorkan bilangan yang besar

belum ditemukan. Selama 300 tahun para matematikawan mencoba

mencari faktor bilangan yang besar namun tidak banyak membuahkan

hasil. Semua bukti yang diketahui menunjukkan bahwa upaya

pemfaktoran itu luar biasa sulit.

Fakta inilah yang membuat algoritma RSA tetap dipakai hingga saat

ini. Selagi belum ditemukan algoritma yang dapat memfaktorkan

bilangan bulat menjadi faktor primanya, maka algoritma RSA tetap

direkomendasikan untuk mengenkripsi pesan.


(57)

Untuk

informasi

RSA

lebih

lanjut,

kunjungi

situs

web

www.rsasecurity.com

2.9 Keamanan Algoritma

Suatu algoritma dikatakan aman, bila tidak ada cara untuk ditemukan

plaintext

nya, berapa pun banyaknya

ciphertext

yang dimiliki

cryptanalyst.

Sampai saat ini, hanya algoritma one-time-pad (OTP) yang dinyatakan tidak

dapat dipecahkan meskipun diberikan sumber daya yang tidak terbatas.

Karena selalu terdapat kemungkinan ditemukannya cara baru untuk

menembus suatu algoritma kriptografi, maka algoritma kriptografi yang dikatakan

“cukup“ atau “mungkin” aman bila memiliki keadaan sebagai berikut

(Kurniawan, 2004:14-15) :

Bila harga untuk menjebol algoritma lebih besar daripada nilai informasi yang

dibuka, maka algoritma tersebut cukup aman. Misalkan, diperlukan komputer

senilai 1 juta dolar untuk menjebol algoritma yang digunakan untuk

melindungi informasi senilai 100 ribu dolar, maka anda mungkin aman.

Bila waktu yang diperlukan untuk membobol algoritma tersebut lebih lama

daripada lamanya waktu yang diperlukan oleh informasi tersebut harus tetap

aman, maka anda mungkin aman. Misalnya, waktu untuk membobol sebuah

kartu kredit 1 tahun, sedangkan sebelum setahun, kartu tersebut sudah tidak

berlaku lagi, maka anda cukup aman.


(58)

Bila jumlah data yang dienkrip dengan kunci dan algoritma yang sama lebih

sedikit dari jumlah data yang diperlukan untuk menembus algoritma tersebut,

maka anda aman. Misalnya diperlukan 100

ciphertext

untuk menebak kunci

yang digunakan pada algoritma X. Sedangkan satu kunci hanya digunakan

untuk satu pesan, maka anda mungkin aman.

2.10

Standar Kriptografi

Standar kriptografi dibutuhkan sebagai landasan dari teknik-teknik

kriptografi karena protokol yang rumit cenderung memiliki cacat dalam

rancangan. Dengan menerapkan standar yang telah diuji dengan baik, industri

dapat memproduksi produk yang lebih terpercaya. Bahkan protokol yang

aman pun dapat lebih dipercaya pelanggan setelah menjadi standar, karena

telah melalui proses pengesahan.

Pemerintah, industri privat, dan organisasi lain berkontribusi dalam

pengumpulan luas standar-standar kriptografi. Beberapa dari standar-standar

ini adalah ANSI, FIPS, PKCS dan IEEE. Ada banyak tipe standar, beberapa

digunakan dalam

industri

perbankan,

beberapa

digunakan

secara

internasional, dan yang lain dalam pemerintahan. Standarisasi membantu

pengembang merancang standar baru, mereka dapat mengikuti standar yang

telah ada dalam proses pengembangan. Dengan proses ini pelanggan memiliki


(59)

kesempatan untuk memilih diantara produk atau layanan yang berkompetisi

(Rahayu, 2005:37).

Based on Handbook of Applied Cryptography, there are five Basic

cryptographic patents which are fundamental to current cryptographic

practice, three involving basic ideas of public-key cryptography. These

patents are discussed in chronological order. (Berdasarkan ebook Handbook

of Applied Cryptography, ada lima dasar hak paten dalam kriptografi

berdasarkan kriptografi tertentu, 3 (tiga) diantaranya merupakan kunci publik

kriptografi. Hak paten ini didiskusikan dalam permintaan kronologis).

Tabel 2. 13 Lima Hak Paten dalam Kriptografi

2.10.1 ANSI X3.92 (

American National Standards Institute

)

Based on A. Menezes, et.al:649, this standard specifies the DES

algorithm, which ANSI refer to as the Data Encryption Algorithm (DEA).

X3.92 is technically the same as FIPS 46 (Standard ini menspesifikasikan

algoritma DES, yang mana ANSI mengacu seperti pada Data Encryption

Algorithm (DEA). X3.92 secara teknik hampir sama dengan FIPS 46).


(60)

2.10.2 FIPS (

Federal Information Processing Standards

)

Standar FIPS merupakan ketentuan untuk semua badan federal

Amerika Serikat yang menggunakan sistem keamanan berbasis kriptografi

untuk melindungi informasi dalam komputer dan sistem telekomunikasi.

Penting juga bagi Pemerintah Kanada dan di banyak negara-negara anggota

NATO di Eropa. Divisi Keamanan Komputer di NIST (National Institute of

Standards and Technology) mempertahankan standar kriptografi seperti FIPS

dan mengkoordinasikan program Modul Validasi Kriptografi (CMV) untuk

menguji modul kriptografi dan algoritma. Ketentuan keamanan mencakup 11

daerah yang berhubungan dengan rancangan dan penerapan modul kriptografi

(http://csrc.nist.gov). Di bawah ini merupakan beberapa FIPS :


(1)

99

No. Nama File Tipe File

Ukuran File Sumber Ukuran File Enkripsi Waktu Enkripsi

1 Komp3 .jpg 30,951 Bytes 103,281 Bytes 2 detik

2 asal .xls 61,952 Bytes 191,478 Bytes 2 detik

Komputer

3 Broadcasting .ppt 153,088 Bytes 460,595 Bytes 3 detik

4 DAFTAR_ISI .pdf 71,098 Bytes 209,286 Bytes 1 detik

5 08 .mp3 1,263,616 Bytes 3,883,063 Bytes 10 detik

6 DES .rar 417,854 Bytes 1,279,328 Bytes 4 detik

7 UTS_Sarlika .zip 74,260 Bytes 239,891 Bytes 1 detik

Tabel 4.6.1 Tabel Ukuran dan Waktu Enkripsi

Proses enkripsi berjalan lancar, semua tipe file bisa dienkrip tanpa ada error aplikasi. Semua file sudah berubah ke dalam data yang tersandikan. Untuk lama waktu yang digunakan tergantung pada besar kecilnya ukuran file yang dienkripsi, semakin besar ukuran file yang dienkripsi maka semakin lama prosesnya. Namun, jika ukuran file yang dienkripsi kecil, maka prosesnya tidak memakan waktu lama. Waktu ditampilkan dalam hitungan jam, menit dan detik.

4.6.2 Pengujian Dekripsi Terhadap Tujuh Tipe File Yang Berbeda Pada tahap ini, penulis akan melihat apakah aplikasi dapat melakukan dekripsi, yaitu merubah file kebentuk asli pada tipe file di atas. Dan melihat di bagian informasi, seberapa banyak ukuran file itu akan bertambah dan berapa lama waktu yang digunakan. Berikut hasil dekripsi yang semua file kembali ke ukuran awal dan dapat berjalan seperti file asli.


(2)

100

Gambar 4.6.2 Tujuh Tipe File Yang Terdekripsi

No. Nama File Tipe File

Ukuran File Dekripsi

Ukuran File Sumber

Waktu Dekripsi

1 Komp3 .jpg 103,281 Bytes 30,951 Bytes 1 detik

2 asal .xls 191,478 Bytes 61,952 Bytes 1 detik

Komputer

3 Broadcasting .ppt 460,595 Bytes 153,088 Bytes 2 detik

4 DAFTAR_ISI .pdf 209,286 Bytes 71,098 Bytes 1 detik

5 08 .mp3 3,883,063 Bytes 1,263,616 Bytes 18 detik

6 DES .rar 1,279,328 Bytes 417,854 Bytes 4 detik

7 UTS_Sarlika .zip 239,891 Bytes 74,260 Bytes 1 detik

Tabel 4.6.2 Tabel Ukuran dan Waktu Dekripsi

4.7 Implementation (Impelementasi)

Pada tahap implementasi ini, penulis memaparkan strategi implementasi untuk sistem yang telah dikembangkan karena, aplikasi ini belum dapat diimplementasikan secara umum. Strategi implementasi di sini meliputi : jenis implementasi yang dapat digunakan, spesifikasi software dan

hardware yang dibutuhkan, dimana aplikasi ini dapat diterapkan, serta bagaimana cara aplikasi ini diterapkan.

1. Jenis implementasi yang diterapkan untuk aplikasi ini adalah jaringan lokal (standalone).


(3)

vi

1 0 1

2. Spesifikasi Software dan Hardware

Spesifikasi berdasarkan jenis implementasi yang diterapkan pada jaringan lokal (standalone) adalah :

a. Software yang dibutuhkan, ialah :

- Sistem Operasi : Windows Me, Windows2000 dan Windows

XP

b. Hardware yang dibutuhkan, ialah :

- Komputer (PC) minimum setara Pentium II ke atas.

- Memori (RAM) minimum 64 MB.

- Harddisk minimum 20 GB.

4.7.1 Instalasi Aplikasi MeinCrypt

Aplikasi MeinCrypt ini diterapkan di bagian umum dan kepegawaian

Kandepag Kota Jakarta Timur. Keterangan cara instalasi dapat dilihat di bagian lampiran.

4.7.2 Penggunaan Aplikasi MeinCrypt

Agar aplikasi ini dapat berjalan dengan baik, maka penulis memberi petunjuk cara penggunaan pada bagian lampiran.


(4)

Strategi pemeliharaan aplikasi yang penulis lakukan, yaitu apabila aplikasi mengalami error, maka akan dilakukan instalasi ulang.


(5)

viii

B

A

B

V

PE

NU

TU

P

5.1 Kesimpulan

Dalam bab penutup ini, kesimpulan yang penulis peroleh dari pembahasan materi pada bab-bab sebelumnya, yaitu : 1. Kriptografi dengan menggunakan kombinasi cipher simetris dan

asimetris melalui metode DES dan RSA dapat memberikan pengamanan ganda terhadap kerahasiaan data dan informasi penting di kandepag.

2. Aplikasi Kriptografi MeinCrypt merupakan solusi yang baik untuk keamanan data, meski memiliki kekurangan dari menggabungkan dua algoritma kriptografi, yaitu menyebabkan proses enkripsi menjadi panjang, karena proses enkripsi dilakukan berulang-ulang sebanyak metode algoritma yang digunakan.

5.2 Saran

1. Harus diberikan pengetahuan tentang enkripsi dan dekripsi kepada

user di kandepag.

2. Penerapan aplikasi kriptografi ini di komputer standalone, karena bersifat


(6)

personal (hanya untuk kalangan sendiri).

3. Penggunaan Passphrase yang lebih variatif antara huruf dan angka ataupun kombinasi kode ASCII akan lebih menyulitkan pembongkaran data.

1 0 2