Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik
Informatika
Disusun oleh :
i
PERSETUJUAN SKRIPSI
Menjetujui: Mengetahui:
Pembimbing, Dekan Fakultas Ilmu Komputer
ii
PENGESAHAN DEWAN PENGUJI
Tugas akhir ini telah diujikan dan dipertahankan dihadapan Dewan Penguji pada
Sidang tugas akhir tanggal 3 Maret 2017. Menurut pandangan kami, tugas akhir
inimemadai dari segi kualitas maupun kuantitas untuk tujuan penganugrahan gelar
Sarjana Komputer (S.Kom.)
Anggota 1 Anggota 2
Ketua Penguji
iii
PERNYATAAN KEASLIAN SKRIPSI
Dibuat di : Semarang
Pada tanggal : 3 Maret 2017
Yang Menyatakan
iv
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA
Dibuat di : Semarang
Yang Menyatakan
v
UCAPAN TERIMA KASIH
Dengan memanjatkan puji syukur kepada Tuhan Yesus yang telah memberikan
wawasan serta pengalaman yang berharga kepada penulis sehingga laporan tugas
akhir dengan judul Pengamanan Soal Ujian Sekolah Dengan Algoritma
Kriptografi Advance Encryption Standard (Aes) Dan Metode Steganografi
End Of File(Eof) pada SMA Negeri 1 Weleridapat penulis selesaikan sesuai
dengan rencana karena dukungan dari berbagai pihak yang tidak ternilai besarnya.
Oleh karena itu penulis menyampaikan terima kasih kepada:
1. Dr. Ir. Edi Noersasongko,M.Kom, selaku Rektor Universitas Dian
Nuswantoro Semarang.
2. Dr. Drs. Abdul Syukur, MM, selaku Dekan Fakultas Ilmu Komputer
Universitas Dian Nuswantoro.
3. Heru Agus Santoso,Ph.D., selaku Ketua Program Studi Teknik
Informatika.
4. Edy Mulyanto, SSi, M.Kom, selaku dosen pembimbing yang telah
memberikan bimbingan kepada penulis dalam penyusunan laporan tugas
akhir ini.
5. Erwin Yudi Hidayat, S.Kom, M.CS , selaku dosen wali yang telah
memberikan bimbingan serta semangat kepada penulis dalam penyusunan
laporan tugas akhir ini.
6. Dosen-dosen pengampu di Fakultas Ilmu Komputer Teknik Informatika
Universitas Dian Nuswantoro Semarang yang telah memberikan banyak
ilmu.
7. Ibu , Bapak serta Adik saya yang tidak pernah lelah memberikan doa serta
dukungan kepada penulis untuk maju dan terus berusaha.
8. Amni Padmawati selaku teman pendamping saya selama menempuh
penelitian dan motivasi agar terselesaikannya penelitian ini.
9. Sahabat-sahabat saya di Universitas Dian Nuswantoro yang selalu
memberi dukungan dalam penelitian.
10. Teman-teman Dewan Perwakilan Mahasiswa yang selalu memberi
motivasi sesaan dan dalam penulisan ini.
11. Rekan-rekan Team 12 Telkom Regional 4 Semarang yang selalu memberi
dukungan dan doa agar terus berusaha.
Semoga laporan tugas akhir ini dapat memperluas wawasan dan pengetahuan
yang bermanfaat dan berguna sebagaimana fungsinya.
Semarang, 3 Maret 2017
Penulis
vi
ABSTRAK
vii
DAFTAR ISI
HALAMAN JUDUL ............................................................................................ i
PERSETUJUAN SKRIPSI .................................................................................. ii
PENGESAHAN DEWAN PENGUJI ..................................................................iii
PERNYATAAN KEASLIAN SKRIPSI .............................................................. iv
PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ................................... v
UCAPAN TERIMA KASIH ............................................................................... vi
ABSTRAK ........................................................................................................ vii
DAFTAR ISI .................................................................................................... viii
DAFTAR TABEL ............................................................................................... x
DAFTAR GAMBAR .......................................................................................... xi
BAB I PENDAHULUAN .................................................................................... 1
1.1. Latar Belakang....................................................................................... 1
1.2. Rumusan Masalah.................................................................................. 3
1.3. Batasan Masalah .................................................................................... 3
1.4. Tujuan Penelitian ................................................................................... 4
1.5. Manfaat Penelitian ................................................................................. 4
BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI .............................. 5
2.1. Tinjauan Studi ....................................................................................... 5
2.2. Tinjauan Pustaka.................................................................................... 8
2.2.1. Keamanan Data dan File ................................................................. 9
2.2.2. Kriptografi .................................................................................... 10
2.2.2.1. Komponen Kriptografi........................................................... 13
2.2.2.2. Teknik Kriptografi ................................................................. 14
2.2.2.3. Algoritma Kriptografi Klasik ................................................. 17
2.2.2.4. Algoritma Kriptografi Modern ............................................... 21
2.2.3. Advance Encryption Standard (AES)............................................. 23
2.2.3.1. Enkripsi dan Dekripsi pada AES ............................................ 24
2.2.4. Steganografi ................................................................................. 31
2.2.4.1. Sejarah dan Definisi Steganografi .......................................... 31
2.2.4.2. Kriteria Steganografi ............................................................. 32
2.2.4.3. Metode End of File ................................................................ 33
2.2.5. Bahasa Pemrograman Python ........................................................ 35
2.3. Kerangka Pemikiran ............................................................................ 37
viii
BAB III METODE PENELITIAN ..................................................................... 35
3.1. Intrument Penelitian............................................................................. 35
3.2. Prosedur Pengambilan atau Pengumpulan Data .................................... 36
3.3. Teknik Analisis Data ........................................................................... 36
3.4. Metode yang Diusulkan ....................................................................... 36
3.4.1. Prosedur Enkripsi dan Penyisipan File .......................................... 37
3.4.2. Prosedur Penyisipan Pengambilan ciphertext dengan End of File .. 38
3.5. Pengujian Metode ................................................................................ 43
BAB IV ANALISIS HASIL PENELITIAN DAN PEMBAHASAN .................. 60
4.1. Analisa Kebutuhan Aplikasi................................................................. 60
a. Kebutuhan perangkat lunak.................................................................. 60
b. Kebutuhan Perangkat Keras ................................................................. 61
4.2. Prodesur Pembuatan Aplikasi .............................................................. 61
4.3. Pemodelan Bisnis ................................................................................ 61
4.3.1. Use Case ....................................................................................... 62
4.3. Persiapan Data ..................................................................................... 63
4.4. Penghitungan Manual Advance Encryption Standard ........................... 66
4.4.1. Enkripsi ........................................................................................ 66
4.4.2. Dekripsi ........................................................................................ 74
4.4.3. Ekspansi Kunci (Round Key) ........................................................ 82
4.5. Implementasi Metode pada Python ...................................................... 84
4.5.1. Implementasi Enkripsi dan Penyisipan pada Python Shell ............. 84
4.5.1.1. Enkripsi ................................................................................. 85
4.5.1.2. Proses Penyisipan Data .......................................................... 88
4.5.2. Implementasi Pengambilan dan Dekripsi Python Shell .................. 89
4.5.2.1. Proses Pengambian Data ........................................................ 89
4.5.2.2. Dekripsi ................................................................................. 90
4.6. Analisis Pengujian Data ....................................................................... 92
4.6.1. Pengujian Aplikasi ........................................................................ 92
4.6.2. Pengujian Citra ............................................................................. 94
BAB V PENUTUP ............................................................................................ 95
5.1. Simpulan ............................................................................................. 95
5.2. Saran ................................................................................................... 96
DAFTAR PUSTAKA ........................................................................................ xii
ix
DAFTAR TABEL
x
DAFTAR GAMBAR
Gambar 2.1 . Kriptografi dan Kriptanalisis adalah cabang ilmu Kriptologi ......... 14
Gambar 2.2 Bujursangkar Vigenere ................................................................... 21
Gambar 2.3. Proses Enkripsi Algoritma AES-128 ............................................... 26
Gambar 2.4. Input Output dan state array. ......................................................... 27
Gambar 2.5. S-box yang digunakan pada putaran AES........................................ 28
Gambar 2.6. Transformasi SubBytes. (Wikipedia) .............................................. 28
Gambar 2.7. Tranformasi ShiftRows (Wikipedia). .............................................. 29
Gambar 2.8. Tranformasi MixCollumns() (Wikipedia) ....................................... 30
Gambar 2.9. Tranformasi AddRoundKey (Wikipedia) ........................................ 30
Gambar 2.10. Kerangka Pemikiran..................................................................... 37
Gambar 3.1. Prosedur Enkripsi dan Penyisipan File ........................................... 37
Gambar 3.2. Metode Dekripsi File ..................................................................... 38
Gambar 3.3. Flowchart Enkripsi AES-128 ......................................................... 39
Gambar 3.4.Flowchart Dekripsi AES ................................................................. 40
Gambar 3.5. Elemen State dan kunci saat input. ................................................. 43
Gambar 3.6. Subtitusi Array S dengan S-box AES .............................................. 45
Gambar 3.7. Pergeseran baris ke-1 ..................................................................... 46
Gambar 3.8. Hasil pergeseran baris ke-1 dan pergeseran baris ke-2 .................... 46
Gambar 3.9. Hasil pergeseran baris ke-2 dan pergeseran baris ke-3 .................... 46
Gambar 3.10. Hasil pergeseran baris ke-3 .......................................................... 46
Gambar 3.11. Matrix Enkripsi ShfitRow ............................................................ 47
Gambar 3.12. Proses putaran ke-2 hingga ke-6 ................................................... 50
Gambar 3.13. Putaran ke-7 hinggan ke-10.......................................................... 51
Gambar 3.14. S-Box untuk Dekripsi AES .......................................................... 56
Gambar 3.15. Matrix Dekripsi MixCollumn ....................................................... 57
Gambar 3.16. Hasil Dekripsi AES .....................................................................58
Gambar 4.1. Block dari File Asli .......................................................................66
Gambar 4.2. Python Shell .................................................................................83
Gambar 4.3. Header yang diimport dalam program ...........................................84
Gambar 4.4. Fungsi dalam membentuk blok-blok AES .....................................84
xi
Gambar 4.5. Source Code AES ..........................................................................85
Gambar 4.6. Prosedur Pemanggilan AES ...........................................................85
Gambar 4.7. Enkripsi Plaintext ..........................................................................85
Gambar 4.8. File Terenkripsi atau Ciphertext .....................................................86
Gambar 4.9. Fungsi penyisipan citra ..................................................................87
Gambar 4.10.Cara penyisipan citra ....................................................................87
Gambar 4.11.Source Code Pengekstraksian Data dari Citra ...............................88
Gambar 4.12.Proses Pengekstraksian Data .........................................................89
Gambar 4.13.Fungsi dekripsi ciphertext ............................................................89
Gambar 4.14.Prosedur dekripsi ciphertext ..........................................................90
Gambar 4.15.Dekripsi Ciphertext .......................................................................90
xii
BAB I
PENDAHULUAN
1.1.Latar Belakang
Teknologi informasi di era globalisasi saat ini telah mengalamai
kemajuan yang pesat. Bidang informasi pun tidak luput dari pengaruh
perkembangan saat ini. Kemampuan untuk mengakses dan menyediakan
informasi secara cepat dan akurat menjadi sangat esensial bagi sebuah
organisasi baik itu komersial, lembaga pemerintahan maupun individual
(pribadi) [1]. Selaras dengan kemajuan teknologi, tidak kriminal yang marak
terjadi adalah cyber crime atau kejahatan melalui internet. Beragam kejahatan
yang terjadi di dunia maya, seperti yang kita kenal yaitu hacker, cracker,
phreaker dan sebagainya. Data yang berada di internet pun bermacam-macam
kepentingannya, mulai dari sesuatu yang disebarluaskan hingga informasi
penting yang hanya orang tertentu yang boleh mengaksesnya, oleh sebab itu
keamanan dan kerahasiaan data menjadi aspek penting dalam pertukaran dan
pengambilan informasi pada saat ini[2].
Pengamanan data sangat dibutuhkan dalam pertukaran informasi.
Informasi yang diambil ataupun ditukar mempunyai bermacam-macam jenis,
seperti text, audio, video maupun gambar (citra). Perkembangan teknologi
juga mempengaruhi pertukaran informasi saat yang dapat terjadi dengan
sangat cepat dan singkat sehingga sangat rentan terjadi pencurian informasi
dan manipulasi data yang kemudian disebarluaskan kembali.
Awal Mei 2016 lalu, Kiddicare sebuah pusat penjualan mainan dan
asesoris anak-anak di Britania Raya ini telah diretas. Sebanyak 794 ribu akun
yang termasuk nama, nomor telepon, email serta alamat rumah masing-
masing pelanggan telah berhasil tersimpan dalam database sang peretas.
Kecurigaan ini bermula dari pelanggan yang menerima pesan berisi link
berisikan survei online, kegiatan ini lebih dikenal dengan nama phising
1
(pengelabuhan) [3]. Sedangkan di Indonesia yang saat ini telah masuk pada
era teknologi, dimana
hampir segala sesuatunya dilakukan dengan komputasi dan gadget. Buktinya
ujian nasional yang telah diselenggarakan menggunakan computer atau lebih
dikenal UNBK (Ujian Nasional Berbasis Komputer). Tidak hanya di UN,
soal-soal Ujian Tengah Semester, Ujian Akhir Semester maupun Ujian
Kenaikan Kelas serta yang terpenting adalah Ujian Sekolah dibuat
menggunakan komputer terutama pada SMA Negeri 1 Weleri. File-file yang
berceceran di dalam computer dapat dengan mudah dibongkar jika hanya
mengandalkan keamanan dasar dari komputer itu sendiri. Karena itu
diperlukan sebuah metode khusus dalam pengamanannya agar dapat
meningkatkan kerahasiaan informasinya.
Teknik dalam pengamanan data yang dibutuhkan kali ini adalah
kriptografi dan steganografi. Kedua teknik ini sangatlah sering digunakan
dalam pengamanan-pengaman data yang dikatakan penting bagi suatu
kegiatan tertentu. Seperti halnya pada algoritma kriptografi yang merupakan
seni dalam merahasiakan pesan [1]. Dengan pola-pola tertentu, perhitungan-
perhitungan matematika yang akurat, dan perkembangannya yang pesat,
membuat kriptografi menjadi “seni” utama dalam pengamanan data pada saat
ini. Algoritma kriptografi yang sering dipakai adalah Advance Encryption
Standard(AES), RSA, Hill Cipher, Vigenere, Data Encryption Standard(DES),
MD5,dan sebagainya. Algoritma yang akan digunakan pada penelitian ini
adalah Advance Encryption Starndard (AES).
AES atau sering disebut Rijndael ini merupakan standard kriptografi
yang ditetapkan National Institute of Standards and Technology (NIST)
sebagai pengganti DES karena algoritma DES mempunyai kelemahan yang
cukup fatal. Sehingga pada bulan Oktober 2000, NIST menentapkan AES
sebagai algoritma standard kriptografi yang masih bertahan hingga saat ini [2].
Tidak luput dari algoritma pengamanan saja, dalam hal merahasiakan
data steganografi pun ikut memberi kontribusi yang besar, terutama dalam
penyisipan data yang dirahasiakan. Steganografi sendiri menurut Rinaldi
Munir [2] merupakan teknik menyembunyikan data rahasia di dalam wadah
3
(media) digital sehingga keberadaan data rahasia tersebut tidak diketahui oleh
orang. Ada beberapa macam metode untuk penyembunyian pesan, diantaranya
: Least Significant Bit(LSB), Least Significant BitMatching
Revisited(LSBMR), Discrete Cosine Transformation (DCT), Wavelet
Transformation, Redundant Pattern Encoding, End of File(Eof), dan Spread
Spectrum. Metode yang akan digunakan dalam penelitian ini adalah End of
File (Eof) yang pada penelitian sebelumnya [4] menggunakan algoritma
kriptografi Data Encryption Standard(DES) dan seperti yang dibahas pada
latar belakang ini bahwa DES mempunyai kelemahan dalam pengamanan data
sehingga disempurnakan dengan algoritma AES.
Dari masalah diatas maka penulis mengajukan judul penelitian
“Pengamanan Soal Ujian Sekolah dengan Algoritma Kriptografi Advance
Encryption Standard (AES) dan Metode Steganografi End of File(Eof) pada
SMA Negeri 1 Weleri”.
1.2.Rumusan Masalah
Dari latar belakang diatas dapat disajikan rumusan masalah sebagai
berikut :
1. Bagaimana hasil enkripsi data dari Algoritma Advance Encryption
Standard dan Metode End of File.
2. Bagaimana kualitas data sebelum dan sesudah melalui proses kriptografi
dan steganografi?
1.3.Batasan Masalah
Penelitian ini mempunyai batasan penelitian pada Algoritma
Advance Encryption Standard (AES-128) dan Metode End of File(Eof) serta
hanya melakukan uji coba pada data berformat *.doc dan *.docx. Penelitian
akan diimplementasikan pada Aplikasi berbasis Python serta objeknya adalah
Soal Ujian Sekolah pada SMA Negeri 1 Weleri.
4
1.4.Tujuan Penelitian
Tujuan dari selesainya penelitian ini adalah mengamankan data Soal
Ujian Sekolah dengan menggunakan Algoritma Advance Encryption Standard
(AES) dan Metode End of File(Eof) serta mempertahankan kualitas data yang
di amankan, dan diimplementasikan pada aplikasi keamanan data.
1.5.Manfaat Penelitian
Manfaat yang didapat pada akhir penelitian ini adalah :
1. Manfaat bagi Universitas
Memberi kontribusi pada literature yang terkait tentang Teknologi
Informatika di bidang Keamanan.
2. Manfaat bagi Akademik
Penelitian ini dapat menjadi sebuah contoh nyata tentang pembelajaran,
pemahaman serta penguasaan teori maupun praktikum yang didapat dalam
bangku perkuliahan.
3. Manfaat bagi Instansi atau Sekolah
Penelitian ini akan menghasilkan sebuah pengamanan data, terlebih data
penting seperti Soal Ujian maupun data lain yang hanya pihak penerima
dan pengirim yang boleh mengetahuinya. Sehingga data dapat secara aman
tersimpan maupun terkirim.
4. Manfaat bagi Penulis
a. Penulis mampu menerapkan ilmu tentang Kriptografi dan Steganografi
yang telah didapat selama menempuh jenjang perkuliahan.
b. Memberikan pengalaman tersurat yang akan berguna dalam dunia
kerja diluar akademi.
BAB II
TINJAUAN PUSTAKA DAN LANDASAN TEORI
2.1.Tinjauan Studi
Sebelum melakukan penelitian terkait masalah yang akan diteliti,
penulis terlebih dahulu mencari referensi yang telah ada tentang metode End
of File (EoF) serta penelitian tentang algoritma Advance Encryption Standard
(AES) sebagai teknik pengamanan data. Berikut ini adalah penilitian-
penelitian terkait tentang masalah yang akan dibahas.
Penelitian pertama adalah penelitian oleh Yayuk Anggraeni dan Dolly
Virgian Shaka Yudha Sakti dengan judul “Penerapan Steganografi Metode
End of File (EoF) Dan Enkripsi Metode Data Encryption Standard (DES)
Pada Aplikasi Pengamanan Data Gambar Berbasis Java Programming” [4].
Penelitian ini mengambil data dari Jogjack Factory Oulet yang merupakan
perusahaan dalam bidang fashion di Jakarta pada tahun 2014. Algorutma
pengamanan yang digunakan adalah Data Encryption Standard serta
melakukan penyisipan dengan metode End of File. Bahasa Pemrograman yang
digunakan adalah Java. Penelitian ini memfokuskan pada pengamanan
DESign yang pada pengolahannya dikirim melalui internet sedangkan pada
masa ini banyak oknum-oknum yang tidak bertanggungjawab dengan mencuri
data melalui internet. Jika data DESign produk ini tercuri, perusahaan akan
mendapatkan rugi yang besar. Oleh itu dibuatlah program untuk pengirim dan
penerima agar dengan aman dalam bertransaksi data. Karena itu dibuatlah
penelitian yang penghasilkan program untuk mengenkripsi data dengan
algoritma Data Encryption Standard sebagai algoritma kriptografi modern
serta penyisipan file dengan menggunakan metode End of File. Penyisipan
dan penampilan data yang disembunyikan dalam penelitian ini dapat
dikatakan sukses karena data rahasia dapat di keluarkan dengan tidak
mempengaruhi kualitas, meskipun pada hasil penyisipan terdapat penambahan
ukuran file yang menyebabkan ruang penyimpanan harus lebih besar.
5
6
dalam penelitian ini juga di sebutkan telah menggunakan pada ukuran dan
jenis file yang berbeda serta hasil yang sama-sama baik, hanya saja ukuran
dari hasil file penyisipan bertambah dikarenakan ukuran hasil penyisipan
adalah gabungan dari file asli dan file media penyisipan.
Tabel 2.1Ringkasan Penelitian
kontrasnya.
Christy Atika Gabungan Vernam Cipher 2014 Menghasilkan program
Sari M.Kom Algoritma dan End of File untuk mengenkripsi atau
dan Vernam Cipher (EoF) dekripsi dan
Eko Hari Dan End of File menyisipkan file
Rachmawanto Untuk berbasis Visual Basic
M.Kom Keamanan Data 6.0. Teknik pengamanan
dapat
diimplementasikan tidak
hanya pada file
berekstensi .pdf yang
akan disisipkan pada file
.mp3. hasil penyisipan
mengubah ukuran file
karena ukuran file hasil
adalah gabungan dari
file asli dan file yang
disisipi.
2.2.Tinjauan Pustaka
9
2.2.2. Kriptografi
Kriptografi atau Cryptography berasal dari Bahasa Yunani
“cryptos” yang artinya rahasia dan “graphein” yang artinya tulisan. Jadi
kriptografi pada awalnya berarti tulisan rahasia [1]. Namun semakin
berkembanganya ilmu pengetahuan sehingga muncul definisi-definisi
baru tentang kriptografi.
Dony Ariyus dalam bukunya yang berjudul Pengantar Ilmu
Kriptografi mengatakan, “Kriptografi adalah ilmu dan seni untuk
11
2.2.2.1.Komponen Kriptografi
Pada dasarnya kriptografi memiliki beberapa komponen penting
dalam pelaksanaannya [1] [2], seperti:
a. Enkripsi
Merupakan hal yang sangan penting dalam kriptografi, berupa
cara pengamanan data yang dikirimkan sehingga terjaga
kerahasiaannya. Enkripsi bisa diartikan sebagai cipher atau
kode. Ketika tidak mengerti sebuah kata maupun kalimat,
dalam pengartiannya akan menggunakan kamus. Namun
berneda dengan enkripsi, untuk mengubah text biasa ke dalam
bentuk kode menggunakan algoritma yang dapat
mengkodekan data yang diinginkan.
b. Dekripsi
Merupakan kebalikan dari enkripsi, yaitu mengembalikan
pesan yang sudah di enkripsi menjadi ke bentuk asalnya.
Algoritmanya pun erbeda dengan yang digunakan pada saat
enkripsi sebuah data.
c. Kunci / Key
Merupakan parameter yang digunakan untuk melakukan
proses enkripsi maupun dekripsi. Kunci hanya diketahui oleh
pengirim dan penerima karena kerahasiaannya untuk
mengamankan data. Biasanya berupa string atau deretan
bilangan. Kunci dalam kriptografi dibagi menadi dua yaitu
kunci rahasia (private key) dan kunci public (public key).
d. Ciphertext
Algoritma kriptografi dapat disebut juga dengan cipher,
sedangkan ciphertext merupakan pesan hasil dari enkripsinya.
Pesan yang ada pada ciphertext tidak dapat dibaca karena
berupa karakter-karakter yang tidak mempunyai makna atau
atri.
14
e. Pesan / Plaintext
Pesan adalah data atau informasi yang dapat dibaca dan
dimengerti maknanya. Nama lain dari pesan adalah plaintext
atau cleartext. Pesan yang tersimpan tidak hanya berupa text,
tetapi juga dapat berupa citra (image), suara (audio), arsip
(document) , maupun video.
f. Cryptanalysis dan Cryptology
Cryptanalysis adalah ilmu dan seni untuk memecahkan
ciphertext menjadi plaintext tanpa mengetahui kunci atau
algoritma yang digunakan. Pelaku yang melakukan
cryptanalysis disebut Kriptanalis. Sedangkan Cryptology
merupakan sebuah studi mengenai kriptografi dan
kriptanalisis, karena kriptografi maupun kriptanalisis
keduanya saling bersangkutan seperti pada gambar 2.1 yang
menunjukan pohon kriptologi.
Kriptologi
Kriptografi Kriptanalisis
Gambar 2.1. Kriptografi dan Kriptanalisis adalah cabang bidang ilmu Kriptologi
2.2.2.2.Teknik Kriptografi
Teknik Kriptografi pada umumnya dibedakan menjadi dua yaitu
symmetric key (kunci simetrik) dan asymmetric key (kunci asimetris
atau kunci publik).
a. Symmetric Algorithm
Algoritma kriptografi simetris atau kriptografi
konvensional adalah algoritma yang menggunakan kunci
15
1. Caesar Cipher
Algoritma Caesar cipher ini menjadi algoritma dengan
teknik subtitusi tertua yang pernah diketahui. Pencetusnya
sendiri adlah kaisar Romawi Julius Caesar untuk
menyandikan pesan yang dia kirim kepada gubernurnya,
sehingga dinamakan Caesar cipher.
Pada Caesar cipher, tiap hurufnya disubtitisikan
dengan huruf berikutnya pada interfal yang ditentukan dari
sususan alphabet yang sama. Contohnya pada tabel 2
dibawah ini menunjukan sebuah tabel subtitusi dengan
interval 3 huruf.
Plaintext:
MAHASISWA SEMESTER AKHIR
Chipertext:
PDKDVLVZD VHPHVWHU DNKLU
18
Enkripsi: = ( ) = ( + ) (2.1)
Dekripsi: = ( ) = ( − ) (2.2)
Enkripsi: = ( ) = ( + ) (2.3)
Dekripsi: = ( ) = ( − ) (2.4)
2. Affine Cipher
Affine Cipher merupakan pengembangan dari
Caesar cipher, yaitu mengalikan plaintext dengan sebuah
nilai dan menambahkannya dengan sebuah pergeseran.
Enkripsi plaintextP untuk menghasilkan ciphertxtC dapat
dinyatakan melalui fungsi berikut:
Enkripsi: = + ( ) (2.5)
C : Ciphertext
m : bilangan bulat yang harus relative prima.
n : ukuran alphabet
P : pesan atau plaintext
B : jumlah pergeseran
Dekripsi: = ( − )( ) (2.6)
C : Ciphertext
-1
m : inverse dari m (mod n).
n : ukuran alphabet
P : pesan atau plaintext
b : jumlah pergeseran
key, atau ciphertext dinyatakan dalam rangkaian bit biner, yaitu 0 dan
1 [9].
Kunci yang digunakan dalam algoritma kriptografi modern
dapat berupa kunci simetri maupun kunci asimetri. Kunci simetri
dalam kriptografi modern dikelompokan menjadi dua bagian, yaitu
stream cipher (cipher aliran)dan block cipher (cipher blok).
1. Stream Cipher
Stream Cipher atau cipher aliran dasarnya beroprasi pada
plaintext maupun ciphertext yang diubah menjadi bit per bit atau
byte per byte. Algoritma klasik yang menggunakan jenis ini
adalah Vigenere cipher dan one-time pad cipher. Diperkenalkan
pertama kali oleh Vernan melalui algoritmanya yang terkenal
yaitu Vernan cipher. Vernan mengadopsi dari one-time pad
cipher yang dalam hal ini tiap karakter diubah menjadi bit.
Algoritma kriptografi modern yang menggunakan jenis stream
cipher ini adalah RC4 (Ron’s Code berasal dari nama salah satu
pengembang Algoritma RSA) dan A5 (algoritma yang sering
digunakan pada enkripsi signal percakapan telepon).
2. Block Cipher
Block Cipher bisa juga disebut cipher block rangkaian bit-
bit plaintext akan dibagi menjadi blok-blok bit dengan panjang
yang sama, umumnya 64 bit hanya terkadang beberapa algoritma
menggunakan bit lebih dari itu. Kriptografi modern tidak akan
lepas dari kriptografi klasik, karena dasar dari kriptografi modern
adalah teknik-teknik dari kriptografi klasik. Kriptografi klasik
yang digunakan adalah subtitusi, transposisi atau permutasi,
ekspansi, kompresi. Plaintext dalam block cipher dibagi menjadi
beberapa blok dengan panjang tetap. Beberapa mode operasi
untuk melakukan nkripsi dalam hal ini adalah sebagai berikut :
a. Electronic Code Book(EBC)
23
a. Transformasi SubBytes()
Tranformasi SubBytes dalam enkripsi maupun dekripsi adalah
memetakan setiap byte dari array state menggunakan tabel subtitusi
S-box. Berbeda dengan DES yang menggunakan S-box berbeda di
setiap putarannya, AES hanya menggunakan S-box seperti pada
Gambar 5.
28
b. Tranformasi ShiftRows()
Transformasi ShiftRows() melakukan pergeseran secara wrapping
(siklik) pada 3 baris terakhir dari array state. Jumlah pergeseran
29
( )= ( )⊗ ( ) (2.8)
02 03 01 01 ⎤
⎡ ,
⎤ ⎡ ⎡
,
⎤
⎢ , ⎥ ⎢ 01 02 03 01 ⎥
⎢ , ⎥
⎢ ⎥=⎢ ⎥
⎢ , ⎥ ⎢ 01 01 02 03 ⎥ ⎢ , ⎥
⎣ , ⎦ ⎣ 03 01 01 02 ⎦ ⎣ , ⎦
, = ({02} • , )⨁({03} • , )⨁ , ⨁ ,
, = , ⨁ {02} • , ⨁({03} • , )⨁ ,
, = , ⨁ , ⨁ {02} • , ⨁({03} • , )
, = ({03} • , )⨁ , ⨁ , ⨁({03} • , )
30
d. Tranformasi AddRoundKey()
Pada tahapan ini akan dilakukan operasi XOR terhadap sebuah
roundkey dengan array state, hasilnya akan disimpan pada array
state. Seperti pada gambar 2.8.
2.2.4. Steganografi
2.2.4.1.Sejarah dan Definisi Steganografi
Kerahasiaan pesan tidak hanya menggunakan kriptografi. Ada
juga teknik lain yang telah diimplementasikan selama berabad-abad lalu,
yaitu steganografi.
Definisi steganografi menurut Renaldi Munir dalam bukunya
yang berjudul Kriptografi mengatakan “steganografi adalah ilmu dan seni
menyembunyikan pesan rahasia didalam pesan lain sehingga keberadaan
pesan tersebut tidak dapat diketahui”.
Sedangkan dalam bukunya yang lain dengan judul Pengantar
Pengolahan Citra Digital, Renaldi Munir menulis, “Steganografi adalah
teknik menyembunyikan data rahasia dalam wadah atau media digital
sehingga keberadaan data rahasia tersebut tidak diketahui orang lain”.
Penerapan steganografi sudah dikenal oleh bangsa Yunani dalam
pengiriman pesan dengan kepala budak atau prajurit sebagai media.
Dalam hal ini, rambut budak dibotaki, lalu pesan ditulis pada kulit kepala
budak. Ketika rambut budak sudah tumbuh maka dikirimlah budak
kepada sang penerima dan ketika tiba disana kepalanya akan dibotaki
kembali untuk membaca pesannya kembali.
Berbeda dengan bangsa Romawi yang dalam penerapannya
menggunakan tinta tak-tamba (invicible ink) dalam penulisan pesan.
Tinta tersebut dibuat dari campuran buah, susu, dan cuka. Cara
membacanya adalah dengan memanaskan kertas tersebut dengan api [7].
Semakin berkembangnya jaman, steganografi hampir sama
dengan kriptografi. Dalam pemrosesannya menggunakan media-media
digital dan berkembangnya algoritma-algoritma baru dalam
perjalanannya. Medianya pun tidak hanya text, melainkan juga citra,
32
audio, atau video. Dalam penelitian ini akan difokuskan dalam media
Citra.
2.2.4.2.Kriteria Steganografi
Penyembunyian data dalam citra digital pasti akan mendampak
pada kualitas citra. Factor inilah yang perlu dihindari, oleh karena itu
ditetapkan kriteria yang harus diperhatikan dalam menyembunyikan
sebuah data, seperti [7]:
1.) Fidelity
Mutu citra penampung tidak jauh berubah. Setelah
penambahan data rahasia, citra hasil steganografi masih
terlihat dengan baik. Pengamat tidak mengetahui kalau di
dalam citra tersebut terdapat data rahasia. Intinya, kualitas
tidak berubah secara drastis.
33
2.) Robustness
Data yang disembunyikan harus tahan (robust) terhadap
berbagai operasi manipulasi yang dilakukan pada citra
penampung, seperti pengubahan
kontras, penajaman, pemampatan, rotasi, perbesaran gambar,
pemotongan (cropping), enkripsi, dan sebagainya. Bila pada
citra penampung dilakukan operasi-operasi pengolahan citra
tersebut, maka data yang disembunyikan seharusnya tidak
rusak (tetap valid jika diekstraksi kembali)
3.) Recovery
Data yang disembunyikan harus dapat diungkapkan kembali
(reveal). Karena tujuan steganografi adalah data hiding, maka
sewaktu-waktu data rahasia di dalam citra penampung harus
dapat diambil kembali untuk digunakan lebih lanjut.
192 54 23 63 67 34 51
192 54 23 63 67 34 51
85 68 73 78 85 83 255
2.3.Kerangka Pemikiran
Penulis perlu membuat gambaran singkat sebagai alur penyusunan
laporan ini dengan kerangka pemikiran sebagai berikut:
Tindakan
Metode
Penerapan
Tool
WinPython
Hasil
METODE PENELITIAN
3.1.Intrument Penelitian
Penelitian membutuhkan hardware software guna mendukung peneliti
dalam mengimplementasikan penelitian yang dilakukan. Berikut kebutuhan
yang diperlukan:
a. Objek Penelitian
Objek dalam penelitian ini adalah SMA Negeri 1 Weleri.
b. Bahan Penelitian
Dalam penelitian ini bahan akan diteliti adalah Soal Ujian Sekolah
2016 di SMA Negeri 1 Weleri yang merupakan dokumen rahasia.
c. Perangkat Penelitian
Perangkat-perangkat yang dibutuhkan dalam mendukung
terlaksananya penelitian ini adalah sebagai berikut:
1. Hardware
a) Processor : AMD A4-5000 Quad-core
b) Harddisk : 500 GB
c) RAM : 4 GB
2. Software
a) Sistem Operasi - Microsoft Windows 10 Pro 64-bit
b) WinPython dengan Python 3.4
c) Microsoft Word 2013
35
36
PLAINTEXT ; KEY
Enkripsi Image
Advance Encryption
Standard (AES-128)
Steganografi
End of File (EoF)
Ciphertext
STEGO IMAGE
STEGO IMAGE
UNSTEGO
Ciphertext
Dekripsi
Plaintext/
File Asli
Start
Enkripsi
File
AddRoundKey
( XOR Cipher Key )
n = 10
i= 1
No
i ≤ n- 1
Yes
SubBytes SubBytes
ShiftRows ShiftRows
AddRoundKey
MixColumns
( XOR Sub - Kunci ke - 10 )
AddRoundKey
Cipher Text
( XOR Sub - Kunci ke - i )
i=i+1
Start
Dekripsi
Cipher Text
AddRoundKey
( XOR Sub - Kunci ke - 10 )
Inv ShiftRows
Inv SubBytes
n= 1
i= 9
No
i≥ n
Yes
AddRoundKey AddRoundKey
( XOR Sub - Kunci ke - i ) ( XOR Cipher Key )
Inv SubBytes
i= i-1
Membuat file
3.5.Pengujian Metode
Untuk melakukan pengujian terhadap metode yang digunakan, peneliti
memberikan contoh perhitungan terhadap metode yang diusulkan berdasarkan
kajian pustaka yang dikumpulkan. Sebagai berikut:
a. Transformasi SubByte
- Pada awal putaran, initial rount akan disubtitusikan menggunakan
Transformasi SubByte. Tranformasi ini menggunakan S-box khusus yang
hanya digunakan pada algoritma AES. Seperti berikut:
45
- Cara subtisusinya adalah untuk setiap byte pada array state, misalkan
S[r,c] = xy, xy dalam hal ini adalah digit hexadecimal dari S[r,c], maka
nilai subtitusinya dinyatakan sebagai S’[r,c] merupakan elemen yang ada
dalam S-box dari perpotongan baris x dengan kolom y.
- Pada putaran pertama S[0,0] bernilai 19, sehingga saat di inputkan dalam
S-box, 1 dan 9 akan bersebrangan membentuk bilangan baru, yaitu d4
sebagai S’[0,0].
b. Tranformasi ShiftRows()
- 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.
46
- Pergeseran baris 1, 2 dan 3 dari array pada Gambar 3.8 diilustrasikan pada
gambar dibawah ini:
Gambar 18. Hasil pergeseran baris ke-1 dan pergeseran baris ke-2
Gambar 19. Hasil pergeseran baris ke-2 dan pergeseran baris ke-3
c. Transformasi MixCollumns().
- Dalam tahap ini, singkatnya adalah mengalikan tiap kolom dari hasil
ShiftRow dengan matrix berikut :
- Begitu juga dengan menghitung r1, r2, dan r3. Perlu diingat kembali
bahwa pertambahan disini adalah XOR.
- Dari penjelasan diatas maka r0 hingga r3 adalah:
49
d. Tranformasi AddRoundKey()
- Proses ini sama dengan proses pertama, hanya saja Pada tahapan ini akan
dilakukan operasi XOR terhadap sebuah round key dengan array state,
hasilnya akan disimpan pada array state.
- Maka akan diproses dari array hasil MixCollumns seperti pada proses di
bawah ini:
- Array pada gambar diatas adalah hasil dari putaran pertama. Karena pada
AES-128 putaran terjadi 10 kali hingga Final Round. Proses pada putaran
ke-2 hingga ke-10 akan terjadi seperti dibawah ini:
192 54 23 63 67 34 60 51
57 2 220 25
37 220 17 106
132 9 133 11
29 251 151 50
192 54 23 63 67 34 60
# 57 2 220 25 37 220
251 151 50 #
a. UNSTEGO
- Dalam tahap unstego atau pengeluaran file dari citra mulanya bentuk citra
dalam array, lalu cari karakter batasan di akhir array, dalam pengujian ini
menggunakan karakter #. Berikut citra stego yang akan di keluarkan
filenya.
192 54 23 63 67 34 60
# 57 2 220 25 37 220
251 151 50 #
- Dari citra di atas, akan diambil file yang diletakan paling akhir dan
dibatasi oleh karater “#”. Yaitu [52 2 220 25 37 220 17 106 132 9 133 11
29 251 151 50]
- Di dapati kembali sebuah ciphertext atau data yang diamankan dalam
array:
57 2 220 25
37 220 17 106
132 9 133 11
29 251 151 50
b. Dekripsi
- Perlu diingat lagi bahwa AES menggunakan bilangan hexadecimal, maka
ciphertext dalam bertuk decimal diatas diubah dalam bentuk hexadecimal
seperti berikut:
- Diketahui kembali sebuah initial round pada putaran ke-9 seperti diatas.
Diulangi lagi proses XOR antara initial round ke-9 dengan round key ke-9.
Hasil dari operasi XOR ini adalah array hasil transformasi MixCollumn
pada putaran ke-9.
57
-
58
- Begitu juga dengan menghitung a1, a2, dan a3. Perlu diingat kembali bahwa
pertambahan disini adalah XOR. Sehingga hasilnya adalah:
- Sehingga terbentuk sebuah array baru yang berupa hasil ShiftRow pada
putaran ke-9:
- Pada akhir proses, ciphertext akan kembali menjadi plaintext atau file asli
seperti proses di awal.
- Data yang dimasukkan masih sama persis dengan data yang di keluarkan.
Dengan kata lain, dalam pengujian ini metode yang digunakan dapat
berjalan dengan baik.
BAB IV
60
61
4.3.Pemodelan Bisnis
Dalam pemodelan ini, peneliti mengguanakn 2 (dua) buah actor yaitu
pengirim dan penerima. Urutannya sebagai berikut:
1. Pihak pengirim
Taham ini, pengirim menjadi kunci utama dalam proses
pengamanan data. Karena pengirim mempunyai hak penuh atas
informasi yang akan diamankan yang nantinya akan diubah dalam
data baru menggunakan Aplikasi kriptografi Advance Encryotion
Standard dan diteruskan dalam penyisipan mengguanakn End Of
File.
2. Informasi yang muncul
Informasi baru yang telah dibentuk dan didapatkan oleh pihak
penerima adalah file berbentuk citra, dapat berupa JPG maupun
PNG.
3. Pihak penerima
Tahap ini adalah tahap dalam pemulihan file. Dilakukan oleh pihak
kedua yaitu penerima. Penerima akan melakukan penguraian data
62
Use Case:
Proses Dekripsi dan Pengambilan (Unstego)
Aktor:
Penerima
Tujuan:
Data berhasil diuraikan dan didekripsi.
Syarat:
1. Menginputkan file stego untuk mengambil data.
2. Menginputkan file terenkripsi untuk dipulihkan pada
keadaansemula.
3. Memasukan kunci.
Tujuan :
Penerima dapat mengambil data yang telah disembunyikan.
Skenario:
1. Penerima membuka aplikasi Steganografi.
2. Penerima memasukan citra yang akan diambil datanya.
3. Penerima mendapatkan data enkripsi.
4. Penerima membuka aplikasi Dekripsi.
5. Penerima memasukan file hasil enkripsi dan kunci yang
sudah diberikan dari pengirim secara rahasia.
6. Penerima mendapatkan file hasil dekripsi.
Tabel4.2Skenario Unstego dan Dekripsi
4.3.Persiapan Data
Sebelum memasuki penelitian selanjutnya, dilakukan pengumpulan
terhadap data yang nantinya akan digunakan sebagai bahan penelitian. Peneliti
telah memperoleh data Soal Ujian Sekolah dari SMA Negeri 1 Weleri dan data
citra sebagai objek penyisipan.
64
Besar Besar
Data Dokumen Data Citra
File File
citra1.jpg
citra2.jpg
citra3.jgp
citra4.jpg
citra5.jpg
65
citra6.jpg
citra7.png
citra8.png
citra9.jpg
citra10.jpg
Tabel4.3Data Awal Penelitian (Soal Ujian Sekolah dan citra yang digunakan)
66
4.4.1. Enkripsi
Diambil data berupa satu blok dari file yang akan di enkripsi. Pembacaan
blok ini menggunakan aplikasi Sublime Text pada system operasi Windows
10.
50 14 80 21 70 77 70 77
4B 00 00 00 61 6F 61 6F
03 06 00 CC 73 72 73 72
04 00 00 CF 73 64 73 64
Elemen state Key ‘passwordpassword’
(plaintext) (cipher key)
20 13 78 56
2A 6F 61 6F
70 74 73 BE
77 64 73 AB
- Seperti yang sudah dijelaskan pada Bab 3. Pada putaran pertama S[0,0]
bernilai 20, sehingga saat di inputkan dalam S-box, 2 dan 0 akan
bersebrangan membentuk bilangan baru, yaitu B7 sebagai S’[0,0].
- Sehingga saat selesai subtitusi seluruh bilangan akan muncul array baru
seperti berikut:
B7 FB BC B1
E5 A8 EF A8
51 92 8F AE
F5 43 8F 62
B7 FB BC B1
A8 EF A8 E5
Baris ke 2 (dua) di geser ke kiri sejauh 1.
51 92 8F AE
F5 43 8F 62
B7 FB BC B1
A8 EF A8 E5
8F AE 51 92 Baris ke 3 (dua) di geser ke kiri sejauh 2.
F5 43 8F 62
B7 FB BC B1
A8 EF A8 E5
8F AE 51 92 Baris ke 4 (empat) di geser ke kiri sejauh 3.
62 F5 43 8F
B7 FB BC B1
A8 EF A8 E5
Hasil akhir proses Shift Row.
8F AE 51 92
62 F5 43 8F
- Tahap selanjutnya adalah mengalikan setiap kolom dari array state dengan
polinom a(x) mod (x4 + 1) pada tahapan MixCollumns().
Transformasi MixCollumns().
- Dalam tahap ini, singkatnya adalah mengalikan tiap kolom dari hasil
ShiftRow dengan matrix berikut :
70
- Sehingga untuk membangun sebuah kolom baru akan diolah dari kolom
pertama hasil shift row dikalikan dengan matrix diatas:
= (01110101)⨁(11100011)⨁(10001111)⨁(01100010)
= 01111011
= 7 ( )
- Begitu juga dengan menghitung r1, r2, dan r3. Perlu diingat kembali
bahwa pertambahan disini adalah XOR.
- Dari penjelasan diatas maka hasil dari mix column dalam satu blok adalah
sebagai berikut:
7B 9C 92 50
14 22 47 42
BC 57 73 E1
72
21 A6 A0 BA
c. Tranformasi AddRoundKey()
- Proses ini sama dengan proses pertama, hanya saja Pada tahapan ini akan
dilakukan operasi XOR terhadap sebuah round key dengan array state,
hasilnya akan disimpan pada array state.
- Maka akan diproses dari array hasil MixCollumns seperti pada proses di
bawah ini:
7B 9C 92 50 D9 AE DE A9
14 22 47 42 21 4E 2F 40
BC 57 73 E1 30 42 31 43
21 A6 A0 BA 86 E2 91 F5
Sehingga menghasilkan blok baru yang akan diolah pada perulangan selanjutnya
seperti berikut:
A2 32 4C F9
35 6C 68 2
8C 15 42 A2
A7 44 31 4F
Karena pada AES-128 putaran terjadi 10 kali hingga Final Round. Proses pada
putaran ke-1 hingga ke-10 akan terjadi seperti dibawah ini:
73
Putaran ke 10 adalah Final Round, yang pada tahapannya ‘tidak’ terjadi proses
Tranformasi MixCollumns. Pada akhir proses enskripsi akan terlihat ciphertext :
74
68 a2 af f8
07 e8 87 e3
18 9c 81 ce
f9 4d 3e 4c
4.4.2. Dekripsi
Dekripsi merupakan langkah dalam mentranformasikan kembali
ciphertxt dalam bentuk plaintext atau mengembalikan informasi kedalam
keadaan semula sebelum terenkripsi. Dekripsi AES tahapan-tahapannya
sama seperti enkripsinya hanya berjalan mundur atau proses dari akhir ke
awal.
Langkah pertama dalam dekripsi adalah menemukan hasil ShiftRow
pada putaran ke-10. Ini dilakukan karena tidak adanya proses Mixcollumn
tang terjadi pada putaran ke-10. Oleh karena itu dalam mencari hasil
ShiftRow adalah dengan melakukan operasi XOR antara ciphertext dengan
Round Key ke-10.
68 a2 af f8 e6 cf 0d 19
07 e8 87 e3 62 6c e2 42
18 9c 81 ce d5 0c 8a db
f9 4d 3e 4c 68 ea af 9b
8e 6d a2 e1
65 84 65 a1
cd 90 0b 15
91 a7 91 d7
a. Transformasi Inv ShiftRow.
- Selanjutnya dilakukan proses Inv ShiftRow. Secara singkat langkah-
langkahnya adalah:
o Baris pertama tidak di geser
o Baris kedua digeser ke kanan 1 (satu) kali
o Baris ketiga digeser ke kanan 2 (dua) kali
o Baris keempat digeser ke kanan 3 (tiga) kali.
- Setelah melalui proses tersebut akan didapati array baru yang merupakan
isi dari transformasi SubByte putaran ke-10.
8e 6d a2 e1
A1 65 84 65
cd 90 0b 15
Baris ke 2 (dua) di geser ke kanan sejauh 1.
91 a7 91 d7
8e 6d a2 e1
65 84 65 a1
0b 15 cd 90 Baris ke 3 (dua) di geser ke kanan sejauh 2.
91 a7 91 d7
8e 6d a2 e1
65 84 65 a1
cd 90 0b 15 Baris ke 4 (empat) di geser ke kanan sejauh 3.
a7 91 d7 91
8e 6d a2 e1
a1 65 84 65
Hasil akhir proses Shift Row.
0b 15 cd 90
a7 91 d7 91
76
8e 6d a2 e1 e6 b3 1a e0
a1 65 84 65 S’Box f1 bc 4f bc
0b 15 cd 90 9e 2f 80 96
a7 91 d7 91 89 ac 0d ac
- Diketahui kembali sebuah initial round pada putaran ke-9 seperti diatas.
Diulangi lagi proses XOR antara initial round ke-9 dengan round key ke-9.
Hasil dari operasi XOR ini adalah array hasil transformasi MixCollumn
pada putaran ke-9.
77
e6 b3 1a e0 30 29 c2 14 d6 9a d8 f4
f1 bc 4f bc b3 0e 8e a0 42 b2 c1 1c
9e 2f 80 96 cd d9 86 51 53 f6 6 c7
89 ac 0d ac 92 82 45 34 1b 2e 48 98
- Catatan untuk langkah ini, perlu dilihat kembali pada enkripsi bahwa
proses MixCollumn menggunakan matrix khusus. Begitu pula dengan
dekripsi, dalam dekripsi dilakukan invers matrix yang digunakan pada
enkripsi sehingga matrix yang digunakan dalam dekripsi sebagai berikut:
× 09 = ( × 2) × 2 × 2 +
d6 9a d8 f4 a1 50 66 8b
42 b2 c1 1c 79 4d 9f ef
Inv-MixCol
53 f6 6 c7 87 c7 16 cd
1b 2e 48 98 83 2a b8 1e
- Sehingga terbentuk sebuah array baru yang berupa hasil ShiftRow pada
putaran ke-9 seperti tabel diatas.
81
- Pada akhir langkah ini, ciphertext akan kembali menjadi plaintext atau file
asli seperti proses di awal.
w[11] 0b 1a e6 d3 1a e6 d3 0b a2 8e 66 2b 04 00 00 00 a6 8e 66 2b d2 3b d6 55 74 b5 b0 7e
w[12] 74 b5 b0 7e 7c 75 94 b7 08 c0 24 c9
w[13] 08 c0 24 c9 a2 5a a5 26 aa 9a 81 ef
w[14] aa 9a 81 ef 0b 1a e6 d3 a1 80 67 3c
w[15] a1 80 67 3c 80 67 3c a1 cd 85 eb 32 08 00 00 00 c5 85 eb 32 74 b5 b0 7e b1 30 5b 4c
w[16] b1 30 5b 4c 08 c0 24 c9 b9 f0 7f 85
w[17] b9 f0 7f 85 aa 9a 81 ef 13 6a fe 6a
w[18] 13 6a fe 6a a1 80 67 3c b2 ea 99 56
w[19] b2 ea 99 56 ea 99 56 b2 87 ee b1 37 10 00 00 00 97 ee b1 37 b1 30 5b 4c 26 de ea 7b
w[20] 26 de ea 7b b9 f0 7f 85 9f 2e 95 fe
w[21] 9f 2e 95 fe 13 6a fe 6a 8c 44 6b 94
w[22] 8c 44 6b 94 b2 ea 99 56 3e ae f2 c2
w[23] 3e ae f2 c2 ae f2 c2 3e e4 89 25 b2 20 00 00 00 c4 89 25 b2 26 de ea 7b e2 57 cf c9
w[24] e2 57 cf c9 9f 2e 95 fe 7d 79 5a 37
w[25] 7d 79 5a 37 8c 44 6b 94 f1 3d 31 a3
w[26] f1 3d 31 a3 3e ae f2 c2 cf 93 c3 61
w[27] cf 93 c3 61 93 c3 61 cf dc 2e ef 8a 40 00 00 00 9c 2e ef 8a e2 57 cf c9 7e 79 20 43
w[28] 7e 79 20 43 7d 79 5a 37 03 00 7a 74
w[29] 03 00 7a 74 f1 3d 31 a3 f2 3d 4b d7
w[30] f2 3d 4b d7 cf 93 c3 61 3d ae 88 b6
w[31] 3d ae 88 b6 ae 88 b6 3d e4 c4 4e 27 80 00 00 00 64 c4 4e 27 7e 79 20 43 1a bd 6e 64
w[32] 1a bd 6e 64 03 00 7a 74 19 bd 14 10
w[33] 19 bd 14 10 f2 3d 4b d7 eb 80 5f c7
w[34] eb 80 5f c7 3d ae 88 b6 d6 2e d7 71
w[35] d6 2e d7 71 2e d7 71 d6 31 0e a3 f6 1b 00 00 00 2a 0e a3 f6 1a bd 6e 64 30 b3 cd 92
w[36] 30 b3 cd 92 19 bd 14 10 29 0e d9 82
w[37] 29 0e d9 82 eb 80 5f c7 c2 8e 86 45
w[38] c2 8e 86 45 d6 2e d7 71 14 a0 51 34
w[39] 14 a0 51 34 a0 51 34 14 e0 d1 18 fa 36 00 00 00 d6 d1 18 fa 30 b3 cd 92 e6 62 d5 68
w[40] e6 62 d5 68 29 0e d9 82 cf 6c 0c ea
w[41] cf 6c 0c ea c2 8e 86 45 0d e2 8a af
w[42] 0d e2 8a af 14 a0 51 34 19 42 db 9b
w[43] 19 42 db 9b e6 62 d5 68
4.5.1.1.Enkripsi
Proses enkripsi merupakan proses pengamanan data
menggunakan algoritma yang dibutuhkan. Dalam penelitian ini
algoritma yang digunakan adalah AES, maka dalam script yang
dibangun pertama-tama melakukan import modul yang akan
digunakan seperti gambar 4.3.
4.5.2.2.Dekripsi
Setelah data terenkripsi diambil dari data citra maka lagkah
selanjutnya adalah proses dekripsi. Proses dekripsi merupakan proses
mengubah hasil enkripsi (cipher) menjadi file awal atau data asli.
Seperti pada enkripsi, dekripsi dalam python memerlukan modul
sehingga fungsi di masukkan dalam satu file. Berikut file dekripsinya.
Besar
Data Dokumen Hasil Enkripsi
File
SOAL UJIAN SEKOLAH 2016 paket 14 seni
399KB Sukses
budaya.docx
SOAL UJIAN SEKOLAH PAKET 47 seni
766KB Sukses
budaya.docx
SOAL UJIAN SEKOLAH FISIKA 2016.doc 2971KB Sukses
SOAL UJIAN SEKOLAH 2016
143KB Sukses
MATEMATIKA.docx
SOAL UJIAN SEKOLAH 2016 BIOLOGI.docx 876KB Sukses
SOAL UJIAN SEKOLAH BAHASA
235KB Sukses
INDONESIA.doc
SOAL UJIAN SEKOLAH KIMIA.doc 312KB Sukses
SOAL UJIAN SEKOLAH EKONOMI.doc 432KB Sukses
SOAL UJIAN SEKOLAH GEOGRAFI.doc 515KB Sukses
SOAL UJIAN SEKOLAH SOSIOLOGI.docx 168KB Sukses
Tabel4.5Pengujian proses Enkripsi AES
2016 BIOLOGI.docx.code
SOAL UJIAN SEKOLAH
BAHASA 235KB citra6. jpg 155KB citra6. jpg 390KB
INDONESIA.doc.code
SOAL UJIAN SEKOLAH
312KB citra7.png 108KB citra7.png 419KB
KIMIA.doc.code
SOAL UJIAN SEKOLAH
432KB citra8.png 93KB citra8.png 525KB
EKONOMI.doc.code
SOAL UJIAN SEKOLAH
515KB citra9. jpg 90KB citra9. jpg 604KB
GEOGRAFI.doc.code
SOAL UJIAN SEKOLAH citra10.
168KB 184KB citra10. jpg 351KB
SOSIOLOGI.docx.code jpg
Tabel4.6Pengujian proses Steganografi EoF
Besar Besar
Citra Stego File Ekstrasi
Stego File
citra1.jpg 466KB data_enkripsi1.code 399KB
citra2.jpg 892KB data_enkripsi2.code 766KB
citra3.jpg 2983KB data_enkripsi3.code 2972KB
citra4.jpg 297KB data_enkripsi4.code 143KB
citra5.jpg 912KB data_enkripsi5.code 876KB
citra6.jpg 390KB data_enkripsi6.code 236KB
citra7.png 419KB data_enkripsi7.code 312KB
citra8.png 525KB data_enkripsi8.code 433KB
citra9.jpg 604KB data_enkripsi9.code 515KB
citra10.jpg 351KB data_enkripsi10.code 168KB
Tabel4.7 Pengujian Proses Ekstraksi Data EoF
94
Besar Besar
Citra Stego File Ekstrasi Keterangan
Stego File
data_enkripsi1.code 399KB data_enkripsi1.docx 399KB Sukses
data_enkripsi2.code 766KB data_enkripsi2.docx 766KB Sukses
data_enkripsi3.code 2972KB data_enkripsi3.doc 2971KB Sukses
data_enkripsi4.code 143KB data_enkripsi4.docx 143KB Sukses
data_enkripsi5.code 876KB data_enkripsi5.docx 876KB Sukses
data_enkripsi6.code 236KB data_enkripsi6.doc 235KB Sukses
data_enkripsi7.code 312KB data_enkripsi7.doc 312KB Sukses
data_enkripsi8.code 433KB data_enkripsi8.doc 432KB Sukses
data_enkripsi9.code 515KB data_enkripsi9.doc 515KB Sukses
data_enkripsi10.code 168KB data_enkripsi10.docx 168KB Sukses
Tabel4.8 Pengujian proses Dekripsi AES
Pengujian dekripsi dengan Advance Encryption Standard semua file berhasil
kembali dalam keadaan semua dan berhasil dibuka sesuai data awal.
PENUTUP
5.1.Simpulan
Dari penelitian yang dilakukan peneliti meliputi tahapan perancangan
hingga implementasi aplikasi kriptografi Adnvance Encryption Standard dan
steganografi End of File, diperoleh kesimpulan sebagai berikut:
1. Melalui hasil yang diperoleh, terbukti bahwa aplikasi ini dapat
mengamankan informasi sehingga tidak semua orang dapat
mengambilnya dengan sembarangan terlebih tidak ada program
dalam Windows yang dapat mengetahui data aslinya.
2. Selain terbukti dalam pengamanan, penelitian ini membuktikan
bahwa bahasa Python dapat digunakan dalam pengamanan data
maupun informasi yang rahasia karena hasil enkripsi dan dekripsi
sama dengan perhitungan manualnya.
3. Informasi Sebelum dan setelah melalui proses Enkripsi, dekripsi
serta Steganografi tidak berubah dan tidak mengalami kerusakan,
dengan kata lain metode ini berjalan dengan lancer dan sukses.
4. Informasi yang diamankan melalui metode kriptografi serta
steganografi tidak menjadi rusak dengan syarat tidak melakukan
editing meliputi pemotongan(cropping), penambahan kecerahan
(brightness), penambahan contrast serta penempelan gambar lain.
Ini disebabkan karena end of file adalah teknik steganografi dengan
menyisipkan informasi pada baris paling belakang dari matrix
media yang disispkan. Ketika dilakukan editing, aplikasi editing
hanya menyimpan kembali citra menurut blok pixel yang terlihat,
sehingga informasi yang ada dibelakang akan hilang saat
penyimpanan.
95
96
5.2.Saran
Dari penelitian yang dilakukan, saran-saran yang berguna dalam
pengenbangan penelitian ini adalah sebagi berikut:
1. Aplikasi dijalankan masih menggunakan command dalam IDLE
Python, Akan lebih baik lagi jika diberi interface yang menarik.
2. Implementasi stegano dalam Python ini masih menggunakan
temporary file, baiknya dalam penelitian selanjutnya dapat
mengimplementasikan stegano tanpa temporary file.
3. Penelitian ini dapat di implementasikan pada instansi lain yang
memiliki dokumen yang dirahasiakan.
4. Karena berbasis pemrograman python, metode yang digunakan
dalam penelitian ini dapat di implementasikan pada sebagian besar
platform, tidak hanya pada desktop melainkan pada mobile, web
dan lainnya.
DAFTAR PUSTAKA
[3] W. Wei, "Top 4 Data Breach reported in last 24 hours," 10 May 2016.
[Online]. Available: http://thehackernews.com/2016/05/top-data-breach.html.
[Accessed 12 May 2016].
[4] A. Yayuk and V. Dolly, "Penerapan Steganografi Metode End Of File (Eof)
Dan Enkripsi Metode Data Encryption Standard (Des) Pada Aplikasi
Pengamanan Data Gambar Berbasis Java Programming.," in Konferensi
Nasional Sistem Informasi 2014, Makassar, 2014.
[6] A. S. Christy and H. R. Eko, "Gabungan Algoritma Vernam Cipher Dan End
of File Untuk Keamanan Data," Techno.COM, vol. XIII, no. 3, pp. 150-157,
2014.
xii