• Tidak ada hasil yang ditemukan

SKRIPSI PENGAMANAN SOAL UJIAN SEKOLAH D

N/A
N/A
Protected

Academic year: 2018

Membagikan "SKRIPSI PENGAMANAN SOAL UJIAN SEKOLAH D"

Copied!
127
0
0

Teks penuh

(1)

PENGAMANAN SOAL UJIAN SEKOLAH DENGAN

ALGORITMA KRIPTOGRAFI

ADVANCE ENCRYPTION

STANDARD (AES)

DAN METODE STEGANOGRAFI

END OF

FILE

(EOF)

PADA SMA NEGERI 1 WELERI

SCHOOL EXAM DATA SECURITY WITH ADVANCE

ENCRYPTION STANDARD CRYPTOGRAPHIC ALGORITHM

(AES) AND STEGANOGRAPHY END OF FILE (EoF)

ON SMA NEGERI 1 WELERI

Diajukan untuk memenuhi salah satu syarat memperoleh gelar Sarjana Teknik Informatika

Disusun oleh :

Nama

: Ardiant Yosa Hastaka

NIM

: A11.2012.07102

Program Studi

: Teknik Informatika-S1

FAKULTAS ILMU KOMPUTER

UNIVERSITAS DIAN NUSWANTORO

SEMARANG

(2)

PERSETUJUAN SKRIPSI

Nama : Ardiant Yosa Hastaka

NIM : A11.2012.07102

Program Studi : Teknik Informatika Fakultas : Ilmu Komputer

Judul Tugas Akhir : Pengamanan Soal Ujian Sekolah Dengan Algoritma Kriptografi Advance Encryption Standard (Aes) Dan Metode Steganografi End Of File (Eof) pada SMA Negeri 1 Weleri

Tugas Akhir ini telah diperikas dan disetujui. Semarang, 3 Maret 2017

Menjetujui: Pembimbing,

Mengetahui:

Dekan Fakultas Ilmu Komputer

(3)

Nama : Ardiant Yosa Hastaka

NIM : A11.2012.07102

Program Studi : Teknik Informatika Fakultas : Ilmu Komputer

Judul Tugas Akhir : Pengamanan Soal Ujian Sekolah Dengan Algoritma Kriptografi Advance Encryption Standard (Aes) Dan Metode Steganografi End Of File (Eof) pada SMA Negeri 1 Weleri

Tugas akhir ini telah diujikan dan dipertahankan dihadapan Dewan Penguji pada Sidang tugas akhir tanggal 3 Maret 2017. Menurut pandangan kami, tugas akhir

ini memadai dari segi kualitas maupun kuantitas untuk tujuan penganugrahan gelar Sarjana Komputer (S.Kom.)

Semarang, 3 Maret 2017 Dewan Penguji:

Anggota 1 Anggota 2

Ketua Penguji

(4)

Sebagai Mahasiswa Universitas Dian Nuswantoro, yang bertanda tangan di bawah ini, saya :

Nama : Ardiant Yosa Hastaka NIM : A11.2012.07102

Menyatakan bahwa karya tulis ilmiah saya yang berjudul :

Pengamanan Soal Ujian Sekolah Dengan Algoritma Kriptografi Advance Encryption Standard (Aes) Dan Metode Steganografi End Of File (Eof) pada SMA Negeri 1 Weleri

Merupakan karya asli saya (kecuali cuplikan dan ringkasan yang masing – masing telah saya jelaskan sumbernya). Apabila di kemudian hari, karya saya disinyalir bukan merupakan karya asli saya, yang disertai dengan bukti-bukti yang cukup, maka saya bersedia untuk dibatalkan gelar saya beserta hak dan kewajiban yang melekat pada gelar tersebut. Demikian surat pernyataan ini saya buat dengan sebenarnya.

Dibuat di : Semarang

Pada tanggal : 3 Maret 2017 Yang Menyatakan

(Ardiant Yosa Hastaka)

(5)

ILMIAH UNTUK KEPENTINGAN AKADEMIS

Sebagai mahasiswa Universitas Dian Nuswantoro, yang bertanda tangan di bawah ini, saya :

Nama : Ardiant Yosa Hastaka NIM : A11.2012.07102

Demi mengembangkan Ilmu Pengetahuan, menyetujui untuk memberikan kepada Universitas Dian Nuswantoro Hak Bebas Royalti Non-Ekslusif (Non-exclusive Royalty-Free Right) atas karya ilmiah saya yang berjudul:

Pengamanan Soal Ujian Sekolah Dengan Algoritma Kriptografi Advance Encryption Standard (Aes) Dan Metode Steganografi End Of File (Eof) pada SMA Negeri 1 Weleri.

Dengan Hak Bebas Royalti Non-Eksklusif ini Universitas Dian Nuswantoro berhak untuk menyimpan, mengopy ulang (memperbanyak),

mendistribusikannnya dan menampilkan / mempublikasikannya di internet atau media lain untuk kepentingan akademis tanpa perlu meminta ijin dari saya selama tetap mencantumkan nama saya sebagai penulis / pencipta.

Saya bersedia untuk menanggung secara pribadi, tanpa melibatkan pihak Universitas Dian Nuswantoro, segala bentuk tuntutan hukum yang timbul atas pelanggaran Hak Cipta dalam karya ilmiah saya ini.

Demikian surat pernyataan ini saya buat dengan sebenarnya.

Dibuat di : Semarang Pada tanggal : 3 Maret 2017

Yang Menyatakan

(Ardiant Yosa Hastaka)

(6)

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 Weleri dapat 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

(7)

Kemajuan teknologi telah berkembang pesat, khususnya pada pertukaran informasi yang semakin global. Kemampuan untuk mengakses serta bertukar data sudah sangat cepat. Hal ini juga mempengaruhi dunia kriminalitas pada dunia maya atau lebih dikenal dengan cyber crime. Seorang atau kelompok secara sengaja mengambil dan menyebarluaskan ataupun menggunakan sebuah informasi penting tanpa tanggung jawab. dengan demikian perlunya sebuah pengamanan untuk menjaga kerahasiaan suatu data.

Pengamanan data pada SMA Negeri 1 Weleri terutama pada data soal-soal ujian berangkat dari rentannya data yang berada di computer tanpa pengamanan khusus. Terlebih lagi tentang keluhan bocornya soal-soal ujian yang beredar luas di kalangan siswa dalam bentuk dokumen dalam smartphone mereka. Sehingga dilakukan cara atau metode untuk mengamankan data yang penting terutama soal ujian.

Metode yang akan digunakan dalam penelitian tugas akhir ini adalah AES sebagai algoritma kriptografinya dan End of File sebagai Metode penyisipannya. Sehingga keamanan akan lebih terjaga dengan memperkuat keamanan serta menyembunyikannya dalam suatu berkas yang lain. Hasilnya data akan lebih terjaga kerahasiaannya dan dapat diakses kembali dengan aman. Selain itu dapat diaplikasikan pada tahun-tahun kedepan.

Kata Kunci: Keamanan, kriptografi, steganografi, AES, Eof.

(8)

PERSETUJUAN SKRIPSI...ii

BAB II TINJAUAN PUSTAKA DAN LANDASAN TEORI...5

2.1. Tinjauan Studi...5

2.2. Tinjauan Pustaka...9

2.2.1. Keamanan Data dan File...9

2.2.2. Kriptografi...10

2.2.2.1. Komponen Kriptografi...12

2.2.2.2. Teknik Kriptografi...13

2.2.2.3. Algoritma Kriptografi Klasik...15

2.2.2.4. Algoritma Kriptografi Modern...19

2.2.3. Advance Encryption Standard (AES)...21

2.2.3.1. Enkripsi dan Dekripsi pada AES...22

2.2.4. Steganografi...28

2.2.4.1. Sejarah dan Definisi Steganografi...28

2.2.4.2. Kriteria Steganografi...29

2.2.4.3. Metode End of File...30

2.2.5. Bahasa Pemrograman Python...32

(9)

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...42

BAB IV ANALISIS HASIL PENELITIAN DAN PEMBAHASAN...60

4.1. Analisa Kebutuhan Aplikasi...60

4.4. Penghitungan Manual Advance Encryption Standard...66

4.4.1. Enkripsi...66

4.4.2. Dekripsi...73

4.4.3. Ekspansi Kunci (Round Key)...81

4.5. Implementasi Metode pada Python...83

4.5.1. Implementasi Enkripsi dan Penyisipan pada Python Shell...83

4.5.1.1. Enkripsi...84

4.5.1.2. Proses Penyisipan Data...87

4.5.2. Implementasi Pengambilan dan Dekripsi Python Shell...88

(10)

DAFTAR TABEL

Tabel 2.1 Ringkasan Penelitian...7

Tabel 2.2 Caesar Cipher dengan interval 3...15

Tabel 2.3 Tiga Buah Versi AES (Ariyus, 2008)...22

Tabel 4.1 Skenario Enkripsi dan Stego...62

Tabel 4.2 Skenario Unstego dan Dekripsi...63

Tabel 4.3 Data Awal Penelitian (Soal Ujian Sekolah dan citra yang digunakan). .65 Tabel 4.4 Ekspansi Kunci...82

Tabel 4.5 Pengujian proses Enkripsi AES...91

Tabel 4.6 Pengujian proses Steganografi EoF...92

Tabel 4.7 Pengujian Proses Ekstraksi Data EoF...92

Tabel 4.8 Pengujian proses Dekripsi AES...93

Tabel 4.9 Pengujian Editing Citra...93

(11)

Gambar 2.1 . Kriptografi dan Kriptanalisis adalah cabang ilmu Kriptologi...13

Gambar 2.2 Bujursangkar Vigenere...18

Gambar 2.3. Proses Enkripsi Algoritma AES-128...23

Gambar 2.4. Input Output dan state array...24

Gambar 2.5. S-box yang digunakan pada putaran AES...25

Gambar 2.6. Transformasi SubBytes. (Wikipedia)...26

Gambar 2.7. Tranformasi ShiftRows (Wikipedia)...26

Gambar 2.8. Tranformasi MixCollumns() (Wikipedia)...27

Gambar 2.9. Tranformasi AddRoundKey (Wikipedia)...28

Gambar 2.10. Kerangka Pemikiran...34

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...42

Gambar 3.6. Subtitusi Array S dengan S-box AES...44

Gambar 3.7. Pergeseran baris ke-1...45

Gambar 3.8. Hasil pergeseran baris ke-1 dan pergeseran baris ke-2...45

Gambar 3.9. Hasil pergeseran baris ke-2 dan pergeseran baris ke-3...45

Gambar 3.10. Hasil pergeseran baris ke-3...45

Gambar 3.11. Matrix Enkripsi ShfitRow...46

Gambar 3.12. Proses putaran ke-2 hingga ke-6...49

Gambar 3.13. Putaran ke-7 hinggan ke-10...50

Gambar 3.14. S-Box untuk Dekripsi AES...55

Gambar 3.15. Matrix Dekripsi MixCollumn...56

Gambar 3.16. Hasil Dekripsi AES ...5

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

(12)

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

(13)

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.

(14)
(15)

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].

(16)

(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 Bit Matching 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

(17)
(18)

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.

(19)
(20)

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.

(21)

Penelitian kedua adalah penelitian milik Adetya Krisna Prastyo dengan judul “Pengamanan Data Dengan Metode Advanced Encryption Standard Dan Metode Least Significant Bit” [5]. Algoritma yang digunakan dalam penelitian ini adalah Advanced Encryption Standard sebagai kriptografinya dan Least Significant Bit pada penyisipan atau steganografinya. Data yang digunakan oleh mahasiswa Universitas Dian Nuswantoro jurusan Teknik Informatika angkatan 2010 ini adalah data dalam bentuk Portable Document Format atau lebih dikenal dengan file dengan ekstensi pdf. Aplikasi yang digunakan adalah Visual Basic 2008 untuk kriptografin dan Ultima Steganography dalam penyisipannya. Penelitian ini menghasilkan program untuk membuat data file menjadi lebih aman karena telah tereknkripsi dengan algoritma Advanced Encryption Standard. Dalam penyisipannya juga tidak mengubah banyak kulaitas citra yang digunakan untuk media penyisipan, karena metode LSB lebih kepada pengubahan bit terakhir dari setiap warna dalam gambar sehingga kualitas dan ukuran gambar setelah dilakukan penyisipan tidak berubah secara kontrast. Hasil penyisipan juga tidak boleh dikakukan cropping atau pemotingan, penambahan brightness dan penambahan contrast karena dapan menyebabkan file yang disipan menjadi corrupt atau rusak.

(22)

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.1 Ringkasan Penelitian

Peneliti Judul Metode Tahun Hasil Penelitian Yayuk

DESain berupa citra dengan Java pada Jogjack Factory Oulet. File yang disisipkan tidak merubah kualitas gambar dan hasil dari pesyisipan menambah Visual Basic 2008, dan penyisipan

menggunakan Ultima Steganography. Ukuran file hasil enksipsi dan penyisipan tidak terlalu besar karena

menggunakan LSB namun kekurangannya file asli akan corrupt

(23)

karena ukuran file hasil adalah gabungan dari file asli dan file yang disisipi.

Dari uraian diatas dapat disajikan perbedaan dari penelitian penulis terhadap penelitian-penelitian sebelumnya. Berikut ini perbedaannya:

a. Data yang akan digunakan dalam penelitian ini adalah Soal Ujian Sekolah tahun 2016 milik SMA Negeri 1 Weleri.

b. Data yang akan diproses lebih diutamakan pada file yang berformat .docx dan .doc. dan penyisipan pada citra yang bersangkutan di SMA Negeri 1 Weleri seperti gambar lapangan, kantor atau yang lainnya untuk mengecoh oknum yang tidak bertanggung jawab.

c. Algoritma yang akan dipakai dalam penelitian ini berbatas pada Algoritma Advance Encryption Standard (AES) dan metode steganografi End of File (EoF).

d. Tools yang akan digunakan pada penelitian ini adalah WinPython untuk Bahasa pemograman Python versi 3.4.

2.2. Tinjauan Pustaka

2.2.1. Keamanan Data dan File

Pengolahan data pada saat ini sudah menggunakan teknologi yang telah berkembang. Manusia modern pada saat ini dapat mengolah data-data penting dan menjadikannya dalam satu tempat, yang biasa disebut dengan file. Berikut definisi file menurut para ahli:

Menurut Hendrayudi, “File adalah data-data yang tersimpan dalam media yang mempunyai informasi besar file, tanggal & jam penyimpanan file, nama file, ciri file (ciri aplikasi yang membuat), & attribut file.”

Lain halnya dengan McLeod (PEARSON) yang mengatakan “File adalah koleksi record yang saling berhubungan, seperti satu file dari seluruh record yang berisi field kode-kode mata kuliah & namanya.”

(24)

melakukan encode informasi digital untuk urusan penyimpanan & pertukaran data.”

Dari keterangan diatas dapat disimpukan bahwa File adalah kumpulan data yang berisi informasi penting yang disimpan dalam wadah digital dalam pertukaran data.

Pengolahan data terjadi dalam komputer, sedangkan pada masa kini sering terjadi pencurian data yang menyebabkan kerugian besar bagi pemilik atau penerima data. Ancaman-ancaman yang terjadi meliputi Pengrusakan (Interuption), penyadapan (Interception), modifikasi (Modification), dan pemalsuan (Fabrication). Maka perlu diperhatikan aspek-aspek keamanan seperti berikut [2]:

1) Authentication

Adalah keaslian pesan, yaitu penerima dapan mengkonformasi bahwa data memang benar dari sang pengirim.

2) Integrity

Adalah kepastian bahwa data tidak dimodifikasi saat sampai kepada penerima.

Merupakan data-data yang bersifat pribadi. 7) Availability

(25)

8) Access Control “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. Handbook of Applied Cryptography menulis, “Kriptografi adalah ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan, integritas data, serta otentikasi”.

Sedangkan Rinaldi Munir mengatakan, “Kriptografi adalah sebuah disiplin ilmu karena teknik-teknik kriptografi dapat diformulasikan secara matematik sehingga menjadi sebuah metode yang formal”.

Menurut definisi diatas, kriptografi mempunyai tujuan memberi layanan sebagai berikut:

(26)

Kriptografi dapat membuat pesan tidak dapat dibaca oleh sembarang pihak, terutama pihak yang tidak berwenang dan bertanggung jawab.

b. Integritas data

Data yang diterima oleh sang penerima pesan adalah utuh dan tidak kurang satu apapun serta tidak ada manipulasi selama pengiriman.

c. Otentifikasi

Sang penerima dan pengirim dapat meyakin kan bahwa pesan yang dikirim benar adanya dan sampai dari pengirim ke penerima.

d. Nirpenyangkalan

Sebagai pencegahan sebuah penyangkalan dalam berkomunikasi pesan, yaitu pengirim menyangkal telah mengirim pesan atau penerima telah menyangkal telah menerima pesan. [1]

(27)

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

(28)

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.

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

Kriptologi

(29)

enkripsi sama dengan kunci dekripsi Skemanya disebut symmetric-key jika kunci enkripsi sama dengan kunci dekripsi.

Dalam implementasinya, pengirim maupun penerima harus memilih salah satu kunci yang akan digunakan untuk enkripsi maupun dekripsi. Kunci yang digunakan haruslah rahasia karena hanya pengirim dan penerima yang mengetahui kunci tersebut.

Kelebihan dari algoritma ini adalah pengiriman pesan dari pengguna yang berbeda juga mempunyai kunci yang berbeda pula, sehingga kerahasiaan data akan terjamin jika pengirim maupun penerima tidak menyebarluaskannya.

Contoh algoritma terkenal yang menggunakan kunci simetris adalah Data Encryption Standard (DES), Advance Encryption Standard (AES), TwoFish.

b. Asymmetric Algorithm

Algoritma kriptografi asimetris sangatlah berbeda dengan algoritma simetris dikarenakan kunci yang digunakan pada proses enkripsi berbeda dengan proses dekripsi. Proses enkripsi memiliki kunci yang disebut Proses enkripsi memiliki kunci umum disebut public key yaitu kunci yang diketahui semua orang, namun pada proses dekripsi pada algoritma ini hanya diketahui oleh penerima, biasanya disebut private key atau kunci pribadi.

Kelebihan dari algoritma ini adalah pendistribusian kunci yang lebih aman serta jumlah kunci yang lebih sedikit. Sedangkan kekurangannya ada pada pemrosesannya karena algoritmanya lebih panjang dibandingkan kunci simetris.

(30)
(31)

2.2.2.3. Algoritma Kriptografi Klasik

Pada dasarnya , kriptografi dibagi menjadi dua pengelompokan algoritma menurut perkembangannya. Algoritma ini dibagi menjadi algoritma kriptografi klasik dan algoritma kriptografi modern. Berikut ini adalah beberapa uraian dari algoritma kriptografi klasik yang sering digunakan dalam pengamanan data [1].

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.

Tabel 2.2 Caesar Cipher dengan interval 3

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

Dari tabel tersebut dapat diimplementasikan pada plaintext “MAHASISWA SEMSTER AKHIR” menjadi seperti dibawah ini :

Plaintext:

MAHASISWA SEMESTER AKHIR Chipertext:

(32)

Kunci dalam Caesar cipher adalah jarak dari pergesannya itu sendiri. Secara umum untuk pergeseran huruf alphabet sejauh yang diinginkan (k) menggunakan fungsi sebagai berikut:

Enkripsi: C=E(P)=(P+k)mod26 (2.1)

Dekripsi: P=D(C)=(C−k)mod26 (2.2)

Sedangkan untuk enkripsi maupun dekripsi pesan yang disusun dari bilangan ASCII, persamaan diatas dapat diperluas menjadi:

Enkripsi: C=E(P)=(P+k)mod256 (2.3)

Dekripsi: P=D(C)=(C−k)mod256 (2.4)

2. Affine Cipher

Affine Cipher merupakan pengembangan dari Caesar cipher, yaitu mengalikan plaintext dengan sebuah nilai dan menambahkannya dengan sebuah pergeseran. Enkripsi plaintext P untuk menghasilkan ciphertxt C dapat dinyatakan melalui fungsi berikut:

Enkripsi: C=mP+b(mod n)

(2.5)

C : Ciphertext

m : bilangan bulat yang harus relative prima. n : ukuran alphabet

P : pesan atau plaintext B : jumlah pergeseran

(33)

ajika inversi m (mod n), dinyatakan dengan m-1. Sehingga

fungsi dekripsi dapat dituliskan seperti:

Dekripsi: P=m−1(C−b)(mod n)

(2.6)

C : Ciphertext

m-1 : inverse dari m (mod n).

n : ukuran alphabet P : pesan atau plaintext b : jumlah pergeseran

Misalkan untuk enkripsi plaintext “KRIPTO”, jika dijabarkan dengan bilangan alphabet menjadi (10 17 8 15 19 14). Di enkripsi affine cipher dengan mengambil m = 7 (karena 7 relatif prima dengan 26) dan b = 10. Karena alphabet yang digunakan 26 maka n = 26. Sehingga akan muncul fungsi sebagai berikut.

C=7P+10(mod26)

26), yang dapat dihitung dengan dipecahkan menjadi fungsi : 7x ≡1(mod26)

Solusinya adalah x = 15 (mod 26) sebab 7.15 = 105≡1 (mod 26). Jadi untuk dekripsi digunakan rumus :

(34)

Perhitungannya sebagai berikut:

c1=2  p1≡15∙(2 – 10) = (-120 mod 26) ≡ 10  “K”

c2=25  p1≡15∙(25 – 10) = (225 mod 26) ≡ 17 “R”

c3=14  p1≡15∙(14 –10) = (60 mod 26) ≡ 8  “I”

c4=11  p1≡15∙(11 –10) = (15 mod 26) ≡ 15  “P”

c5=13  p1≡15∙(13 –10) = (49 mod 26) ≡ 19  “T”

c6=4  p1≡15∙(4 – 10) = (-90 mod 26) ≡ 14  “O”

Plaintext akan kembali menjadi KRIPTO 3. Vigenere Cipher

Vigenere menjadi sebuah cipher alphabet-majemuk manual terbaik. Algoritma ini diciptakan oleh diplomat sekaligus sorang kriptologis dari Prancis, bernama Blaise de Vigenere pada tahun 1553. Dipublikasikan pada tahun 1586 dan berkembang luas 200 tahun kemudian. Cipher ini juga sudah dipecahkan pada pertengahan abad 19 oleh Babbage dan Kasiski.

Dalam sejarahnya Vigenere Cipher digunakan oleh Tentara Konfiderasi pada Perang Sipil Amerika hanya saja cipher ini berhasil dipecahkan sebelum perang sipil terjadi.

(35)

Gambar 2.2 Bujursangkar Vigenere

Kolom paling kiri merupakan kolom fungsi, sedangkan baris paling atas merupakan plaintextnya. Setiap baris didalam bujursangkar menyatakan huruf-huruf ciphertext yang diperoleh dengan CAESar cipher, yang mana jumlah pergeseran huruf plaintext ditentukan nilai numerik kunci tersebut.

Masih ada lagi Algoritma kriptografi klasik yang masih banyak dipakai sebagai pengamanan maupun bahan pelajaran pada saat ini seperti Playfair Cipher dan Enigma Cipher. Algoritma Kriptografi klasik sudah jarang dipakai karena keamanannya yang mudah ditembuh oleh pada kriptoanalis, oleh karena itu muncul algoritma-algoritma baru dalam lingkup Algoritma Kriptografi Modern.

2.2.2.4. Algoritma Kriptografi Modern

(36)

menggunakan algoritma yang sederhana sehingga mudah untuk dipecahkan. Kriptografi modern menggunakan algoritma yang lebih kompleks dari kriptografi klasik sehingga para kriptanalis sendiri akan kesulitan dalam pemecahannya karnan membutuhkan kunci yang sesuai.

Algoritma kriptografi modern kebanyakan tidak menggunakan karakter pada enkripsinya, lebih pada penggunaan mode bit. Operasi dalam mode bit berarti semua data yang diproses meliputi plaintext, 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

(37)

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)

b.

Cipher Block Chaining (CBC)

c.

Cipher Feedback (CFB) dan

d.

Output Feedback (OFB).

Beberapa algoritma kriptografi yang memakai cipher block adalah Data Encryption Standard (DES), Double DES, Tripe DES (3DES), RC5, GOST, dan algoritma yang digunakan pada penelitian ini yaitu Advance Encryption Standard (AES).

2.2.3. Advance Encryption Standard (AES)

Tahun 2001, National Institute of Standards and Technology (NIST) mempublikasikan Advance Encryption Standard (AES) sebagai algoritma kriptografi yang masih digunakan sampai saat ini. AES menggantikan DES (Data Encryption Standard) karena keamanan algoritma DES yang lemah. Terbukti pada tahun 1998, 70 ribu PC di internet mampu membobol satu kunci DES dalam kurun waktu 96 hari, tahun 1999 dalam waktu 22 hari. Hingga akhirnya dibangun mesin untuk membongkar kunci DES yang dapat memecahkan 25% kunci dalam 2,3 hari dan dapat memecahkan keseluruhan kunci pada 4,5 hari [2].

NIST mengumumkan sayembara untuk membuat algoritma standard kriptografi, hingga pada bulan Agustus 1998 NIST memilih 5 finalis dari 15 proposal yang masuk berdasarkan aspek keamanan algoritma, efisiensi dan fleksibilitas serta kebutuhan memory dalam pengoprasiannya. Finalis tersebut adalah :

(38)

2. Serpent (Ross Anderson, Eli Biham, dan Lars Knudsen dari Inggris).

3. Twofish (Tim Kriptografi diketuai Bruce Scheiner dari USA). 4. RC6 (Ron’s Code dari Laboratorium RSA - USA)

5. MARS (dari International Business Machines / IBM)

Tahun 2000 pada bulan Oktober, NIST mengumumkan Rijndael sebagai Advance Encryption Standard (AES) pengganti Data Encryption Standard (DES). Rijndael berhasil menyingkirkan lawan-lawannya dengan 86 suara [1]. Algoritma ini dipilih NIST karena memiliki keseimbangan antara keamanan dan fleksibilitas dalam berbagai planform software dan hardware yang ada pada saat ini [2].

Algoritma Rijndael dasarnya sama pada algoritma DES yang menggunakan subtitusi dan permutasi serta sejumlah putaran atau cipher berulang. Berbeda dengan DES yang pemrosesannya berorientasi pada bit, Rijndael beroprasi pada orientasi byte sehingga dapat secara fleksibel saat diimplementasikan dalam berbagai software atau hardware.

Rijndael memiliki panjang kunci 128 sampai 256 bit dengan step 32 bit. Karena AES memiliki ketetapan panjang kunci 128, 192, dan 256 serta dukungan penuh dari algoritma Rijndael yang fleksibel maka AES saat ini dikenal dengan AES-128, AES-192, AES-286. Berikut perbedaan tiga versi AES tersebut:

Tabel 3.3 Tiga Buah Versi AES (Ariyus, 2008)

AES-128 AES-192 AES-256

Key Size 4 word (16 byte) 6 word (24 byte) 8 word (32 byte)

Plaintext block size 4 word (16 byte) 4 word (16 byte) 4 word (16 byte) Number of round 10 12 14

Roundkey size 4 word (16 byte) 4 word (16 byte) 4 word (16 byte) Expanded key size 44 word (176 byte) 52 word (208 byte) 60 word (240 byte)

Dari tabel diatas AES-128 bit menggunakan kunci Nk = 4 word atau

kata yang setiap katanya terdiri dari 32 bit maka total kuncinya 128 bit. Karena total kuncinya 128 bit, maka terdapat sebanyak

(39)

kemungkinan kata kunci. Proses ini akan memakan waktu hingga 5,4x1024 tahun dalam pemecahannya meskipun memakai computer yang

dapat memproses satu juta kunci per detik.

2.2.3.1. Enkripsi dan Dekripsi pada AES

Karena penelitian ini menggunakan algoritma Advance Encryption Standard dalam panjang kunci 128 makan yang digunakan adalah AES-128.

Algoritma AES masih menggunakan subtitusi dan permutasi serta sejumlah putaran atau cipher berulang seperti pada algoritma DES, hanya saja berbeda pada pemrosesannya yang memakai byte daripada bit serta tidak menggunakan jaringan Feistel seperti yang dilakukan DES maupun GOST. Proses yang dijalankan oleh AES yang beroprasi pada blok 128 bit dan kunci 128 bit adalah sebagai berikut [2]:

1. AddRoundKey: tahapan ini melakukan XOR antara plaintext dengan cipher-key. Tahapan ini dapat disebut juga initial

3. Final Round: Proses untuk putaran terakhir. a. SubBytes

b. ShiftRows c. AddRoundKeys

(40)

Gambar 2.3. Proses Enkripsi Algoritma AES-128

Algoritma AES memiliki 3 parameter:

1. Plaintext: array yang berukuran 16-byte, berisi data masukan 2. Cipherkey: array yang berukuran 16-byte, berisi hasil enkripsi 3. Key: array berukutan 16-byte, berisi cipher key.

1.) Enkripsi AES

Dengan 16-byte, maka baik blok kunci maupun data yang berukuran 128-bit dapat disimpan dalam 3 array yang disebutkan. Selama proses kalkulasi plaintext menjadi ciphertext, status sekarang dari data disimpan dalam array of bytes dua dimensi, state, yang berukuran “jumlah baris x jumlah kolom”. Untuk blok 128-bit, ukuran staenya adalah 4 × 4. Elemen array state ditulis sebagai S [r, c], dengan interval 0 ≤ r < 4 dan 0 ≤ c < Nb (Nb disini adalah panjang blok dibagi 32. Pada AES-128, Nb = 128/32 = 4).

Awal enkripsi, 16-byte data akan dimasukan pada in0, in1, …, in15

(41)

Gambar 2.4. Input Output dan state array.

Enkripsi maupun dekripsi dilakukan terhadap array S, dan keluarannya ditampung pada array out. Sekma dalam penyalinan array in ke array S adalah sebagai berikut:

S

[

r , c

]

[

r+4c

]

untuk0≤ r<4dan0≤c<Nb Penyalinan array S ke array out:

out

[

r+4c

]

← S

[

r , c

]

untuk0≤ r<4dan0≤ c<Nb

Setelah input plaintext dan kunci, tahapan selanjutnya adalah memulai proses putaran yang dimana dalam setiap putaran akan mengalami proses SubBytes, ShiftRows, MixCollumns, dan AddRoundKey.

a. Transformasi SubBytes()

(42)

Gambar 2.5. S-box yang digunakan pada putaran AES.

Cara subtitusi adalah sebagai berikut:

- 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. gambar 2.5 memperlihatkan transformasi S-box.

Gambar 2.6. Transformasi SubBytes. (Wikipedia)

b. Tranformasi ShiftRows()

(43)

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.

Gambar 2.7. Tranformasi ShiftRows (Wikipedia). c. Tranformasi MixCollumns() Perkalian ini dinyatakan sebagai perkalian matriks:

(44)

Gambar 2.8. Tranformasi MixCollumns() (Wikipedia)

d. Tranformasi AddRoundKey()

Pada tahapan ini akan dilakukan operasi XOR terhadap sebuah round key dengan array state, hasilnya akan disimpan pada array state. Seperti pada gambar 2.8.

Gambar 2.9. Tranformasi AddRoundKey (Wikipedia)

2.) Ekspansi kunci.

(45)

round key, banyaknya round key tergantung pada banyaknya jumlah putaran. Prosesnya juga masih menggunakan S-box, hanya dalam generate tiap kolom memerlukan Rcon.

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].

(46)

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

(47)

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.

2.2.4.3. Metode End of File

Penelitian ini berbatas pada penggunaan algoritma End of File (EoF) pada metode steganografinya. Terlebih pada algoritma End of File yang merupakan pengembangan dari algoritma Least Significant Bit (LSB) [7]. Berbeda dengan Least Significant Bit yang menyisipkan pesan pada akhir bit seperti “00000101” (bagian yang ditebalkan adalah contoh pesan yang dirahasiakan), End of File menyembunyikan pesan dengan menyisipkan bit-bit pesan pada akhir file citra yang dijadikan tempat.

Penyisipan pesan di akhir file tidak akan merubah kualitas data awal dari file yang disisipi. Namun, perubahan terjadi pada ukuran file yang bertambah besar. Ini dikarenakan ukuran hasil penyisipan adalah ukuran pesan ditambah ukuran penampung [4] [6]. Untuk mencegah kesalahan pengambilan makan akan ditambahkan pengenalan pada akhir data yang akan disisipkan.

(48)

a. Masukkan plaintext/ciphertext yang akan disisipkan b. Ubah plaintext/ciphertext menjadi kode decimal. c. Inputkan citra yang akan disisipi plaintext/ciphertext. d. Dapatkan atau baca nilai pixel dari citra.

e. Tambahkan plaintext/ciphertext pada akhir pixel citra yang disisipi dengan menambahkan karakter penanda di akhir plaintext/ciphertext.

f. Petakan kembali menjadi citra baru yang disebut dengan stego image atau citra hasil stegano.

Sebagai contoh penyisipan dari metode End of File, terdapat sebuah plaintext “UDINUS” yang akan disisipkan pada citra dengan ukuran 7x7 pixel. Sebagai berikut :

19 sehingga menjadi = {85 68 73 78 85 83}

(49)

19 - Kemudian dipetakan kembali dalam bentuk citra.

Dalam proses penyisipan terdapat juga proses pengambilan pesan, berikut langkah-langkah dalam pengambilan pesan dari End of File:

a. Inputkan citra yang telah disisipkan plaintext/ciphertext. b. Baca nilai pixel stego image yang terdapat pada baris terakhir

di matrix pixel pada citra.

c. Ambil plaintext/ciphertext yang telah tersisipkan pada stego image, ambil dari nilai awal pixel pada matrix terakhir hingga nilai decimal dari karakter penanda sisipan.

2.2.5. Bahasa Pemrograman Python

Python mengacu pada Bahasa pemrograman Python yang memiliki syntax dan ketentuannya sendiri. Bahasa python sendiri merupakan Bahasa pemrograman Open Source dan dapat di download pada websitenya di http://python.org/, serta terdapat berbagai versi untuk semua system operasi termasuk Windows, Linux, dan Mac.

(50)

Tahun 1995, Guido pindah ke CNRI sambil terus melanjutkan pengembangan Python. Versi terakhir yang dikeluarkan adalah 1.6. Tahun 2000, Guido dan para pengembang inti Python pindah ke BeOpen.com dan membentuk BeOpen PythonLabs kemudian mengeluarkan pembaruan Python ke versi 2.0. Setelah mengeluarkan Python 2.0, Guido dan beberapa anggota tim PythonLabs pindah ke DigitalCreations. Saat ini python banyak melalui perkembangan hingga ke versi Python 3.5.

Nama Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena kecintaan guido pada acara televisi Monty Python s Flying Circus. Oleh karena itu seringkali ungkapan-ungkapan khas dari acara tersebut seringkali muncul dalam korespondensi antar pengguna Python.

Sisi utama yang membedakan Python dengan bahasa lain adalah dalam hal aturan penulisan kode program. Bagi para programmer di luar python siap-siap dibingungkan dengan aturan indentasi, tipe data, tuple, dan dictionary. Python memiliki kelebihan tersendiri dibandingkan dengan bahasa lain terutama dalam hal penanganan modul, ini yang membuat beberapa programmer menyukai python. Selain itu python merupakan salah satu produk yang opensource, free, dan multiplatform. [9]

(51)

Pengamanan Soal Ujian Sekolah dalam bentuk fle .docx

Buku dan jurnal tentang pengamanan data menggunakan

kriptograf dan steganograf

Membuat program pengamanan soal ujian yang dapat digunakan

sekolah

Advance Encryption Standard (AES) End of File (EoF)

Data Soal Ujian Sekolah SMA Negeri 1 Weleri

WinPython

Permasalahan Studi Pustaka

Tindakan

Metode

Penerapan

Tool

Program Pengamanan Soal Ujian Sekolah Hasil

2.3. Kerangka Pemikiran

Penulis perlu membuat gambaran singkat sebagai alur penyusunan laporan ini dengan kerangka pemikiran sebagai berikut:

(52)

METODE PENELITIAN

Dalam penelitian ini, penulis akan menggunakan metode penelitian Eksperimental. Penelitian ini akan di fokuskan dalam pebuatan suatu system atau program dalam implementasi pengamanan data yang akan di enkripsi dan di sisipkan pada media citra, sehingga akan mengurangi pencurian data oleh oknum yang tidak bertanggung jawab.

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

(53)

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

3.2. Prosedur Pengambilan atau Pengumpulan Data

Dalam penyusunan laporan dan penelitian ini dibutuhkan data maupun informasi yang real sesuai penelitian yang dilaksanakan. Data yang digunakan adalah file Soal Ujian Sekolah tahun 2016 dengan format .doc (Microsoft Office Word 2003) ataupun format .docx (Microsoft Office Word 2007-2016). Data yang diperoleh menyesuaikan dengan banyaknya mata pelajaran yang digunakan, yaitu mata pelajaran yang diolah oleh masing-masing tim mata pelajaran di SMA Negeri 1 Weleri. Sedangkan dalam pengumpulan datanya, penulis mengumpulkan data melalui buku-buku dari perpustakaan maupun mencari buku yang terkait dengan penelitian di toko buku, serta mereview jurnal-jurnal terkait tentang penelitian.

3.3. Teknik Analisis Data

(54)

1. Mengumpulkan data berupa citra yang berhubungan dengan setiap mata pelajaran untuk media penyisipan serta mengumpulkan bahan penelitian berupa Soal Ujian Sekolah berformat .doc atau .docx.

2. Melakukan Proses enkripsi dan dekripsi terhadap sample data secara manual, kemudian dilanjutkan dengan perbandingan dengan program yang dibuat untuk enkripsi dan dekripsi serta penyisipan data terenkripsi dalam citra.

3. Melakukan pengambilan data dari citra yang tersisipi kemudian dilakukan proses dekripsi terhadap data terenkripsi.

4. Pengecekan kualitas data sebelum dan setelah proses pengamanan.

3.4. Metode yang Diusulkan

(55)

PLAINTEXT ; KEY

Enkripsi

Advance Encryption Standard (AES-128)

Ciphertext

Image

Steganograf End of File (EoF)

STEGO IMAGE 3.4.1. Prosedur Enkripsi dan Penyisipan File

File atau plaintext dengan kunci yang ditentukan akan diekripsi menggunakan algoritma Advance Encryption Standard sehingga menghasilkan ciphertext dengan format *.code. setelah itu dilakukan penyisipan kepada citra yang sudah ditentukan menggunakan algoritma End of File, sehingga menghasilkan stego image. Berikut diagramnya:

(56)

Ciphertext

Dekripsi

Plaintext/ File Asli STEGO IMAGE

UNSTEGO

3.4.2. Prosedur Penyisipan Pengambilan ciphertext dengan End of File

Pendekripsian stego image file berbalik dengan proses enkripsinya. Dimana awalnya mengeluarkan file dari stego image (unstego) yang akan menghasilkan cihpertext atau file cipher. Kemudian mengubah kembali ciphertext menjadi file asli dengan ekspansi kunci dengan memanggil cipher key dan Key yang diberikan pengguna. Setelah itu akan menghasilkan pesan asli sebelum dienkripsi. Berikut diagramnya.

(57)

Gambar 13. Flowchart Enkripsi AES-128 Start

Enkripsi

File

AddRoundKey

( XOR Cipher Key )

SubBytes

ShiftRows

n = 10

i = 1

in-1

MixColumns

AddRoundKey

(XOR Sub -Kunci ke -i )

i = i + 1 SubBytes

ShiftRows

AddRoundKey

( XOR Sub -Kunci ke - 10 )

Cipher Text

(58)

Gambar 14.Flowchart Dekripsi AES Start

Dekripsi

File Citra AddRoundKey

(XOR Cipher Key )

Inv SubBytes Inv ShiftRows

n = 1 i = 9

i n

Inv MixColumns AddRoundKey

(XOR Sub -Kunci ke -i )

i = i - 1 Inv SubBytes Inv ShiftRows AddRoundKey

( XOR Sub -Kunci ke - 10 )

Cipher Text

End Yes

(59)

Membuat fle stego

Masukkan citra dalam fle stego

Beri karakter batasan di akhir fle citra citra

Masukkan fle yang terenskripsi

Masukkan stego image

Urai Citra menjadi bit

Cari karakter batasan di Antara citra dengan pesan

Keluarkan fle terenskripsi

Gambar 15. Proses penyisipan End of File

Gambar 3.4. Proses penyisipan End of File

(60)

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:

Diberikan sebuah plaintext dan key sebagai berikut.

Plaintext (ASCII) : [2 ˆ 1 à C Z 1 7 ö 0 2 ¨  ¢ 4]

Plaintext (DEC) : [50 136 49 224 67 90 49 55 246 48 50 7 168 141 162 52]

Key (ASCII) : [+ ( « • € ® ÷ Ï O ¦ ˆ <]

Key (DEC) : [43 40 171 9 128 174 247 207 21 20 21 79 22 166 136 60]

Dalam AES, penghitungan dipermudah dengan mengubah bilangan ke dalam bilngan hexadecimal (HEX). Ini dikarenakan dalam tahapan hasil tranformasi Addroundkey ke subbyte meggunakan –Box yang dimana S-Box dalam AES lebih sering menggunakan bilangan hexadecimal.

1. Enkripsi dan Penyisipan

(61)

Gambar 15. Elemen State dan kunci saat input.

- Karena untuk mendapatkan AddRoundKey untuk memasuki putaran, makan dilakukan operasi XOR dari state terhadap cipher key. Berikut prosesnya.

o Input [32] : 0 0 1 1 0 0 1 0

o Cipher [2B] : 0 0 1 0 1 0 1 1

o S [0,0] : 0 0 0 1 1 0 0 1  19

o Input [88] : 1 0 0 0 1 0 0 0

o Cipher [28] : 0 0 1 0 1 0 0 0

o S [0,0] : 1 0 1 0 0 0 0 0  A0

(62)

- Tahap selanjutnya adalah memasuki putaran pertama. Putaran terjadi sebanyak Nr-1 . pada penelitian dan contoh ini menggunakan AES-128 bit yang menggunakan putaran sebanyak 10 kali.

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:

(63)

- 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].

Gambar 16. Subtitusi Array S dengan S-box AES

- Sehingga saat selesai subtitusi seluruh bilangan akan muncul array baru seperti berikut:

- Kemudian masuk pada tahap selanjutnya, yaitu Tranformasi ShiftRows.

b. Tranformasi ShiftRows()

(64)

- Pergeseran baris 1, 2 dan 3 dari array pada Gambar 3.8 diilustrasikan pada gambar dibawah ini:

Gambar 17. Pergeseran baris ke-1

Gambar 18. Hasil pergeseran baris ke-1 dan pergeseran baris ke-2

Gambar 19. Hasil pergeseran baris ke-2 dan pergeseran baris ke-3

(65)

- Sehingga menghasilkan array seperti pada gambar 3.10. Tahap selanjutnya adalah mengalikan setiap kolom dari array state dengan polinom a(x) mod (x4 + 1) pada tahapan MixCollumns().

c. Transformasi MixCollumns().

- Dalam tahap ini, singkatnya adalah mengalikan tiap kolom dari hasil ShiftRow dengan matrix berikut :

Gambar 21. Matrix Enkripsi ShfitRow

- Sehingga untuk membangun sebuah kolom baru akan diolah dari kolom pertama hasil shift row dikalikan dengan matrix diatas:

- Dilihat dari kajian yang dikumpulkan dapat dituliskan : r0 = 2a0 ⨁ 3a1 ⨁ 1a2 ⨁ 1a3

r1 = 1a0 ⨁ 2a1 ⨁ 3a2 ⨁ 1a3

r2 = 1a0 ⨁ 1a1 ⨁ 2a2 ⨁ 3a3

(66)

- Seperti halnya mengalikan antar matrix, hanya saja dalam Transformasi MixCollumns(), terdapat langkah-langkah operasi:

o Perkalian dengan 1 artinya tidak berubah

o Perkalian dengan 2 artinya menggeser byte ke kiri

o Perkalian dengan 3 artinya menggeser byte kekiri dan kemudian melakukan XOR dengan nilai awal sebelum digeser.

o Setelah digeser, harus dilakukan XOR dengan 0x11B (100011011) apabila hasil nilai yang digeser lebih besar daripada 0xFF (11111111).

- Ambil kolom pertama, yaitu matrix a0=d4 a1=bf a2=5d a3=30

- Dimulai menghitung r0= 2a0 ⨁ 3a1 ⨁ 1a2 ⨁ 1a3 :

r0=(2•d4)⨁(3•bf)⨁(15d)⨁(130)

r0=(211010100)⨁(31011111)(1•01011101)⨁(100110000) r0=(010110011)⨁(011011010)⨁(1011101)⨁(110000)

r0=000000100

r0=04(dalam HEXADECIMAL)

- Begitu juga dengan menghitung r1, r2, dan r3. Perlu diingat kembali bahwa pertambahan disini adalah XOR.

(67)

- Sehingga dapat dibetuk sebuah array baru hasil transformasi MixCollumn:

- Selanjutnya masuk pada tahap AddRoundKey.

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:

(68)

-Proses XOR pada setiap kolom.

-Hasil XOR dari state dan round key dari seluruh kolom.

(69)

Gambar 22. Proses putaran ke-2 hingga ke-6

-Gambar 23. Putaran ke-7 hinggan ke-10

- Putaran ke 10 adalah Final Round, yang pada tahaannya tidak terjadi proses Tranformasi MixCollumns.

- Pada akhir proses enskripsi akan terlihat ciphertext :

e. Metode End of File

- Selanjutnya dimulai proses penyisipan dengan menggunakan metode End of File.

(70)

19

- Karena ciphertext merupakan bilagan hexadecimal, maka perlu diubah ke dalam bentuk decimal. Contohnya 3916 = 5010, artinya 39 HEX adalah 50

dalam DEC. ketika ciphertext diproses akan muncul array baru.

57 2 220 25 decimal di “akhir ” citra. Sebelumnya tambahkan karakter batasan antara citra dengan file. Dalam pengujian ini dilakukan dengan “#” Sehingga citra baru akan menjadi seperti:

(71)

12

- Kemudian petakan kembali dalam bentuk citra. Sehingga menghasilkan sebuah data stego image, yang mempunyai ukuran citra penampung ditambah file yang disimpan.

2. Pengeluaran gambar dan Dekripsi

- Langkah pertama dari dekripsi dalam penelitian ini adlah mengeluarkan ciphertext yang terdapat pada citra stego.

a. UNSTEGO

(72)

16 dibatasi oleh karater “#”. Yaitu [52 2 220 25 37 220 17 106 132 9 133 11 29 251 151 50]

- Setelah mendapati ciphertext diatas, maka selanjutnya dilakukan proses dekripsi algoritma AES-128.

b. Dekripsi

- Perlu diingat lagi bahwa AES menggunakan bilangan hexadecimal, maka ciphertext dalam bertuk decimal diatas diubah dalam bentuk hexadecimal seperti berikut:

(73)

adalah, pada putaran terakhir AES tidak menggunakan MixCollumn melainkan hasil shiftRow langsung di XOR kan dengan Round Key ke-10. - Pencarian Hasil Shiftrow didapati dengan operasi XOR antara ciphertext

dan round key ke-10.

Ciphertext Round Key ke-10

- Sehingga menghasikan array baru yang berisi hasil Shiftrow:

c. Transformasi Inv ShiftRow.

- Selanjutnya dilakukan proses Inv ShiftRow. Secara singkat langkah-langkahnya adalah:

o Baris pertama tidak di geser

o Baris kedua digeser ke kiri 1 (satu) kali o Baris ketiga digeser ke kiri 2 (dua) kali o Baris keempat digeser ke kiri 3 (tiga) kali.

- Setelah melalui proses tersebut akan didapati array baru yang merupakan isi dari transformasi SubByte putaran ke-10.

(74)

- Setelah mendapatkan hasil dari pembalikan ShiftRow, maka dilakukan proses pembalikan dari SubByte menjadi AddRoundKey.

- Proses ini memerlukan sebuah Box yang merupakan kebalikan dari S-Box dalam enkripsi AES. Berikut tampilan inverse S-S-Box yang digunakan dalam dekripsi.

Gambar 24. S-Box untuk Dekripsi AES

- Melaui S-Box diatas, array SubByte pada putaran ke-10 dapat disubtitusikan menjadi sebuah hasil AddRoudKey atau initial state pada putaran ke -9.

- Penggunaannya sama dengan pada saat enkripsi. Contohnya E9 = EB; CB=59 dan seterusnya. Pada akhirnya menghasilkan sebuah initial round berikut:

(75)

initial round ke-9 round key ke-9 hasil MixCollumn

e. Transformasi Inv MixCollumn

- Dari hasil XOR antara initial round dan round key, akan menghasilkan hasil dari transformasi MixCollumn. Pada putaran ke-9 ini terjadi tranformasi ini karena telah masuk dalam putaran inti.

- 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:

Dalam Desimal Dalam Hexadecimal [10] Gambar 25. Matrix Dekripsi MixCollumn

- Berikut operasi mixcollumn pada dekripsi:

a0 = 0e•b0 ⨁ 0b•b1 ⨁ 0d•b2 ⨁ 09•b3

a1 = 09•b0 ⨁ 0e•b1 ⨁ 0b•b2 ⨁ 0d•b3

a2 = 0d•b0 ⨁ 09•b1 ⨁ 0e•b2 ⨁ 0b•b3

(76)

-- Ambil kolom pertama dari hasil XOR , yaitu kolom: b0=47

b1=37

b2=94

b3=ed

- Dimulai menghitung a0 = 0e•b0 ⨁ 0b•b1 ⨁ 0d•b2 ⨁ 09•b3 :

a0=(0e •47)⨁(0b •37)⨁(0d •94)⨁(09•ed)

a0=(0000111001000111)(00001011•00110111) (0000110010010100)⨁(0000100111101101)

a0=(10000111)⨁(11111010)⨁(00111110)⨁(11000100)

a0=10000111

a0=87(dalam HEXADECIMAL)

- 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:

(77)
(78)

- Dan proses terakhir adalah putaran pertama, berikut prosesnya.

- Pada akhir proses, ciphertext akan kembali menjadi plaintext atau file asli seperti proses di awal.

Gambar

gambar dan hasil dari
Gambar 2.2 Bujursangkar Vigenere
Gambar 2.3. Proses Enkripsi Algoritma AES-128
Gambar 2.4. Input Output dan state array.
+7

Referensi

Dokumen terkait

Dengan memanjatkan puji dan syukur kehadirat Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan karunia-Nya kepada penulis sehingga laporan proyek akhir dengan

Dengan memanjatkan puji syukur kepada Tuhan Yang Maha atas segala rahmat dan karuniaNya penulis dapat menyelesaikan penyusunan laporan akhir ini,yang berjudul

Dengan memanjatkan puji syukur kepada Tuhan Yesus Kristus atas segala berkat dan rahmat -Nya sehingga peneliti dapat menyelesaikan tugas akhir yang berjudul : “RANCANG BANGUN

Puji syukur penulis ucapkan kepada Tuhan Yesus Kristus atas segala berkatnya yang melimpah sampai pada saat ini sehingga penulis dapat menyelesaikan skripsi ini dengan

Dengan memanjatkan puji dan syukur kehadirat Tuhan Yang Maha Esa yang telah melimpahkan rahmat dan karunia-Nya kepada penulis sehingga laporan proyek akhir dengan

Dengan memanjatkan puji dan syukur kepada Tuhan Yang Maha Esa, kami menyampaikan Buku Laporan Akhir Kajian Metode Virtual Class sebagai Alternatif

Penulis memanjatkan puji dan syukur kepada Tuhan Yesus Kristus, hanya karena berkat-Nya lah penulis mampu menyelesaikan tugas akhir ini sebagai syarat untuk menyelesaikan studi

Segala puji syukur penulis panjatkan kepada Tuhan Yesus Kristus karena dengan tuntutan dan kasih karunia-Nya penulis dapat menyelesaikan skripsi ini dengan baik