• Tidak ada hasil yang ditemukan

PEMBUATAN PERANGKAT LUNAK SEBAGAI MEDIA PEMBELAJARAN KRIPTOGRAFI MODERN METODE BLOWFISH NASKAH PUBLIKASI. diajukan oleh Reza Fitra Kesuma

N/A
N/A
Protected

Academic year: 2021

Membagikan "PEMBUATAN PERANGKAT LUNAK SEBAGAI MEDIA PEMBELAJARAN KRIPTOGRAFI MODERN METODE BLOWFISH NASKAH PUBLIKASI. diajukan oleh Reza Fitra Kesuma"

Copied!
15
0
0

Teks penuh

(1)

PEMBUATAN PERANGKAT LUNAK SEBAGAI MEDIA

PEMBELAJARAN KRIPTOGRAFI MODERN METODE BLOWFISH

NASKAH PUBLIKASI

diajukan oleh

Reza Fitra Kesuma

08.11.2273

kepada

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER

AMIKOM YOGYAKARTA

YOGYAKARTA

2013

(2)

NASKAH PUBLIKASI

PEMBUATAN PERANGKAT LUNAK SEBAGAI MEDIA

PEMBELAJARAN KRIPTOGRAFI MODERN METODE BLOWFISH

disusun oleh

Reza Fitra Kesuma

08.11.2273

Dosen Pembimbing

Ema Utami, Dr., S.Si, M.Kom

NIK. 190302037

Tanggal 26 Juli 2013

Ketua Jurusan

Teknik Informatika

Sudarmawan, MT

NIK. 190302035

(3)

MANUFACTURE OF SOFTWARE AS A MEDIA OF LEARNING MODERN CRYPTOGRAPHY USING BLOWFISH METHODS

PEMBUATAN PERANGKAT LUNAK SEBAGAI MEDIA PEMBELAJARAN KRIPTOGRAFI MODERN METODE BLOWFISH

Reza Fitra Kesuma Ema Utami

Jurusan Teknik Informatika STMIK AMIKOM YOGYAKARTA

ABSTRACT

Cryptography is one branch of computer science which is basic and hard to understand. In a technic of data security, there are a lot of cryptography methods that being used. These cryptography methods have its own way and technic. Steps that used to solve every method are different, both in terms of extensive and complexity.

One of the method of cryptography that interesting to be learned is Blowfish cryptography. The security of Blowfish method is inextensive and complexity of its expansion key. Learning from book only will be hard to understand Blowfish cryptography. Therefore to help to understand Blowfish cryptography there is need to provide a software as a media of learning Blowfish cryptography using Visual Basic 6.0.

The design of software as a media of learning Blowfish cryptography start from making forms that support learning of Blowfish cryptography, like theory form, expansion-key form, encryption form and decryption form. These form will be casted into visual basic 6.0. The output will be forms that can visualize expansion-key process, encryption process and decryption process. By using media of learning that based on dekstop which is made by Visual Basic 6.0, hoped can help to understand Blowfish cryptography and can be usefull in the future.

(4)

1

1. Pendahuluan

Dalam dunia pedidikan, komputer dapat menjadi media pembelajaran yang baru.Pembelajaran yang didapat di perkuliahan terkadang membuat mahasiswa menjadi bosan. Hal itu disebabkan penyampaian yang kurang menarik dan cenderung membosankan, sehingga membuat mahasiswa menjadi mudah lupa dengan apa yang dipelajarinya, terutama pelajaran yang bersifat teoritis. Perlu dilakukan cara lain agar pembelajaran menjadi menarik dan mahasiswa menjadi lebih mudah menerima materi yang diajarkan. Salah satu cara untuk membuat pembelajaran menjadi lebih menarik adalah dengan membuat perangkat lunak media pembelajaran menggunakan komputer.

Komputer dapat menunjang proses pembelajaran karena dengan menggunakan komputer, materi tidak hanya ditampilkan secara tertulis, tetapi juga terdapat suara ataupun animasi dan di samping itu pelajar dapat berinteraksi secara interaktif.

Kriptografi merupakan salah satu cabang ilmu komputer yang sangat mendasar dan sedikit sulit untuk dipahami.Dalam hal teknik pengaman data, banyak metode Kriptografi yang digunakan. Metode-metode kriptografi tersebut mempunyai teknik dan cara tersendiri. Langkah-langkah pengerjaan setiap metode pun berbeda-beda, baik dari segi panjang maupun kerumitan.Salah satu metode kriptografi yang menarik untuk dipelajari adalah metode Blowfish.

Metode Blowfish dirancang oleh Bruce Schneier pada tahun 1993. Blowfish merupakan algoritma kunci simetri blok kode dengan panjang blok tetap 64 bit. Blowfish menerapkan teknik kunci berukuran sembarangan antara 32 bit hingga 448 bit, dengan ukuran default 128 bit. Keamanan metode inipun berada pada proses pembentukan kuncinya yang panjang dan rumit. Inti dari metode kriptografi Blowfish terletak pada proses pengekspasian kunci dan pembentukan tabel S-Box.Tabel S-Box dari metode ini bersifat fleksibel dan berbeda-beda setiap putaran.

2. Landasan Teori

2.1 Kriptografi

Secara etimologi (ilmu asal usul kata), kriptografi berasal dari gabungan dua kata dalam bahasa Yunani yaitu “kriptos” dan “graphia”.Kata kriptos digunakan untuk mendekripsikan sesuatu yang disembunyikan, rahasia atau misterius.Sedangkan kata

graphia berarti tulisan. Kriptografi didefenisikan sebagai ilmu dan pelajaran untuk tulisan

rahasia dengan pertimbangan bahwa komunikasi dan data dapat dikodekan untuk mencegah dari mata-mata atau orang lain yang ingin mengetahui isinya, dengan

(5)

2

menggunakan kode-kode dan aturan-aturan tertentu dan metode lainnya sehingga hanya orang yang berhak yang dapat mengetahui isi pesan sebenarnya.1

Dalam menjaga kerahasiaan data, kriptografi mentransformasikan data jelas (plaintext) ke dalam betuk data sandi (ciphertext) yang tidak dapat dikenali.Ciphertext inilah yang kemudian dikirimkan oleh pengirim (sender) kepada penerima (receiver).Setelah sampai di penerima, ciphertext tersebut ditransformasikan kembali kedalam bentuk plaintext agar dapat dikenali.

Dalam arti lain, cryptography adalah seni dan ilmu dalam mengamankan pesan. Dalam dunia kriptografi, pesan disebut plaintext atau cleartext. Proses untuk menyamarkan pesan dengan cara sedemikian rupa untuk menyembunyikan isi aslinya disebut enkripsi. Pesan yang telah dienkripsi disebut ciphertext. Proses pengembalian sebuah ciphertext keplaintext disebut dekripsi.

Cryptographer adalah orang yang mempraktekkan ilmu kriptografi, sedangkan cryptoanalysts adalah orang yang mempraktekkan kriptanalis, seni dan ilmu dalam

memecahkan ciphertext.

Aturan fundamental kriptografi yaitu seseorang harus mengasumsikan bahwa seorang kriptoanalis menguasai algoritma umum enkripsi yang digunakan, dengan kata lain, kriptanalis mengetahui cara kerja algoritma enkripsi. Jumlah usaha yang diperlukan untuk menemukan, menguji, dan memasang algoritma baru yang selalu berkompromi atau berfikir untuk berkompromi dengan algoritma lama, akan menyebabkan algoritma baru itu tidak berguna untuk menjaga kerahasiaan. Sistem kriptografi adalah sebuah algortima kriptografi ditambah semua kemungkinan plaintext, ciphertext dan kunci. 2.2 Blowfish

Blowfish merupakan sebuah algoritma kunci simetri blok kode yang dirancang pada tahun 1993 oleh Bruce Schneier untuk menggantikan DES. Pada saat itu banyak sekali rancangan algoritma yang ditawarkan, namun hampir semua terhalang oleh paten atau kerahasiaan pemerintah Amerika. Schneier menyatakan bahwa Blowfish bebas paten dan akan diletakkan pada domain publik. Dengan pernyataan Schneier tersebut Blowfish telah mendapatkan tempat di dunia kriptografi, khususnya bagi masyarakat yang membutuhkan algoritma kriptografi yang cepat, kuat, dan tidak terhalang lisensi.2

Blowfish dikembangkan untuk memenuhi kriteria desain yang cepat dalam implementasinya dimana pada keadaan optimal dapat mencapai 26 clock cycle per byte,

1

http://www.sarjanaku.com/2012/11/pengertian-kriptografi-definisi.html, diakses pada tanggal 20 Desember 2012

2

(6)

3

kompak dimana dapat berjalan pada memori kurang dari 5 KB, sederhana dalam algoritmanya sehingga mudah diketahui kesalahannya, dan keamanan yang variabel dimana panjang kunci bervariasi. Dalam pengimplementasiannya dalam komputer bermicroprosesor 32-bit dengan cache data yang besar.Blowfish terbukti jauh lebih cepat dari DES. Tetapi Blowfish tidak cocok dengan aplikasi dengan perubahan kunci yang sering atau sebagai fungsi hash satu arah seperti pada aplikasi packet switching. Blowfish pun tidak dapat digunakan pada aplikasi kartu pintar (smart card) karena memerlukan memori yang besar.

Keberhasilan Blowfish dalam menembus pasar terbukti dengan diadopsinya Blowfish sebagai Open Cryptography Interface (OCI) pada kernel Linux versi 2.5 ke atas.Dengan diadopsinya Blowfish berarti dunia open source menganggap Blowfish adalah salah satu algoritma terbaik. Kesuksesan Blowfish mulai memudar setelah kehadiran algoritma dengan ukuran blok yang lebih besar seperti AES. AES sendiri memang dirancang untuk menggantikan DES sehingga keseluruhan AES lebih unggul dari DES dan juga Blowfish.

Blowfish adalah algoritma kriptografi kunci simetri blok kode dengan panjang blok tetap 64 bit. Blowfish menerapkan teknik kunci berukuran sembarang.Ukuran kunci yang dapat diterima oleh blowfish adalah antara 32 bit hingga 448 bit, dengan ukuran default sebesar 128 bit. Blowfish memanfaatkan teknik pemanipulasian bit dan teknik pemutaran ulang dan pergiliran kunci yang dilakukan sebanyak 16 kali.

Algoritma utama terbagi menjadi dua subalgoritma utama3 : 1. Key-Expansion

Berfungsi merubah kunci (Minimum 32-bit, Maksimum 448-bit) menjadi beberapa array subkunci (subkey) dengan total 4168 byte.

2. Enkripsi Data

Terdiri dari iterasi fungsi sederhana (Feistel Network) sebanyak 16 kali putaran.Setiap putaran terdiri dari permutasi kunci-dependent dan substitusi kunci- dan data-dependent.Semua operasi adalah penambahan (addition) dan XOR pada variabel 32-bit.Operasi tambahan lainnya hanyalah empat penelusuran tabel (table lookup) array berindeks untuk setiap putaran.

2.3 Media Pembelajaran

Media pembelajaran adalah media yang membawa pesan-pesan atau informasi yang bertujuan instruksional atau mengandung maksud-maksud pengajaran. Media pembelajaran sebenarnya merupakan alat bantu yang digunakan oleh tenaga pengajar

3

http://ilmukomputer.org/wp-content/uploads/2007/07/anjar-enkripsi-blowfish.html, diakses pada tanggal 21 Desember 2012

(7)

4

dalam membantu tugasnya dalam pengajaran. Media pembelajaran juga dapat memudahkan pemahaman siswa terhadap kompetensi yang harus dikuasai terhadap materi yang harus dipelajari, yang pada akhirnya diharapkan dapat meningkatkan hasil belajar.4

Kemampuan seorang tenaga pengajar dalam mengembangkan suatu media pembelajaran merupakan salah satu faktor penting dalam keberhasilan siswa dalam mencapai kompetensi yang diharapkan.Seorang pengajar tidak hanya mengajar siswa dengan materi yang ada, tapi dituntut untuk memiliki kemampuan bagaimana mengembangkan suatu materi pelajaran yang sudah ada menjadi lebih menarik sehingga siswa lebih memahami materi yang disampaikan.

Beberapa hambatan yang dirasakan oleh seorang pengajar berkaitan dengan pengembangan media pembelajaran, salah satunya adanya keterbatasan dalam merancang dan menyusun media pembelajaran serta belum memiliki pengetahuan dan keterampilan yang memadai untuk membuat sebuah media.

Beberapa faktor yang menyebabkan kurang optimalnya hasil belajar terkait dengan hasil pengembangan media pembelajaran, antara lain :

1. Pengajar tidak tahu cara menggunakan media pembelajaran dalam proses pembelajaran.

2. Penggunaan media pembelajaran oleh pendidik sangat terbatas sehingga dirasakan kurang membantu dalam penguasaan bahan ajar.

3. Kurang variatifnya media pembelajaran sehingga media pembelajaran sangat membosankan.

2.4 Visual Basic

Microsoft Visual Basic atau VB merupakan sebuah bahasa pemrograman yang menawarkan Integrated Development Environtment (IDE) visual untuk membuat program perangkat lunak berbasis sistem operasi Microsoft Windows dengan menggunakan model pemrograman (COM).Visual basic merupakan turunan bahasa pemrograman BASIC dan menawarkan pengembangan perangkat lunak komputer berbasis grafik dengan cepat.

Beberapa bahasa skrip seperti Visual Basic for Application (VBA) dan Visual Basic Scripting Edition (VBScript), mirip seperti halnya Visual Basic, tetapi cara kerjanya yang berbeda. Para programmer dapat membangun aplikasi dengan menggunakan komponen-komponen yang disediakan oleh Microsoft Visual Basic.Program-program

4

http://neozonk.wordpress.com/2012/09/19/definisi-media-pembelajaran/, diakses pada tanggal 21 Desember 2012

(8)

5

yang ditulis dengan Visual Basic juga dapat menggunakan Windows API.Tapi membutuhkan deklarasi fungsi tambahan.

3. Analisis

Analisis dilakukan sebelum perancangan perangkat lunak. Analisis bertujuan untuk mendapatkan pemahaman secara keseluruhan tentang perangkat lunak yang akan dikembangkan sehingga perancangan perangkat lunak yang dibuat sesuai dengan kebutuhan.

3.1 Analisis Kebutuhan

Analisis kebutuhan ini digunakan untuk mengetahui kebutuhan-kebutuhan apa saja yang diperlukan untuk membuat perangkat lunak. Analisis dibagi menjadi dua jenis yaitu analisis kebutuhan fungsional dan analisis kebutuhan non fungsional.

3.1.1 Analisis Kebutuhan Fungsional

Kebutuhan fungsional berisi tentang proses apa saja yang dapat dilakukan perangkat lunak. Diharapkan perangkat lunak dapat melakukan fungsi :

1. Perangkat lunak dapat menampilkan form teori dan dapat dinavigasi menggunakan tombol.

2. User dapat menginputkan teks kunci ke dalam form pengekspansian kunci dan kemudian dilanjutkan ke proses pengekspansian kunci.

3. User dapat menginput plaintext ke dalam form proses enkripsi dan kemudian dilanjutkan ke proses enkripsi.

4. User dapat menginputkan ciphertext ke dalam form proses dekripsi dan kemudian dilanjutkan ke proses dekripsi.

5. Perangkat lunak dapat menampilkan proses pengekspansian kunci serta langkah-langkah algoritma pengkespansian kunci beserta animasinya.

6. Perangkat lunak dapat menampilkan proses enkripsi serta langkah-langkah algoritma enkripsi beserta animasinya.

7. Perangkat lunak dapat menampilkan proses dekripsi serta langkah-langkah algoritma dekripsi beserta animasinya.

3.1.2 Analisis Kebutuhan Non Fungsional

Analisis kebutuhan non fungsional merupakan tipe kebutuhan yang berisi property yang dibutuhkan dalam pembuatan perangkat lunak.Analisis kebutuhan non fungsional meliputi kebutuhan perangkat keras, kebutuhan perangkat lunak, dan kebutuhan Sumber Daya Manusia.

(9)

6 1. Kebutuhan Perangkat Keras.

Perangkat keras yang digunakan penulis dalam pembuatan perangkat lunak media pembelajaran kriptografi Blowfish yaitu PC dengan spesifikasi sebagai berikut :

a. Intel(R) Core(TM) 2 Duo @ 2,53 GHz. b. Memory 2048MB.

c. Harddisk 320GB.

d. VGA Nvidia GeForce 8600 GT.

Adapun kebutuhan minimum perangkat keras yang dibutuhkan untuk pembuatan perangkat lunak ini :

a. Intel Pentium IV 1,6 GHz. b. Memory 256MB.

c. Harddisk 40GB. d. VGA card 128MB. 2. Kebutuhan Perangkat Lunak.

Perangkat lunak berfungsi sebagai pengatur aktivitas kerja komputer dan semua instruksi yang mengarah pada sistem komputer. Adapun rincian perangkat lunak yang akan digunakan untuk pembuatan game ini adalah sebagai berikut :

a. Windows 7 Ultimate 32-bit. b. Microsoft Visual Basic 6.0. c. Adobe Photoshop C.S.

3. Kebutuhan Sumber Daya Manusia.

Analisis kebutuhan sumber daya manusia yang terlibat pada saat perancangan, pembuatan, dan implementasi. Sumber daya manusia yang dibutuhkan dalam pembuatan perangkat lunak media pembelajaran kriptografi metode Blowfish, antara lain:

a. Sistem Analis, berperan melakukan kegiatan analisis kebutuhan meliputi analisis kebutuhan perangkat keras, perangkat lunak, dan sumber daya manusia.

b. Programmer, berperan menerapkan rancangan form ke dalam tool dan membangun perangkat lunak.

c. User, merupakan pengguna yang nantinya akan menggunakan perangkat lunak ini.

(10)

7

3.2 Perancangan

Perancangan perangkat lunak pembelajaran kriptografi Blowfish terdiri dari 2 bagian, yaitu

1. Perancangan Animasi

Perangkat lunak media pembelajaran ini menggunakan animasi dalam tahapan proses pembentukan kunci, enkripsi, dekripsi dan fungsi f. Teknik animasi yang digunakan pada bagan proses adalah teknik pertukaran gambar.

2. Perancangan Tampilan

Perangkat lunak media pembelajaran ini dirancang dengan menggunakan bahasa pemrograman Microsoft Visual Basic 6.0 dan menggunakan Form sebagai form induk (main form) dan fasilitas menu editor untuk membuat dan mengatur tampilan menu pull down.

Gambar 3.1 Rancangan Form-Form pada Aplikasi

4. Hasil Penelitian dan Pembahasan 4.1 Pengujian Sistem

Pengujian perangkat lunak media pembelajaran kriptografi metode blowfish ini dilakukan dengan menggunakan metode Black Box Testing.Metode Black Box Testing merupakan pengujian program yang mengutamakan pengujian terhadap kebutuhan fungsi dari suatu program.Tujuan dari metode Black Box Testing ini adalah untuk menemukan kesalahan fungsi pada program.Pengujian menggunakan black box testing dilakukan terhadap tiga proses yaitu proses pengekspansian kunci, proses enkripsi dan proses dekripsi.

(11)

8 4.1.1 Proses Pengekspansian Kunci

Pengujian proses pengekspansian kunci dimulai dengan memasukan teks “BLOWFISH” pada form “Input Kunci”. Pada text box ini dapat disii maksimum 8 karakter.

Gambar 4.1Penginputan Kunci

Selanjutnya, pengujian dilakukan dengan menekan tombol “Proses”. Output yang dihasilkan sesuai dengan kebutuhan fungsionalnya. Program dapat menampilkan langkah-langkah proses pengekspansian kunci.

Gambar 4.2Output Proses Pengekspansian Kunci

4.1.2 Proses Enkripsi

Pengujian proses enkripsi dimulai dengan memasukkan teks kunci “BLOWFISH” dan teks yang akan dienkripsi “APLIKASI” pada form “Input Enkripsi”. Masing-masing

(12)

9

Gambar 4.3Penginputan Kunci dan Plainteks

Selanjutnya, pengujian dilakukan dengan menekan tombol “Proses”. Output yang dihasilkan sesuai dengan kebutuhan fungsionalnya. Program dapat menampilkan langkah-langkah proses enkripsi.Setelah proses enkripsi selesai ciphertext yang didapat adalah “bœqœÚ'¾¥”.

Gambar 4.4 Output Proses Enkripsi

4.1.3 Proses Dekripsi

Pengujian proses dekripsi dimulai dengan memasukkan teks hasil proses enkripsi diatas dan teks kunci yang sama pada form “Input Dekripsi”.

(13)

10

Gambar 4.5 Penginputan Kunci dan Cipherteks

Selanjutnya, pengujian dilakukan dengan menekan tombol “Proses”. Output yang dihasilkan sesuai dengan kebutuhan fungsionalnya. Program dapat menampilkan langkah-langkah proses dekripsi. Setelah proses dekripsi selesai plaintext yang didapat adalah “APLIKASI”.

Gambar 4.6 Output Proses Dekripsi

5. Kesimpulan

Dari hasil pembuatan perangkat lunak media pembelajaran kriptografi modern metode Blowfish, dapat diambil kesimpulan sebagai berikut :

1. Perangkat lunak ini dapat memvisualkan setiap langkah-langkah penyelesaian algoritma untuk proses pengekspansian kunci, enkripsi dan dekripsi secara tahap demi tahap sehingga mempermudah pemahaman.

(14)

11

2. Perangkat lunak ini dilengkapi dengan fungsi untuk mengatur kecepatan animasi, sehingga user dapat mengikuti dan memahami setiap langkah-langkah yang divisualkan.

3. Algoritma Blowfish dapat diimplementasikan ke dalam banyak bahasa pemrograman dan algoritma serta sifat perancangannya terbuka bagi umum. Dalam pembuatannya, penelitian ini diimplementasikan ke dalam Microsoft Visual Basic 6.0 menjadi sebuah perangkat lunak pembelajaran berbasis dekstop.

(15)

12 Daftar Pustaka

Ariyus, Doni. 2008. Pengantar Ilmu Kriptografi: Teori Analisis dan Implementasi. Yogyakarta: ANDI.

Fernando, Yendri Ikhlas. Kriptografi Ikut Mewarnai Peradaban Dunia,

http://ilmukomputer.org/wp-content/uploads/2012/11/yendri-kriptografi.pdf, diakses tanggal 20 Desember 2012.

Nursyamsi, Aji. 2012. Definisi Media

Pembelaran,http://neozonk.wordpress.com/2012/09/19/definisi-media-pembelajaran/, diakses tanggal 21 Desember 2012.

Yasin, Sanjana. 2012. Pengertian Kriptografi Definisi Kriptografi,

http://www.sarjanaku.com/2012/11/pengertian-kriptografi-definisi.html, diakses tanggal 20 Desember 2012.

Gambar

Gambar 3.1 Rancangan Form-Form pada Aplikasi
Gambar 4.2Output Proses Pengekspansian Kunci
Gambar 4.3Penginputan Kunci dan Plainteks
Gambar 4.5 Penginputan Kunci dan Cipherteks

Referensi

Dokumen terkait

untuk perbandingan hasil digitalisasi SU secara keseluruhan Kelurahan Genuksari masih lebih baik dibanding Kelurahan Karangroto dalam hal kesesuaian luas, lokasi pada citra,

Proses mewarnai dengan teknik pointilis telah cukup dipahami oleh siswa di kelas X MIA 3 SMA NEG 9 GOWA baik dari sisi penempatan gambar stilasi yang tepat atau pun

Sedangkan sebagai warga masyar- akat, kita wajib untuk mendukung program pembuatan e-KTP sehing- ga pemerintah pada akhirnya memi- liki sistem data base kependudukan yang

(1) Pengolahan sebagaimana dimaksud dalam Pasal 5 huruf d dilakukan dengan mengubah karakteristik, komposisi, dan jumlah sampah yang dilaksanakan di TPS/TPST clan cli

Seperti dalam kegiatan gotong-royong menjaga kebersihan, setelah ada ekowisata masyarakat semakin kompak karena adanya kesadaran yang lebih untuk menjaga kebersihan,

Setelah melakukan penelitian menggunakan model pembelajaran kooperatif tipe STAD diperoleh hasil pengamatan aktivitas mahasiswa saling membantu antar teman satu

Berdasarkan Tabel 1, Tabel 2, Tabel 3 dan Tabel 4 dapat dikatakan bahwa perangkat pembelajaran matematika diskrit yang digunakan oleh dosen sudah memasukkan

Dimulai dari kelas B2, dengan cara penataan fasilitas kelas seperti tempat duduk yang jarang diubah, penataan media dan alat permainan di setiap area sering tidak ditata