3.3.3.4 Pseudocode Proses Ekstrak Berikut merupakan proses urutan langkah proses penyisipan data :
1. x, y -- integer 2. x-- awal.Width
3. y-- awal.Height 4. td-- char
5. Tanda -- string 6. for int i = 0; i x; i++
7. tanda -- 8. td -- Convert.ToCharawal.GetPixeli, 0.R
9. tanda -- td 10. td -- Convert.ToCharawal.GetPixeli, 1.R
11. tanda -- td 12. td -- Convert.ToCharawal.GetPixeli, 2.R
13. tanda -- td 14. td -- Convert.ToCharawal.GetPixeli, 3.R
15. tanda -- td 16. if-- tanda == fian
17. Bitmap asli -- new Bitmapi, y; 18. r, g, b,yy -- integer;
19. for int ii = 0; ii asli.Height; ii++ 20. for int j = 0; j asli.Width; j++
21. r -- awal.GetPixelj, ii.R 22. g -- awal.GetPixelj, ii.G
23. b -- awal.GetPixelj, ii.B 24. asli.SetPixelj, ii, Color.FromArgb255, r, g, b
25. pictureBox2.Image.asli 26. yy-- 4
27. bool kondisi-- true 28. for -- int j = i; j x; j++
29. while kondisi 30. td -- Convert.ToCharawal.GetPixelj, yy.R
31. hsl.Text -- td; 32. yy -- 1;
33. if yy y == 0 34. kondisi -- false
35. yy -- 0 36. kondisi -- true
Universitas Sumatera Utara
Proses ekstraksi pada pseudocode merupakan hasil dari proses penyisipan pesan ke dalam gambar, proses dimulai dengan memeriksa nilai piksel pesan secara
vertikal, kemudian pembacaan selesai setelah diberi tanda nilai piksel fian. Dan pesan akan dikeluarkan untuk diterima oleh user.
3.3.4 Flowchart Sistem
Flowchart adalah representasi grafik dari langkah-langkah yang harus diikuti dalam menyelesaikan suatu permasalahan yang terdiri atas sekumpulan simbol,
dimana masing-masing simbol merepresantasikan suatu kegiatan tertentu. Flowchart diawali dengan penerimaan input, pemrosesan input, dan diakhiri
dengan penampilan output. Flowchart melukiskan suatu aliran kegiatan dari awal hingga akhir mengenai suatu langkah-langkah dalam penyelesaian suatu masalah.
Masalah tersebut bisa bermacam-macam, mulai dari masalah yang sederhana sampai masalah yang kompleks. Masalah yang dihadapai tentunya masalah
pemrograman. Sistem ini terdiri dari beberapa proses, yaitu proses enkripsi dan dekripsi
dengan menggunakan algoritma tiny encryption algorithm, dan proses penyembunyian data enkripsi menggunakan end of file.
3.3.4.1 Flowchart Proses Algoritma Enkripsi Data Tiny Encryption Algorithm Dan Penyembunyian Data End Of File
Pengirim ingin melakukan pengiriman data sehingga dilakukan proses pengenkripsian data yang menggunakan tiny encryption algorithm , dan
dihasilkan sebuah ciphertext kemudian secara bersamaan diinputkan citra gambar yang berformat.bmp dan diembedding menggunakan end of file, kemudian
dilakukan pengekstrakan untuk mengeluarkan kembali ciphertext dan gambar asli kepada penerima pesan, dan penerima pesan mendekripsikan pesan menggunakan
tiny encryption algorithm. Dimana flowchart sistem sebagai berikut :
Universitas Sumatera Utara
Gambar 3.3 Proses enkripsi teks dan embedding pesan
Proses pada gambar 3.3 dilakukan pengenkripsian teks dengan menggunakan TEA dan akan dilakukan proses penyisipan EOF setelah enkripsi teks menjadi
ciphertext. Ciphertext yang telah disisipkan akan menjadi citra stego-object. Keterangan Gambar 3.3 :
2. Input Plaintext secara langsung oleh user atau input data berupa file.txt.
3. Enkripsi plaintext
menggunakan Tiny Encryption
Algorithm. 4. Menghasilkan Ciphertext.
5. Masukaninput citra yang berformat bmp. 6. Proses Embedding dengan menggunakan steganografi
EOF. 7. Menghasilkan output stego object
Universitas Sumatera Utara
Gambar 3.4 Proses ekstraksi pesan
Pada gambar 3.4 proses ekstraksi pesan akan dilakukan setelah menginputkan citra stego-object, dimana akan dikeluarkan citra asli dan ciphertext yang dikirim
oleh user. Pendekripsian akan dilakukan dengan menggunakan TEA dan menghasilkan plaintext.
Keterangan Gambar 3.4:
1. Hasil Citra gambar Stego-object .bmp 2. Ekstraksi dengan menggunakan EOF.
3. Menghasilkan output berupa ciphertext dari gambar.bmp.
4. Dekripsi ciphertext dengan kriptografi TEA. 5. Menghasilkan output berupa Plaintext.
Universitas Sumatera Utara
3.3.4.2 Flowchart Proses Enkripsi
Gambar 3.5 Enkripsi TEA
Pada gambar 3.5 dijelaskan flowchart enkripsi pesan yang dilakukan proses secara detail dalam mengenkripsikan menggunakan algoritma TEA. Langkah -langkah
yang dipaparkan pada penjelasan gambar merupakan fungsi utama enkripsi TEA.
Keterangan Gambar 3.5 : 1.1
Input Plaintext.txt. 1.2
Blok Plaintext = 64 bit, kemudian dipartisi 2 Subblok
Ar= 32 bit dan Br=32 bit 1.3
Input Key = 8 sampai128 bit. 1.4
Key dipartisi menjadi 4 subblok yang Terdiri dari Kunci[0]=32 bit, Kunci[1]=32 bit,
Kunci[2]=32 bit, Kunci[3]=32 bit. 1.5
Diinisialisasikan proses menjadi variabel i = 1
1.6 Digunakan subblok plaintext A
r
dan key dengan rumus
A
0r
=
A
0r
+ fB
0l,
Kunci[0],Kunci[1], sum
1.7 Digunakan subblok plaintext B
l
dan key dengan rumus
B
0r
=
B
0r
+ fA
0l,
Kunci[2],Kunci[3], sum
1.8 Penambahan proses i=i+1
1.9 Jika i belum mencapai 32 proses, maka
dilakukan perulangan ke langkah 6. 10. Jika i=32, maka dihasilkan ciphertext.
Start Input Plaintext
.txt Blok = 64 bit,
dipartisi ke 32 bit Menjadi 2 sub blok
Input Key 8 sampai 128 bit
Partisi key menjadi 4 sublok Menjadi masing-masing 32 bit,
Kunci [0],[1],[2],[3]
i=1
A
or=
A
or + fBo
1,
Kunci [0],Kunci [1], sum
Bo
l
=Bo
l
+ f
A
or
,
Kunci [2],Kunci [3], sum
i=32 i=i+1
Ciphertext end
Tidak ya
Universitas Sumatera Utara
3.3.4.3 Flowchart Proses Dekripsi
Gambar 3.6 Dekripsi TEA
Gambar 3.6 menunjukkan flowchart Proses pendekripsian pesan, Proses dekripsi merupakan proses mengembalikan ciphertext menjadi plaintext dengan
menjelaskan secara detail proses utama dekripsi TEA.
Keterangan Gambar 3.6: 1. Input Ciphertext.txt.
2. Blok Ciphertext = 64 bit, kemudian dipartisi 2 Subblok
Ar= 32 bit dan Br=32 bit 3. Input Key = 8 sampai 128 bit.
4. Key dipartisi menjadi 4 subblok yang Terdiri dari Kunci[0]=32 bit, Kunci[1]=32 bit,
Kunci[2]=32 bit, Kunci[3]=32 bit. 5. Diinisialisasikan proses menjadi variabel i = 1
6. Digunakan subblok plaintext A
r
dan key dengan rumus
A
0r
=
A
0r-
+
fB
0l,
Kunci[1],Kunci[0], sum
7. Digunakan subblok plaintext B
l
dan key dengan rumus
B
0r
=
B
0r -
-
fA
0l,
Kunci[3],Kunci[2], sum
8. Penambahan proses i=i+1 9. Jika i belum mencapai 32 proses, maka
dilakukan perulangan ke langkah 6. 10. Jika i=32, maka dihasilkan ciphertext.
Start Input Ciphertext
.txt Blok = 64 bit,
dipartisi ke 32 bit Menjadi 2 sub blok
Input Key 8 sampai 128 bit
Partisi key menjadi 4 sublok Menjadi masing-masing 32 bit,
Kunci [0],[1],[2],[3]
i=1
A
or=
A
or - fBo
1,
Kunci [0],Kunci [1], sum
Bo
l
=Bo
l
- f
A
or
,
Kunci [3],Kunci [2], sum
i=32 i=i+1
Plaintext end
Tidak ya
Universitas Sumatera Utara
3.3.4.4 Flowchart Embedding End Of File
Start
Input Ciphertext +
Gambar .bmp
Baca nilai setiap pixel file citra
Menambahkan piksel file citra dari piksel ciphertxt yang telah di ubah
ke ASCII dengan penanda akhir yang telah ditentukan
Petakan menjadi file citra baru
Stego- object.bmp
End
Gambar 3.7 Embedding EOF
Gambar 3.7 menjelaskan mengenai alur proses penyisipan pesan dimulai dari penginputan pesan dan penggabungan pesan kedalam cover citra sehingga
menghasilkan citra stego-object.
Keterangan Gambar 3.7: 1. Input Ciphertext dan gambar .bmp.
2. Dibaca nilai dari setiap pixel file citra 3. Dilakukan penyeleksian terhadap file citra untuk
menambahkan piksel ciphertext yang telah diubah ke dalam Ascii kemudian ditambah dengan penanda
akhir file yang telah ditentukan. 4. Dipetakan menjadi citra.
5. Cita menjadi stego-object.
Universitas Sumatera Utara
3.3.4.5 Flowchart Ekstrak End Of File
Start
Input Stego-Object .bmp
Baca nilai piksel citra stego-object
Seleksi piksel file citra asli sampai akhir citra asli,
Petakan menjadi file
Citra asli + cipher text
End ambil piksel setelah akhir citra
asli sampai penanda akhir
Gambar 3.8 Ekstraksi EOF
Gambar 3.8 menjelaskan dalam hal pemrosesan ekstraksi pada citra dengan penginputan stego-object, kemudian mengeluarkan pesan teks dan citra asli yang
telah disisipkan.
Keterangan Gambar 3.8: 1. Input stego-object.bmp.
2. Dibaca nilai dari setiap pixel file stego-object. 3. Dilakukan penyeleksian terhadap file stego-object
. Penyeleksian dimulai dari awal file citra asli sampai akhir file citra asli,
4. Diambil piksel ciphertext setelah akhir file citra asli sampai dibatasi penanda akhir.
5. Dipetakan menjadi file. 6. Dihasilkan ciphertext dan citra asli.
Universitas Sumatera Utara
3.3.5 Perancangan Antarmuka
Untuk perancangan antarmuka pemakai akan dirancang kedalam form, form yang dimiliki pada sistem adalah form menu, form pengirim, form penerima, form
bantuan, form info. Pada penjelasan masing-masing form akan dibahas secara detail sebagai berikut
3.3.5.1 Tampilan Menu Utama
Pada saat sistem dijalankan maka akan muncul tampilan pertama kali, yaitu tampilan halaman menu, yang dapat kita lihat pada gambar 3.9:
Gambar 3.9 Rancangan Form Menu Utama
Beberapa komponen yang digunakan dalam perancangan antar muka form menu yaitu
1. Menu strip Pengirim digunakan untuk menampilkan form proses enkripsi dan embedding objek.
2. Menu strip Penerima digunakan untuk menampilkan form proses ekstrak dan dekripsi objek.
3. Menu strip Info digunakan untuk menampilkan data informasi pembuat software.
4. Menu strip Petunjuk digunakan untuk petunjuk penggunaan tombolbutton seperti enkripsi, dekripsi, embed, ekstrak.
1 2
3 4
6 7
5
8
Universitas Sumatera Utara
5. Menu strip Keluar digunakan untuk keluar dari aplikasi. 6. Label “implementasi pengenkripsian dan penyembunyian data
menggunakan tiny encryption algorithm dan EOF” Disini label digunakan untuk menampilkan judul dari pembuatan tugas
akhir. 7. Label “Muhammad Alfian 091401001”
Disini label digunakan untuk menampilkan nama mahasiswa. 8. Picturebox Logo USU
3.3.5.2 Tampilan Form Pengirim
Pada saat mengklik form pengirim, maka akan muncul halaman form pengirim sebagai berikut :
Gambar 3.10 Rancangan Form Sub Menu Pengirim
Beberapa komponen yang digunakan dalam perancangan antar muka form Pengirim yaitu
4. Menu strip menu, digunakan menampilkan form menu 5. Textbox berfungsi sebagai kunci.
6. Textbox berfungsi menginput plaintext. 7. Textbox berfungsi menampilkan ciphertext.
8. Button cari berfungsi mengambil file yang akan dimasukkan ke plaintext. 3
1
4 2
5 6
7
8 9
10 11
12 13
14 15
Universitas Sumatera Utara
9. Button enkripsi berfungsi mengenkripsi plaintext. 10. Textbox berfungsi menampilkan citra gambar.
11. Button cari berfungsi mengambil citra gambar yang akan diembed. 12. Textbox berfungsi menampilkan stego-object.
13. Button simpan berfungsi menyimpan file stego-object. 14. Button Penyisipan berfungsi menyisipkan pesan kedalam citra.
15. Textbox jumlah karakter ciphertext berfungsi menampilkan banyaknya jumlah pesan yang dikirim
16. Textbox waktu enkripsi berfungi menampilkan waktu enkripsi pesan. 17. Textbox waktu penyisipan berfungsi menampilkan waktu penyisipan
pesan kedalam citra. 18. Label yang menerangkan nama pemilik program.
3.3.5.3 Tampilan Form Penerima
Pada saat mengklik menu strip Penerima, muncul tampilan form penerima maka akan muncul tampilan sebagai berikut :
Gambar 3.11 Rancangan Form Sub Menu Penerima
1
2 3
4
5 6
7 8
9 10
11 12
13 14
Universitas Sumatera Utara
Beberapa komponen yang digunakan dalam perancangan antar muka form Penerima yang terlihat pada gambar 3.11 yaitu
1. Menu strip Kembali ke menu berfungsi menampilkan form menu 2. Textbox berfungsi menampilkan citra gambar stego-object.
3. Textbox berfungsi menampilkan gambar asli. 4. Textbox berfungsi menginputkan kunci.
5. Textbox berfungsi menampilkan ciphertext hasil dari ekstraksi. 6. Button Dekripsi berfungsi mendekripsikan ciphertext menjadi plaintext.
7. Textbox berfungsi menampilkan plaintext hasil dari dekripsi. 8. Button simpan berfungsi menyimpan plaintext.
9. Button cari berfungsi mengambil citra gambar stego-object. 10. Button Ekstraksi berfungsi mengekstrakan citra gambar stego-object.
11. Button simpan berfungsi menyimpan gambar asli. 12. Textbox berfungi menampilkan waktu ekstraksi citra.
13. Textbox berfungsi menampilkan jumlah ciphertext. 14. Textbox berfungsi menampilkan waktu dekripsi.
Universitas Sumatera Utara
BAB 4
IMPLEMENTASI DAN PENGUJIAN
1.2 Implementasi Sistem
Tahap implementasi dari sistem dilakukan Setelah perancangan sistem tiny encryption algorithm dan end of file telah dibuat. Implementasi dilakukan dengan
menggunakan bahasa pemrograman visual studio C. Implementasi dilakukan sesuai dengan perancangan yang dilakukan sebelumnya. Perancangan sistem yang
baik akan memudahkan pengembangan sistem dalam tahap implementasi.
3. Spesifikasi Perangkat Keras
Implementasi dalam spesifikasi perangkat keras yang digunakan untuk pengujian sistem ini adalah sebagai berikut :
6. Processor Intel Core 2 Duo. 7. Memory RAM 512.
8. Hardisk 160 GB. 9. Mouse dan Keyboard.
10. Monitor resolusi 1200 x 800 pixel.
4. Spesifikasi Perangkat Lunak