Selanjutnya masalah diuraikan kedalam bentuk diagram tulang ikan ishikawa Diagram dapat dilihat pada gambar 3.1
IMPLEMENTASI KEAMANAN TEKS PADA CITRA BITMAP
DENGAN KOMBINASI ALGORITMA KNAPSACK DAN
ALGORITMA LEAST SIGNIFICANT BIT LSB TERHADAP MODIFIKASI
NILAI BRIGHTNESS
Data Kebijakan
User Proses
Mendapati manipulasi data
Tidak Efisien melakukan proses
secara terpisah Pencurian data
tidak terlalu mendapat
prioritas Data tidak aman
Citra yang digunakan tidak sesuai
Gambar 3.1 Diagram Ishikawa untuk Analisis Permasalan Sistem
3.2 Analisis Persyaratan
Analisis ini ditujukan untuk menganalisis persyaratan yang akan dibutuhkan oleh sistem ini agar dapat berjalan sesuai dengan apa yang rencanakan. Analisis
persyaratan terbagi menjadi dua yaitu persyaratan fungsional functional requirement dan persyaratan nonfungsional nonfunctional requirement. Dimana
persyaratan fungsional adalah aktifitas dan layanan yang harus diberikan atau disediakan oleh sebuah sistem, dan persyaratan nonfungsional berkaitan denga fitur,
karakterisitik, dan batasan lainnya yang menetukan apakah sistem memuaskan atau tidak.
3.2.1 Persyaratan Fungsional
Persyaratan fungsional yang harus disediakan oleh sistem adalah sebagai berikut:
Universitas Sumatera Utara
1. File teks sebagai pesan rahasia yang akan dienkripsi memiliki format .txt dan yang menjadi citra cover berformat .BMP.
2. Modifikasi nilai brightness dilakukan setelah pesan teks yang terenkripsi disisipkan kedalam citra cover.
3. Hasil enkripsi dan dekripsi disimpan dalam format .txt. 4. Hasil penyisipan dan ekstraksi disimpan dalam format .BMP.
3.2.2 Persyaratan Non-Fungsional
Persyaratan non-fungsional terhadap sistem ini adalah: 1. Performa:
Sistem harus dapat melakukan proses kriptografi menggunakan algoritma knapsack dan steganografi menggunakan algoritma LSB serta modifikasi nilai
brightness. 2. Mudah Digunakan:
Sistem harus dibuat sesederhana mungkin agar tidak menyulitkan penggunanya.
3. Hemat Biaya: Sistem tidak membutuhkan perangkat keras lainnya sebagai bantuan
4. Dokumentasi: Sistem dapat menyimpan file teks yang terenkripsi, terdekripsi dan stego
image. 5. Manajemen Kualitas:
Sistem dapat menghasilkan tampilan yang baik dan proses yang relative cepat.
3.3 Pemodelan Sistem
Pemodelan sistem yang dibuat pada dasarnya mengikuti metode algoritma knapsack dan LSB terhadap modifikasi nilai brightness yang disajikan oleh penulis. Program
yang dibuat berdasarkan langkah demi langkah untuk menyelesaikan teknik kriptografi dan steganografi.
Universitas Sumatera Utara
3.3.1 Use case Diagram
Use case diagram menggambarkan semua kegiatan di dalam sebuah sistem yang berjalan, selain itu Use case diagram dibuat berdasarkan keperluan aktor dan juga
aktor yang melakukan aktifitas di dalam sistem. Berikut adalah gambar dari rancangan Use case diagram seperti pada gambar 3.2
Enkripsi Plainteks Knapsack
Penyisipan LSB
Ekstraksi LSB
Dekripsi Knapsack
Sender Receiver
Sistem Bangkit Kunci
Gambar 3.2 Use case diagram
Use case diagram yang ditunjukkan pada Gambar 3.1 tedapat dua aktor yaitu sender dan receiver. User1 sebagai Sender dan User2 sebagai receiver. Sender sebagai
pengirim pesan yang telah disisipkan pada gambar dan Receiver sebagai orang yang menerima pesan dan mengekstraksinya. User1 memiliki peranan dalam melakukan
membangkitkan kunci, penyembunyian, penyisipan, dan penguraian pesan stego image. User2 hanya memiliki dua peranan yaitu melakukan penguraian untuk
mendapatkan pesan rahasia yang ada sudah disisipkan dan kemudian mendekripsikannya. Untuk lebih jelas kegiatan sistem dapat dilihat pada keterangan
activity diagram berikut ini.
Universitas Sumatera Utara
3.3.1.1 Activity Diagram untuk Use case Bangkit kunci
Activity diagram untuk Use case Bangkit kunci dapat dilihat seperti pada Gambar 3.3
User memilih menu Enkripsi
User mengeksekusi tombol bangkit.
User menginput nilai n dan mengeksekusi tombol Kunci Publik
User menginput parameter kunci dan mengeksekusi tombol kunci rahasia.
Sistem menampilkan form Enkripsi.
Sistem melakukan proses kunci rahasia dan menampilkan kunci rahasia.
Sistem menampilkan nilai m secara acak dan nilai n.
System menampilkan kunci publik. User
Sistem
Gambar 3.3 activity diagram Bangkit kunci
Berikut spesifikasi Use case bangkit kunci seperti pada tabel 3.1
Tabel 3.1 Spesifikasi Use case bangkit kunci
Name Bangkit kunci
Actors User1
Description Use case ini mendeksripsikan proses Bangkit kunci
Preconditions User menggunakan aplikasi kriptografi
Post Conditions User dapat melihat hasil kunci rahasia dan kunci publik
Kegiatan User Respon sistem
Success Scenario
1. User memilih menu Enkripsi. 2. User menginput parameter
kunci dan mengeksekusi tombol kunci rahasia.
3. User mengeksekusi tombol bangkit.
1. Sistem menampilkan form Enkripsi.
2. Sistem melakukan proses kunci rahasia dan menapilkan kunci
rahasia. 3. Sistem menampilkan nilai m
Universitas Sumatera Utara
3.3.1.2 Activity Diagram untuk Use case Enkripsi
Activity diagram untuk Use case Enkripsi dapat dilihat seperti pada Gambar 3.4
User memilih menu Enkripsi
User mengeksekusi tombol Enkripsi.
User dapat melihat cipherteks User memilih plainteks dengan mengeksekusi
tombol Pilih Teks Sistem menampilkan form Enkripsi.
Sistem menampilkan plainteks pada box teks.
Sistem melakukan proses Enkripsi dan menampilkan cipherteks
User Sistem
Gambar 3.4 activity diagram Enkripsi
Berikut spesifikasi Use case Enkripsi seperti pada tabel 3.2 Tabel 3.2 Spesifikasi
Use case Enkripsi
4. User menginput nilai n dan mengeksekusi tombol Kunci
publik. secara acak dan nilai n.
4. System menampilkan kunci publik.
Name Enkripsi
Actors User1
Description Use case ini mendeksripsikan proses Enkripsi
Universitas Sumatera Utara
3.3.1.3 Activity Diagram untuk Use case Penyisipan
Activity diagram untuk Use case Penyisipan dapat dilihat seperti pada Gambar 3.5
User memilih menu Penyisipan.
User dapat melihat Citra stego
User memodifikasi nilai brightness User memilih Citra cover, memilih file embed dan
mengeksekusi tombol Sisip Sistem menampilkan form Penyisipan.
Sistem melakukan proses penyisipan dan menampilkan hasil Penyisipan Citra stego.
Sistem menampilkan hasil citra stego yang termodifikasi
User Sistem
Gambar 3.5 activity diagram Penyisipan
Preconditions User menggunakan aplikasi Kriptografi
Post Conditions User dapat melihat hasil Enkripsi
Kegiatan User Respon sistem
Success Scenario
1. User memilih menu Enkripsi. 2. User memilih plainteks dengan
mengeksekusi tombol Pilih Teks
3. User mengeksekusi tombol Enkripsi
4. User mengeksekusi tombol Enkripsi.
5. User dapat melihat cipherteks. 1. Sistem menampilkan form
Enkripsi 2. Sistem menampilkan plainteks
pada box teks. 3. Menampilkan Kunci Publik
4. Sistem melakukan proses Enkripsi dan menampilkan
cipherteks
Universitas Sumatera Utara
Berikut spesifikasi Use case penyisipan seperti pada tabel 3.3
Tabel 3.3 Spesifikasi Use case Penyisipan
3.3.1.4 Activity Diagram untuk Use case Ekstraksi
Activity diagram untuk Use case Ekstraksi dapat dilihat seperti pada Gambar 3.6
Name Penyisipan
Actors User1
Description Use case ini mendeksripsikan proses Penyisipan
Preconditions User menggunakan aplikasi steganografi
Post Conditions
User dapat melihat hasil Penyisipan Kegiatan User
Respon sistem
Success Scenario
1. User memilih menu Penyisipan. 2. User memilih Citra cover,
memilih file embed dan mengeksekusi tombol sisip.
3. User dapat melihat Citra stego. 4. User memodifikasi nilai
brightness. 1. Sistem menampilkan form
Penyisipan. 2. Sistem melakukan proses
penyisipan dan menampilkan hasil penyisipan Citra Stego.
3. Sistem menampilkan hasil citra stego yang termodifikasi
Universitas Sumatera Utara
User memilih menu Ekstraksi
User dapat melihat citra embed dan cipherteks User memilih citra stego, memasukkan nilai
brightness, dan mengeksekusi tombol Ekstraksi. Sistem menampilkan form Ekstraksi.
Sistem melakukan proses pengembalian nilai brightness, proses ekstraksi dan menampilkan
hasil ekstraksi Citra embed dan cipherteks User
Sistem
Gambar 3.6 activity diagram Ekstraksi
Berikut spesifikasi Use case Ekstraksi dapat dilihat pada tabel 3.4
Tabel 3.4 Spesifikasi Use case Ekstraksi
Name Ekstraksi
Actors User2
Description Use case ini mendeksripsikan proses mendeteksi file embed dari dalam
citra stego
Preconditions User menggunakan aplikasi steganografi
Post Conditions
User dapat melihat hasil Ekstraksi Kegiatan User
Respon sistem
Success Scenario
1. User memilih menu Ekstraksi. 2. User memilih citra stego,
memasukkan nilai brightness, dan mengeksekusi tombol
Ekstraksi. 3. User dapat melihat citra embed
dan cipherteks . 1. Sistem menampilkan form
Ekstraksi. 2. Sistem melakukan proses
pengembalian nilai brightness, proses ekstraksi dan
menampilkan hasil ekstraksi Citra embed dan cipherteks.
Universitas Sumatera Utara
3.3.1.5 Activity Diagram untuk Use case Dekripsi
Activity diagram untuk Use case Dekripsi dapat dilihat seperti pada Gambar 3.7
User memilih menu Ekstraksi
User dapat melihat hasil dekripsi plainteks. User mengeksekusi tombol Dekripsi.
Sistem menampilkan form Ekstraksi.
Sistem melakukan proses dekripsi dan menampilkan hasil dekripsi.
User Sistem
Gambar 3.7 activity diagram dekripsi
Berikut spesifikasi Use case dekripsi dapat dilihat pada Tabel 3.5
Tabel 3.5 Spesifikasi Use case Dekripsi
Name Dekripsi
Actors User2
Description Use case ini melakukan proses dekripsi
Preconditions User menggunakan aplikasi kriptografi
Post Conditions User dapat melihat hasil dekripsi
Kegiatan User Respon sistem
Success Scenario
1. User memilih menu Ekstraksi 2. User mengeksekusi tombol
Dekripsi. 3. User dapat melihat hasil
dekripsi plainteks. 1. Sistem menampilkan form
Ekstraksi. 2. Sistem melakukan proses
dekripsi dan menampilkan hasil dekripsi.
Universitas Sumatera Utara
3.3.2 Sequence Diagram
Proses enkripsi plainteks menggunakan algoritma Knapsack yang dilakukan oleh sistem membangkitkan kunci terlebih dahulu kemudian dapat mengenkripsi plainteks.
Kemudian sistem akan mengecek kebutuhan data dan proses yang akan dilakukan selanjutnya. Sequence Diagram untuk proses Enkripsi dapat dilihat pada gambar 3.8
User Sistem
Input Browse Plainteks
Hitung panjang karakter
Input bangkitkan kunci tampilkan kunci
enkripsi Cipherteks
Gambar 3.8 Sequence Diagram Enkripsi
S etelah proses enkripsi menghasilkan cipherteks maka langkash selanjutnya
adalah penyisipan cipherteks kedalam citra bmp. Sequence diagram untuk proses selanjutnya dapat dilihat pada gambar 3.9
Universitas Sumatera Utara
User Sistem
Sisip
Modifikasi nilai Brightness Input Citra dan Cipherteks
Citra Stego hasil Penyisipan
Gambar 3.9 Sequence Diagram Penyisipan
Untuk mengembalikan plainteks yang telah menjadi cipherteks dan yang telah disisipkan maka perlu dilakukan proses ektraksi dan dekripsi.
Untuk membangkitkan kunci yang digunakan pada algoritma Knapsack diperlukan parameter yang dimasukkan oleh user. Kemudian sistem akan melakukan
pembangkitan kunci berdasarkan parameter tersebut. Sequence diagram untuk proses pembangkitan kunci dapat dilihat pada gambar 3.10.
Universitas Sumatera Utara
User Sistem
Masukkan parameter kunci
Bangkitkan kunci
Kunci
Gambar 3.10 Sequence Diagram Bangkit Kunci
3.3.3 Flowchart sistem
Flowchart proses Bangkit kunci dengan metode Algoritma Knapsack dapat dilihat seperti pada Gambar 3.11
Universitas Sumatera Utara
start Memasukkan
parameter Kunci rahasia
Barisan kunci rahasia
Bangkit kunci Tampil nilai m
dan n
Masukkan nilai n
Proses kunci publik
Barisan kunci publik
end
Gambar 3.11 flowchart bangkit kunci
Flowchart proses sistem Enkripsi dengan metode Algoritma Knapsack dapat dilihat seperti pada Gambar 3.12
Universitas Sumatera Utara
start
Masukkan Plainteks
Load Kunci Publik
Enkripsi
Ciperteks
end
Gambar 3.12 Flowchart sistem Enkripsi
Flowchart proses Enkripsi dengan metode Algoritma Knapsack dapat dilihat seperti pada Gambar 3.13
Start Masukkan Plainteks
Plainteks dirubah bentuk biner
Plainteks dipecah menjadi blok bit yang panjangnya sama dengan kunci
publik Setiap bit dikalikan dengan elemen
didalam kunci publik Mendapat hasil
perkalian menjadi cipherteks
End
Gambar 3.13 Flowchart Enkripsi
Universitas Sumatera Utara
Flowchart proses penyisipan embed dengan metode LSB terhadap memodifikasi nilai brightness seperti pada Gambar 3.14
start Input pesan
terenkripsi Input citra
cover Penyisipan
Citra stego Modifikasi nilai
brightness Citra stego
termodifikasi end
Gambar 3.14 Flowchart Penyisipan
Flowchart proses ekstraksi embed dengan metode LSB terhadap modifikasi nilai brightness dapat dilihat seperti pada Gambar 3.15
Universitas Sumatera Utara
start
Input citra stego termodifikasi
Mengembalikan nilai brightness
Proses ekstraksi Menampilkan
embed cipherteks
end
Gambar 3.15 Flowchart Ekstraksi
Flowchart proses sistem dekripsi dengan metode Algoritma Knapsack dapat dilihat seperti pada Gambar 3.16
start
Masukkan cipherteks
Dekripsi
Plainteks
end
Gambar 3.16 Flowchart sistem Dekripsi
Universitas Sumatera Utara
Flowchart proses dekripsi dengan metode Algoritma Knapsack dapat dilihat seperti pada Gambar 3.17
Start Masukkan Cipherteks
Setiap karakter dari cipherteks dikalikan dengan n
–1 dan mod m
End Hasil perkalian harus berkoresponden
dengan kunci rahasia
Mendapat hasil plaintes
Gambar 3.17 Flowchart Dekripsi
3.4 Perancangan antar muka