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