IMPLEMENTASI ALGORITMA ADVANCED ENCRYPTION STANDARD (AES) RIJNDAEL UNTUK PROTEKSI FILE AUDIO
SKRIPSI
M. SIGIT PRASETYO 131421094
PROGRAM EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN
2016
IMPLEMENTASI ALGORITMA ADVANCED ENCRYPTIONN STANDARD (AES) RIJNDAEL UNTUK PROTEKSI FILE AUDIO
SKRIPSI
Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah Sarjana Ilmu Komputer
M. SIGIT PRASETYO 131421094
PROGRAM EKSTENSI S1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
MEDAN
2016
ii
PERSETUJUAN
Judul : IMPLEMENTASI ALGORITMA ADVANCED
ENCRYPTION STANDARD (AES) RIJNDAEL UNTUK PROTEKSI FILE AUDIO
Kategori : SKRIPSI
Nama : M. SIGIT PRASETYO
Nomor Induk Mahasiswa : 131421094
Program Studi : EKSTENSI S1 ILMU KOMPUTER
Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI UNIVERSITAS SUMATERA UTARA
Komisi Pembimbing :
Pembimbing II Pembimbing I
Dian Rachmawati, S.Si.,M. Kom Prof. Dr. Muhammad Zarlis NIP. 198307232009122004 NIP. 195707011986011003
Diketahui/disetujui oleh
Program Studi Ekstensi S1 Ilmu Komputer Ketua,
Dr. Poltak Sihombing, M.Kom
NIP. 19620217 199103 1 001
PERNYATAAN
IMPLEMENTASI ALGORITMA ADVANCED ENCRYPTION STANDARD (AES) RIJNDAEL UNTUK PROTEKSI FILE AUDIO
SKRIPSI
Saya mengakui bahwa skripsi ini adalah hasil kerja saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing disebutkan sumbernya.
Medan, Oktober 2016
M. SIGIT PRASETYO
131421094
iv
PENGHARGAAN
Syukur kepada Tuhan Yang Maha Esa penulis ucapkan, Tuhan yang telah memberikan rahmat, berkah serta hidayah-Nya kepada penulis sehingga penulis dapat menyelesaikan skripsi ini tepat waktu yang sesuai dengan instruksi dan peraturan yang berlaku di Fakultas Ilmu Komputer dan Teknologi Informasi Universitas Sumatera Utara.
Selanjutnya penulis menyampaikan rasa terima kasih dan penghargaan yang sebesar-besarnya kepada semua pihak yang telah memberikan bantuan dan masukan, baik secara moril dan materil dalam menyelesaikan penulisan tugas akhir ini, terutama sekali kepada:
1. Bapak Prof. Dr. Runtung Sitepu, SH, M.Hum selaku Rektor Universitas Sumatera Utara.
2. Bapak Prof. Dr. Opim Salim Sitompul, M.Si sebagai Dekan Fakultas Ilmu Komputer dan Teknologi Informasi
3. Bapak Dr. Poltak Sihombing, M.Kom sebagai Ketua Program Studi S1 Ilmu Komputer.
4. Ibu Maya Silvi Lydia, B.Sc, M.Sc selaku Sekretaris Program Studi Ilmu Komputer.
5. Bapak Prof. Dr. Muhammad Zarlis selaku Dosen Pembimbing I yang telah meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.
6. Ibu Dian Rachmawati, S.Si.,M. Kom selaku Dosen Pembimbing II yang telah meluangkan waktu, tenaga, dan pikiran dalam membimbing, mengarahkan, menasehati, memotivasi, dan menyemangati penulis agar dapat menyelesaikan skripsi ini.
7. Bapak Dr. Poltak Sihombing, M. Kom selaku dosen Pembanding I yang telah
memberikan kritik dan saran terhadap skripsi penulis.
8. Bapak Handrizal, S.Si.,M.Comp.,Sc selaku dosen Pembanding II yang telah memberikan kritik dan saran terhadap skripsi penulis.
9. Seluruh staf pengajar dan pegawai Fakultas Ilmu Komputer dan Teknologi Informasi.
10. Teristimewa orang tua yang penulis cintai, ibunda Rahmi Lubis yang tidak henti- hentinya memberikan doa, motivasi, dan dukungan yang selalu menjadi sumber semangat penulis.
11. Teman-teman seperjuangan mahasiswa Ekstensi S1-Ilmu Komputer stambuk 2013.
12. Semua pihak yang terlibat langsung ataupun tidak langsung yang tidak dapat penulis ucapkan satu per satu yang telah membantu menyelesaikan skripsi ini.
Penulis menyadari bahwa skripsi ini masih memiliki banyak kekurangan, baik dari segi teknik, tata penyajian ataupun dari segi tata bahasa. Oleh karena itu penulis bersedia menerima kritik dan saran dari pembaca dalam upaya perbaikan skripsi ini.
Semoga skripsi ini dapat bermanfaat bagi penulis dan pembaca, khususnya rekan- rekan mahasiswa lainnya yang mengikuti perkuliahan di Universitas Sumatera Utara.
Medan, Oktober 2016 Penulis
M. Sigit Prasetyo
v
ABSTRAK
Dengan memanfaatkan kriptografi di masa modern ini, proteksi file audio bukanlah mustahil untuk dilakukan dengan tujuan untuk menjaga legalitas dari pemilik hak cipta file audio tersebut. Algoritma kriptografi Advanced Encryption Standard (AES) Rijndael merupakan standar enkripsi dengan kunci simetris yang diadopsi oleh pemerintah Amerika Serikat, AES Rijndael telah dianalisis secara luas dan sekarang digunakan diseluruh dunia, seperti halnya dengan pendahulunya Data Encryption Standart (DES). Dalam penelitian ini penulis akan menerapkan algoritma Advanced Encryption Standard (AES) untuk melakukan enkripsi pada tiap karakter yang terdapat pada file audio tersebut dan menyimpan Cipher-text dari hasil enkripsi ke dalam format file Audio yang sama, dan melakukan dekripsi pada file audio yang telah dienkripsi ke bentuk File aslinya. Aplikasi yang dirancang dalam penelitian ini telah mampu melakukan proses penyandian file Audio dengan Algoritma Advanced Encryption Standart Rijndael. Diharapkan aplikasi yang dihasilkan dapat berguna bagi pihak yang ingin menjaga kerahasiaan file audio miliknya.
Kata Kunci: Kriptografi, Advanced Encryption Standard, AES Rijndael, File Audio
RIJNDAEL’S ADVANCED ENCRYPTION STANDARD (AES) IMPLEMENTATION FOR AUDIO FILES PROTECTION
ABSTRACT
Using cryptography nowadays, audio file protection is possible to do in order to protect legality of the file who owns its copyright. Advanced Encryption Standard (AES) Rijndael’s algorithm is the standard of encryption with symetric key adopted by US government.
Rijndael’s AES has been analysed extensively and currently used worldwide just like the former standard, Data Encryption Standard (DES). In this study, the author will apply Advanced Encryption Standard Algorithm to encrypt every character that lies in the audio file and save the Cipher-text from encryption process in the same format, wich is audio file. And decrypting the encrypted-audio file to its original form. The application that developed in this study has been able to encrypt an audio file using Rijndael’s Advanced Encryption Standard Algorithm. The author expecting creation of this application can be used by everyone who wants to keep secret their legal audio file.
Keywords: Cryptography, Advanced Encryption Standard, Rijndael’s AES, Audio File
vii
DAFTAR ISI
Hal.
Persetujuan ii
Pernyataan iii
Penghargaan iv
Abstrak v
Abstract vi
Daftar Isi vii
Daftar Tabel viii
Daftar Gambar ix
Bab 1 Pendahuluan
1.1 Latar Belakang Masalah 1
1.2 Rumusan Masalah 2
1.3 Batasan Masalah 2
1.4 Tujuan Penelitian 2
1.5 Manfaat Penelitian 2
1.6 Metode Penelitian 3
1.7 Sistematika Penelitian 3
Bab 2 Landasan Teori
2.1 Kriptografi 5
2.1.1 Kriptografi Simetrik 6
2.1.2 Kriptografi Asimetrik 6
2.2 Advanced Encryption Standard (AES) 7
2.2.1. Rijndael Block Cipher 8
2.2.2. Enkripsi 9
2.2.2.1. Transformasi SubBytes 11
2.2.2.2. Transformasi ShiftRows 11
2.2.2.3. Transformasi Mix Columns 12
2.2.2.4. Transformasi AddRoundKey 13
2.2.2.5. Ekspansi Kunci 14
2.2.3. Dekripsi 15
2.3. File Audio 16
2.3.1. Interfensi Audio 17
2.3.2. Audio Digital 17
Bab 3 Analisis dan Perancangan Sistem
3.1 Analisis Masalah 18
3.2 Analisis Kebutuhan Sistem 19
3.2.1 Kebutuhan Fungsional 19
3.2.2 Kebutuhan nonfungsional 20
3.3 Pemodelan Sistem 20
3.3.1 Use-Case Diagram 21
3.3.2 Activity Diagram 23
3.3.3 Squence Diagram 25
3.4 Perancangan Sistem 27
3.5 Pseudocode Sistem 31
3.6 Perancangan Antarmuka 32
3.6.1. Rancangan Halaman Utama 32
3.6.2. Rancangan Halaman Output 34
Bab 4 Implementasi dan Pengujian
4.1 Implementasi Sistem 35
4.1.1 Halaman Utama 35
4.2 Pengujian Sistem 35
4.2.1. Pengujian proses enkripsi 36
4.2.2. Prngujian Proses dekripsi 36
4.2.3. Hasil Peengujian 37
Bab 5 Kesimpulan dan Saran
5.1 Kesimpulan 48
5.2 Saran 48
Daftar Pustaka
Lampiran
viii
DAFTAR TABEL
Hal.
3.1 Narative Use Case Enkripsi 21
3.2 Narative Use Case Download Audio Terenkripsi 21
3.3 Narative use-case Enkripsi Audio 22
3.4 Narative use-case Download Audio Terdekripsi 22
3.5 Komponen-Komponen pada Halaman Utama 31
DAFTAR GAMBAR
Hal.
2.1 Diagram Proses Enkripsi 9
2.2 Tabel S-Box 10
2.3 Contoh Transformasi ShiftRows() 11
2.4 Proses MixColumns 12
2.5 Contoh Transformasi AddRoundKey () 13
2.6 Proses Key Expansion 14
2.7 Diagram Alur Proses Dekripsi AES 15
3.1 Diagram Ishikawa 18
3.2 Diagram Use-Case 22
3.3 Diagram Activity Enkripsi 23
3.4 Diagram Activity Dekripsi 23
3.5 Sequence Diagram Enkripsi 24
3.6 Sequence Diagram Dekripsi 24
3.7 Flowchart Umum Enkripsi 26
3.8 Flowchart Umum Dekripsi 27
3.9 Flowchart Enkripsi AES 28
3.10 Flowchart Dekripsi AES 29
3.11 Rancangan Halaman Utama 31
3.12 Rancangan Halaman Output 32
4.1 Halaman Utama Aplikasi 33
4.2 Proses Enkripsi Selesai dan Cipher Audio Berhasil di Download 34 4.3 Proses Dekripsi Selesai dan File Audio Berhasil di Download 35
4.4 Plain-text File Audio uji 1 36
4.5 Cipher-text File Audio uji 1 36
4.6 Plain-text File Audio yang telah di dekripsi uji 1 37
4.7 Plain-text File Audio uji 2 38
4.8 Cipher-text File Audio uji 2 38
4.9 Plain-text File Audio yang telah di dekripsi uji 2 39
4.10 Plain-text File Audio uji 3 40
4.11 Cipher-text File Audio uji 3 40
4.12 Plain-text File Audio yang telah di dekripsi uji 3 41
4.13 Plain-text File Audio uji 4 42
4.14 Cipher-text File Audio uji 4 43
4.15 Plain-text File Audio yang telah di dekripsi uji 4 43
4.16 Grafik ukuran file 44
4.17 Grafik jumlah karakter
BAB I PENDAHULUAN
Bab ini menjelaskan mengenai latar belakang pemilihan judul skripsi “Implementasi Algoritma Advanced Encryption Standart (AES) Rijndael Untuk Proteksi File Audio”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian, dan sistematika penulisan.
1.1. Latar Belakang
File audio saat ini adalah file yang cukup populer dan sangat mudah untuk dinikmati oleh berbagai kalangan kapanpun dan dimanapun. Seiring dengan perkembangan teknologi yang memudahkan pengguna untuk melakukan pertukaran informasi dengan bentuk audio dengan waktu yang singkat, kemudahan tersebut akhirnya dapat digunakan secara negatif tanpa memperhatikan aspek legalitas dan hak cipta dari produsen audio tersebut.
File audio bisa dengan mudah disalah gunakan oleh pihak-pihak yang tidak bertanggung jawab yang seharusnya menjadi properti legal dari produsen dan secara legal dimiliki oleh orang yang telah membelinya, Melihat hal tersebut, diperlukan suatu cara untuk memproteksi file audio tersebut salah satu nya adalah dengan melakukan enkripsi terhadap file audio tersebut dengan menggunakan algoritma AES RIJNDAEL. File audio yang telah di enkripsi tidak dapat diputar/dimainkan dengan sempurna sehingga diperlukan aplikasi untuk mendekripsi file tersebut ke bentuk awalnya sehingga akses ke file tersebut dapat lebih terjaga legalitasnya.
Dengan memanfaatkan kriptografi di masa modern ini, proteksi file audio bukan mustahil
untuk dilakukan dengan tujuan untuk menjaga legalitas dari pemilik hak cipta file audio
tersebut. Dengan menggunakan algoritma kriptografi Advanced Encryption Standard
Rijndael untuk mengenkripsi file audio tersebut menjadi Cipher-text. Sehingga file tersebut
tidak dapat diputar dengan sempurna oleh orang yang tidak mempunyai legalitas pada file
audio tersebut dan dapat didekripsi kembali ke bentuk semula nya pada orang yang
mempunyai legalitas file audio tersebut, sehingga proteksi file tersebut dapat terjaga
legalitasnya Dalam kriptografi, Advanced Encryption Standard (AES) merupakan standar
enkripsi dengan kunci-simetris yang diadopsi oleh pemerintah Amerika Serikat. Standar ini terdiri atas 3 blok cipher, yaitu AES-128, AES-192 and AES-256, yang diadopsi dari koleksi yang lebih besar yang awalnya diterbitkan sebagai Rijndael. Masing-masing cipher memiliki ukuran 128-bit, dengan ukuran kunci masing-masing 128, 192, dan 256 bit.
AES telah dianalisis secara luas dan sekarang digunakan di seluruh dunia, seperti halnya dengan pendahulunya, Data Encryption Standard (DES).
1.2. Rumusan Masalah
Berdasarkan latar belakang masalah yang telah diuraikan, hal yang mendasari rumusan masalah yaitu bagaimana memberikan proteksi pada file audio untuk menjaga legalitas dari kepemilikan hak cipta file tersebut sehingga tidak disebar luaskan tanpa memperhatikan legalitasnya.
1.3. Batasan Masalah
Adapun batasan masalah adalah sebagai berikut:
1. Objek yang digunakan dalam Enkripsi/Dekripsi AES berupa file audio dengan ekstensi MP3.
2. Output yang dihasilkan berupa Cipher-text yang disimpan dalam format file audio dan dapat didekripsi kembali kebentuk file audio
3. Bahasa pemrograman yang digunakan untuk Enkripsi dan Dekripsi file adalah PHP.
1.4. Tujuan Penelitian
Adapun tujuan dari penelitian ini adalah merancang suatu aplikasi pengamanan file audio menggunakan algoritma kriptografi AES untuk menjaga legalitas dari pemilik file audio tersebut. Sehingga penyebaran file dapat terjaga distribusinya.
1.5. Manfaat Penelitian
Manfaat dari penelitian ini adalah untuk memberikan keamanan pada file audio serta
memberikan kemudahan kepada pemilik legalitas file audio dalam pendistribusian file nya.
3
1.6. Metode Penelitian
Metodologi penelitian yang digunakan dalam penulisan tugas akhir ini adalah sebagai berikut:
1. Studi Literatur
Penulis mengumpulkan bahan dan data referensi dari buku, skripsi, jurnal, artikel dan sumber lain yang berkaitan dengan penulisan tugas akhir ini yaitu Implementasi Algoritma Advanced Encryption Standart (AES) Rijndael Untuk Proteksi File Audio.
2. Analisis dan Perancangan Sistem
Berdasarkan rumusan dan batasan masalah, kebutuhan perancangan dianalisis disertai pembuatan Use Case Diagram, Activity Diagram, Sequence Diagram, Flowchart dan Design Interface dengan menggunakan UMLET.
3. Pengujian Sistem
Setelah pada tahap implementasi sistem, maka dilakukan pengujian aplikasi kepada 5 pengguna secara random (acak) disertai angket untuk mengetahui kelebihan dan kekurangan terhadap aplikasi tersebut.
4. Dokumentasi
Metode ini berisi laporan dan kesimpulan akhir dari hasil analisa dan pengujian dalam bentuk skripsi.
1.7. Sistematika Penelitian
Adapun langkah-langkah dalam menyelesaikan penelitian ini adalah sebagai berikut : BAB 1 : PENDAHULUAN
Bab ini akan menjelaskan mengenai latar belakang pemilihan judul skripsi
“Implementasi Algoritma Advanced Encryption Standart (AES) Rijndael Untuk Proteksi File Audio”, rumusan masalah, batasan masalah, tujuan penelitian, manfaat penelitian, metodologi penelitian, dan sistematika penulisan.
BAB 2 : LANDASAN TEORI
Bab ini berisi teori-teori yang berkaitan dengan perancangan sistem aplikasi pengamanan file audio menggunakan algoritma Advanced Encryption Standart Rijndael.
BAB 3 : ANALISIS DAN PERANCANGAN SISTEM
Bab ini berisi pembahasan analisis dan perancangan sistem aplikasi, termasuk
didalamnya UML (Unified Modelling Language), Flowchart dan Desain Interface.
BAB 4 : IMPLEMENTASI DAN PENGUJIAN SISTEM
Bab ini berisi implementasi dari perancangan sistem yang telah dibuat, dan pengujian sistem untuk menemukan kelebihan dan kekurangan pada sistem.
BAB 5 : KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dari seluruh bab sebelumnya serta saran yang diharapkan
dapat bermanfaat dalam proses pengembangan penelitian selanjutnya.
BAB II
LANDASAN TEORI
Bab ini berisi teori-teori yang berkaitan dengan perancangan sistem Pengamanan File Audio menggunakan Algoritma Advanced Encryption Standart (AES) Rijndael.
2.1. Kriptografi
Menurut (Dafid, D, 2006), Kata kriptografi (Cryptography) berasal dari bahasa Yunani yaitu dari kata Cryptos yang artinya tersembunyi dan Graphein yang artinya menulis. Kriptografi dapat diartikan sebagai suatu ilmu ataupun seni yang mempelajari bagaimana sebuah data dikonversi ke bentuk tertentu yang sulit untuk dimengerti.(Schneier B, 1996). Ada 4 tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi, yaitu :
1. Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi yang telah disandi.
2. Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya.
3. Autentikasi, adalah berhubungan dengan identifikasi/pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain.
4. Non-repudiasi., atau nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat.
Suatu data yang tidak disandikan disebut plaintext atau cleartext. Sedangkan data yang
telah tersandikan disebut ciphertext. Proses yang dilakukan untuk mengubah plaintext
menjadi ciphertext disebut enkripsi (encryption) atau encipherment. Sedangkan proses untuk mengubah ciphertext kembali ke plaintext disebut dekripsi (decryption) atau decipherment.
Dalam kriptografi diperlukan parameter yang digunakan untuk proses konversi data yaitu suatu set kunci. Enkripsi dan dekripsi data dikontrol oleh sebuah kunci atau beberapa kunci.
Berdasarkan kunci yang dipakai, algoritma kriptografi dapat dibedakan atas dua jenis yaitu algoritma simetrik (symmetric) dan asimetrik (asymmetric).
2.1.1. Kriptografi Simetrik
Algoritma simetris atau disebut juga algoritma Kriptografi konvensional adalah algoritma yang menggunakan kunci yang sama untuk proses enkripsi dan proses dekripsi. Algoritma Kriptografi simetris dibagi menjadi 2 kategori yaitu algoritma aliran (Stream Ciphers) dan algoritma blok (Block Ciphers). Pada algoritma aliran, proses penyandiannya berorientasi pada satu bit atau satu byte data. Sedang pada algoritma blok, proses penyandiannya berorientasi pada sekumpulan bit atau byte data (per blok). Contoh algoritma kunci simetris adalah DES (Data Encryption Standard), blowfish, twofish, MARS, IDEA, 3DES (DES diaplikasikan 3 kali), AES (Advanced Encryption Standard) yang bernama asli Rijndael.
2.1.2. Kriptografi Asimetrik
Kriptografi asimetrik (asymmetric cryptography) adalah algoritma yang menggunakan kunci yang berbeda untuk proses enkripsi dan dekripsi. Kunci enkripsi dapat disebarkan kepada umum dan dinamakan sebagai kunci publik (public key) sedangkan kunci dekripsi disimpan untuk digunakan sendiri dan dinamakan sebagai kunci pribadi (private key). Oleh karena itulah, Kriptografi ini dikenal pula dengan nama Kriptografi kunci publik (public key cryptography). Contoh algoritma terkenal yang menggunakan kunci asimetris adalah RSA (Riverst Shamir Adleman) dan ECC (Elliptic Curve Cryptography).
Pada kriptosistem asimetrik, setiap pelaku sistem informasi memiliki sepasang kunci, yaitu
kunci publik dan kunci pribadi. Kunci publik didistribusikan kepada umum, sedangkan kunci
pribadi disimpan untuk diri sendiri.
7
2.2. Advanced Encryption Standard
Menurut (Surian, D, 2006), Hingga tahun 1990-an, algoritma kriptografi yang banyak dipakai adalah Data Encryption Standard (DES). Algoritma ini dipakai oleh National Institute of Standards and Technology (NIST) sebagai standar enkripsi data Federal Amerika Serikat.
DES termasuk dalam algoritma enkripsi yang sifatnya cipher block, yang berarti DES mengubah data masukan menjadi blok-blok 64-bit dan kemudian menggunakan kunci enkripsi sebesar 56-bit. Setelah mengalami proses enkripsi maka akan menghasilkan output blok 64-bit.
Seiring dengan perkembangan teknologi, kunci DES yang sebesar 56-bit dianggap sudah tidak memadai lagi. Pada tahun 1998, 70 ribu komputer di Internet berhasil membobol satu kunci DES dalam waktu 96 hari. Tahun 1999 kejadian yang sama terjadi lagi dalam waktu lebih cepat yaitu hanya dalam waktu 22 hari. Pada tanggal 16 Juni 1998, sebuah mesin seharga 250 ribu dolar dapat dengan mudah memecahkan 25% kunci DES dalam waktu kira- kira 2,3 hari atau diperkirakan dapat memecahkan kunci DES dalam waktu 4,5 hari.
Adanya kenyataan bahwa algoritma kriptografi DES tidak lagi aman, maka NIST mulai memikirkan sebuah algoritma kriptografi lain sebagai pengganti DES. Untuk itu diadakan kontes Internasional dimana pesertanya adalah ahli kriptografi dari seluruh dunia.Adapun diadakan secara terbuka dimaksudkan agar algoritma yang baru bukan dari produk badan pemerintah yang dapat dengan sengaja menanamkan backdoor pada algoritmanya. Backdoor ini dicurigai membuat plaintext dapat langsung dibaca tanpa harus menggunakan kunci.
Pada tahun 1997 kontes pemilihan suatu standar algoritma kriptografi baru pengganti DES dimulai dan diikuti oleh 21 peserta dari seluruh dunia. Algoritma yang akan dipilih selain harus memenuhi beberapa kriteria, yaitu
1. Faktor keamanan, yang berarti algoritma tersebut harus tidak mudah dipecahkan oleh cracker, bersifat acak atau tidak mudah diterka outputnya, dan tidak berdasar algoritma matematika tertentu.
2. Faktor biaya, dimana diperhitungkan kecepatan prosesing pada baik pada hardware dan software, dan besarnya memory yang dipakai.
3. Faktor karakteristik implementasi, yakni meliputi kesederhanaan algoritma yang
digunakan, kemudahan dan keamanan dalam implementasi di hardware dan software.
Algoritma ini akan dinamakan Advanced Encryption Standard (AES). Setelah melewati tahap seleksi yang ketat, pada tahun 1999 hanya tinggal 5 calon yaitu algoritma Serpent (Ross Anderson University of Cambridge, Eli Biham Technion, Lars Knudsen- University of California San Diego), MARS (IBM Amerika), Twofish (Bruce Schneier, John Kelsey, dan Niels Ferguson-Counterpane Internet Security Inc, Doug Whiting-Hi/fn Inc, David Wagner-University of California Berkeley, Chris Hall-Princeton University), Rijndael (Dr. Vincent Rijmen-Katholieke Universiteit Leuven dan Dr. Joan Daemen Proton World International), dan RC6 (RSA Amerika).
Setahun kemudian pada tahun 2000, algoritma Rijndael terpilih sebagai algoritma kriptografi yang selain aman juga efisien dalam implementasinya dan dinobatkan sebagai AES. Nama Rijndael sendiri berasal dari gabungan nama penemunya.
2.2.1 Rijndael Block Cipher
Algoritma Rijndael dirancang untuk memiliki properti di bawah ini.
1. Ketahanan terhadap semua jenis serangan yang diketahui.
2. Kesederhanaan rancangan.
3. Kekompakan kode dan kecepatan pada berbagai platform.
(Rosyadi, A, 2011) Rijndael cipher dapat dikategorikan sebagai iterated block cipher dengan panjang blok variabel dan panjang kunci yang dapat dipilih secara independen sebagai 128, 192, atau 256 bit. Dalam desimal ada kira-kira 3.4 x 1038 kemungkinan kunci 128 bit, 6.2 x 1057 kemungkinan kunci 192 bit, dan 1.1 x 1077 kemungkinan kunci 256 bit. AES menspesifikasikan tiga ukuran kunci, 128, 192, dan 256 bit dengan ukuran blok tetap 128 bit.
Kunci round diturunkan dari kunci cipher melalui jadwal kunci, yang terdiri dari ekspansi kunci dan pemilihan kunci round. Jumlah round yang digunakan cipher Rijndael adalah sebuah fungsi dari ukuran kunci sebagai berikut.
1. Kunci 256 bit = 14 round.
2. Kunci 192 bit = 12 round.
3. Kunci 128 bit = 10 round
9
2.2.2 Enkripsi
Enkripsi adalah proses mengubah suatu pesan asli (plaintext) menjadi suatu pesan dalam bahasa sandi (ciphertext).
C = E (M) Keterangan :
M = Pesan asli (Plaintext)
E = Proses enkripsi dengan Key Private
C = Ciphertext (Plaintext yang terenkripsi AES)
Berikut ini merupakan gambar diagram proses enkripsi seperti yang ditunjukkan pada
Gambar 2.1.
Gambar 2.1 Diagram Proses Enkripsi AES (Rosyadi, A, 2011)
Garis besar Algoritma AES Rijndael yang beroperasi pada blok 128-bit dengan kunci 128-bit adalah sebagai berikut (di luar proses pembangkitan round key):
1. AddRoundKey: melakukan XOR antara state awal (plainteks) dengan cipher key.
Tahap ini disebut juga initial round.
2. Round : Putaran sebanyak Nr – 1 kali.
Proses yang dilakukan pada setiap putaran adalah:
A. SubBytes: substitusi byte dengan menggunakan table substitusi (S-box).
B. ShiftRows: pergeseran baris-baris array state secara wrapping.
C. MixColumns: mengacak data di masing- masing kolom array state.
D. AddRoundKey: melakukan XOR antara state dengan round key.
11
3. Final round: proses untuk putaran terakhir:
A. SubBytes B. ShiftRows C. AddRoundKey
Langkah kerja dari enkripsi AES Rijndael adalah sebagai berikut:
2.2.2.1 Transformasi SubBytes
Transformasi SubBytes memetakan setiap byte dari array state dengan menggunakan tabel substitusi S-box . Tabel S-box yang digunakan adalah seperti yang ditunjukkan pada gambar 2.2.
Gambar 2.2 Tabel S-box (Surian, D, 2006)
2.2.2.2 Transformasi ShiftRows
Melakukan pergeseran secara wrapping (siklik) pada 3 baris terakhir dari array state. Jumlah
pergeseran bergantung pada nilai baris (r). Baris r = 1 digeser sejauh 1 byte, baris r = 2
digeser sejauh 2 byte, dan baris r = 3 digeser sejauh 3 byte. Baris r = 0 tidak digeser. Contoh
ditunjukkan pada Gambar 2.3 berikut.
Geser baris ke-1:
Hasil pergeseran baris ke-1 dan geser baris ke-2:
Hasil pergeseran baris ke-2 dan geser baris ke-3
Hasil pergeseran baris ke-3:
Gambar 2.3 Contoh Transformasi ShiftRows() (Rosyadi, A, 2011)
2.2.2.3 Transformasi MixColumns
Proses MixColumns akan beroperasi pada tiap kolom dari tabel state. Operasi ini
menggabungkan 4 bytes dari setiap kolom tabel state dan menggunakan transformasi linier
13
Operasi Mix Columns memperlakukan setiap kolom sebagai polinomial 4 suku dalam Galois field dan kemudian dikalikan dengan c(x) modulo (x4+1), dimana c(x)=3x
3+x
2+x+2.
Kebalikkan dari polinomial ini adalah c(x)=11x
3+13x
2+9x+14. Operasi MixColumns juga dapat dipandang sebagai perkalian matrix.
Langkah MixColumns dapat ditunjukkan dengan mengalikan 4 bilangan di dalam Galois field oleh matrix berikut ini.
Atau bila dijabarkan:
r
0=2a
0+a
3+a
2+3a
1r
1=2a
1+a
0+a
3+3a
2r
2=2a
2+a
1+a
0+3a
3a
3=2a
3+a
2+a
1+3a
0Operasi penjumlahan di atas dilakukan dengan operasi XOR, sedangkan operasi perkalian dilakukan dalam Galois field. Seperti yang ditunjukkan pada gambar 2.4 berikut.
Gambar 2.4 Proses Mix Columns
(Surian, D, 2006)
2.2.2.4 Transformasi AddRoundKey
Transformasi ini melakukan operasi XOR terhadap sebuah round key dengan array state, dan hasilnya disimpan di array state. Pada Gambar 2.5 ditunjukan contoh Transformasi AddRoundKey.
Contoh:
XOR-kan kolom pertama state dengan kolom pertama round key :
Hasil AddRoundKey() terhadap seluruh kolom:
Gambar 2.5 Contoh Transformasi AddRoundKey () (Rosyadi, A, 2011)
2.2.2.5 Ekspansi Kunci (Key Expansion)
Ekspansi kunci pada AES 128-bit (16-byte) menggunakan 4-words (16 byte) sebagai input
dan menghasilkan perluasan kunci menjadi 44 Words (176) Bytes. Gambar 2.6 menunjukkan
proses dari Key Expansion.
15
Gambar 2.6 Proses Key Expansion (Rosyadi, A, 2011)
2.2.3 Dekripsi
Dekripsi adalah proses mengubah pesan dalam suatu bahasa sandi menjadi pesan asli kembali.
M = D (C) Ket :
C = Ciphertext (Hasil Plaintext terenkripsi)
D = Proses dekripsi menggunakan key private
M = Pesan asli setelah di dekripsi
Gambar 2.7 menunjukkan proses dari sebuah dekripsi.
Cipher Text
AddRoundKey AddRoundKey InvShiftRows
InvSubBytes
AddRoundKey InvMixColumns
InvShiftRows InvSubBytes
Plain Text
Nr-1
S0,0 S1,0 S2,0 S3,0
S0,1 S1,1 S2,1 S3,1
S0,2 S1,2 S2,2 S3,2
S0,3 S1,3 S2,3 S3,3
S’0,0 S’1,0 S’2,0 S’3,0
S’0,1 S’1,1 S’2,1 S’3,1
S’0,2 S’1,2 S’2,2 S’3,2
S’0,3 S’1,3 S’2,3 S’3,3
Src S’rc
Inv S- BOX S0,0
S1,0 S2,0 S3,0
S0,1 S1,1 S2,1 S3,1
S0,2 S1,2 S2,2 S3,2
S0,3 S1,3 S2,3 S3,3
S’0,0 S’1,3 S’2,2 S’3,1
S’0,1 S’1,0 S’2,3 S’3,2
S’0,2 S’1,1 S’2,0 S’3,3
S’0,3 S’1,2 S’2,1 S’3,0
S0,0 S1,0 S2,0 S3,0
S0,1 S1,1 S2,1 S3,1
S0,2 S1,2 S2,2 S3,2
S0,3 S1,3 S2,3 S3,3
S0,c S1,c S2,c S3,c
S’0,0 S’1,0 S’2,0 S’3,0
S’0,2 S’1,2 S’2,2 S’3,2
S’0,3 S’1,3 S’2,3 S’3,3 S’0,1 S’1,1 S’2,1 S’3,1 S’0,c S’1,c S’2,c S’3,c
E D B
B E D
D B E
D B E
0 09 0 0
0 0 09 0
0 0 0 09
09 0 0 0
S0,0 S1,0 S2,0 S3,0
S0,1 S1,1 S2,1 S3,1
S0,2 S1,2 S2,2 S3,2
S0,3 S1,3 S2,3 S3,3
S’0,0 S’1,0 S’2,0 S’3,0
S’0,1 S’1,1 S’2,1 S’3,1
S’0,2 S’1,2 S’2,2 S’3,2
S’0,3 S’1,3 S’2,3 S’3,3 W1,0
W0,0
W2,0 W3,0
W0,1 W1,1 W2,1 W3,1
W0,2 W1,2 W2,2 W3,2
W0,3 W1,3 W2,3 W3,3
Gambar 2.7 Diagram Alur Proses Dekripsi AES (Sujrajat, J , 2011)
2.3 File Audio
Menurut (Rasyid F. M, 2007) Audio, atau suara, merupakan gelombang yang merambat melalui medium tertentu. Perambatan tersebut tiba di telinga sehingga kita dapat mendengar.
Beberapa contoh format file audio adalah MP3, WMA, WAV dan AAC.
17
2.3.1 Interfensi Audio
Interferensi merupakan fenomena yang terjadi ketika dua atau lebih gelombang bertemu ketika melintasi medium yang sama. Interferensi menyebabkan terbentuknya gelombang yang merupakan hasil dari perpaduan dua atau lebih gelombang tersebut. Apabila dua gelombang yang bertemu memiliki bentuk yang sama, maka interferensi yang dihasilkan bersifat konstruktif. Sebaliknya, apabila dua gelombang yang bertemu memiliki bentuk yang berkebalikan, maka interferensi yang dihasilkan bersifat destruktif.
2.3.2 Audio Digital
Audio digital merupakan representasi audio yang disimpan dalam komputer secara biner
(terdiri dari 0 dan 1). Apabila direpresentasikan dalam bentuk gelombang, audio digital
memiliki sejumlah hingga nilai tekanan dan titik waktu.
BAB III
ANALISIS DAN PERANCANGAN SISTEM
Analisis sistem terdiri dari fase-fase berbeda yang mendeskripsikan pengembangan sistem.
Dalam tugas akhir ini, ada tiga fase analisis yaitu: analisis masalah, analisis kebutuhan dan analisis proses. Analisis masalah bertujuan untuk memahami kelayakan masalah. Analisis kebutuhan dilakukan untuk menjelaskan fungsi-fungsi yang ditawarkan dan mampu dikerjakan sistem. Sedangkan analisis proses untuk memodelkan tingkah laku sistem.
3.1. Analisis Masalah
Dalam merancang suatu sistem diperlukan analisis terhadap sistem yang akan dirancang terlebih dahulu. Tujuan dari analisis ini sendiri adalah agar sistem yang dirancang menjadi tepat guna dan ketahanan dari sistem tersebut akan lebih terjaga. Di samping itu dengan dilakukannya analisis kita akan dapat mempermudah kerja kita dalam membuat sistem, dan jika suatu saat nanti ada perbaikan atau penambahan dalam sistem tersebut, maka akan mudah untuk diselesaikan.
Untuk dapat mengurangi ancaman yang dapat terjadi dalam pertukaran informasi yang bersifat rahasia dalam sebuah proses komunikasi data dapat dilakukan dengan cara melakukan pengkodean terhadap informasi yang akan disimpan atau dikirim.
Gambar 3.1. merupakan diagram Ishikawa yang dapat digunakan untuk menganalisis masalah. Bagian kepala atau segiempat yang berada di sebelah kanan merupakan masalah.
Sementara di pada bagian tulang merupakan penyebab.
19
Gambar 3.1 Diagram Ishikawa
Sistem yang akan dibangun menggunakan PHP yang memudahkan para pengguna untuk melakukan proses pengamanan file audio.
3.2. Analisis Kebutuhan Sistem
Analisis kebutuhan sistem bertujuan untuk memahami kebutuhan dari sistem baru.
Kebutuhan sistem terbagi ke dalam dua jenis yaitu kebutuhan fungsional yang menjelaskan seluruh aktifitas yang disediakan sistem dan kebutuhan nonfungsional yang menjelaskan fitur-fitur, karakteristik dan batasan lainnya (optional).
3.2.1. Kebutuhan fungsional
Kebutuhan fungsional adalah fungsi-fungsi yang harus dipenuhi pada aplikasi yang dirancang. Kebutuhan fungsional yang harus dipenuhi aplikasi yang dirancang adalah sebagai berikut:
a. Sistem harus mampu membaca String yang berada dalam file audio dan
mengkonversinya ke dalam bentuk binary.
b. Sistem harus mampu melakukan enkripsi dengan menggunakan AES Rijndael setiap karakter binary yang telah dibaca sehingga menghasilkan ciphertext yang disimpan dalam bentuk format file audio.
c. Sistem Harus mampu melakukan dekripsi kembali Cipher Text yang tersimpan dalam file audio dengan menggunakan Rijndael sehingga menghasilkan file audio aslinya
3.2.2. Kebutuhan nonfungsional
Kebutuhan nonfungsional mencakup karakteristik-karakteristik sebagai berikut:
1. Performa
Sistem yang akan dibangun dapat menunjukkan hasil dari fungsi kriptografi yang dilakukan oleh sistem.
2. Efisiensi
Sistem yang akan dibangun harus sesederhana mungkin agar mudah digunakan oleh pengguna, responsif.
3. Ekonomi
Sistem yang akan dibangun harus dapat bekerja dengan baik tanpa harus mengeluarkan biaya tambahan dalam penggunaan perangkat keras maupun perangkat lunak.
4. Dokumentasi
Sistem yang akan dibangun dapat menyimpan data hasil proses enkripsi dan dekripsi.
5. Manajemen kualitas
Sistem yang dibangun harus memiliki kualitas yang baik yaitu proses pembangkitan kunci yang cepat dan proses enkripsi dan dekripsi yang akurat.
6. Kontrol
Sistem yang dibangun akan menampilkan pesan error untuk setiap input yang tidak sesuai.
3.3. Pemodelan Sistem
Pemodelan sistem yang dirancang bertujuan menggambarkan peran user terhadap sistem
yang dibuat. Pemodelan sistem yang digunakan dalam perancangan sistem, yaitu use-case
diagram, activity diagram, dan squence diagram.
21
3.3.1. Use-Case Diagram
Use-case Diagram adalah gambaran skenario penggunaan aplikasi sistem tentang bagaimana cara sistem bekerja dengan user. Use-case Diagram membutuhkan identifikasi siapakah pengguna yang akan menggunakan sistem tersebut. Pengguna tersebut dinamakan actor. Actor berperan untuk melakukan komunikasi dengan sistem.
Hubungan antar actor dengan use-case dihubungkan dengan garis lurus.
Gambar 3.2 Diagram Use-Case
Pada gambar 3.2 menjelaskan peran aktor terhadap sistem yaitu dapat mengenkripsi serta mendekripsi file audio, dan system akan menghasilkan output berupa file audio yang terenkripsi maupun terdekripsi ke bentuk semula file audio.
Berikut ini merupakan tabel narrative use-case yang dapat dilihat pada tabel 3.1, tabel 3.2,
tabel 3.4 dan tabel 3.5
Tabel 3.1 Narative use-case Enkripsi Audio Use Case Name Enkripsi File Audio
Design Scope Sistem (Black Box)
Stakeholder and Interest Actor dapat melakukan enkripsi pada file audio
Precondition Actor menginputkan kunci 128 bit dan memilih file yang akan dienkripsi
Minimal Guarantee Sistem memberikan pesan error jika panjang kunci tidak 128 bit Success Guarantee Sistem Menampilkan File yang telah dienkripsi
Triger Actor Menekan tombol Submit(Enkripsi) Main Success Scenario 1. Actor Menginput kunci 128 bit
2. Actor memilih file audio 3. Actor Menekan tombol Submit
Tabel 3.2 Narative use-case Download Audio Terenkripsi Use Case Name Download Audio Terenkripsi
Design Scope Sistem (Black Box)
Stakeholder and Interest Actor dapat download audio yang telah di enkripsi Precondition Actor melakukan enkripsi dengan submit file Success Guarantee Browser mendownload file
Triger Actor Menekan tombol Download
Main Success Scenario 1. Actor Menekan tombol download
2. File terdownload
23
Tabel 3.3 Narative use-case Enkripsi Audio Use Case Name Dekripsi File Audio
Design Scope Sistem (Black Box)
Stakeholder and Interest Actor dapat melakukan dekripsi pada file audio
Precondition Actor menginputkan kunci 128 bit dan memilih file yang akan didekripsi
Minimal Guarantee Sistem memberikan pesan error jika panjang kunci tidak 128 bit Success Guarantee Sistem Menampilkan File yang telah didekripsi
Triger Actor Menekan tombol Submit(Dekripsi) Main Success Scenario 1. Actor Menginput kunci 128 bit
2. Actor memilih Cipher Audio 3. Actor Menekan tombol Submit
Tabel 3.4 Narative use-case Download Audio Terdekripsi Use Case Name Download Audio Terdekripsi
Design Scope Sistem (Black Box)
Stakeholder and Interest Actor dapat download audio yang telah di dekripsi Precondition Actor melakukan dekripsi dengan submit file Success Guarantee Browser mendownload file
Triger Actor Menekan tombol Download
Main Success Scenario 1. Actor Menekan tombol download 2. File terdownload
3.3.2. Activity Diagram
Activity Diagram menggambarkan berbagai alir aktivitas dalam sistem yang sedang
dirancang, bagaimana masing-masing alir berawal, decision yang mungkin terjadi, dan
bagaimana mereka berakhir. Pada gambar 3.3 dan gambar 3.4 menjelaskan rancangan
aktivitas user dan respon sistem pada proses enkripsi dan dekripsi.
Gambar 3.3 Activity Diagram Enkripsi
25
Gambar 3.4 Activity Diagram Dekripsi
3.3.3. Squence Diagram
Sequence Diagram (diagram urutan) adalah suatu Diagram yang memperlihatkan atau
menampilkan interaksi-interaksi antar objek di dalam sistem yang disusun pada sebuah
urutan atau rangkaian waktu. Pada Gambar 3.5 dan Gambar 3.6 menggambarkan perilaku
aktor terhadap sistem untuk mengenkripsi dan dekripsi file audio.
Gambar 3.5 Sequence Diagram Enkripsi
Gambar 3.6 Sequence Diagram Dekripsi
27
3.4. Perancangan Sistem
Flowchart dapat didefinisikan sebagai bagan yang menunjukkan arus pekerjaan secara keseluruhan dari sistem. Bagan ini menjelaskan urut-urutan dari prosedur-prosedur dan proses prancangan sistem. Selain itu, flowchart juga memiliki fungsi memudahkan proses pengecekan terhadap sistem yang akan dibuat. Berikut merupakan flowchart dari sistem yang dibangun. Gambar 3.7 dan 3.8 dibawah ini menampilkan flowchart Enkripsi dan Dekripsi dari Sistem.
Gambar 3.7 Flowchart Umum Enkripsi
Gambar 3.8 Flowchart Umum Dekripsi
Pada Gambar 3.9 dan 3.10 dibawah ini menampilkan flowchart Enkripsi dan Dekripsi dari Algoritma Advanced Encryption Standart (AES) Rijndael dengan panjang kunci 128 bit.
Gambar 3.9 Flowchart Enkripsi AES Rijndael kunci 128 bit
29
Gambar 3.10 Flowchart Dekripsi AES Rijndael kunci 128 bit
3.5. PseudoCode System
Pseudocode merupakan pendeskripsian dari algoritma pemrograman komputer yang menggunakan struktur sederhana dari bahasa pemrograman yang digunakan dan dapat
dimengerti. Berikut merupakan pseudocode dari sistem enkripsi AES Rijndael yang akan digunakan.
function EncryptAES(key,EncryptedContent) { nBlock=4;
nKey=length(key)/4;
nRound=nKey+nBlock+2;
s=array(array());
if (nKey!=4 AND nKey!= 6 AND nKey!=8) {
return false;
}
KeyExpansion();
xContent=EncodeToBinary(EncryptedContent);
xSize=length(xContent);
For (i=0;i<xSize;i+=16) { For (j=0;j<16;j++) { if ((i+j) < xSize)
t[j]= xContent[i+j]
}
For (k=0;k<nRound; k++) {
AddRoundKey();
SubBytes();
MixColumns();
AddRoundKey();
}
SubBytes();
ShiftRows();
AddRoundKey();
For (l=0; l<(4*nBlock);l++) {
Cipher=s[l mod 4][l- (l mod nBlock) / nBlock]
Return Cipher;
}
}
}
3.6. Perancangan Antarmuka (Interface)
Perancangan Antarmuka (Interface) merupakan sarana interaksi antara pengguna dan sistem.
Hal ini berfungsi untuk memudahkan pengguna dalam melakukan proses sistem
3.6.1. Rancangan Halaman Utama
Rancangan antarmuka halaman Utama untuk mengenkripsi dan dekripsi file audio seperti
pada gambar 3.11 serta keterangan komponen pada halaman Utama dapat dilihat pada tabel
3.2.
31
Gambar 3.11 Rancangan Halaman Utama
Tabel 3.5 Komponen-Komponen pada Halaman Utama
No Jenis Komponen Keterangan
1 Logo (Label) Logo dan Label pada halaman
2 Tab (Button) Tab untuk memilih aksi yang akan dilakukan (Enkripsi/Dekripsi)
3 Form Input Teks (Input) Form Input untuk memasukkan key yang akan digunakan
4 Form Input File (Input) Form Input untuk memilih file yang akan di eksekusi 5 Tombol Submit (Button) Tombol untuk mengeksekusi form
3.6.2. Rancangan Halaman Output
Rancangan antarmuka halaman Output seperti pada gambar 3.12 serta keterangan komponen pada halaman informasi objek dapat dilihat pada tabel 3.2
Gambar 3.12 Rancangan Halaman Output
Tabel 3.2 Komponen-Komponen pada Halaman Output
No Jenis Komponen Keterangan
1 Logo (Label) Logo dan Label pada halaman
2 Audio Player Audio Player untuk memutar file audio yang telah didekripsi
3 Download Button (Button) Button untuk download file terenkrips/terdekripsi
33
BAB IV
IMPLEMENTASI DAN PENGUJIAN
4.1. Implementasi Sistem
Tahap implementasi sistem menggunakan XAMPP sebagai localhost dengan bahasa pemrograman PHP.
4.1.1. Halaman Utama
Halaman Utama untuk mengenkripsi dan dekripsi file audio seperti pada gambar 3.7 . Didalamnya terdapat 2 Tab untuk Enkripsi dan Dekripsi File, dimana pada masing-masing tab terdapat kolom input Key dan Browse File.
Gambar 4.1 Halaman Utama Aplikasi
4.2. Pengujian Sistem
Pengujian sistem berguna untuk mendapatkan hasil yang baik dan melakukan perbaikan pada
rancangan sistem yang telah dibuat apabila ada kekurangan.
4.2.1. Pengujian Proses Enkripsi
Melalui halaman utama aplikasi, Lakukan enkripsi dengan cara memilih tab Enkripsi, dilanjutkan dengan memasukkan key 128 bit pada kolom Input Key dan pilih file Audio yang akan dienkripsi melalui kolom Browse Audio File, kemudian Submit tombol Enkripsi.
Apabila Format Key telah benar sebesar 128bit maka Setelah Proses enkripsi selesai, sistem akan mengeluarkan file Audio yang telah di enkripsi dan langsung didownload oleh browser.
Seperti yang tertera pada gambar 4.2..
Gambar 4.2 Proses Enkripsi Selesai dan Cipher Audio Berhasil di Download
4.2.2. Pengujian Proses Dekripsi
Melalui halaman utama aplikasi, Lakukan Dekripsi dengan cara memilih tab Dekripsi,
dilanjutkan dengan memasukkan kunci 128 bit yang sama dengan kunci saat melakukan
Enkripsi pada kolom Input Key dan pilih file Audio yang akan didekripsi melalui kolom
Browse Cipher Audio, kemudian Submit tombol Dekripsi.
35
Apabila Format Key telah benar sebesar 128bit dan sama dengan kunci yang dimasukkan pada saat enkripsi maka Setelah Proses enkripsi selesai, sistem akan mengeluarkan file Audio aslinya dan langsung didownload oleh browser. Seperti yang tertera pada gambar 4.3.
Gambar 4.3 Proses Dekripsi Selesai dan File Audio Berhasil di Download
4.2.3. Hasil Pengujian
Hasil pengujian yang didapatkan melalui penelitian ini berupa hasil dari proses enkripsi dan proses dekripsi.:
-Uji Coba File Size 184kb
Gambar 4.4 menunjukan susunan plaint-text dari file audio asli yang belum di enkripsi. File
Tersebut berjumlah 376.210 karakter dengan size sebesar 184kb
Gambar 4.4 Plain-text File Audio uji 1
Gambar 4.5 merupakan Cipher-Text hasil Enkripsi dari File Audio .yang di enkripsi melalui aplikasi. Setelah di Enkripsi jumlah karakter menjadi 501.632 dengan size sebesar 245kb
Gambar 4.5 Cipher-text File Audio uji 1
37
Gambar 4.6 merupakan Plain-Text hasil Dekripsi dari Cipher Audio .yang di dekripsi melalui aplikasi. Setelah di Dekripsi jumlah karakter dan size file audio sama dengan ukuran dan karakter seperti sebelum di enkripsi, yaitu berjumlah 376.210 karakter dengan size sebesar 184kb
Gambar 4.6 Plain-text File Audio yang telah di dekripsi uji 1
-Uji Coba File Size 580kb
Gambar 4.7 menunjukan susunan plaint-text dari file audio asli yang belum di enkripsi. File
Tersebut berjumlah 1.260.856 karakter dengan size sebesar 580kb
Gambar 4.7 Plaint-text File Audio uji 2
Gambar 4.8 merupakan Cipher-Text hasil Enkripsi dari File Audio .yang di enkripsi melalui aplikasi. Setelah di Enkripsi jumlah karakter menjadi 1.681.130 dengan size sebesar 773kb
Gambar 4.8 Cipher-text File Audio uji 2
Gambar 4.9 merupakan Plain-Text hasil Dekripsi dari Cipher Audio .yang di dekripsi melalui
aplikasi. Setelah di Dekripsi jumlah karakter dan size file audio sama dengan ukuran dan
39
karakter seperti sebelum di enkripsi, yaitu berjumlah 1.260.856 karakter dengan size sebesar 580kb
Gambar 4.9 Plain-text File Audio yang telah di dekripsi uji 2
-Uji Coba File Size 923kb
Gambar 4.10 menunjukan susunan plaint-text dari file audio asli yang belum di enkripsi. File
Tersebut berjumlah 1.888.548 karakter dengan size sebesar 923kb
Gambar 4.10 Plaint-text File Audio uji 3
Gambar 4.11 merupakan Cipher-Text hasil Enkripsi dari File Audio .yang di enkripsi melalui aplikasi. Setelah di Enkripsi jumlah karakter menjadi 2.518.080 dengan size sebesar 1.2mb
Gambar 4.11 Cipher-text File Audio uji 3
Gambar 4.12 merupakan Plain-Text hasil Dekripsi dari Cipher Audio .yang di dekripsi
melalui aplikasi. Setelah di Dekripsi jumlah karakter dan size file audio sama dengan ukuran
41
dan karakter seperti sebelum di enkripsi, yaitu berjumlah 1.888.548 karakter dengan size sebesar 923kb
Gambar 4.12 Plain-text File Audio yang telah di dekripsi uji3
-Uji Coba File Size 1.8Mb
Gambar 4.13 menunjukan susunan plaint-text dari file audio asli yang belum di enkripsi. File
Tersebut berjumlah 3.976.980 karakter dengan size sebesar 1.8mb
Gambar 4.13 Plaint-text File Audio uji 4
Gambar 4.14 merupakan Cipher-Text hasil Enkripsi dari File Audio .yang di enkripsi melalui aplikasi. Setelah di Enkripsi jumlah karakter menjadi 5.302.640 dengan size sebesar 2.4mb
Gambar 4.14 Cipher-text File Audio uji 4
Gambar 4.15 merupakan Plain-Text hasil Dekripsi dari Cipher Audio .yang di dekripsi
melalui aplikasi. Setelah di Dekripsi jumlah karakter dan size file audio sama dengan ukuran
43
dan karakter seperti sebelum di enkripsi, yaitu berjumlah 3.976.980 karakter dengan size sebesar 1.8mb
Gambar 4.15 Plain-text File Audio yang telah di dekripsi uji 4
Dari uji coba yang telah dilakukan di atas diperoleh hasil berupa grafik perbandingan ukuran
file sebelum di enkripsi dan sesudah di enkripsi seperti pada Gambar 4.16 berikut:.
0 500 1000 1500 2000 2500 3000 3500 4000 4500
Uji coba 1 Uji coba 2 Uji coba 3 Uji coba 4
Grafik Ukuran File
Plain-text Cipher-text
Gambar 4.16. Grafik Ukuran File
Pada Gambar 4.17 menunjukan perbandingan jumlah karakter sebelum dilakukan enkripsi
dan sesudah dienkripsi
45
0 1000000 2000000 3000000 4000000 5000000 6000000 7000000 8000000 9000000 10000000
Uji coba 1 Uji coba 2 Uji coba 3 Uji coba 4
Grafik Jumlah Karakter
Plain-text Cipher-text
Gambar 4.17. Grafik Jumlah Karakter
BAB V
KESIMPULAN DAN SARAN
Bab ini berisi kesimpulan dari seluruh bab sebelumnya serta saran yang diharapkan dapat bermanfaat dalam proses pengembangan penelitian selanjutnya.
5.1. Kesimpulan
Berdasarkan hasil studi literatur, analisis, perancangan, implementasi, dan pengujian sistem ini, maka kesimpulan yang didapat adalah sebagai berikut:
1. Aplikasi yang dirancang dalam penelitian telah mampu melakukan proses penyandian file Audio dengan Algoritma Advanced Encryption Standart Rijndael
2. File Audio yang di enkripsi menjadi cipher-text memiliki karakter yang lebih banyak dibandingkan dengan file audio sebelum dilakukan proses enkripsi
3. File Hasil dekripsi sama persis seperti seperti file awal sebelum dilakukan proses enkripsi.
4. Waktu proses enkripsi dan dekripsi tergantung dari besarnya ukuran file yang di input
5.2. Saran
Adapun saran-saran yang dapat diberikan penulis untuk pengembangan dan perbaikan sistem
ini selanjutnya diharapkan pada penelitian selanjutnya untuk melakukan proses enkripsi dan
dekripsi pada file Video.
i
DAFTAR PUSTAKA