Perangkat yang Digunakan Penyelesaian Enkripsi dan Dekripsi Menggunakan Metode Playfai
65
2. Proses Pembentukan Kunci Playfair
Class projectcryptoutilPlayfair.java
Baris 16 : Membuat konstruktor untuk set Kunci Playfair Baris 21 : Mengganti karakter J dengan I pada pengisian huruf
pada kunci
66
Baris 25-27 : Pastikan input kotak pada bujur sangkar kunci playfair berupa huruf yang dimasukkan oleh pengguna. misalkan
kunci rahasia. R
A H
S I
Baris 30-35 : Jika kunci pengguna 25 huruf alphabet. Misalkan kunci
tadi “RAHASIA” dan ketika dimasukkan pada table dengan menghilangkan huruf kembar
menjadi “RAHSI”, diketahui jumlah “RAHSI” adalah huruf, sedangkan kuota table masuh 20, maka
isikan sisa hurufnya dengan asumsi huruf J diganti huruf I pada baris program 21.
R A
H S
I B
C D
E F
G K
L M
N O
P Q
T U
V W
X Y
Z
67
3. Proses Enkripsi dan Dekripsi
Class projectcryptoutilPlayfair.java
Baris 102 : method untuk mendekripsi dengan input parameter message plaintext
Baris 107 : method untuk mendekripsi dengan input parameter message ciphertext
Baris103 : mengembalikan nilai dengan method _encrypt yang memiliki parameter replaceText yang digunakan untuk mengganti
dengan karakter khusus misalkan “X” pada pasangan huruf ganjil.
68
Class projectcryptoutilPlayfair.java
Pada method _encrypt pada baris 103 : terdapat method swap pada program berikut ini :
Class projectcryptoutilPlayfair.java
69
Baris program 70-73 : membagi dan memastikan pembagian blok kunci bujur sangkar adalah 5 cell.
Jika kolom x pasangan huruf x1 bersebrangan dengan kolom x2 pasanganhurufx2 , maka ambil titik temu dari x1dan x2,
sebaliknya, jika kolom y pasangan huruf y1 bersebrangan dengan kolom y2 pasangan huruf y2 , maka ambiltiti ketemu
dari y1 dan y2. Jika kolom x pasangan huruf x1 bersebrangan dengan kolom x2
pasangan huruf x2 , maka ambil titiktemu dari x1 dan x2, sebaliknya, jika kolom y pasangan huruf y1 tidak bersebrangan
dengan kolom y2 pasangan huruf y2 , maka ambil titik temu paling terdekat.
R A
H S
I B
C D
E F
G K
L M
N O
P Q
T U
V W
X Y
Z
Misalkan pasangan huruf CT, maka titik temu untuk CT adalah “P”, sedangkan TC adalah titik temunya adalah “E”.
70
Misalkan pasangan huruf CP, maka titik temu untuk CP untuk P adalah “W”, sedangkan CP untuk C adalah titik temunya adalah
“K”. Misalkan pasangan huruf CE, maka titik temu untuk CE untuk E
adalah “F”, sedangkan CE untuk C adalah titik temunya adalah “D”.
Class projectcryptoutilEnkripsiUtil.java
Baris 7 : membuat sebuah method untuk enkripsi playfair dengan parameter text sebagai plaintext dan key adalah kunci playfair.
Baris 8: Masukkan kedalam class pada konstruktor Playfair. Baris 17: Kemudian ambil setiap data input plaintext untuk
dienkripsi menggunakan method p.encrypt. Sisipkan jika ada
71
angka pada ciphertext pada bariske 16, dengan menganti semua huruf kecuali ada angkadigit.
Baris19 :Jika terdapat huruf pada ciphertext, maka ambil huruf dan angka, jika tidak, maka tampilkan ciphertext berupa huruf
saja.
Class projectcryptoutilDekripsiUtil.java
Baris 7 : Membuatsebuah method untuk dekripsi playfair dengan parameter text sebagai plaintext dan key adalah kunci playfair.
Baris 8: Masukkan kedalam class pada konstruktor Playfair Baris 15: Kemudian ambil setiap data input plaintext untuk
dienkripsi menggunakan method p.decrypt. Sisipkan jika ada
72
angka pada plaintext pada bariske 16, dengan menganti semua huruf kecuali ada angkadigit.
Baris19 : Jika terdapat huruf pada plaintext, maka ambil huruf dan angka, jika tidak, maka tampilkan plaintext berupa huruf saja.
4. Proses Kirim SMS
Class projectcryptoKirimSMSActivity.java
Baris 225 : Ambil kunci user dari form input EditText etKey. Generate kunci nomer dengan method getNumber, dapat dibuka
pada class projectkeykeySecure.java
73
Class projectkeyKeySecure.java
Pada baris 28 akan memetakan setiap digit nomer phone ke angka menggunakan method ConvertNumber.
74
Class projectcryptoKirimSMSActivity.java
Baris 231 : Enkripsi menggunakan kunci nomer ponsel, dengan memasukkan 2 parameter yaitu plaintext EditText Pesan dan
kunci nomer keyNumber Baris 234 : Enkripsi menggunaka kunci input user dengan
parameter masukkan 2 yaitu hasil enkripsi dari enkripsi number enkripsi number dengan kunci user plaifairKey.
Class projectcryptoKirimSMSActivity.java
75
Baris 242-247 : Merupakan program untuk memasukkan kedalam database, yang berisi No,HP, Pesan, pesan enkripsi, pesan asli,
dan tanggal. Baris 249 : Mengirim pesan, jika pesan sudah dikirim, maka
kembali ke menu utama
5. Proses Terima SMS
Class projectcryptoSMSReceiver.java
Merespon sinyal pesan masuk yang berupa message body, nomer ponsel, dan waktu pengiriman.
76
Class projectcryptoListSMSinbox,java
Kemudian masukkan kedalam listinbox, dengan menerima nilai message body, nomer ponsel, dan waktu pengiriman secara
dinamis menggunakan BroadcastReceiver pada class
ListSMSinbox.java
Class projectcryptoListeSMSinbox.java
77
Kemudian smsInbox yang ditampilan pada listInbox, ketika diklik
akan mengirimkan nilai ke dalam class BukaSMSActivity.java
berupa nomer, waktu, id dan pesan menggunakan object Intent