Oleh :
Kelompok 4
Frenza Fairuz F (140210101012)
Yulyaningsih (140210101033)
Petrina Talita Putri (140210101048)
SOFI (140210101065)
Fathulloh Faruq (140210101058)
DosenPembimbing:
Berdasarkan definisi dari Hill Cipher, diketahui bahwa kunci K berupa matriks
berukuran m×m atau dapat ditulis sebagai:
k 1,1 k 1,2 ⋯ k 1, m
k
K m×m= 2,1
⋮
( k 2,2
⋮
k 1 , m k 2 ,m
⋯ k 2, m
⋱ ⋮
⋯ k m,m
)
Matriks K yang menjadi kunci harus merupakan matriks yang invertible pada
Ζ 26 , yaitu
I m adalah matriks identitas berukuran m×m . Kunci harus memiliki invers karena
−1
matriks K adalah kunci yang digunakan untuk melakukan dekripsi.
1
Invers dari suatu matriks kunci K dapat diperoleh menggunakan rumus sebagai
berikut:
−1 −1
K =(det K ) ⋅Adj (K ) ,
Rumus ini efisien ketika digunakan ketika ukuran matriks ( m ) tidak terlalu besar (
m=2, 3 ). Untuk matriks dengan ukuran besar, invers matriks dapat dicari dengan
memanfaat operasi baris elementer pada matriks K yakni:
Diketahui
K= (113 87 ) , dimana seluruh entri-entrinya pada
Ζ 26 . Tentukan K−1 !
Pembahasan:
→
→
8 1 11 7 −8
( | ) ( | )
'
1
' 1 0 b= b2
11 8 1 0 b = b1 11 11 2
53 1 0 53 53
( | )
3 70 1 '
1
11
b2=b1−3 b'1 0
53 −3 8
0 b'1 =b1− b'2
0 1 −3 11
11 11 11 53 53
2
3
Sehingga,
7 8
( )
−
53 53
K−1 =
3 11
−
53 53
1 7 −8
=
53 −3 11 ( )
=(53 )−1 7 18 ( )
23 11
=(1 )−1 7 18
23 11 ( )
7 18
=1 (
23 11 )
= 7 18
( )
23 11
Jadi,
K−1 = (237 1811 ) .
jika jumlah kolom pada matriks pertama ( A p×q ) sama dengan jumlah baris pada matriks
kedua (B q×r ) . Sebagai contoh, matriks berukuran 1×m dapat dikalikan dengan matriks
m×m 1×m .
dan akan menghasilkan matriks berukuran
Jika diketahui kunci yang merupakan matriks berukuran m×m , maka plaintext
harus diubah menjadi matriks-matriks berukuran 1×m dan setiap huruf pada plainteks
dikonversi menjadi bilangan mod 26 sebelum melakukan proses enkripsi. Jika plaintext
terdiri atas jumlah huruf berkelipatan m, maka dengan mudah kita dapat melanjutkan proses
enkripsi. Namun, jika plaintext tidak terdiri atas jumlah huruf berkelipatan m atau karakter
terakhir tidak memiliki pasangan, maka harus ditambahkan sebuah pasangan karakter yg
sama dengan karakter terakhir. Setelah itu dikonversi huruf pada plainteks menjadi bilangan
mod 26. Berikut adalah contoh enkripsi pada Hill Cipher:
4
10 5 12
10 5 12
(
K= 3 14 21
8 9 11 )
10 5 12
( )
( 19 14 15 ) 3 14 21 =( 352 426 687 )
8 9 11
c. Lakukan operasi Mod 26 kepada setiap matriks angka tersebut
( 352 426 687 ) mod 26 = ( 14 10 11 )
d. Ubah setiap matriks angka menjadi huruf
( 14 10 11 )=O K L
e. Sehingga ciphertextnya adalah O K L
K=¿ ( 11 8¿ ) ¿ ¿¿
2. Misal plaintext july, dan kunci ¿ , maka maka tentukan ciphertext yang
dihasilkan!
Pembahasan:
a. Bagi plaintext menjadi matriks 1 x 2 dan konversi menjadi angka
ju berkorespondensi dengan (9 20)
ly berkorespondensi dengan (11 24)
b. Kalikan setiap angka dengan matriks kunci
K=¿ ( 11 8¿ ) ¿ ¿¿
¿
( 9 20 ) ¿ ( 11 8 ¿ ) ¿ ¿
¿
dan
5
( 11 24 ) ¿ ( 11 8 ¿ ) ¿ ¿
¿
c. Lakukan operasi Mod 26 kepada setiap matriks angka tersebut
( 159 212 ) mod 26 = ( 3 4 )
( 193 256 ) mod 26 = ( 11 22 )
d. Ubah setiap matriks angka menjadi huruf
(3 4 )=DE
(11 22 )=LF
e. Sehingga ciphertextnya adalah DELF
K=¿ ( 11 8¿ ) ¿ ¿¿
3. Misal plaintext end, dan kunci ¿ , maka maka tentukan ciphertext yang
dihasilkan!
Pembahasan:
a. Bagi plaintext end menjadi matriks 1 x 2 dan konversi menjadi angka
Karena karakter terakhir tidak memiliki pasangan, maka diberi pasangan karakter
yang sama yaitu d. Maka plaintext menjadi endd.
en berkorespondensi dengan (4 13)
dd berkorespondensi dengan (3 3)
b. Kalikan setiap angka dengan matriks kunci
K=¿ ( 11 8¿ ) ¿ ¿¿
¿
( 4 13 ) ¿ ( 11 8 ¿ ) ¿ ¿ (3 3) ¿ ( 11 8 ¿ ) ¿ ¿
¿ dan ¿
c. Lakukan operasi Mod 26 kepada setiap matriks angka tersebut
( 83 123 ) mod26 = (5 19 )
( 42 45 ) mod 26 = ( 16 19 )
d. Ubah setiap matriks angka menjadi huruf
(5 19 )= FT
(16 19 )=QT
e. Sehingga ciphertextnya adalah FTQT
6
Teknik Dekripsi pada Hill Cipher
Proses dekripsi pada dasarnya sama dengan proses enkripsinya. Namun matriks
kuncinya harus dibalik (invers) terlebih dahulu. Secara matematis, proses dekripsi pada Hill
Cipher dapat diturunkan dari persamaan berikut:
y=x⋅K
y⋅K −1 =x⋅K⋅K −1
y⋅K −1 =x⋅I
y⋅K −1 =x
Jadi, persamaan proses dekripsi:
−1
y⋅K =x
x = plaintext.
−1
K = invers matriks kunci.
y = ciphertext.
K= 11 8 ( )
1. Dekripsikan ciphertext DELW jika diketahui kunci 3 7 !
Pembahasan:
Proses dekripsi diawali dengan menghitung invers dari matriks K. Invers matriks dapat
dicari menggunakan Operasi Baris Elementer (OBE) ataupun menggunakan prinsip
determinan.
−1
K−1 =( det K ) ⋅Adj ( K )
1
= ⋅ 7 −8
( )
1 −3 11
= 7 −8 mod 26
( )
−3 11
7 18
=( 23 11 )
−1
Matriks K akan menjadi matriks kunci pada proses dekripsi, maka:
a. Bagi ciphertext menjadi matriks 1×2 dan konversi menjadi angka
( D E )= ( 3 4 )
( L W )=( 11 22 )
7
K−1 = 7 18 ( )
b. Kalikan setiap angka dengan matriks kunci 23 11
( 3 4 )⋅ 7 18 =( 113 98 )
( )
23 11
( 11 22 )⋅ 7 18 = (583 440 )
( )
23 11
c. Lakukan operasi mod 26 kepada setiap matriks angka tersebut agar dapat
dikonversi
( 113 98 ) mod 26=( 9 20 )
( 583 440 ) mod 26=( 11 24 )
d. Ubah setiap matriks angka menjadi huruf dengan aturan konversi
( 9 20 ) = ju
( 11 24 ) =ly
Didapatkan pesan DELW yang telah didekripsi menjadi july dan dapat dengan
mudah dimengerti bahwa pesan tersebut adalah july.
10 5 12
8
Adj ( K )=( Kof ( K ))T
14 21 3 21 3 14 T
| | −| | | |
( )
9 11 8 11 8 9
= −|5 12| |10 12 | −|10 5|
9 11 8 11 8 9
5 12 10 12 10 5
| | −| | | |
14 21 3 21 3 14
T
−35 135 −85
(
= 53 14 −50
−63 −174 125
T
)
17 5 19
(
= 1 14 2
15 8 21 )
17 1 15
(
= 5 14 8
19 2 21
)
Sehingga,
9
Sehingga,
35 −53 63
−1 −1
K =(695) ⋅ −135
85 ( −14 174
50 −125 )
9 25 11
−1
(
=(19) ⋅ 21 −12
7 24 )
18
5
9 25 11
(
=11⋅ 21 12 18
7 24 5 )
99 275 121
(
= 231 132 198
77 264 55
)
21 15 17
(
= 23 2 16
25 4 3 )
21 15 17
( O K L ) =( 14 10 11 )
10
21 15 17
Didapatkan pesan OKL yang telah didekripsi menjadi top dan dapat dengan mudah
dimengerti bahwa pesan tersebut adalah top.
K=¿ ( 11 8¿ ) ¿ ¿¿
3. Dekripsikan ciphertext FTQT jika diketahui kunci ¿ !
Pembahasan:
Proses dekripsi diawali dengan menghitung invers dari matriks K. Invers matriks dapat
dicari menggunakan Operasi Baris Elementer (OBE) ataupun menggunakan prinsip
determinan.
K−1 = 7 18 ( )
b. Kalikan setiap angka dengan matriks kunci 23 11
11
( 5 19 )⋅ 7
( 18 = ( 472 299 )
)
23 11
( 16 19 )⋅ 7( 18 (
)
= 549 497 )
23 11
c. Lakukan operasi mod 26 kepada setiap matriks angka tersebut agar dapat
dikonversi
( 472 299 ) mod 26=( 4 13 )
( 549 497 ) mod 26= (3 3 )
d. Ubah setiap matriks angka menjadi huruf dengan aturan konversi
( 4 13 )=en
( 3 3 )=dd
Didapatkan pesan FTQT yang telah didekripsi menjadi endd dan dapat dengan
mudah dimengerti bahwa pesan (dalam bahasa inggris) yang dimaksud sebenarnya adalah
end.
P = OF THE
C= FUPCMTGZKYUKBQFJHUKTZKKIXTTA
12
Dari informasi yang dimiliki, kita tahu bahwa “OF THE” muncul pada pesan
yang memiliki ciphertext C, namun tidak tahu “OF THE” muncul pada posisi yang
mana. Namun pasti ada keadaan dimana “OF THE” akan menempati posisi yang benar.
FU PC MT GZ KY UK BQ FJ HU KT ZK KI XT TA
OF TH E. .. .. .. .. .. .. .. .. .. .. ..
.O FT HE .. .. .. .. .. .. .. .. .. .. ..
.. OF TH E. .. .. .. .. .. .. .. .. .. ..
.. .O FT HE .. .. .. .. .. .. .. .. .. ..
.. .. OF TH E. .. .. .. .. .. .. .. .. ..
.. .. .O FT HE .. .. .. .. .. .. .. .. ..
−1
P=K . C
( F ¿) ¿ ¿¿
¿ ¿
¿
Gabungkan kedua matriks di atas menjadi sebuah matriks 2×2 .
7 12 7 12 7 −12
(5 ( ¿ )=K−1.(15 −1 (5 (15 −1 −1 (5 (19
)4 (¿)19)¿ K =¿ (¿)4)¿ (¿)19) ¿K =¿ ( ¿)4)¿ (¿ )15 )¿
(19 ¿ (2 (19 (2 (19 (−2
¿ ¿ ¿ ¿ ¿ ¿
K−1 = 81 ( 45
)
353 −168
K−1 = 3
19 mod 26
15 ( 14 )
13
K−1 = 3 19
( )
Maka didapatkan matriks kunci dekripsi 15 14 . Tapi jika kita
mendekripsinya maka akan didapatkan pesan berupa: ”frfthezyssqyvfetlvbafvaconfz”.
Kalimat tersebut tidak bermakna, ini menandakan bahwa asumsi kita yang menganggap
benar pada baris kedua kurang tepat. Untuk mendapatkan kalimat yang bermakna atau
plaintext yang benar, kita perlu menggeser dan mencocokkan kata “OF THE” dengan
ciphertext yang didapat sampai membentuk kalmat yang bermakna.
Pada kasus ini penempatan kata “OF THE” yang tepat terdapat pada baris ke 18
dan didapatkan KT → FT dan ZK → HE. Dengan mengulang prosedur untuk
−1
memperoleh matriks K , didapatkan:
Andaikan plaintext “Friday” dienkripsi menggunakan Hill Cipher dengan m=2 dan
menghasilkan ciphertext PQCFKU.
15 16 = 5 17 ⋅K
2 5( 8 3 )( )
5 17 −1⋅ 15 16 =K
( 8 3 ) (
2 5 )
Dengan menggunakan determinan dan matriks adjoin atau menggunakan OBE maka
−1
5 17 =9 1
diperoleh
( ) ( )
8 3 2 15 , sehingga didapatkan:
K= 9 1 . 15 16 = 7 19
( )( )( )
2 15 2 5 8 3
14
Namun bagaimana jika tidak diketahui nilai m ? Asumsikan bahwa m
tidak begitu besar, dapat dicoba m = 2, 3, … sampai kunci ditemukan. Jika perkiraan
nilai m tidak benar, maka matriks m×m dapat ditemukan menggunakan algoritma di
atas tidak akan setuju lagi dengan pasangan plaintext-ciphertext. Cara ini dapat
menentukan nilai m jika tidak diketahui sebelumnya.
Latihan Soal
18 21
1. Enkripsikan hillcipher jika diketahui kunci
K= ( 11 13 ) !
2. Dekripsikan RMQEGFAAPJAEIMKRIEEGF jika diketahui kunci
4 8 17
(
K= 24 23 4
23 20 7 ) !
3 24 5
−1
( )
d K ( y)= yK = y⋅ 2 1 2
3 0 4
,
diperoleh hasil dekripsi dari RMQEGFAAPJAEIMKRIEEGF adalah
ternyatainijawabannya.
15
DAFTAR PUSTAKA
Stinson, Douglas R. 2006. Cryptography Theory and Practice Third Edition. Canada:
Chapman & Hall.
16