y-- awal.Height 4. td-- char Tanda -- string 6. for int i = 0; i x; i++ tanda -- 8. td -- Convert.ToCharawal.GetPixeli, 0.R tanda -- td 10. td -- Convert.ToCharawal.GetPixeli, 1.R tanda -- td 12. td -- Convert.ToCharawal.GetPixeli, 2.R tanda -

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