Implementasi Operasi XOR dan Teknik Transposisi Segitiga Untuk Pengamanan Citra JPEG Berbasis Android Chapter III V
BAB 3
ANALISIS DAN PERANCANGAN
3.1
Analisis Sistem
Analisis sistem (systems analysis) adalah sebuah teknik pemecahan masalah di mana
sistem diuraikan menjadi komponen-kompenen dengan tujuan untuk mempelajari
kinerja masing-masing komponen tersebut dalam mencapai tujuan sistem (Whitten &
Bentley, 2007). Analisis sistem bertujuan untuk memecah sistem ke dalam komponenkomponen subsistem yang lebih kecil untuk mengetahui hubungan setiap komponen
tersebut dalam mencapai tujuan.
3.1.1 Analisis Masalah
Saat ini keamanan dalam pengiriman pesan rahasia sangatlah rentan oleh pihak ketiga
yang ingin mengetahui isi dari pesan tersebut. Masalah utama yang diambil penulis
pada penelitian ini adalah munculnya rasa curiga atau ingin tahu dari pihak ketiga
terhadap kerahasian sebuah pesan yang disebabkan faktor perubahan citra asli dan
pengguna menggunakan satu kunci yang tidak aman dalam mengirimkan pesan
kepada orang lain. Sistem ini mengimplemantasikan operasi XOR dan teknik
transposisi segitiga, pengurutan karakter yang didasarkan pada bentuk segitiga yang
dibangun akan memperkuat keamanan dari sistem yang akan dipakai.
Masalah-masalah pada penelitian ini diidentifikasikan dengan menggunakan
diagram Ishikawa. Diagram Ishikawa atau yang sering dikenal dengan Cause and
Effect Diagram
adalah diagram yang digunakan untuk memahami dan
mengidentifikasi serta menggambarkan beberapa masalah yang terjadi pada sistem
dan akibat yang ditimbulkan oleh masalah. Permasalahan pada penelitian ini secara
umum dapat ditunjukkan pada diagram Ishikawa. Gambar 3.1.
Universitas Sumatera Utara
17
Metode
User
Metode yang memiliki
User membutuhkan
Kunci dan proses yang
keamanan data
Sama mudah untuk
dipecahkan
Implementasi
Operasi XOR
Dan Teknik
Transposisi
Segitiga
Ukuran kunci yang
terlalu panjang sehingga
aplikasi yang sekarang
proses menjadi lama
kurang cepat dan tepat
Material
Sistem
Gambar 3.1 Diagram Ishikawa Masalah Penelitian.
3.1.2 Analisis Kebutuhan Sistem
Analisis kebutuhan sistem terbagi dua bagian, yaitu kebutuhan fungsional dan
kebutuhan nonfungsional. Kebutuhan fungsional mendeskripsikan aktivitas yang
disediakan suatu sistem. Sedangkan kebutuhan nonfungsional mendeskripsikan fitur,
karakteristik dan batasan lainnya (Whitten et al, 2004).
3.1.2.1 Kebutuhan Fungsional
Untuk dapat melakukan pengamanan pesan berupa citra JPEG menggunakan operasi
XOR dan teknik transposisi segitiga, kebutuhan fungsional yang harus dipenuhi antara
lain sebagai berikut:
1. Sistem melakukan enkripsi citra asli menggunakan operasi XOR dengan kunci yang
di-generate oleh sistem, dan menampilkan hasil enkripsi citra asli pertama pada
layar program.
2. Sistem akan melakukan super enkripsi menggunakan transposisi segitiga dan
menampilkan hasil enkripsi citra asli kedua yang dihasilkan pada layar program.
3. Sistem akan melakukan dekripsi dengan transposisi segitiga dan operasi XOR,
menampilkan citra asli hasil dekripsi.
Universitas Sumatera Utara
18
4. Hasil enkripsi disimpan dalam bentuk gmbar dan teks dengan ekstensi .*jpg dan
.*txt.
5. Hasil dekripsi dapat disimpan dalam bentuk gambar dengan ekstensi .*jpg.
3.1.2.2 Persyaratan Nonfungsional
Persyaratan nonfungsional meliputi karakteristik sebagai berikut :
1. Performa
Sistem yang akan dibangun dapat melakukan proses enkripsi citra menggunakan
operasi XOR dan transposisi segitiga melakukan proses dekripsi untuk
mengembalikan citra yang dienkripsikan tersebut menjadi citra asli.
2. User Friendly
Sistem yang akan dibangun memiliki tampilan yang mudah dipahami dan digunakan
oleh pengguna (user).
3. Hemat Biaya
Sistem dibangun dengan memanfaatkan perangkat lunak freeware yang dapat
digunakan dan disebarluaskan dengan bebas.
4. Dokumentasi
Sistem yang akan dibangun dapat menyimpan data hasil proses enkripsi dan dekripsi.
5. Manajemen kualitas
Sistem yang akan dibangun harus memiliki kualitas yang baik yaitu proses enkripsi
dan dekripsi yang akurat.
6. Kontrol
Sistem yang dibangun akan menampilkan pesan error untuk setiap input yang tidak
sesuai.
3.1.3 Analisis Proses
Sistem yang dibangun menggunakan bahasa pemrograman Java dan IDE Eclipse.
Algoritma kriptografi yang digunakan untuk mengamankan citra adalah algoritma XOR
yang dikombinasikan dengan transposisi segitiga. Kunci pihak pengirim dan penerima
ditentukan secara acak. Enkripsi dan dekripsi pesan dilakukan pada setiap piksel-piksel
citra.
Universitas Sumatera Utara
19
3.2. Pemodelan Sistem
Pemodelan aplikasi yang dirancang bertujuan untuk menggambarkan semua kondisi
dan bagian-bagian yang berperan dalam sistem yang dirancang. Pemodelan aplikasi
dilakukan dengan membuat use-case diagram, activity diagram, sequence diagram, dan
flowchart.
3.2.1 Use-Case Diagram
Use-case diagram merupakan gambaran dari interaksi antara sistem dan aktor yang
berisi requirement yang terdapat pada sistem tersebut. Adapun use-case dari sistem
yang akan dibangun pada penelitian ini dapat dilihat pada Gambar 3.2.
Gambar 3.2 Use Case Diagram
Diagram pada gambar 3.2 menjelaskan aksi yang dapat dilakukan oleh user, user
melakukan enkripsi dengan menggunakan operasi XOR dan Tranposisi Segitiga. User
juga dapat melakukan dekripsi dengan operasi XOR dan Transposisi Segitiga. Kedua
metode yang dipakai baik operasi XOR dan Transposisi Segitiga dalam sistem ini tidak
dapat dipisahkan satu sama lain. Dimana ketika kita melakukan enkripsi, maka kedua
metode ini akan dipakai secara berurutan, begitu pula dengan proses dekripsi, kedua
Universitas Sumatera Utara
20
metode ini akan digunakan secara berurutan. Berikut ini merupakan spesifikasi use case
untuk enkripsi dan dekripsi.
Tabel 3.1 Spesifikasi Use Case Enkripsi
Name
Actors
Enkripsi
User
Trigger
User menginputkan citra asli yang akan dienkripsi dan
mengacak kunci
User telah menyimpan citra asli yang akan dienkripsi
User dapat melihat citra asli hasil proses enkripsi
Preconditions
Post Conditions
1. User telah menginputkan citra asli yang akan
dienkripsi.
2. User mengakses tombol acak kunci dan enkripsi.
3. Sistem akan melakukan proses enkripsi terhadap
Success Scenario
citra asli yang diinputkan dan menampilkan hasil
enkripsi.
4. User dapat melihat hasil enkripsi citra asli dan dapat
menyimpan hasil enkripsi tersebut dalam format
gambar dan teks (.jpg dan .txt )
Alternative Flows
-
Tabel 3.2 Spesifikasi Use Case Dekripsi
Name
Actors
Dekripsi
User
Trigger
User menginputkan hasil enkripsi citra asli dan
mengacak kunci.
User telah menyimpan hasil enkripsi citra asli
sebelumnya.
User dapat melihat citra asli hasil dekripsi.
Preconditions
Post Conditions
1. User telah menginputkan hasil enkripsi citra asli
yang akan didekripsi.
2. User mengakses tombol Dekripsi.
3. Sistem akan melakukan proses dekripsi terhadap
Success Scenario
hasil enkripsi citra asli yang diinputkan dan
menampilkan hasil dekripsi.
Universitas Sumatera Utara
21
4. User dapat melihat citra asli hasil proses dekripsi
dan dapat
menyimpan citra asli tersebut dalam
format gambar (.jpg)
Alternative Flows
-
3.2.2 Activity Diagram
Activity diagram adalah diagram aktivitas yang mendeskripsikan proses kerja dalam
sebuah sistem yang sedang berjalan. Activity diagram ini menggambarkan interaksi
aktifitas antara pengguna dengan sistem secara detil dan berurut. Kotak sebelah kiri
merupakan aktifitas yang dilakukan oleh pengguna, sedangkan kotak sebelah kanan
adalah respon yang diberikan sistem terhadap aktifitas yang dilakukan pengguna
terhadap sistem. Activity diagram untuk proses dari sistem yang dirancang dapat dilihat
pada gambar dibawah ini.
Gambar 3.3 Activity Diagram Enkripsi
Gambar 3.3 menunjukkan activity diagram untuk proses enkripsi. Proses dimulai
dari user memilih menu enkripsi dan sistem akan menampilkan halaman enkripsi.
Kemudian user memasukkan citra asli yang akan diinputkan. Sistem melakukan
pengecekan inputan, bila cek gagal maka proses akan kembali ke halaman enkripsi dan
Universitas Sumatera Utara
22
bila cek sukses, sistem akan menampilkan citra. Setelah itu user menekan tombol Acak
kunci, sistem akan menampilkan kunci yang telah di acak. lalu user menekan tombol
Enkripsi, maka sistem akan menampilkan hasil enkripsi menggunakan operasi XOR dan
teknik transposisi segitiga, kemudian sistem menampilkan hasilnya dan proses selesai.
Gambar 3.4 Activity Diagram Dekripsi
Gambar 3.4 menunjukkan activity diagram untuk proses Dekripsi. Proses dimulai
dari user memilih menu Dekripsi dan sistem akan menampilkan halaman Dekripsi.
Kemudian user memasukkan citra yang sudah di enkripsi sebelumnya. Sistem
melakukan pengecekan inputan, bila cek gagal maka proses akan kembali ke halaman
dekripsi dan bila cek sukses, sistem akan menampilkan citra. lalu user menekan tombol
Dekripsi, maka sistem akan mendekripsi menggunakan teknik transposisi segitiga dan
operasi XOR, kemudian sistem menampilkan hasilnya dan proses selesai.
Universitas Sumatera Utara
23
3.2.3 Sequence Diagram
Sequence Diagram adalah suatu diagram yang menggambarkan interaksi antar objek
pada sistem dalam sebuah urutan waktu atau rangkaian waktu. Sequence diagram dari
sistem yang akan dibangun dapat dilihat pada Gambar 3.5.
Gambar 3.5 Sequence Diagram
3.2.4 Flowchart
Flowchart merupakan suatu bagan yang menggambarkan urutan suatu proses secara
rinci menggunakan simbol-simbol tertentu dan menggambarkan hubungan antara satu
proses dengan proses lainnya dengan menggunakan tanda panah.
3.2.4.1 Flowchart Umum Sistem
Secara umum, sistem akan melakukan enkripsi dan dekripsi terhadap pesan yang
dimasukkan oleh user. Proses ini dapat dilihat pada flowchart gambaran umum pada
gambar 3.6.
Universitas Sumatera Utara
24
Mulai
Input citra asli
Acak Kunci
Enkripsi dengan XOR
Enkripsi dengan
Transposisi Segitiga
Citra hasil enkripsi
Dekripsi dengan
Transposisi Segitiga
Dekripsi dengan XOR
Output citra asli
Selesai
Gambar 3.6 Flowchart Umum Sistem
3.2.4.2 Flowchart Enkripsi Operasi XOR
Pada proses enkripsi operasi XOR terdapat dua parameter masukan yaitu citra yang akan
dienkripsi dan kunci enkripsi. Kedua input tersebut kemudian diproses dengan fungsi
Universitas Sumatera Utara
25
enkripsi operasi XOR, Adapun flowchart dari proses enkripsi operasi XOR dapat dilihat
pada Gambar 3.7.
Mulai
Input citra
asli dan acak
kunci
Ambil nilai R,G,B
dari setiap pixel
Nilai R,G,B
konversi ke biner
Enkripsi =
Nilai R,G,B (biner) Kunci
Output hasil
enkripsi citra asli
Selesai
Gambar 3.7 Flowchart Proses Enkripsi Operasi XOR
3.2.4.3 Flowchart Enkripsi Transposisi Segitiga
Pada proses enkripsi transposisi segitiga terdapat satu parameter masukan yaitu, hasil
enkripsi citra asli yang diperoleh menggunakan operasi XOR. inputan tersebut kemudian
diproses dengan teknik enkripsi transposisi segitiga. Adapun flowchart dari proses
enkripsi transposisi segitiga dapat dilihat pada Gambar 3.8.
Universitas Sumatera Utara
26
Mulai
Input citra
hasil enkripsi
XOR
Ambil pixel masukkan
pixel kedalam segitiga
Masukkan nilai “-1”
pada segitiga yang
belum terisi
Baca segitiga dari
kolom 0 sampai n-1
Output hasil
enkripsi citra
Selesai
Gambar 3.8 Flowchart Proses Enkripsi Transposisi Segitiga
3.2.4.4 Flowchart Dekripsi Transposisi Segitiga
Pada proses dekripsi transposisi segitiga terdapat satu parameter masukan yaitu hasil
enkripsi citra yang diperoleh dengan menggunakan teknik transposisi segitiga . Pada
proses dekripsi akan menghasilkan keluaran berupa hasil enkripsi menggunakan operasi
XOR. Adapun flowchart dari proses enkripsi transposisi segitiga dapat dilihat pada
Gambar 3.9.
Universitas Sumatera Utara
27
Mulai
Input citra hasil
enkripsi transposisi
segitiga
Masukkan pixel ke
dalam segitiga
Baca segitiga dari
baris 0 sampai n-1
Buang nilai “-1”
Output hasil
enkripsi citra
Selesai
Gambar 3.9 Flowchart Proses Dekripsi Transposisi Segitiga
3.2.4.5 Flowchart Dekripsi Operasi XOR
Pada proses dekripsi operasi XOR terdapat dua parameter masukan yaitu hasil dekripsi
citra yang diperoleh dengan menggunakan teknik transposisi segitiga dan kunci
dekripsi. Pada proses dekripsi akan menghasilkan keluaran berupa citra asli yang sama
seperti sebelum citra dienkripsi. Adapun flowchart dari proses enkripsi operasi XOR
dapat dilihat pada Gambar 3.10.
Universitas Sumatera Utara
28
Mulai
Input citra asli
hasil enkripsi
transposisi segitiga
dan kunci
Nilai citra hasil enkripsi
konversi ke biner
Dekripsi=
Nilai hasil konversi Kunci
Output hasil
dekripsi citra
Selesai
Gambar 3.10 Flowchart Proses Dekripsi Operasi XOR
3.2.5 Arsitektur Umum Sistem
Arsitektur Umum Sistem adalah gambaran sistem secara menyeluruh yang
menunjukkan langkah-langkah proses interaksi terhadap sebuah sistem, yang meliputi
proses kriptografi, yaitu proses enkripsi-dekripsi citra. Beberapa proses langkah yang
dapat dilakukan pengguna pada sistem dapat dilihat pada gambar 3.11.
Universitas Sumatera Utara
29
Gambar 3.11 Arsitektur Umum Sistem
Dilihat dari Arsitektur Umum Sistem pada gambar 3.11. menjelaskan bahwa
Alice merupakan pengguna yang berperan sebagai pengirim yang melakukan proses
enkripsi, dan Bob merupakan pengguna yang berperan sebagai penerima yang
melakukan proses dekripsi. Langkah pertama yaitu Alice mengekripsi citra
menggunakan operasi XOR lalu mengenkripsi lagi citra yang sudah terenkripsi
menggunakan teknik Transposisi segitiga dan menghasilkan citra terenkripsi. proses
selanjutnya adalah proses dekripsi yang dilakukan oleh Bob dengan menggunakan
teknik Transposisi Segitiga, proses dekripsi tersebut masih menghasilkan citra
terenkripsi. Untuk mengembalikan citra asli makan Bob mendekripsi lagi citra
terenskripsi menggunakan Operasi XOR dan menghasilkan citra asli yang dikirim oleh
pengirim pesan.
Universitas Sumatera Utara
30
3.3. Perancangan Antarmuka (Interface)
Perancangan antarmuka (interface) suatu sistem merupakan salah satu bagian yang
penting dalam membangun sebuah sistem. Untuk itu, dalam pembuatan suatu sistem,
dibutuhkan interface yang menarik dan mudah untuk dimengerti agar pengguna mudah
dan nyaman saat menggunakan sistem tersebut. Proses perancangan antarmuka sistem
bertujuan untuk mendefinisikan bagaimana sistem akan berinteraksi dengan entitas dari
luar sistem tersebut, contohnya adalah pengguna atau interaksi dengan sistem lain
(Dennis, 2012). Adapun antarmuka yang akan dirancang pada sistem ini adalah halaman
Home, Enkripsi, Dekripsi, dan Help.
3.3.1 Halaman Home
Halaman Home merupakan halaman yang pertama kali ditampilkan saat sistem
dijalankan. Rancangan halaman Home dapat dilihat pada Gambar 3.12.
Home
Enkripsi
1
2
Dekripsi
Help
3
4
IMPLEMENTASI OPERASI XOR DAN
TEKNIK TRANSPOSISI SEGITIGA
UNTUK PENGAMANAN CITRA JPEG
BERBASIS ANDROID
5
NURHASANAH
131401013
6
PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TI
UNIVERSITAS SUMATERA UTARA
MEDAN 2017
Gambar 3.12 Rancangan Interface Halaman Home
Pada Gambar 3.12 ditunjukkan tampilan rancangan dari halaman Home. Pada
halaman ini terdapat menu bar yang dapat digunakan untuk mengakses halaman lain,
Universitas Sumatera Utara
31
menu-menu tersebut adalah Home, Enkripsi, Dekripsi, dan Help. Selain menu, pada
halaman Home juga terdapat informasi judul, logo fakultas, nama, NIM dan program
studi pembuat sistem. Keterangan dari Gambar 3.12 dapat dilihat pada Tabel 3.3.
Tabel 3.3 Keterangan Gambar Rancangan Interface Halaman Home
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses Dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
TextView untuk menampilkan judul sistem, nama, program studi, dan
fakultas pembuat sistem.
6
ImageView untuk menampilkan logo Fasilkom-TI.
3.3.2 Halaman Enkripsi
Halaman enkripsi merupakan halaman yang tampil saat pengguna memilih menu
Enkripsi pada menu bar. Pada halaman ini pengguna dapat melakukan proses enkripsi
citra. Rancangan halaman Enkripsi dapat dilihat pada Gambar 3.13.
Universitas Sumatera Utara
32
Home 1
Enkripsi
Dekripsi
2
9
Help
3
4
Citra Asli
8
File Name
7
Size
5
Acak Kunci
1
6
Pilih Foto
Tampilkan Kunci
Operasi XOR
Transposisi
1
Segitiga
1
1
1
Enkripsi
1
Enkripsi
Reset
1
Save
1
1
Gambar 3.13 Rancangan Interface Halaman Enkripsi
Pada Gambar 3.13 ditunjukkan tampilan rancangan interface dari halaman
enkripsi. Keterangan dari Gambar 3.13 dapat dilihat pada Tabel 3.4.
Tabel 3.4 Keterangan Gambar Rancangan Interface Halaman Enkripsi
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
ImageView untuk menampilkan citra asli.
6
Button “Pilih Foto” untuk menampilkan direktori dan memilih citra yang
akan dienkripsi.
7
TextView untuk menampilkan tulisan “File Name” dan “Size”.
Universitas Sumatera Utara
33
8
EditText untuk menampilkan nama citra dan ukuran.
9
TextView untuk menampilkan tulisan “Citra Asli”.
10
11
Button “Acak Kunci” dan “ Tampilkan Kunci” untuk mengacak kunci dan
menampilkan kunci.
TextView untuk menampilkan tulisan “Operasi XOR”.
12
TextView untuk menampilkan tulisan “Transposisi Segitiga”.
13
ImageView untuk menampilkan citra hasil enkripsi XOR.
14
ImageView untuk menampilkan citra hasil enkripsi Transposisi Segitiga.
15
Button “Enkripsi ” untuk mengenkripsi citra menggunakan Operasi XOR.
16
Button “Enkripsi ” untuk mengenkripsi citra menggunakan Teknik
Transposisi Segitiga.
Button “Reset” untuk mengatur ulang semua proses yang udah dilakukan,
maka semua tampilan akan kosong
Button “Save” untuk menyimpan citra yang telah didekripsikan dan
menampilkan direktori citra yang mau disimpan.
17
18
3.3.3 Halaman Dekripsi
Halaman dekripsi merupakan halaman yang tampil saat pengguna memilih menu
Dekripsi pada menu bar. Pada halaman ini pengguna dapat melakukan proses dekripsi
citra. Rancangan halaman dekripsi dapat dilihat pada Gambar 3.14.
Universitas Sumatera Utara
34
Home
Enkripsi
1
Dekripsi
2
5
Help
3
4
File Name
Size 7
8
Pilih Foto
6
Tampilkan Kunci
Teknik Transposisi
Operasi XOR
9
Segitiga
1
1
Dekripsi
Reset
Dekripsi
1
1
Save
1
Gambar 3.14 Rancangan Interface Halaman Dekripsi
Pada Gambar 3.14 ditunjukkan tampilan rancangan interface dari halaman
dekripsi. Keterangan dari Gambar 3.14 dapat dilihat pada Tabel 3.5.
Tabel 3.5 Keterangan Gambar Rancangan Interface Halaman Dekripsi
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
ImageView untuk menampilkan citra asli.
6
Button “Pilih Foto” untuk menampilkan direktori dan memilih citra yang
akan dienkripsi.
Button”Tampilkan kunci” untuk menampilkan kunci.
Universitas Sumatera Utara
35
7
TextView untuk menampilkan tulisan “File Name” dan “Size”.
8
EditText untuk menampilkan nama dan ukuran citra yang telah dipilih.
9
TextView untuk menampilkan tulisan “Teknik Transposisi Segitiga”dan
“Operasi XOR”.
ImageView untuk menampilkan citra hasil dekripsi
10
11
12
13
Button “Dekripsi ” untuk mengdekripsi citra menggunakan teknik
transposisi segitiga dan operasi XOR.
Button “Reset” untuk mengatur ulang semua proses yang udah dilakukan,
maka semua tampilan akan kosong
Button “Save” untuk menyimpan citra yang telah didekripsikan dan
menampilkan direktori citra yang mau disimpan.
3.3.4 Halaman Help
Halaman help merupakan halaman yang tampil saat pengguna memilih menu Help pada
menu bar. Rancangan halaman help dapat dilihat pada Gambar 3.15.
Home
Enkripsi
1
2
Dekripsi
3
Help
4
5
6
Universitas Sumatera Utara
36
Home
Enkripsi
1
Dekripsi
2
Help
3
4
5
5
7
Gambar 3.15 Rancangan Interface Halaman Help
Pada Gambar 3.15 ditunjukkan tampilan rancangan interface dari halaman help.
Keterangan dari Gambar 3.15 dapat dilihat pada Tabel 3.6.
Tabel 3.6 Keterangan Gambar Rancangan Interface Halaman Help
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
ImageView untuk menampilkan foto petunjuk penggunaan.
6
Button “Next” untuk menampilkan petunjuk penggunaan Dekripsi
7
Button “Back” untuk menampilkan petunjuk penggunaan Enkripsi
Universitas Sumatera Utara
BAB 4
IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi
Setelah sistem dianalisis dan dirancang seperti yang telah diuraikan pada bab
sebelumnya, tahap selanjutnya adalah mengimplementasikan sistem tersebut kedalam
bahasa pemrograman. Sistem ini dibangun dengan menggunakan bahasa pemrograman
Java dan IDE Eclipse. Pada sistem ini terdapat empat halaman, yaitu : halaman Home,
halaman Enkripsi, halaman Dekripsi, dan halaman Help.
4.1.1 Halaman Home
Halaman Home merupakan halaman yang pertama kali tampil pada saat sistem
dijalankan. Tampilan halaman Home dapat dilihat pada Gambar 4.1.
Gambar 4.1 Halaman Home
Universitas Sumatera Utara
38
Pada Gambar 4.1 terdapat 4 menu yang dapat memanggil halaman yang lain,
yaitu: menu Enkripsi, menu Dekripsi, dan menu Help. Pada halaman Home ini juga
terdapat informasi judul, nama pembuat sistem, serta informasi program studi pembuat
sistem.
4.1.2 Halaman Enkripsi
Halaman Enkripsi merupakan halaman yang ditampilkan jika user memilih menu
“Enkripsi” yang terdapat pada Menu Bar. Tampilan dari halaman Enkripsi ini dapat
dilihat pada Gambar 4.2.
Gambar 4.2 Halaman Enkripsi
Pada Gambar 4.2 menunjukkan halaman Enkripsi digunakan untuk melakukan
proses enkripsi citra dengan menggunakan operasi XOR dan teknik transposisi segitiga.
Dimana juga terdapat button “Pilih Foto”, “Acak Kunci”, “Tampilkan Kunci”,” Save”
dan “Reset”. Button “Save” berfungsi untuk menyimpan citra yang sudah terenkripsi.
Universitas Sumatera Utara
39
4.1.3 Halaman Dekripsi
Halaman Dekripsi merupakan halaman yang ditampilkan oleh sistem jika pengguna
memilih menu “Dekripsi” pada menu bar. Tampilan dari halaman Dekripsi ini dapat
dilihat pada Gambar 4.3.
Gambar 4.3 Halaman Dekripsi
Pada Gambar 4.3 menunjukkan halaman Dekripsi, digunakan untuk melakukan
proses dekripsi citra dengan menggunakan teknik transposisi segitiga dan operasi XOR.
Dimana juga terdapat button “Pilih Foto”, “Tampilkan Kunci”, “Save” dan “Reset”,
button “ Save” berfungsi untuk menyimpan citra yang sudah terdekripsi.
4.1.4 Halaman Help
Halaman Help merupakan halaman yang ditampilkan oleh sistem jika pengguna
memilih menu “Help” pada menu bar. Tampilan dari halaman Help ini dapat dilihat
pada Gambar 4.4.
Universitas Sumatera Utara
40
Gambar 4.4 Halaman Help
Universitas Sumatera Utara
41
Pada Gambar 4.4 menampilkan informasi mengenai langkah-langkah
penggunaan sistem ini sehingga memudahkan pengguna untuk menjalankan sistem.
Halaman help terbagi menjadi dua bagian yaitu halaman help untuk enkripsi dan
halaman help untuk dekripsi.
4.2 Pengujian Sistem
Pada tahap ini akan dilakukan pengujian apakah sistem berhasil melakukan proses
enkripsi serta dekripsi citra menggunakan operasi XOR dan teknik transposisi segitiga.
Citra yang akan dienkripsi adalah citra yang berukuran 200 x 200 piksel. Tampilan dari
citra yang akan dienkripsi dapat dilihat pada Gambar 4.5.
Gambar 4.5 Citra 200 x 200 piksel
4.2.1 Pengujian Pengacakan Kunci
Kunci Operasi XOR dihasilkan dengan menggunakan fungsi random yang terdapat pada
IDE Eclipse 4.2.2. Rentang pengacakan kunci pada sistem ini adalah 0 sampai 256.
Untuk melakukan proses pengacakan kunci, user menekan button “Acak Kunci” yang
terdapat pada halaman “Enkripsi”. Setelah itu akan muncul Toast yang menyatakan
“Kunci Berhasil Dibuat”. Hasil pengacakan kunci dapat dilihat pada Gambar 4.6.
Universitas Sumatera Utara
42
Gambar 4.6 Pengacakan Kunci Operasi XOR
Pada Gambar 4.6 menunjukkan bahwa pengacakan kunci berhasil dilakukan.
Kunci yang telah di acak akan disimpan dalam explore / internal_storage / picture,
dengan nama file NUR_0805017_2007_k.txt. Kunci yang tersimpan dapat dilihat pada
gambar 4.7.
Gambar 4.7 Tempat Menyimpan Kunci yang Diacak
Kunci dapat ditampilkan setelah semua proses enkripsi selesai, tekan button
“Save” terlebih dahulu setelah itu menekan button “Tampilkan Kunci”, maka sistem
akan memanggil format
file
kunci yang telah disimpan dan menampilkannya.
Sebagaian kunci yang akan ditampilkan dapat dilihat pada gambar 4.8.
Universitas Sumatera Utara
43
Gambar 4.8 Tampilan Sebagian dari Kunci
4.2.2 Pengujian Enkripsi Operasi XOR
Proses enkripsi dapat dilakukan jika pengguna telah melakukan pengacakan kunci.
Enkripsi menggunakan operasi XOR ini dilakukan dengan cara menekan button
“Enkripsi” yang di atas image terdapat bacaan “Operasi XOR” dan kemudian sistem
akan menampilkan hasil enkripsi citra dan hasil perhitungan waktu eksekusi proses.
Tampilan dari hasil proses enkripsi menggunakan operasi XOR dapat dilihat pada
Gambar 4.9.
Universitas Sumatera Utara
44
Gambar 4.9 Hasil Proses Enkripsi Operasi XOR
Gambar 4.9 menunjukkan hasil enkripsi operasi XOR. Piksel-piksel citra hasil
enkripsi didapat dari hasil operasi XOR antara piksel-piksel citra asli dengan kunci yang
telah diacak sebelumnya.
4.2.3 Pengujian Enkripsi Transposisi segitiga
Enkripsi tahap kedua ini dilakukan dengan cara menekan button “Enkripsi” yang di atas
image terdapat bacaan “Transposisi segitiga” dan kemudian sistem akan menampilkan
hasil enkripsi citra serta hasil perhitungan waktu eksekusi proses. Tampilan dari hasil
proses enkripsi tahap kedua ini dapat dilihat pada Gambar 4.10.
Universitas Sumatera Utara
45
Gambar 4.10 Hasil Proses Enkripsi Transposisi Segitiga
Gambar 4.10 menunjukkan hasil enkripsi citra tahap kedua. Piksel-piksel citra
hasil enkripsi ini didapat dari hasil transposisi segitiga.
4.2.4 Pengujian penyimpanan citra hasil enkripsi
Penyimpanan citra hasil enkripsi dilakukan dengan cara menekan button “save”. Setelah
itu akan muncul Toast yang menyatakan file berhasil disimpan dengan waktu proses
penyimpanan yang telah dilakukan. Tampilan dari proses penyimpanan citra hasil
enkripsi dapat dilihat pada Gambar 4.11.
Universitas Sumatera Utara
46
Gambar 4.11 Proses Penyimpanan Hasil Enkripsi Citra
citra hasil enkripsi akan disimpan dalam explore/internal_storage/picture,
dengan nama file NUR_0805017_2007.jpg tempat menyimpan citra yang terenkripsi
sama dengan tempat menyimpan kunci yang telah diacak. Tempat menyimpan citra
enkripsi dapat dilihat pada gambar 4.12.
Gambar 4.12 Tempat Menyimpan Citra Terenkripsi
Universitas Sumatera Utara
47
4.2.5 Pengujian Dekripsi Transposisi Segitiga
Dekripsi transposisi segitiga dilakukan dengan cara menekan button “Dekripsi” yang di
atas image terdapat bacaan “Transposisi segitiga” dan kemudian sistem akan
menampilkan hasil dekripsi citra serta hasil perhitungan waktu eksekusi proses.
Tampilan dari hasil proses dekripsi transposisi segitiga ini dapat dilihat pada Gambar
4.13.
Gambar 4.13 Hasil Proses Dekripsi Transposisi Segitiga
Gambar 4.13 menunjukkan hasil dekripsi transposisi segitiga. Piksel-piksel citra
hasil dekripsi ini didapat dari hasil teknik transposisi segitiga.
4.2.6 Pengujian Dekripsi Operasi XOR
Proses dekripsi ini dilakukan dengan cara menekan button “Dekripsi” yang di atas
image terdapat bacaan “Operasi XOR” dan kemudian sistem akan menampilkan citra
asli yang telah dikembalikan dan hasil perhitungan waktu eksekusi proses ini. Tampilan
dari hasil proses dekripsi ini dapat dilihat pada Gambar 4.14.
Universitas Sumatera Utara
48
Gambar 4.14 Hasil Proses Dekripsi Operasi XOR
Gambar 4.14 menunjukkan hasil pengembalian citra asli. Hasil ini didapat dari
hasil operasi XOR antara piksel-piksel hasil dekripsi transposisi segitiga dengan kunci
yang telah diacak sebelumnya.
4.2.7 Perhitungan Manual
Berdasarkan gambar 4.5 yang digunakan dalam pengujian sistem di atas, akan
dilakukan perhitungan manual dengan mengambil piksel (1,1). Nilai citra JPEG R,G,B
pixel (1,1) yaitu (35,45,63) dan kunci (K) yaitu : 00100101 00100101 00100101, maka
proses perhitungan enkripsi dan dekripsi dapat dilihat dibawah ini :
Universitas Sumatera Utara
49
(R G B)
35 45 63
Gambar 4.15 Pengambilan piksel (1,1)
1. Pertama ubah R,G,B Desimal ke Biner:
Desimal
Biner
R
G
B
35
45
63
00100011 00101101 00111111
Maka akan di dapat “00100011 00101101 00111111” sebagai Plainteks (P)
2. Lalu Plainteks (P) dienkripsi meggunakan Operasi XOR:
Plainteks (P)
Kunci (K)
Ciphertext (C1)
Desimal
00100011
00100101
00000110
6
00101101
00100101
00001000
8
00111111
00100101
00011010
26
Tabel 4.1 Proses Perhitungan Enkripsi Menggunakan XOR
3. Ubah Ciphertext (C1) ke Desimal maka diperolah angka desimal 6 8 26 lalu
Ciphertext (C1) : 6 8 26 dienkripsi lagi menggunakan teknik transposisi segitiga,
maka hasil transposisi yang didapat adalah:
6
8 26 -1
Gambar 4.16 Proses Enkripsi Transposisi segitiga
Universitas Sumatera Utara
50
Dari gambar 4.16 dapat dilihat hasil transposisi yang dilakukan dengan Ciphertext
(C1) yang diberikan. Jika karakter tidak memenuhi semua kolom pada baris terakhir
maka akan dimasukkan bilangan -1 sebagai pengisinya. Untuk membaca hasil
transposisi terlebih dahulu dibaca dari kolom paling kiri, sehingga hasil Ciphertext
(C2) yang didapat adalah “6 8 26 -1”.
4. Untuk mengembalikan Ciphertext (C1) yang telah ditransposisi, dilakukan
penyusunan kembali karakter kedalam segitiga, dengan karakter pertama menduduki
kolom paling kiri dan dibaca dari baris atas ke bawah. Sehingga hasil dari Ciphertext
(C2) “6 8 26 -1” dapat dilihat pada gambar 4.17.
6
8 26 -1
Gambar 4.17 Proses Dekripsi Transposisi segitiga
Dan hasilnya adalah 6 8 26 -1 dan setiap karakter “-1” akan dihapus dari Ciphertext
(C1) sehingga menghasilkan 6 8 26.
5. Untuk mengembalikan Plaintext maka Ciphertext (C1) ” 6 8 26” diubah ke biner
menjadi
“00000110 00001000 00011010” lalu Ciphertext (C1) didekripsi
menggunakan Operasi XOR, berikut proses perhitungannya:
Ciphertext (C1)
Kunci (K)
Plainteks (P)
Desimal
00000110
00100101
00100011
35
00001000
00100101
00101101
45
00011010
00100101
00111111
63
Tabel 4.2 Proses Perhitungan Dekripsi Menggunakan XOR
Plaintext (P) “00100011 00101101 00111111” diubah menjadi desimal “35 45 63”
maka R,G,B dari Pixel citra JPEG yang telah dienkripsi akan kembali seperti
semula. Itu berarti penggunaan Operasi XOR dan Transposisi segitiga memenuhi
parameter keutuhan data
Universitas Sumatera Utara
51
4.2.8 Pengujian Sistem Terhadap Waktu Proses
Pengujian ini menggunakan tujuh citra yang mempunyai ukuran yang berbeda, yaitu
citra 200x200 piksel, citra 300x300 piksel, citra 400x400 piksel, citra 500x500, citra
600x600, citra 700x700, dan citra 800x800 piksel. Setiap citra akan diuji terhadap
waktu proses yang digunakan. Waktu proses pada citra dapat dilihat pada Tabel 4.3.
Tabel 4.3 Perbandingan Ukuran Citra dengan Waktu Proses
Citra 200 x 200 piksel
Citra asli
Enkripsi
Operasi XOR
Enkripsi
Transposisi
Segitiga
Dekripsi
Transposisi
Segitiga
Dekripsi
Operasi XOR
Waktu Proses
0.27
0.707
0.442
0.287
Rata-Rata Waktu (sekon)
0.426
Citra 300 x 300 piksel
Waktu Proses
0.541
1.594
0.967
Rata-Rata Waktu (sekon)
0.55
0.913
Citra 400 x 400 piksel
Waktu Proses
0.916
2.86
Rata-Rata Waktu (sekon)
1.709
0.954
1.609
Citra 500 x 500 piksel
Universitas Sumatera Utara
52
Waktu Proses
1.623
4.849
2.934
Rata-Rata Waktu (sekon)
1.595
2.750
Citra 600 x 600 piksel
Waktu Proses
2.077
6.572
3.861
Rata-Rata Waktu (sekon)
2.139
3.662
Citra 700 x 700 piksel
Waktu Proses
2.825
9.148
5.588
Rata-Rata Waktu (sekon)
2.869
5.105
Citra 800 x 800 piksel
Waktu Proses
3.612
12.079
Rata-Rata Waktu (sekon)
7.703
4.268
6.915
Pada Tabel 4.3 terdapat lima buah kolom. Kolom pertama adalah citra asli
dengan berbagai macam ukuran, kolom kedua adalah hasil enkripsi citra dari operasi
XOR, kolom ketiga adalah hasil enkripsi citra dari transposisi segitiga, kolom keempat
adalah hasil dekripsi citra dari transposisi segitiga, dan kolom kelima adalah hasil
Universitas Sumatera Utara
53
dekripsi citra menggunakan operasi XOR. Dari pengujian proses enkripsi dan dekripsi
menggunakan citra dengan ukuran citra 200x200 piksel, citra 300x300 piksel, citra
400x400 piksel, citra 500x500, citra 600x600, citra 700x700, dan citra 800x800 piksel
didapatlah waktu rata-rata untuk masing-masing eksekusi yaitu 0.426 sekon, 0.913
sekon, 1.609 sekon, 2.750 sekon, 3.662 sekon, 5.105 sekon dan 6.915 sekon. Hubungan
waktu proses enkripsi terhadap ukuran dari suatu citra dapat dilihat pada Gambar 4.18.
8
7
Waktu (sekon)
6
5
4
3
2
1
0
200 x 200 300 x 300 400 x 400 500 x 500 600 x 600 700 x 700 800 x 800
Ukuran piksel
Gambar 4.18 Grafik Hubungan Ukuran Citra dengan Waktu
Pada Gambar 4.18 ditunjukkan waktu yang dibutuhkan untuk mengeksekusi
citra berukuran 200x200 piksel adalah 0.4 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 300x300 piksel adalah 0.9 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 400x400 piksel adalah 1.6 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 500x500 piksel adalah 2.7 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 600x600 piksel adalah 3.6 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 700x700 piksel adalah 5.1 sekon sedangkan waktu yang dibutuhkan
untuk mengenkripsi citra berukuran 800x800 piksel adalah 6.9 sekon. Pada Gambar
4.18 dapat dilihat bahwa hubungan antara ukuran piksel dari suatu citra berbanding
lurus linear terhadap waktu proses enkripsi. Artinya, semakin besar ukuran piksel, maka
waktu yang digunakan untuk eksekusi program juga semakin lama.
Universitas Sumatera Utara
BAB 5
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Berdasarkan analisis, perancangan, dan pengujian dari penelitian pengamanan citra
menggunakan Operasi XOR dan Teknik Transposisi Segitiga, maka diperoleh beberapa
kesimpulan :
1. Proses enkripsi dan dekripsi pada pengamanan citra menggunakan operasi XOR dan
teknik transposisi sgitiga memenuhi parameter keutuhan data.
2. Citra hasil dekripsi sama persis seperti citra awal sebelum dilakukan proses enkripsi.
3. Berdasarkan perubahan hasil citra yang dienkripsi pada pengujian, penggunaan
operasi XOR dan teknik transposisi segitiga ini relatif aman dan sederhana untuk
mengamankan citra.
4. Citra yang sudah di enkripsi menggunakan teknik transposisi segitiga menjadi citra
hasil enkripsi memiliki bilangan yang lebih banyak atau panjang dibandingkan
dengan citra sebelum dilakukan proses enkripsi.
5. Berdasarkan grafik hubungan antara waktu proses enkripsi citra dengan ukuran
piksel citra tersebut menunjukkan bahwa ukuran piksel citra berbanding lurus
dengan waktu. Semakin besar ukuran piksel citra tersebut maka semakin lama waktu
proses enkripsinya.
Universitas Sumatera Utara
55
5.2. Saran
Adapun saran-saran yang dapat dipertimbangkan untuk pengembangan penelitian ini
antara lain :
1. Sistem ini hanya dapat mengamankan citra yang berformat *.JPEG, sehingga untuk
penelitian selanjutnya diharapkan dapat mengamankan citra berformat *.bmp, *.TIF,
*.PNG, dan format citra lainnya.
2. Untuk penelitian selanjutnya diharapkan dapat mengombinasikan operasi XOR
dengan berbagai macam teknik kriptografi seperti Transposisi Zigzag dan yang
lainnya.
3. Untuk penelitian selanjutnya diharapkan dapat menambahkan jenis data yang dapat
diamankan seperti audio dan video.
Universitas Sumatera Utara
ANALISIS DAN PERANCANGAN
3.1
Analisis Sistem
Analisis sistem (systems analysis) adalah sebuah teknik pemecahan masalah di mana
sistem diuraikan menjadi komponen-kompenen dengan tujuan untuk mempelajari
kinerja masing-masing komponen tersebut dalam mencapai tujuan sistem (Whitten &
Bentley, 2007). Analisis sistem bertujuan untuk memecah sistem ke dalam komponenkomponen subsistem yang lebih kecil untuk mengetahui hubungan setiap komponen
tersebut dalam mencapai tujuan.
3.1.1 Analisis Masalah
Saat ini keamanan dalam pengiriman pesan rahasia sangatlah rentan oleh pihak ketiga
yang ingin mengetahui isi dari pesan tersebut. Masalah utama yang diambil penulis
pada penelitian ini adalah munculnya rasa curiga atau ingin tahu dari pihak ketiga
terhadap kerahasian sebuah pesan yang disebabkan faktor perubahan citra asli dan
pengguna menggunakan satu kunci yang tidak aman dalam mengirimkan pesan
kepada orang lain. Sistem ini mengimplemantasikan operasi XOR dan teknik
transposisi segitiga, pengurutan karakter yang didasarkan pada bentuk segitiga yang
dibangun akan memperkuat keamanan dari sistem yang akan dipakai.
Masalah-masalah pada penelitian ini diidentifikasikan dengan menggunakan
diagram Ishikawa. Diagram Ishikawa atau yang sering dikenal dengan Cause and
Effect Diagram
adalah diagram yang digunakan untuk memahami dan
mengidentifikasi serta menggambarkan beberapa masalah yang terjadi pada sistem
dan akibat yang ditimbulkan oleh masalah. Permasalahan pada penelitian ini secara
umum dapat ditunjukkan pada diagram Ishikawa. Gambar 3.1.
Universitas Sumatera Utara
17
Metode
User
Metode yang memiliki
User membutuhkan
Kunci dan proses yang
keamanan data
Sama mudah untuk
dipecahkan
Implementasi
Operasi XOR
Dan Teknik
Transposisi
Segitiga
Ukuran kunci yang
terlalu panjang sehingga
aplikasi yang sekarang
proses menjadi lama
kurang cepat dan tepat
Material
Sistem
Gambar 3.1 Diagram Ishikawa Masalah Penelitian.
3.1.2 Analisis Kebutuhan Sistem
Analisis kebutuhan sistem terbagi dua bagian, yaitu kebutuhan fungsional dan
kebutuhan nonfungsional. Kebutuhan fungsional mendeskripsikan aktivitas yang
disediakan suatu sistem. Sedangkan kebutuhan nonfungsional mendeskripsikan fitur,
karakteristik dan batasan lainnya (Whitten et al, 2004).
3.1.2.1 Kebutuhan Fungsional
Untuk dapat melakukan pengamanan pesan berupa citra JPEG menggunakan operasi
XOR dan teknik transposisi segitiga, kebutuhan fungsional yang harus dipenuhi antara
lain sebagai berikut:
1. Sistem melakukan enkripsi citra asli menggunakan operasi XOR dengan kunci yang
di-generate oleh sistem, dan menampilkan hasil enkripsi citra asli pertama pada
layar program.
2. Sistem akan melakukan super enkripsi menggunakan transposisi segitiga dan
menampilkan hasil enkripsi citra asli kedua yang dihasilkan pada layar program.
3. Sistem akan melakukan dekripsi dengan transposisi segitiga dan operasi XOR,
menampilkan citra asli hasil dekripsi.
Universitas Sumatera Utara
18
4. Hasil enkripsi disimpan dalam bentuk gmbar dan teks dengan ekstensi .*jpg dan
.*txt.
5. Hasil dekripsi dapat disimpan dalam bentuk gambar dengan ekstensi .*jpg.
3.1.2.2 Persyaratan Nonfungsional
Persyaratan nonfungsional meliputi karakteristik sebagai berikut :
1. Performa
Sistem yang akan dibangun dapat melakukan proses enkripsi citra menggunakan
operasi XOR dan transposisi segitiga melakukan proses dekripsi untuk
mengembalikan citra yang dienkripsikan tersebut menjadi citra asli.
2. User Friendly
Sistem yang akan dibangun memiliki tampilan yang mudah dipahami dan digunakan
oleh pengguna (user).
3. Hemat Biaya
Sistem dibangun dengan memanfaatkan perangkat lunak freeware yang dapat
digunakan dan disebarluaskan dengan bebas.
4. Dokumentasi
Sistem yang akan dibangun dapat menyimpan data hasil proses enkripsi dan dekripsi.
5. Manajemen kualitas
Sistem yang akan dibangun harus memiliki kualitas yang baik yaitu proses enkripsi
dan dekripsi yang akurat.
6. Kontrol
Sistem yang dibangun akan menampilkan pesan error untuk setiap input yang tidak
sesuai.
3.1.3 Analisis Proses
Sistem yang dibangun menggunakan bahasa pemrograman Java dan IDE Eclipse.
Algoritma kriptografi yang digunakan untuk mengamankan citra adalah algoritma XOR
yang dikombinasikan dengan transposisi segitiga. Kunci pihak pengirim dan penerima
ditentukan secara acak. Enkripsi dan dekripsi pesan dilakukan pada setiap piksel-piksel
citra.
Universitas Sumatera Utara
19
3.2. Pemodelan Sistem
Pemodelan aplikasi yang dirancang bertujuan untuk menggambarkan semua kondisi
dan bagian-bagian yang berperan dalam sistem yang dirancang. Pemodelan aplikasi
dilakukan dengan membuat use-case diagram, activity diagram, sequence diagram, dan
flowchart.
3.2.1 Use-Case Diagram
Use-case diagram merupakan gambaran dari interaksi antara sistem dan aktor yang
berisi requirement yang terdapat pada sistem tersebut. Adapun use-case dari sistem
yang akan dibangun pada penelitian ini dapat dilihat pada Gambar 3.2.
Gambar 3.2 Use Case Diagram
Diagram pada gambar 3.2 menjelaskan aksi yang dapat dilakukan oleh user, user
melakukan enkripsi dengan menggunakan operasi XOR dan Tranposisi Segitiga. User
juga dapat melakukan dekripsi dengan operasi XOR dan Transposisi Segitiga. Kedua
metode yang dipakai baik operasi XOR dan Transposisi Segitiga dalam sistem ini tidak
dapat dipisahkan satu sama lain. Dimana ketika kita melakukan enkripsi, maka kedua
metode ini akan dipakai secara berurutan, begitu pula dengan proses dekripsi, kedua
Universitas Sumatera Utara
20
metode ini akan digunakan secara berurutan. Berikut ini merupakan spesifikasi use case
untuk enkripsi dan dekripsi.
Tabel 3.1 Spesifikasi Use Case Enkripsi
Name
Actors
Enkripsi
User
Trigger
User menginputkan citra asli yang akan dienkripsi dan
mengacak kunci
User telah menyimpan citra asli yang akan dienkripsi
User dapat melihat citra asli hasil proses enkripsi
Preconditions
Post Conditions
1. User telah menginputkan citra asli yang akan
dienkripsi.
2. User mengakses tombol acak kunci dan enkripsi.
3. Sistem akan melakukan proses enkripsi terhadap
Success Scenario
citra asli yang diinputkan dan menampilkan hasil
enkripsi.
4. User dapat melihat hasil enkripsi citra asli dan dapat
menyimpan hasil enkripsi tersebut dalam format
gambar dan teks (.jpg dan .txt )
Alternative Flows
-
Tabel 3.2 Spesifikasi Use Case Dekripsi
Name
Actors
Dekripsi
User
Trigger
User menginputkan hasil enkripsi citra asli dan
mengacak kunci.
User telah menyimpan hasil enkripsi citra asli
sebelumnya.
User dapat melihat citra asli hasil dekripsi.
Preconditions
Post Conditions
1. User telah menginputkan hasil enkripsi citra asli
yang akan didekripsi.
2. User mengakses tombol Dekripsi.
3. Sistem akan melakukan proses dekripsi terhadap
Success Scenario
hasil enkripsi citra asli yang diinputkan dan
menampilkan hasil dekripsi.
Universitas Sumatera Utara
21
4. User dapat melihat citra asli hasil proses dekripsi
dan dapat
menyimpan citra asli tersebut dalam
format gambar (.jpg)
Alternative Flows
-
3.2.2 Activity Diagram
Activity diagram adalah diagram aktivitas yang mendeskripsikan proses kerja dalam
sebuah sistem yang sedang berjalan. Activity diagram ini menggambarkan interaksi
aktifitas antara pengguna dengan sistem secara detil dan berurut. Kotak sebelah kiri
merupakan aktifitas yang dilakukan oleh pengguna, sedangkan kotak sebelah kanan
adalah respon yang diberikan sistem terhadap aktifitas yang dilakukan pengguna
terhadap sistem. Activity diagram untuk proses dari sistem yang dirancang dapat dilihat
pada gambar dibawah ini.
Gambar 3.3 Activity Diagram Enkripsi
Gambar 3.3 menunjukkan activity diagram untuk proses enkripsi. Proses dimulai
dari user memilih menu enkripsi dan sistem akan menampilkan halaman enkripsi.
Kemudian user memasukkan citra asli yang akan diinputkan. Sistem melakukan
pengecekan inputan, bila cek gagal maka proses akan kembali ke halaman enkripsi dan
Universitas Sumatera Utara
22
bila cek sukses, sistem akan menampilkan citra. Setelah itu user menekan tombol Acak
kunci, sistem akan menampilkan kunci yang telah di acak. lalu user menekan tombol
Enkripsi, maka sistem akan menampilkan hasil enkripsi menggunakan operasi XOR dan
teknik transposisi segitiga, kemudian sistem menampilkan hasilnya dan proses selesai.
Gambar 3.4 Activity Diagram Dekripsi
Gambar 3.4 menunjukkan activity diagram untuk proses Dekripsi. Proses dimulai
dari user memilih menu Dekripsi dan sistem akan menampilkan halaman Dekripsi.
Kemudian user memasukkan citra yang sudah di enkripsi sebelumnya. Sistem
melakukan pengecekan inputan, bila cek gagal maka proses akan kembali ke halaman
dekripsi dan bila cek sukses, sistem akan menampilkan citra. lalu user menekan tombol
Dekripsi, maka sistem akan mendekripsi menggunakan teknik transposisi segitiga dan
operasi XOR, kemudian sistem menampilkan hasilnya dan proses selesai.
Universitas Sumatera Utara
23
3.2.3 Sequence Diagram
Sequence Diagram adalah suatu diagram yang menggambarkan interaksi antar objek
pada sistem dalam sebuah urutan waktu atau rangkaian waktu. Sequence diagram dari
sistem yang akan dibangun dapat dilihat pada Gambar 3.5.
Gambar 3.5 Sequence Diagram
3.2.4 Flowchart
Flowchart merupakan suatu bagan yang menggambarkan urutan suatu proses secara
rinci menggunakan simbol-simbol tertentu dan menggambarkan hubungan antara satu
proses dengan proses lainnya dengan menggunakan tanda panah.
3.2.4.1 Flowchart Umum Sistem
Secara umum, sistem akan melakukan enkripsi dan dekripsi terhadap pesan yang
dimasukkan oleh user. Proses ini dapat dilihat pada flowchart gambaran umum pada
gambar 3.6.
Universitas Sumatera Utara
24
Mulai
Input citra asli
Acak Kunci
Enkripsi dengan XOR
Enkripsi dengan
Transposisi Segitiga
Citra hasil enkripsi
Dekripsi dengan
Transposisi Segitiga
Dekripsi dengan XOR
Output citra asli
Selesai
Gambar 3.6 Flowchart Umum Sistem
3.2.4.2 Flowchart Enkripsi Operasi XOR
Pada proses enkripsi operasi XOR terdapat dua parameter masukan yaitu citra yang akan
dienkripsi dan kunci enkripsi. Kedua input tersebut kemudian diproses dengan fungsi
Universitas Sumatera Utara
25
enkripsi operasi XOR, Adapun flowchart dari proses enkripsi operasi XOR dapat dilihat
pada Gambar 3.7.
Mulai
Input citra
asli dan acak
kunci
Ambil nilai R,G,B
dari setiap pixel
Nilai R,G,B
konversi ke biner
Enkripsi =
Nilai R,G,B (biner) Kunci
Output hasil
enkripsi citra asli
Selesai
Gambar 3.7 Flowchart Proses Enkripsi Operasi XOR
3.2.4.3 Flowchart Enkripsi Transposisi Segitiga
Pada proses enkripsi transposisi segitiga terdapat satu parameter masukan yaitu, hasil
enkripsi citra asli yang diperoleh menggunakan operasi XOR. inputan tersebut kemudian
diproses dengan teknik enkripsi transposisi segitiga. Adapun flowchart dari proses
enkripsi transposisi segitiga dapat dilihat pada Gambar 3.8.
Universitas Sumatera Utara
26
Mulai
Input citra
hasil enkripsi
XOR
Ambil pixel masukkan
pixel kedalam segitiga
Masukkan nilai “-1”
pada segitiga yang
belum terisi
Baca segitiga dari
kolom 0 sampai n-1
Output hasil
enkripsi citra
Selesai
Gambar 3.8 Flowchart Proses Enkripsi Transposisi Segitiga
3.2.4.4 Flowchart Dekripsi Transposisi Segitiga
Pada proses dekripsi transposisi segitiga terdapat satu parameter masukan yaitu hasil
enkripsi citra yang diperoleh dengan menggunakan teknik transposisi segitiga . Pada
proses dekripsi akan menghasilkan keluaran berupa hasil enkripsi menggunakan operasi
XOR. Adapun flowchart dari proses enkripsi transposisi segitiga dapat dilihat pada
Gambar 3.9.
Universitas Sumatera Utara
27
Mulai
Input citra hasil
enkripsi transposisi
segitiga
Masukkan pixel ke
dalam segitiga
Baca segitiga dari
baris 0 sampai n-1
Buang nilai “-1”
Output hasil
enkripsi citra
Selesai
Gambar 3.9 Flowchart Proses Dekripsi Transposisi Segitiga
3.2.4.5 Flowchart Dekripsi Operasi XOR
Pada proses dekripsi operasi XOR terdapat dua parameter masukan yaitu hasil dekripsi
citra yang diperoleh dengan menggunakan teknik transposisi segitiga dan kunci
dekripsi. Pada proses dekripsi akan menghasilkan keluaran berupa citra asli yang sama
seperti sebelum citra dienkripsi. Adapun flowchart dari proses enkripsi operasi XOR
dapat dilihat pada Gambar 3.10.
Universitas Sumatera Utara
28
Mulai
Input citra asli
hasil enkripsi
transposisi segitiga
dan kunci
Nilai citra hasil enkripsi
konversi ke biner
Dekripsi=
Nilai hasil konversi Kunci
Output hasil
dekripsi citra
Selesai
Gambar 3.10 Flowchart Proses Dekripsi Operasi XOR
3.2.5 Arsitektur Umum Sistem
Arsitektur Umum Sistem adalah gambaran sistem secara menyeluruh yang
menunjukkan langkah-langkah proses interaksi terhadap sebuah sistem, yang meliputi
proses kriptografi, yaitu proses enkripsi-dekripsi citra. Beberapa proses langkah yang
dapat dilakukan pengguna pada sistem dapat dilihat pada gambar 3.11.
Universitas Sumatera Utara
29
Gambar 3.11 Arsitektur Umum Sistem
Dilihat dari Arsitektur Umum Sistem pada gambar 3.11. menjelaskan bahwa
Alice merupakan pengguna yang berperan sebagai pengirim yang melakukan proses
enkripsi, dan Bob merupakan pengguna yang berperan sebagai penerima yang
melakukan proses dekripsi. Langkah pertama yaitu Alice mengekripsi citra
menggunakan operasi XOR lalu mengenkripsi lagi citra yang sudah terenkripsi
menggunakan teknik Transposisi segitiga dan menghasilkan citra terenkripsi. proses
selanjutnya adalah proses dekripsi yang dilakukan oleh Bob dengan menggunakan
teknik Transposisi Segitiga, proses dekripsi tersebut masih menghasilkan citra
terenkripsi. Untuk mengembalikan citra asli makan Bob mendekripsi lagi citra
terenskripsi menggunakan Operasi XOR dan menghasilkan citra asli yang dikirim oleh
pengirim pesan.
Universitas Sumatera Utara
30
3.3. Perancangan Antarmuka (Interface)
Perancangan antarmuka (interface) suatu sistem merupakan salah satu bagian yang
penting dalam membangun sebuah sistem. Untuk itu, dalam pembuatan suatu sistem,
dibutuhkan interface yang menarik dan mudah untuk dimengerti agar pengguna mudah
dan nyaman saat menggunakan sistem tersebut. Proses perancangan antarmuka sistem
bertujuan untuk mendefinisikan bagaimana sistem akan berinteraksi dengan entitas dari
luar sistem tersebut, contohnya adalah pengguna atau interaksi dengan sistem lain
(Dennis, 2012). Adapun antarmuka yang akan dirancang pada sistem ini adalah halaman
Home, Enkripsi, Dekripsi, dan Help.
3.3.1 Halaman Home
Halaman Home merupakan halaman yang pertama kali ditampilkan saat sistem
dijalankan. Rancangan halaman Home dapat dilihat pada Gambar 3.12.
Home
Enkripsi
1
2
Dekripsi
Help
3
4
IMPLEMENTASI OPERASI XOR DAN
TEKNIK TRANSPOSISI SEGITIGA
UNTUK PENGAMANAN CITRA JPEG
BERBASIS ANDROID
5
NURHASANAH
131401013
6
PROGRAM STUDI S-1 ILMU KOMPUTER
FAKULTAS ILMU KOMPUTER DAN TI
UNIVERSITAS SUMATERA UTARA
MEDAN 2017
Gambar 3.12 Rancangan Interface Halaman Home
Pada Gambar 3.12 ditunjukkan tampilan rancangan dari halaman Home. Pada
halaman ini terdapat menu bar yang dapat digunakan untuk mengakses halaman lain,
Universitas Sumatera Utara
31
menu-menu tersebut adalah Home, Enkripsi, Dekripsi, dan Help. Selain menu, pada
halaman Home juga terdapat informasi judul, logo fakultas, nama, NIM dan program
studi pembuat sistem. Keterangan dari Gambar 3.12 dapat dilihat pada Tabel 3.3.
Tabel 3.3 Keterangan Gambar Rancangan Interface Halaman Home
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses Dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
TextView untuk menampilkan judul sistem, nama, program studi, dan
fakultas pembuat sistem.
6
ImageView untuk menampilkan logo Fasilkom-TI.
3.3.2 Halaman Enkripsi
Halaman enkripsi merupakan halaman yang tampil saat pengguna memilih menu
Enkripsi pada menu bar. Pada halaman ini pengguna dapat melakukan proses enkripsi
citra. Rancangan halaman Enkripsi dapat dilihat pada Gambar 3.13.
Universitas Sumatera Utara
32
Home 1
Enkripsi
Dekripsi
2
9
Help
3
4
Citra Asli
8
File Name
7
Size
5
Acak Kunci
1
6
Pilih Foto
Tampilkan Kunci
Operasi XOR
Transposisi
1
Segitiga
1
1
1
Enkripsi
1
Enkripsi
Reset
1
Save
1
1
Gambar 3.13 Rancangan Interface Halaman Enkripsi
Pada Gambar 3.13 ditunjukkan tampilan rancangan interface dari halaman
enkripsi. Keterangan dari Gambar 3.13 dapat dilihat pada Tabel 3.4.
Tabel 3.4 Keterangan Gambar Rancangan Interface Halaman Enkripsi
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
ImageView untuk menampilkan citra asli.
6
Button “Pilih Foto” untuk menampilkan direktori dan memilih citra yang
akan dienkripsi.
7
TextView untuk menampilkan tulisan “File Name” dan “Size”.
Universitas Sumatera Utara
33
8
EditText untuk menampilkan nama citra dan ukuran.
9
TextView untuk menampilkan tulisan “Citra Asli”.
10
11
Button “Acak Kunci” dan “ Tampilkan Kunci” untuk mengacak kunci dan
menampilkan kunci.
TextView untuk menampilkan tulisan “Operasi XOR”.
12
TextView untuk menampilkan tulisan “Transposisi Segitiga”.
13
ImageView untuk menampilkan citra hasil enkripsi XOR.
14
ImageView untuk menampilkan citra hasil enkripsi Transposisi Segitiga.
15
Button “Enkripsi ” untuk mengenkripsi citra menggunakan Operasi XOR.
16
Button “Enkripsi ” untuk mengenkripsi citra menggunakan Teknik
Transposisi Segitiga.
Button “Reset” untuk mengatur ulang semua proses yang udah dilakukan,
maka semua tampilan akan kosong
Button “Save” untuk menyimpan citra yang telah didekripsikan dan
menampilkan direktori citra yang mau disimpan.
17
18
3.3.3 Halaman Dekripsi
Halaman dekripsi merupakan halaman yang tampil saat pengguna memilih menu
Dekripsi pada menu bar. Pada halaman ini pengguna dapat melakukan proses dekripsi
citra. Rancangan halaman dekripsi dapat dilihat pada Gambar 3.14.
Universitas Sumatera Utara
34
Home
Enkripsi
1
Dekripsi
2
5
Help
3
4
File Name
Size 7
8
Pilih Foto
6
Tampilkan Kunci
Teknik Transposisi
Operasi XOR
9
Segitiga
1
1
Dekripsi
Reset
Dekripsi
1
1
Save
1
Gambar 3.14 Rancangan Interface Halaman Dekripsi
Pada Gambar 3.14 ditunjukkan tampilan rancangan interface dari halaman
dekripsi. Keterangan dari Gambar 3.14 dapat dilihat pada Tabel 3.5.
Tabel 3.5 Keterangan Gambar Rancangan Interface Halaman Dekripsi
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
ImageView untuk menampilkan citra asli.
6
Button “Pilih Foto” untuk menampilkan direktori dan memilih citra yang
akan dienkripsi.
Button”Tampilkan kunci” untuk menampilkan kunci.
Universitas Sumatera Utara
35
7
TextView untuk menampilkan tulisan “File Name” dan “Size”.
8
EditText untuk menampilkan nama dan ukuran citra yang telah dipilih.
9
TextView untuk menampilkan tulisan “Teknik Transposisi Segitiga”dan
“Operasi XOR”.
ImageView untuk menampilkan citra hasil dekripsi
10
11
12
13
Button “Dekripsi ” untuk mengdekripsi citra menggunakan teknik
transposisi segitiga dan operasi XOR.
Button “Reset” untuk mengatur ulang semua proses yang udah dilakukan,
maka semua tampilan akan kosong
Button “Save” untuk menyimpan citra yang telah didekripsikan dan
menampilkan direktori citra yang mau disimpan.
3.3.4 Halaman Help
Halaman help merupakan halaman yang tampil saat pengguna memilih menu Help pada
menu bar. Rancangan halaman help dapat dilihat pada Gambar 3.15.
Home
Enkripsi
1
2
Dekripsi
3
Help
4
5
6
Universitas Sumatera Utara
36
Home
Enkripsi
1
Dekripsi
2
Help
3
4
5
5
7
Gambar 3.15 Rancangan Interface Halaman Help
Pada Gambar 3.15 ditunjukkan tampilan rancangan interface dari halaman help.
Keterangan dari Gambar 3.15 dapat dilihat pada Tabel 3.6.
Tabel 3.6 Keterangan Gambar Rancangan Interface Halaman Help
No
Keterangan
1
Menu “Home” untuk menampilkan halaman cover (halaman awal sistem).
2
Menu “Enkripsi” untuk menampilkan proses enkripsi.
3
Menu “Dekripsi” untuk menampilkan proses dekripsi.
4
Menu “Help” untuk menampilkan halaman petunjuk penggunaan sistem.
5
ImageView untuk menampilkan foto petunjuk penggunaan.
6
Button “Next” untuk menampilkan petunjuk penggunaan Dekripsi
7
Button “Back” untuk menampilkan petunjuk penggunaan Enkripsi
Universitas Sumatera Utara
BAB 4
IMPLEMENTASI DAN PENGUJIAN
4.1 Implementasi
Setelah sistem dianalisis dan dirancang seperti yang telah diuraikan pada bab
sebelumnya, tahap selanjutnya adalah mengimplementasikan sistem tersebut kedalam
bahasa pemrograman. Sistem ini dibangun dengan menggunakan bahasa pemrograman
Java dan IDE Eclipse. Pada sistem ini terdapat empat halaman, yaitu : halaman Home,
halaman Enkripsi, halaman Dekripsi, dan halaman Help.
4.1.1 Halaman Home
Halaman Home merupakan halaman yang pertama kali tampil pada saat sistem
dijalankan. Tampilan halaman Home dapat dilihat pada Gambar 4.1.
Gambar 4.1 Halaman Home
Universitas Sumatera Utara
38
Pada Gambar 4.1 terdapat 4 menu yang dapat memanggil halaman yang lain,
yaitu: menu Enkripsi, menu Dekripsi, dan menu Help. Pada halaman Home ini juga
terdapat informasi judul, nama pembuat sistem, serta informasi program studi pembuat
sistem.
4.1.2 Halaman Enkripsi
Halaman Enkripsi merupakan halaman yang ditampilkan jika user memilih menu
“Enkripsi” yang terdapat pada Menu Bar. Tampilan dari halaman Enkripsi ini dapat
dilihat pada Gambar 4.2.
Gambar 4.2 Halaman Enkripsi
Pada Gambar 4.2 menunjukkan halaman Enkripsi digunakan untuk melakukan
proses enkripsi citra dengan menggunakan operasi XOR dan teknik transposisi segitiga.
Dimana juga terdapat button “Pilih Foto”, “Acak Kunci”, “Tampilkan Kunci”,” Save”
dan “Reset”. Button “Save” berfungsi untuk menyimpan citra yang sudah terenkripsi.
Universitas Sumatera Utara
39
4.1.3 Halaman Dekripsi
Halaman Dekripsi merupakan halaman yang ditampilkan oleh sistem jika pengguna
memilih menu “Dekripsi” pada menu bar. Tampilan dari halaman Dekripsi ini dapat
dilihat pada Gambar 4.3.
Gambar 4.3 Halaman Dekripsi
Pada Gambar 4.3 menunjukkan halaman Dekripsi, digunakan untuk melakukan
proses dekripsi citra dengan menggunakan teknik transposisi segitiga dan operasi XOR.
Dimana juga terdapat button “Pilih Foto”, “Tampilkan Kunci”, “Save” dan “Reset”,
button “ Save” berfungsi untuk menyimpan citra yang sudah terdekripsi.
4.1.4 Halaman Help
Halaman Help merupakan halaman yang ditampilkan oleh sistem jika pengguna
memilih menu “Help” pada menu bar. Tampilan dari halaman Help ini dapat dilihat
pada Gambar 4.4.
Universitas Sumatera Utara
40
Gambar 4.4 Halaman Help
Universitas Sumatera Utara
41
Pada Gambar 4.4 menampilkan informasi mengenai langkah-langkah
penggunaan sistem ini sehingga memudahkan pengguna untuk menjalankan sistem.
Halaman help terbagi menjadi dua bagian yaitu halaman help untuk enkripsi dan
halaman help untuk dekripsi.
4.2 Pengujian Sistem
Pada tahap ini akan dilakukan pengujian apakah sistem berhasil melakukan proses
enkripsi serta dekripsi citra menggunakan operasi XOR dan teknik transposisi segitiga.
Citra yang akan dienkripsi adalah citra yang berukuran 200 x 200 piksel. Tampilan dari
citra yang akan dienkripsi dapat dilihat pada Gambar 4.5.
Gambar 4.5 Citra 200 x 200 piksel
4.2.1 Pengujian Pengacakan Kunci
Kunci Operasi XOR dihasilkan dengan menggunakan fungsi random yang terdapat pada
IDE Eclipse 4.2.2. Rentang pengacakan kunci pada sistem ini adalah 0 sampai 256.
Untuk melakukan proses pengacakan kunci, user menekan button “Acak Kunci” yang
terdapat pada halaman “Enkripsi”. Setelah itu akan muncul Toast yang menyatakan
“Kunci Berhasil Dibuat”. Hasil pengacakan kunci dapat dilihat pada Gambar 4.6.
Universitas Sumatera Utara
42
Gambar 4.6 Pengacakan Kunci Operasi XOR
Pada Gambar 4.6 menunjukkan bahwa pengacakan kunci berhasil dilakukan.
Kunci yang telah di acak akan disimpan dalam explore / internal_storage / picture,
dengan nama file NUR_0805017_2007_k.txt. Kunci yang tersimpan dapat dilihat pada
gambar 4.7.
Gambar 4.7 Tempat Menyimpan Kunci yang Diacak
Kunci dapat ditampilkan setelah semua proses enkripsi selesai, tekan button
“Save” terlebih dahulu setelah itu menekan button “Tampilkan Kunci”, maka sistem
akan memanggil format
file
kunci yang telah disimpan dan menampilkannya.
Sebagaian kunci yang akan ditampilkan dapat dilihat pada gambar 4.8.
Universitas Sumatera Utara
43
Gambar 4.8 Tampilan Sebagian dari Kunci
4.2.2 Pengujian Enkripsi Operasi XOR
Proses enkripsi dapat dilakukan jika pengguna telah melakukan pengacakan kunci.
Enkripsi menggunakan operasi XOR ini dilakukan dengan cara menekan button
“Enkripsi” yang di atas image terdapat bacaan “Operasi XOR” dan kemudian sistem
akan menampilkan hasil enkripsi citra dan hasil perhitungan waktu eksekusi proses.
Tampilan dari hasil proses enkripsi menggunakan operasi XOR dapat dilihat pada
Gambar 4.9.
Universitas Sumatera Utara
44
Gambar 4.9 Hasil Proses Enkripsi Operasi XOR
Gambar 4.9 menunjukkan hasil enkripsi operasi XOR. Piksel-piksel citra hasil
enkripsi didapat dari hasil operasi XOR antara piksel-piksel citra asli dengan kunci yang
telah diacak sebelumnya.
4.2.3 Pengujian Enkripsi Transposisi segitiga
Enkripsi tahap kedua ini dilakukan dengan cara menekan button “Enkripsi” yang di atas
image terdapat bacaan “Transposisi segitiga” dan kemudian sistem akan menampilkan
hasil enkripsi citra serta hasil perhitungan waktu eksekusi proses. Tampilan dari hasil
proses enkripsi tahap kedua ini dapat dilihat pada Gambar 4.10.
Universitas Sumatera Utara
45
Gambar 4.10 Hasil Proses Enkripsi Transposisi Segitiga
Gambar 4.10 menunjukkan hasil enkripsi citra tahap kedua. Piksel-piksel citra
hasil enkripsi ini didapat dari hasil transposisi segitiga.
4.2.4 Pengujian penyimpanan citra hasil enkripsi
Penyimpanan citra hasil enkripsi dilakukan dengan cara menekan button “save”. Setelah
itu akan muncul Toast yang menyatakan file berhasil disimpan dengan waktu proses
penyimpanan yang telah dilakukan. Tampilan dari proses penyimpanan citra hasil
enkripsi dapat dilihat pada Gambar 4.11.
Universitas Sumatera Utara
46
Gambar 4.11 Proses Penyimpanan Hasil Enkripsi Citra
citra hasil enkripsi akan disimpan dalam explore/internal_storage/picture,
dengan nama file NUR_0805017_2007.jpg tempat menyimpan citra yang terenkripsi
sama dengan tempat menyimpan kunci yang telah diacak. Tempat menyimpan citra
enkripsi dapat dilihat pada gambar 4.12.
Gambar 4.12 Tempat Menyimpan Citra Terenkripsi
Universitas Sumatera Utara
47
4.2.5 Pengujian Dekripsi Transposisi Segitiga
Dekripsi transposisi segitiga dilakukan dengan cara menekan button “Dekripsi” yang di
atas image terdapat bacaan “Transposisi segitiga” dan kemudian sistem akan
menampilkan hasil dekripsi citra serta hasil perhitungan waktu eksekusi proses.
Tampilan dari hasil proses dekripsi transposisi segitiga ini dapat dilihat pada Gambar
4.13.
Gambar 4.13 Hasil Proses Dekripsi Transposisi Segitiga
Gambar 4.13 menunjukkan hasil dekripsi transposisi segitiga. Piksel-piksel citra
hasil dekripsi ini didapat dari hasil teknik transposisi segitiga.
4.2.6 Pengujian Dekripsi Operasi XOR
Proses dekripsi ini dilakukan dengan cara menekan button “Dekripsi” yang di atas
image terdapat bacaan “Operasi XOR” dan kemudian sistem akan menampilkan citra
asli yang telah dikembalikan dan hasil perhitungan waktu eksekusi proses ini. Tampilan
dari hasil proses dekripsi ini dapat dilihat pada Gambar 4.14.
Universitas Sumatera Utara
48
Gambar 4.14 Hasil Proses Dekripsi Operasi XOR
Gambar 4.14 menunjukkan hasil pengembalian citra asli. Hasil ini didapat dari
hasil operasi XOR antara piksel-piksel hasil dekripsi transposisi segitiga dengan kunci
yang telah diacak sebelumnya.
4.2.7 Perhitungan Manual
Berdasarkan gambar 4.5 yang digunakan dalam pengujian sistem di atas, akan
dilakukan perhitungan manual dengan mengambil piksel (1,1). Nilai citra JPEG R,G,B
pixel (1,1) yaitu (35,45,63) dan kunci (K) yaitu : 00100101 00100101 00100101, maka
proses perhitungan enkripsi dan dekripsi dapat dilihat dibawah ini :
Universitas Sumatera Utara
49
(R G B)
35 45 63
Gambar 4.15 Pengambilan piksel (1,1)
1. Pertama ubah R,G,B Desimal ke Biner:
Desimal
Biner
R
G
B
35
45
63
00100011 00101101 00111111
Maka akan di dapat “00100011 00101101 00111111” sebagai Plainteks (P)
2. Lalu Plainteks (P) dienkripsi meggunakan Operasi XOR:
Plainteks (P)
Kunci (K)
Ciphertext (C1)
Desimal
00100011
00100101
00000110
6
00101101
00100101
00001000
8
00111111
00100101
00011010
26
Tabel 4.1 Proses Perhitungan Enkripsi Menggunakan XOR
3. Ubah Ciphertext (C1) ke Desimal maka diperolah angka desimal 6 8 26 lalu
Ciphertext (C1) : 6 8 26 dienkripsi lagi menggunakan teknik transposisi segitiga,
maka hasil transposisi yang didapat adalah:
6
8 26 -1
Gambar 4.16 Proses Enkripsi Transposisi segitiga
Universitas Sumatera Utara
50
Dari gambar 4.16 dapat dilihat hasil transposisi yang dilakukan dengan Ciphertext
(C1) yang diberikan. Jika karakter tidak memenuhi semua kolom pada baris terakhir
maka akan dimasukkan bilangan -1 sebagai pengisinya. Untuk membaca hasil
transposisi terlebih dahulu dibaca dari kolom paling kiri, sehingga hasil Ciphertext
(C2) yang didapat adalah “6 8 26 -1”.
4. Untuk mengembalikan Ciphertext (C1) yang telah ditransposisi, dilakukan
penyusunan kembali karakter kedalam segitiga, dengan karakter pertama menduduki
kolom paling kiri dan dibaca dari baris atas ke bawah. Sehingga hasil dari Ciphertext
(C2) “6 8 26 -1” dapat dilihat pada gambar 4.17.
6
8 26 -1
Gambar 4.17 Proses Dekripsi Transposisi segitiga
Dan hasilnya adalah 6 8 26 -1 dan setiap karakter “-1” akan dihapus dari Ciphertext
(C1) sehingga menghasilkan 6 8 26.
5. Untuk mengembalikan Plaintext maka Ciphertext (C1) ” 6 8 26” diubah ke biner
menjadi
“00000110 00001000 00011010” lalu Ciphertext (C1) didekripsi
menggunakan Operasi XOR, berikut proses perhitungannya:
Ciphertext (C1)
Kunci (K)
Plainteks (P)
Desimal
00000110
00100101
00100011
35
00001000
00100101
00101101
45
00011010
00100101
00111111
63
Tabel 4.2 Proses Perhitungan Dekripsi Menggunakan XOR
Plaintext (P) “00100011 00101101 00111111” diubah menjadi desimal “35 45 63”
maka R,G,B dari Pixel citra JPEG yang telah dienkripsi akan kembali seperti
semula. Itu berarti penggunaan Operasi XOR dan Transposisi segitiga memenuhi
parameter keutuhan data
Universitas Sumatera Utara
51
4.2.8 Pengujian Sistem Terhadap Waktu Proses
Pengujian ini menggunakan tujuh citra yang mempunyai ukuran yang berbeda, yaitu
citra 200x200 piksel, citra 300x300 piksel, citra 400x400 piksel, citra 500x500, citra
600x600, citra 700x700, dan citra 800x800 piksel. Setiap citra akan diuji terhadap
waktu proses yang digunakan. Waktu proses pada citra dapat dilihat pada Tabel 4.3.
Tabel 4.3 Perbandingan Ukuran Citra dengan Waktu Proses
Citra 200 x 200 piksel
Citra asli
Enkripsi
Operasi XOR
Enkripsi
Transposisi
Segitiga
Dekripsi
Transposisi
Segitiga
Dekripsi
Operasi XOR
Waktu Proses
0.27
0.707
0.442
0.287
Rata-Rata Waktu (sekon)
0.426
Citra 300 x 300 piksel
Waktu Proses
0.541
1.594
0.967
Rata-Rata Waktu (sekon)
0.55
0.913
Citra 400 x 400 piksel
Waktu Proses
0.916
2.86
Rata-Rata Waktu (sekon)
1.709
0.954
1.609
Citra 500 x 500 piksel
Universitas Sumatera Utara
52
Waktu Proses
1.623
4.849
2.934
Rata-Rata Waktu (sekon)
1.595
2.750
Citra 600 x 600 piksel
Waktu Proses
2.077
6.572
3.861
Rata-Rata Waktu (sekon)
2.139
3.662
Citra 700 x 700 piksel
Waktu Proses
2.825
9.148
5.588
Rata-Rata Waktu (sekon)
2.869
5.105
Citra 800 x 800 piksel
Waktu Proses
3.612
12.079
Rata-Rata Waktu (sekon)
7.703
4.268
6.915
Pada Tabel 4.3 terdapat lima buah kolom. Kolom pertama adalah citra asli
dengan berbagai macam ukuran, kolom kedua adalah hasil enkripsi citra dari operasi
XOR, kolom ketiga adalah hasil enkripsi citra dari transposisi segitiga, kolom keempat
adalah hasil dekripsi citra dari transposisi segitiga, dan kolom kelima adalah hasil
Universitas Sumatera Utara
53
dekripsi citra menggunakan operasi XOR. Dari pengujian proses enkripsi dan dekripsi
menggunakan citra dengan ukuran citra 200x200 piksel, citra 300x300 piksel, citra
400x400 piksel, citra 500x500, citra 600x600, citra 700x700, dan citra 800x800 piksel
didapatlah waktu rata-rata untuk masing-masing eksekusi yaitu 0.426 sekon, 0.913
sekon, 1.609 sekon, 2.750 sekon, 3.662 sekon, 5.105 sekon dan 6.915 sekon. Hubungan
waktu proses enkripsi terhadap ukuran dari suatu citra dapat dilihat pada Gambar 4.18.
8
7
Waktu (sekon)
6
5
4
3
2
1
0
200 x 200 300 x 300 400 x 400 500 x 500 600 x 600 700 x 700 800 x 800
Ukuran piksel
Gambar 4.18 Grafik Hubungan Ukuran Citra dengan Waktu
Pada Gambar 4.18 ditunjukkan waktu yang dibutuhkan untuk mengeksekusi
citra berukuran 200x200 piksel adalah 0.4 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 300x300 piksel adalah 0.9 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 400x400 piksel adalah 1.6 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 500x500 piksel adalah 2.7 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 600x600 piksel adalah 3.6 sekon, waktu yang dibutuhkan untuk
mengeksekusi citra 700x700 piksel adalah 5.1 sekon sedangkan waktu yang dibutuhkan
untuk mengenkripsi citra berukuran 800x800 piksel adalah 6.9 sekon. Pada Gambar
4.18 dapat dilihat bahwa hubungan antara ukuran piksel dari suatu citra berbanding
lurus linear terhadap waktu proses enkripsi. Artinya, semakin besar ukuran piksel, maka
waktu yang digunakan untuk eksekusi program juga semakin lama.
Universitas Sumatera Utara
BAB 5
KESIMPULAN DAN SARAN
5.1. Kesimpulan
Berdasarkan analisis, perancangan, dan pengujian dari penelitian pengamanan citra
menggunakan Operasi XOR dan Teknik Transposisi Segitiga, maka diperoleh beberapa
kesimpulan :
1. Proses enkripsi dan dekripsi pada pengamanan citra menggunakan operasi XOR dan
teknik transposisi sgitiga memenuhi parameter keutuhan data.
2. Citra hasil dekripsi sama persis seperti citra awal sebelum dilakukan proses enkripsi.
3. Berdasarkan perubahan hasil citra yang dienkripsi pada pengujian, penggunaan
operasi XOR dan teknik transposisi segitiga ini relatif aman dan sederhana untuk
mengamankan citra.
4. Citra yang sudah di enkripsi menggunakan teknik transposisi segitiga menjadi citra
hasil enkripsi memiliki bilangan yang lebih banyak atau panjang dibandingkan
dengan citra sebelum dilakukan proses enkripsi.
5. Berdasarkan grafik hubungan antara waktu proses enkripsi citra dengan ukuran
piksel citra tersebut menunjukkan bahwa ukuran piksel citra berbanding lurus
dengan waktu. Semakin besar ukuran piksel citra tersebut maka semakin lama waktu
proses enkripsinya.
Universitas Sumatera Utara
55
5.2. Saran
Adapun saran-saran yang dapat dipertimbangkan untuk pengembangan penelitian ini
antara lain :
1. Sistem ini hanya dapat mengamankan citra yang berformat *.JPEG, sehingga untuk
penelitian selanjutnya diharapkan dapat mengamankan citra berformat *.bmp, *.TIF,
*.PNG, dan format citra lainnya.
2. Untuk penelitian selanjutnya diharapkan dapat mengombinasikan operasi XOR
dengan berbagai macam teknik kriptografi seperti Transposisi Zigzag dan yang
lainnya.
3. Untuk penelitian selanjutnya diharapkan dapat menambahkan jenis data yang dapat
diamankan seperti audio dan video.
Universitas Sumatera Utara