implementasi algoritma kriptografi blowfish...
TRANSCRIPT
IMPLEMENTASI ALGORITMA KRIPTOGRAFI BLOWFISH
UNTUK KEAMANAN DOKUMEN
PADA MICROSOFT OFFICE
Naskah Publikasi
diajukan oleh
Shanty Erikawaty Aryani Tambunan
06.11.1189
kepada
JURUSAN TEKNIK INFORMATIKA
SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER
AMIKOM
YOGYAKARTA
2010
IMPLEMENTASI ALGORITMA KRIPTOGRAFI BLOWFISH UNTUK KEAMANAN DOKUMEN
PADA MICROSOFT OFFICE
Shanty Erikawaty Aryani Tambunan Jurusan Teknik Informatika
STMIK AMIKOM YOGYAKARTA
ABSTRACT
Security problem is one of the most important aspect in the world of information
technology, such as: security of documents. Today, most of the documents using
Microsoft Office applications. To overcome the security problems of this document, the
author approaches the data encryption technology using Blowfish algorithm. A data
encryption technology to ensure that the information that flows in a session is not
intercepted or modified others. Blowfish or often called "OpenPGP.Cipher.4" is a
Symmetric Cryptosystem, using the same key for encryption and decryption.
This research is divided into 2 part. The first is the implementation of the Blowfish
algorithm in the programming language Visual Basic 6.0 to be a desktop model based
Cryptosystem. The Second thing is testing key and several Microsoft Office file
extensions, and testing of additional tools useful Folder Lock to lock the folder.
The result said that the implementation in Windows operation system is
successful. All Microsoft Office file types including Microsoft Word files (. Doc,. Docx,.
Rtf,. Txt), Microsoft Excel (. Xls,. Xlsx), Microsoft Access (. Mdb) and Microsoft
PowerPoint (. Ppt,. Pptx) can do encryption and decryption process.
Keyword: Cryptography, Blowfish Algorithm, Microsoft Office, Symmetric Cryptosystem,
Secret Information.
1. PENDAHULUAN
1.1 Latar Belakang Masalah
Masalah keamanan merupakan salah satu aspek paling penting dalam dunia
teknologi informasi, misalnya : keamanan dokumen. Sekarang ini, sebagian besar
dokumen-dokumen menggunakan aplikasi Microsoft Office, karena kemudahan dalam
menggunakannya. Di dalam Microsoft Office ada beberapa aplikasi yang dapat
digunakan, yaitu Microsoft Word, Microsoft Excel, Microsoft Access,dan Microsoft
PowerPoint. Berbagai aplikasi dalam Microsoft Office dapat digunakan untuk mengolah
kata dan angka sesuai kebutuhan pengguna.
Keamanan dokumen sangat diperlukan, maka setiap orang memerlukan suatu
aplikasi yang dapat mengamankan dokumen rahasia dan penting agar dokumen tersebut
hanya dapat di lihat dan di baca oleh orang tertentu saja.
Beberapa cara telah dikembangkan untuk menangani masalah keamanan ini,
salah satu teknik untuk pengamanan data adalah dengan menggunakan algoritma
penyandian data. Algoritma penyandian data saat ini telah semakin banyak jumlahnya,
sejalan dengan berkembangnya ilmu yang mempelajari penyandian data tersebut. Ilmu
ini biasa disebut Kriptografi.
Dalam kriptografi terdapat beberapa metode yang cukup penting dalam
pengamanan data, untuk menjaga kerahasiaan data salah satunya adalah enkripsi
(encryption). Enkripsi adalah suatu proses yang dilakukan untuk mengubah pesan asli
menjadi chipertext. Sedangkan suatu proses yang dilakukan untuk mengubah pesan
tersembunyi menjadi pesan asli disebut dekripsi. Pesan biasa atau pesan asli disebut
plaintex sedangkan pesan yang telah diubah atau disandikan supaya tidak mudah dibaca
disebut dengan chipertext.
Untuk mengatasi masalah keamanan dokumen ini, penulis melakukan
pendekatan teknologi enkripsi data menggunakan algoritma Blowfish. Enkripsi data
merupakan teknologi untuk memastikan bahwa informasi yang mengalir pada suatu sesi
tidak disadap atau diubah orang lain. Blowfish atau sering disebut "OpenPGP.Cipher.4"
merupakan enkripsi yang termasuk dalam golongan Symmetric Cryptosystem (Schneier,
1993), yaitu menggunakan kunci yang sama untuk enkripsi dan dekripsinya.
2. TINJAUAN PUSTAKA DAN LANDASAN TEORI
2.1 Tinjauan Pustaka
Skripsi terdahulu dengan judul “Pendekatan Metode Enkripsi Menggunakan
Algoritma Blowfish Untuk Perancangan Model Kriptosistem Dengan PHP 5” oleh Diyah
Anita Sari. Skripsi tersebut membahas tentang bagaimana membuat aplikasi untuk
mengenkripsi dan dekripsi data menggunakan algoritma Blowfish dengan menggunakan
software PHP 5. Aplikasi yang dibuat dapat mengenkripsi teks dan file dengan berbagai
ekstensi file yang ada.
Dari hasil uji coba rancangan dan uji coba sistem, diketahui bahwa kekurangan
sistem tersebut adalah:
1. Sistem belum bisa menerapkan pemakaian kunci yang konstan. Hal ini
karena sistem memiliki tujuan untuk memberikan keleluasaan user
menetapkan jumlah bit kunci yang menentukan faktor keamanan dan
kecepatan proses sistem.
2. Sistem membutuhkan memory yang cukup besar untuk proses kerjanya,
sehingga memory kecil pada sebuah PC dan terutama notebook akan
sangat mempengaruhi kapasitas file yang diproses.
3. Sistem belum berbasis database, sehingga belum menyediakan fasilitas
yang lebih kompleks dan lebih user friendly bagi user untuk menyimpan file
kerja, kunci dan sebagainya.
4. File hasil dekripsi masih menyertakan ekstensi ciphertext (*.tc8), sehingga
user harus menghapus ekstensi terakhir ciphertext untuk dapat membaca
kembali plaintext hasil dekripsi.
2.2 Landasan Teori
2.1.1 Konsep Dasar Sistem Kriptografi
Kriptografi berasal dari bahasa Yunani, Crypto dan Graphia. Cripto berarti
rahasia (secret) dan graphia berarti tulisan (writing). Menurut terinologinya, Kriptografi
adalah ilmu dan seni untuk menjaga keamanan pesan ketika pesan dikirim dari suatu
tempat ke tempat yang lain [Dony Ariyus, 2008]. Metode ini sudah digunakan oleh
bangsa Mesir sejak 4000 tahun lalu.
Algoritma kriptografi terdiri dari tiga fungsi dasar, yaitu :
1. Enkripsi
Enkripsi adalah merubah plaintext menjadi ciphertext. Sebuah pesan yang
belum mengalami enkripsi disebut sebagai plaintext. Sedangkan pesan yang
sudah disandikan dengan sebuah algoritma enkripsi disebut sebagai ciphertext.
2. Dekripsi
Dekripsi merupakan kebalikan dari enkripsi. Dekripsi adalah proses merubah
ciphertext menjadi plaintext.
3. Kunci
Yang dimaksud kunci disini adalah kunci yang dipakai untuk melakukan enkripsi
dan dekripsi.
2.1.2 Algoritma Blowfish
Blowfish atau disebut juga OpenPGP.Cipher.4 adalah enkripsi yang termasuk
dalam golongan Symmetric Cryptosystem [Schneier, 1993]. Metode enkripsi ini
diciptakan oleh Bruce Schneier, seorang Cryptanalyst Presiden perusahaan Counterpane
Internet Security, Inc pada tahun 1993. Dan dipublikasikan tahun 1994. Blowfish dibuat
untuk digunakan pada komputer yang mempunyai mikroprosesor besar (32 bit ke atas
dengan cache data yang besar).
Blowfish merupakan cipher blok. Yang berarti selama proses enkripsi dan
dekripsi, Blowfish bekerja dengan membagi pesan menjadi blok-blok bit dengan ukuran
sama panjang yaitu 64-bit dengan panjang kunci bervariasi yang mengenkripsi data
dalam 8 byte blok. Pesan yang bukan merupakan kelipatan 8 byte akan ditambahkan bit-
bit tambahan (padding) sehingga ukuran untuk tiap blok sama . Algoritma Blowfish terdiri
dari dua bagian: key expansion dan enkripsi data [Schneier, 1993].
2.1.3 Enkripsi Algoritma Blowfish
Blowfish menggunakan subkunci besar yang harus dihitung sebelum enkripsi
dan dekripsi data. Algoritma Blowfish menerapkan jaringan Feistel (Feistel Network) yang
terdiri dari 16 putaran. Input adalah elemen 64-bit, X untuk alur algoritma enkripsi dengan
metode Blowfish dijelaskan sebagai berikut [Schneier, 1993]:
1. Bentuk inisial P-array sebanyak 18 buah (P1,P2,......P18) masing-masing
bernilai 32-bit. Array P terdiri dari delapan belas kunci 32-bit subkunci :
P1,P2,....,P18
2. Bentuk S-box sebanyak 4 buah masing-masing bernilai 32-bit yang memiliki
masukan 256.
Empat 32-bit S-box masing-masing mempunyai 256 entri :
S1,0,S1,1,....................,S1,255
S2,0,S2,1,....................,S2,255
S3,0,S3,1,....................,S3,255
S4,0,S4,1,....................,S4,255
1. Plaintext yang akan dienkripsi diasumsikan sebagai masukan, Plaintext
tersebut diambil sebanyak 64-bit, dan apabila kurang dari 64-bit maka kita
tambahkan bitnya, supaya dalam operasi nanti sesuai dengan datanya.
2. Hasil pengambilan tadi dibagi 2, 32-bit pertama disebut XL, 32-bit yang
kedua disebut XR.
3. Selanjutnya lakukan operasi XL = XL xor Pi dan XR = F(XL) xor XR.
4. Hasil dari operasi diatas ditukar XL menjadi XR dan XR menjadi XL.
5. Lakukan sebanyak 16 kali, perulangan yang ke-16 lakukan lagi proses
penukaran XL dan XR.
6. Pada proses ke-17 lakukan operasi untuk XR = XR xor P17 dan XL = XL xor
P18.
7. Proses terakhir satukan kembali XL dan XR sehingga menjadi 64-bit kembali.
3. ANALISIS MASALAH
3.1 Bagan Alir Sistem
Bagan alir sistem dari CryptBlow menjelaskan proses yang terjadi pada
sistem secara keseluruhan. Pada bagan alir sistem CryptBlow akan digambarkan bahwa
data yang diinputkan pada sistem berasal dari satu sumber, yaitu dari harddisk. Sebelum
proses input file, user harus memilih instruksi (menu) yang akan digunakan untuk
memproses file (enkripsi/dekripsi).
Gambar 3.1 Flowchart Sistem
Pilih Menu
Encrypt
Decrypt
Decrypt File
Encrypt File
File
Input File
Start Instruction
Insert Key
Ciphertext /
Plaintext
3.2 Bagan Alir Program
Proses kerja untuk enkripsi dan dekripsi menggunakan kunci dan proses yang
serupa. Hanya berbeda pada P-array (P1,P2,........,P18) digunakan dengan urutan
terbalik atau di inverskan. Oleh karena itu, flowchart program untuk proses enkripsi dan
dekripsi digambarkan dalam satu bagan alir saja.
Bagan alir program untuk fungsi F menjelaskan bahwa masukan fungsi berupa
xL, yang kemudian data xL akan dibagi menjadi empat bagian sama besar bernilai 8 bit,
yaitu menjadi a, b, c, d. Dan proses selanjutnya memproses a, b, c, d ke dalam Fungsi
F(xL) untuk menghasilkan F(xL) dan arus program Fungsi F selesai.
Gambar 3.2 Flowchart Fungsi F
Flowchart program enkripsi dan dekripsi CryptBlow digambarkan ke dalam
flowchart yang sama. Karena proses yang berjalan pada program enkripsi dan dekripsi
adalah sama.
Mulai
xL/(4) = a, b, c, d
F(xL) = ((S1,a + S2,b mod 232) XOR S3,c) + S4,d mod 232
Selesai
xL
a, b, c, d
F(xL)
Gambar 3.3 Flowchart Proses Enkripsi dan Dekripsi
4. HASIL PENELITIAN DAN PEMBAHASAN
4.1 Pengujian Kunci untuk Uji Coba Sistem
Pengujian kunci diperlukan untuk optimalisasi pengujian sistem. Pemakaian
weak-key akan dapat mengurangi kinerja program. Dan pengujian sistem tidak dapat
dilakukan secara optimal.
Kunci yang digunakan untuk uji coba program dan sistem bukan termasuk weak
key (kunci yang lemah) maupun semi-weak key (kunci setengah lemah). Hal ini
diperlukan adanya pengujian pada kunci untuk proses enkripsi dan dekripsi. Kunci lemah
adalah kunci yang apabila mengenkripsi suatu plaintext kemudian dienkripsi lagi
menggunakan kunci yang sama, maka ciphertextnya adalah plaintext itu sendiri.
Mulai
Selesai
x/2 = xL & xR
xL = xL XOR Pi xR = F(xL) XOR xR
i <
Satukan xL & xR. x = xL + xR
x
Tukar xL dengan xR
xL=xR, R=xL
Tukar xL dengan xR
x
xL, xR
xL=xR, xR=xL
Sedangkan yang disebut dengan kunci setengah lemah adalah sepasang kunci yang
memiliki sifat jika sebuah plaintext dienkripsi dengan suatu kunci, akan dapat dienkripsi
dengan kunci yang lain.
1. Simulasi Pemakaian Kunci yang bukan Weak Key
Ujicoba yg dilakukan pada file Bentuk Normal Chomsky.doc dengan kunci
amikom hasil enkripsinya adalah :
Gambar 4.1 Hasil Enkripsi Pertama
Kemudian ciphertext hasil enkripsi akan dienkripsi lagi menggunakan key yang
sama (amikom), dapat dilihat pada Gambar 4.2:
Ini adalah hasil ciphertext dari enkripsi kedua:
Gambar 4.2 Hasil Enkripsi Kedua
Ternyata hasil enkripsi kedua (ciphertext kedua) bukanlah plaintext pada enkripsi
pertama. Maka bisa dikatakan bahwa kunci yang dipakai untuk uji coba sistem bukanlah
kunci yang lemah.
4.2 Pengujian Enkripsi Terhadap Beberapa Tipe File
Uji coba enkripsi yang telah dilakukan pada file yang berekstensi .txt,
.doc, .docx, .rtf, .ppt, .pptx, .xls, .xlsx, dan .mdb. Dibawah ini menujukkan hasil
enkripsi pada file berekstensi .txt, .doc dan .xlsx.
1. File .txt
Untuk ujicoba pada file berekstensi .txt digunakan file bernama
blowfish.txt dan menggunakan password “amikom”. Plaintextnya sebagai
berikut:
Gambar 4.3 Plaintext blowfish.txt
File plaintext adalah blowfish.txt dengan ukuran kurang dari 1.50 KB.
Hasil enkripsi menjadi file dengan nama hasil_enkripsi_blowfish.txt berukuran
1.52 KB atau lebih besar 0.02 KB dari ukuran file aslinya.
Hasil enkripsinya :
Gambar 4.4 Ciphertext file blowfish.txt
Hasil enkripsinya berupa simbol-simbol yang tidak bisa dibaca. Jika ingin
membaca kembali harus melalui proses dekripsi.
2. File .doc
Untuk ujicoba pada file berekstensi .doc digunakan file bernama Bentuk
Normal Chomsky.doc dan menggunakan password “amikom”. Plaintextnya
sebagai berikut:
Gambar 4.5 Plaintext Bentuk normal chomsky.doc
File plaintext adalah Bentuk Normal Chomsky.doc dengan ukuran 45 KB. Hasil
enkripsi menjadi file hasil enkripsi Bentuk Normal Chomsky.doc berukuran 45 KB atau
sama dengan file aslinya.
Hasil enkripsinya :
Gambar 4.6 Ciphertext Bentuk normal chomsky.doc
Hasil enkripsinya berupa simbol-simbol yang tidak bisa dibaca. Jika ingin
membaca kembali harus melalui proses dekripsi.
3. File .xlsx
Untuk ujicoba pada file berekstensi .xlsx digunakan file bernama
jadwal_ujian.xlsx dan menggunakan password “amikom”. Plaintextnya sebagai
berikut:
Gambar 4.22 Plaintext jadwal_ujian.xlsx
File plaintext adalah jadwal_ujian.xlsx dengan ukuran 10.0 KB. Hasil
enkripsi menjadi file hasil enkripsi jadwal_ujian.xlsx berukuran 10.0 KB atau lebih
sama dengan ukuran file aslinya.
Hasil enkripsinya :
Gambar 4.23 Ciphertext jadwal_ujian.xlsx
Hasil enkripsi /ciphertext tidak bisa ditampilkan karena pada file .docx
merupakan ekstensi file pada Microsoft Office 2007 yang belum bisa di enkripsi
secara baik dengan algoritma Blowfish, tetapi jika di dekripsi file tersebut akan
kembali seperti semula/plaintext.
4.3 Pengujian Dekripsi Terhadap Beberapa Tipe File
Decrypt file merupakan proses decode dari ciphertext dirubah menjadi
plaintext. File yang didekripsi harus merupakan file ciphertext yang telah
dienkripsi sebelumnya, menggunakan system yang sama. Proses dekripsi
menggunakan kunci yang sama pada saat enkripsi, yaitu amikom. Hasil yang
seharusnya adalah file hasil dekripsi merupakan file plaintext pada saat proses
enkripsi.
Dibawah ini merupakan contoh dekripsi dari file .xlsx yaitu ”hasil enkripsi
jadwal_ujian.xlsx” yang merupakan hasil enkripsi dari file ”jadwal.ujian.xlsx.”
Gambar 4.7 Proses Dekripsi
Proses dekripsi hampir sama dengan proses enkripsi. Langkah-
langkahnya sebagai berikut :
1) Masukkan file yang akan di dekripsi dengan menekan button Cari.
2) Pilih radiobutton dekripsi.
3) Masukkan kunci, pilih format kunci kemudian tekan button Set key.
4) Simpan file ditempat yang dikehendaki dengan menekan button simpan.
Jika ingi menyimpan pada file yang sama beri tanda centang diatas
button simpan.
5) Yang terakhir tekan button Eksekusi.
Jika Proses dekripsi berhasil akan muncul tampilan seperti dibawah ini:
Gambar 4.8 Peringatan jika berhasil dekripsi
Hasil dekripsinya :
Gambar 4.9 Hasil Dekripsi
Dari uji coba yang telah dilakukan pada file yang berekstensi .txt, .doc,
.docx, .rtf, .ppt, .pptx, .xls, .xlsx, dan .mdb yang telah di enkripsi (ciphertext) yang
kemudian di dekripsi, file akan kembali seperti semula (plaintext).
4.4 Pembahasan Masalah
1. Ukuran file
Dalam ujicoba dengan berbagai format file Microsoft Office ukuran file plaintext
dan ciphertextnya relatife sama, kemungkinan berbedaan ukuran file sangat kecil
sehingga terlihat sama.
Tabel 4.1 Ukuran File Plaintext dan Ciphertext
No Format File Plaintext Ciphertext Keterangan
1 .txt 1.50 KB 1.52 KB Selisih 0.02 KB
2 .doc 45 KB 45 KB Sama
3 .docx 10.5 KB 10.6 KB Selisih 0.1 KB
4 .rtf 42.1 KB 42.1 KB Sama
5 .ppt 99.0 KB 99.0 KB Sama
6 .pptx 501 KB 501 KB Sama
7 .xls 77.5 KB 77.5 KB Sama
8 .xlsx 10.0 KB 10.0 KB Sama
9 .mdb 388 KB 388 KB Sama
2. Cara Kerja Sistem
1) Sistem bekerja sebagai aplikasi berbasis desktop yang belum
membutuhkan sistem database.
2) Sebelum proses enkripsi/dekripsi, user harus memberikan
masukan key (sebagai kunci enkripsi/dekripsi) kepada sistem.
Keamanan data tergantung kepada kerahasiaan kunci.
3) Proses enkripsi dan dekripsi dengan data file, akan membuat
sistem menjalankan prosedur temporary file.
4) Pada enkripsi file, sistem memberikan output berupa ciphertext
file dengan format penamaan ”nama_file.ekstensi_file”
5. KESIMPULAN
Kesimpulan yang dapat diambil dari studi dan implementasi algoritma
Blowfish adalah:
1. Algoritma Blowfish menerapkan jaringan Feistel (Feistel Network) yang terdiri
dari 16 putaran. Blowfish merupakan cipher blok. Yang berarti selama proses
enkripsi dan dekripsi, Blowfish bekerja dengan membagi pesan menjadi blok-
blok bit dengan ukuran sama panjang yaitu 64-bit dengan panjang kunci
bervariasi yang mengenkripsi data dalam 8 byte blok. Pesan yang bukan
merupakan kelipatan 8 byte akan ditambahkan bit-bit tambahan (padding)
sehingga ukuran untuk tiap blok sama . Algoritma Blowfish terdiri dari dua
bagian: key expansion dan enkripsi data.
2. Algoritma Blowfish dapat diimplementasikan ke dalam banyak bahasa
pemrograman dan algoritma serta sifat perancangannya terbuka bagi umum.
Algoritma Blowfish awalnya diimplementasikan ke dalam bahasa C.
Kemudian berkembang ke berbagai bahasa pemrograman karena sifatnya
yang open source. Dalam penelitian ini diimplementasikan ke dalam
Microsoft Visual Basic 6.0 menjadi sebuah model kriptosistem berbasis
desktop. File yang dapat di enkripsi dan dekripsi adalah file Microsoft Office
meliputi file Microsoft Word (.doc, .docx, .rtf, .txt), Microsoft Excel (.xls, .xlsx),
Microsoft Access (.mdb) dan Microsoft PowerPoint (.ppt, .pptx).
3. Pengujian yang dilakukan adalah pengujian kunci, pengujian berbagai jenis
file Microsof Office, pengujian putaran Blowfish dan pengujian tool tambahan
yaitu Lock Folder.
a. Pengujian kunci
Dalam pengujian kunci, maka bisa dikatakan bahwa kunci yang dipakai
untuk uji coba sistem bukanlah kunci yang lemah.
b. Pengujian berbagai jenis file Microsof Office
• Semua jenis file Microsoft Office meliputi file Microsoft Word
(.doc, .docx, .rtf, .txt), Microsoft Excel (.xls, .xlsx), Microsoft Access
(.mdb) dan Microsoft PowerPoint (.ppt, .pptx) dapat dilakukan proses
enkripsi dan dekripsi.
• Hasil enkripsi pada file .doc, .rtf, .txt, dan .xls dapat dibuka,
sedangkan hasil enkripsi pada file .docx, .xlsx, .mdb, .ppt, dan .pptx tidak
dapat dibuka, tetapi dapat di dekripsi menjadi file semula.
c. Pengujian putaran Blowfish
Implementasi algoritma Blowfish optimal dan aman dari pembongkaran
pesan, maka algoritmanya harus menggunakan 16 putaran.
d. Pengujian Lock Folder
Tool Lock Folder dapat digunakan untuk mengamankan suatu folder.
6. DAFTAR PUSTAKA
Ariyus, Dony. Pengantar Ilmu Kriptografi Teori, Analisis, dan Implementasi, Andi Offset,
Yogyakarta, 2008
Schneier. Bruce. Description of a New Variable-Length Key, 64-Bit Block Cipher
(Blowfish) (http://schneier.com. Diakses 13 juni 2009)
Rhee, Man Young. Cryptography and Sesure Communications, Singapore, McGraw-Hill
Book Co.1994
Ratih, Studi dan Implementasi Algoritma Blowfish Untuk Aplikasi Enkripsi dan Dekripsi
File (www.informatika.org/~rinaldi/Kriptografi/2006-2007/Makalah1/Makalah1-
077.pdf. Diakses 14 maret 2009)
Dendy_arendra. Metoda Enkripsi Blowfish
(http://www.informatika.org/~rinaldi/Kriptografi/2007-
2008/Makalah2/MakalahIF5054-2007-B-059.pdf. Diakses 28 Agustus 2009)
Jogiyanto. Analisis & Desain Sistem Informasi: Pendekatan Terstruktur Teori dan Praktek
Aplikasi Bisnis. Andi Offset, Yogyakarta. 2005
Indocisc Pengantar Kriptografi (http://www.cert.or.id/~budi/courses/ec5010/04-
kriptografi.pdf. Diakses 9 april 2009)
Wikipedia Kriptografi (http://id.wikipedia.org/wiki/Kriptografi. Diakses 21 Maret 2009)
Wikipedia Cipher (http://en.wikipedia.org/wiki/Blowfish_(cipher). Diakses 5 Maret 2009)
Schneier B. Mode Of DES (www.di-mgt.com.au Diakses 4 Maret 2009)
Sholeh, Muhammad Pengantar Kriptografi
(http://202.91.15.14/upload/files/4261_Pengantar_Kriptografi.pdf. Diakses 4 Mei 2009 )
Suta. Mengenal Visual Basic (http://suta32.googlepages.com/suta32-Bab1-
MengenalVisualBasic6.0.pdf. Diakses 4 Mei 2009)
Rusmawan, Uus. Konsep dan Implementasi Visual Basic, Elex Media Computindo,
Jakarta, 2007