Matematika SMA/MA/SMK/MAK
Aplikasi Matriks pada Pengiriman Sandi
Kriptografi dengan Matriks (Hill Cipher)
1. Pendahuluan: Matriks dan Pengiriman Sandi
Dalam dunia komunikasi, keamanan informasi sangat penting. Salah satu cara mengamankan pesan adalah dengan enkripsi (mengubah pesan asli menjadi sandi) dan dekripsi (mengembalikan sandi menjadi pesan asli). Matriks dapat digunakan sebagai alat untuk melakukan enkripsi dan dekripsi pesan. Metode ini dikenal sebagai Hill Cipher.
Konsep Dasar
Langkah-langkah pengiriman sandi menggunakan matriks:
- Konversi huruf ke angka menggunakan tabel korespondensi
- Susun angka-angka tersebut dalam bentuk matriks kolom
- Kalikan matriks kunci (matriks enkripsi) dengan matriks pesan
- Hitung modulo 26 dari hasil perkalian
- Konversi kembali angka menjadi huruf
Tabel Korespondensi Huruf dan Angka
| A | B | C | D | E | F | G | H | I | J | K | L | M |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| N | O | P | Q | R | S | T | U | V | W | X | Y | Z |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 |
2. Proses Enkripsi (Penyandian)
Enkripsi adalah proses mengubah pesan asli (plaintext) menjadi pesan tersandi (ciphertext).
Rumus Enkripsi:
C = K × P (mod 26)
Keterangan: C = matriks ciphertext, K = matriks kunci, P = matriks plaintext
Dengan matriks kunci berukuran 2×2, maka pesan dikelompokkan per 2 huruf dan disusun dalam matriks kolom 2×1.
Contoh Proses Enkripsi:
Pesan: “MA”, Kunci: [3257]
Langkah 1: Konversi M = 12, A = 0
Langkah 2: Matriks pesan P = [120]
Langkah 3: C = [3257] × [120] = [3660]
Langkah 4: mod 26 → [108]
Langkah 5: 10 = K, 8 = I → Ciphertext: “KI”
3. Proses Dekripsi (Pembacaan Sandi)
Dekripsi adalah proses mengembalikan pesan tersandi (ciphertext) menjadi pesan asli (plaintext).
Rumus Dekripsi:
P = K⁻¹ × C (mod 26)
Keterangan: K⁻¹ = invers matriks kunci dalam modulo 26
Invers Matriks Modulo 26
Untuk matriks K = [abcd], maka:
1. Hitung determinan: det(K) = ad − bc
2. Hitung det(K) mod 26
3. Cari invers modular: Cari bilangan x sehingga det(K) × x ≡ 1 (mod 26)
4. Invers matriks mod 26:
K⁻¹ = x × [d−b−ca] (mod 26)
Tabel Invers Modular (mod 26):
| a | a⁻¹ mod 26 | a | a⁻¹ mod 26 |
|---|---|---|---|
| 1 | 1 | 15 | 7 |
| 3 | 9 | 17 | 23 |
| 5 | 21 | 19 | 11 |
| 7 | 15 | 21 | 5 |
| 9 | 3 | 23 | 17 |
| 11 | 19 | 25 | 25 |
Catatan: Hanya bilangan yang relatif prima dengan 26 (GCD = 1) yang memiliki invers modular.
4. Syarat Matriks Kunci
Agar matriks kunci dapat digunakan untuk enkripsi dan dekripsi, maka harus memenuhi syarat:
- Matriks kunci harus persegi (berukuran n × n)
- Determinan matriks ≠ 0
- GCD(det(K), 26) = 1 — determinan harus relatif prima dengan 26
Bilangan yang relatif prima dengan 26: 1, 3, 5, 7, 9, 11, 15, 17, 19, 21, 23, 25
Jika determinan matriks habis dibagi 2 atau 13, maka matriks tersebut tidak dapat digunakan sebagai kunci.
5. Contoh Lengkap Enkripsi dan Dekripsi
Enkripsi pesan “HELP” dengan kunci K = [3325]
Langkah 1: Konversi huruf → H=7, E=4, L=11, P=15
Langkah 2: Kelompokkan per 2: P₁ = [74], P₂ = [1115]
Langkah 3: C₁ = [3325] × [74] = [3334]
Langkah 4: mod 26 → [78] → H, I
Langkah 5: C₂ = [3325] × [1115] = [7897]
Langkah 6: mod 26 → [019] → A, T
Hasil: “HELP” → “HIAT”
Dekripsi “HIAT” kembali ke “HELP”
det(K) = (3)(5) − (3)(2) = 15 − 6 = 9
9⁻¹ mod 26 = 3 (karena 9 × 3 = 27 ≡ 1 mod 26)
K⁻¹ = 3 × [5−3−23] = [15−9−69] mod 26 = [1517209]
P₁ = [1517209] × [78] = [241212] mod 26 = [74] → H, E ✓
Hasil: “HIAT” → “HELP” ✓
📝 Contoh Soal dan Pembahasan
Tingkat Mudah
Contoh Soal 1
Enkripsi huruf “AB” menggunakan matriks kunci K = [1235]
Pembahasan:
A = 0, B = 1
C = [1235] × [01] = [25]
mod 26 → 2 = C, 5 = F
Jawaban: “CF”
Contoh Soal 2
Konversikan kata “NO” menjadi matriks kolom.
Pembahasan:
N = 13, O = 14
Matriks kolom = [1314]
Contoh Soal 3
Hitung determinan matriks K = [5327] dan tentukan apakah matriks ini bisa digunakan sebagai kunci.
Pembahasan:
det(K) = (5)(7) − (3)(2) = 35 − 6 = 29
29 mod 26 = 3
GCD(3, 26) = 1 → relatif prima
Jawaban: Ya, matriks ini dapat digunakan sebagai kunci.
Contoh Soal 4
Enkripsi “CD” dengan kunci K = [2113]
Pembahasan:
C = 2, D = 3
C = [2113] × [23] = [711]
7 = H, 11 = L
Jawaban: “HL”
Contoh Soal 5
Tentukan invers modular dari 5 (mod 26).
Pembahasan:
Cari x sehingga 5 × x ≡ 1 (mod 26)
5 × 21 = 105 = 4 × 26 + 1 → 105 mod 26 = 1 ✓
Jawaban: 5⁻¹ mod 26 = 21
Tingkat Sedang
Contoh Soal 6
Enkripsi kata “MATH” menggunakan kunci K = [6113]
Pembahasan:
M=12, A=0, T=19, H=7
Blok 1 “MA”: [6113] × [120] = [7212] mod 26 = [2012] → U, M
Blok 2 “TH”: [6113] × [197] = [12140] mod 26 = [1714] → R, O
Jawaban: “MATH” → “UMRO”
Contoh Soal 7
Tentukan invers matriks K = [3257] dalam modulo 26.
Pembahasan:
det(K) = (3)(7) − (2)(5) = 21 − 10 = 11
11⁻¹ mod 26 = 19 (karena 11 × 19 = 209 = 8 × 26 + 1)
K⁻¹ = 19 × [7−2−53] = [133−38−9557]
mod 26 → [31495]
(133 mod 26 = 3, −38 mod 26 = 14, −95 mod 26 = 9, 57 mod 26 = 5)
Contoh Soal 8
Dekripsi pesan “CF” jika diketahui kunci K = [1235]
Pembahasan:
det(K) = (1)(5) − (2)(3) = 5 − 6 = −1 → mod 26 = 25
25⁻¹ mod 26 = 25 (karena 25 × 25 = 625, 625 mod 26 = 1)
K⁻¹ = 25 × [5−2−31] = [125−50−7525] mod 26 = [212325]
C = 2, F = 5
P = [212325] × [25] = [52131] mod 26 = [01]
0 = A, 1 = B
Jawaban: “CF” → “AB”
Contoh Soal 9
Apakah matriks K = [4321] dapat digunakan sebagai kunci Hill Cipher? Jelaskan!
Pembahasan:
det(K) = (4)(1) − (3)(2) = 4 − 6 = −2
−2 mod 26 = 24
GCD(24, 26) = 2 ≠ 1
Jawaban: Tidak bisa, karena GCD(det, 26) ≠ 1, sehingga invers matriks mod 26 tidak ada.
Contoh Soal 10
Enkripsi “SENI” menggunakan kunci K = [58173]
Pembahasan:
S=18, E=4, N=13, I=8
Blok 1 “SE”: [58173] × [184] = [122318] mod 26 = [186] → S, G
Blok 2 “NI”: [58173] × [138] = [129245] mod 26 = [2511] → Z, L
Jawaban: “SENI” → “SGZL”
Tingkat Sulit
Contoh Soal 11
Dekripsi pesan “SGZL” jika diketahui kunci K = [58173]
Pembahasan:
det(K) = (5)(3) − (8)(17) = 15 − 136 = −121
−121 mod 26: −121 + 5(26) = −121 + 130 = 9
9⁻¹ mod 26 = 3 (karena 9 × 3 = 27 ≡ 1 mod 26)
K⁻¹ = 3 × [3−8−175] = [9−24−5115] mod 26 = [92115]
Blok 1 “SG”: S=18, G=6
[92115] × [186] = [174108] mod 26 = [184] → S, E
Blok 2 “ZL”: Z=25, L=11
[92115] × [2511] = [247190] mod 26 = [138] → N, I
Jawaban: “SGZL” → “SENI” ✓
Contoh Soal 12
Diketahui plaintext “CODE” dienkripsi menjadi ciphertext tertentu menggunakan kunci K = [9457]. Tentukan ciphertext-nya!
Pembahasan:
C=2, O=14, D=3, E=4
det(K) = 63 − 20 = 43 → 43 mod 26 = 17, GCD(17,26)=1 ✓
Blok 1 “CO”: [9457] × [214] = [74108] mod 26 = [224] → W, E
Blok 2 “DE”: [9457] × [34] = [4343] mod 26 = [1717] → R, R
Jawaban: “CODE” → “WERR”
Contoh Soal 13
Dekripsi pesan “WERR” jika diketahui kunci K = [9457]
Pembahasan:
det(K) = 43 mod 26 = 17
17⁻¹ mod 26 = 23 (karena 17 × 23 = 391 = 15 × 26 + 1)
K⁻¹ = 23 × [7−4−59] = [161−92−115207] mod 26 = [5121525]
Blok 1: W=22, E=4 → [5121525] × [224] = [158430] mod 26 = [214] → C, O
Blok 2: R=17, R=17 → [5121525] × [1717] = [289680] mod 26 = [34] → D, E
Jawaban: “WERR” → “CODE” ✓
Contoh Soal 14
Diketahui plaintext “SECRET” dienkripsi menggunakan kunci K = [7235]. Tentukan ciphertext-nya!
Pembahasan:
S=18, E=4, C=2, R=17, E=4, T=19
Blok 1 “SE”: [7235] × [184] = [13474] mod 26 = [422] → E, W
Blok 2 “CR”: [7235] × [217] = [4891] mod 26 = [2213] → W, N
Blok 3 “ET”: [7235] × [419] = [66107] mod 26 = [143] → O, D
Jawaban: “SECRET” → “EWWNOD”
Contoh Soal 15
Jika diketahui ciphertext “EWWNOD” dan kunci K = [7235], dekripsi pesan tersebut!
Pembahasan:
det(K) = 35 − 6 = 29 → 29 mod 26 = 3
3⁻¹ mod 26 = 9 (karena 3 × 9 = 27 ≡ 1 mod 26)
K⁻¹ = 9 × [5−2−37] = [45−18−2763] mod 26 = [1982511]
Blok 1 “EW”: E=4, W=22 → [1982511] × [422] = [252342] mod 26 = [184] → S, E
Blok 2 “WN”: W=22, N=13 → [1982511] × [2213] = [522693] mod 26 = [217] → C, R
Blok 3 “OD”: O=14, D=3 → [1982511] × [143] = [290383] mod 26 = [419] → E, T
Jawaban: “EWWNOD” → “SECRET” ✓
✍️ Latihan Soal
Kerjakan soal-soal berikut tanpa melihat pembahasan!
Tingkat Mudah
1. Konversikan kata “OK” menjadi matriks kolom.
2. Enkripsi huruf “BA” menggunakan kunci K = [1325]
3. Hitung determinan matriks [3714] dan tentukan apakah bisa menjadi kunci.
4. Tentukan invers modular dari 7 (mod 26).
5. Enkripsi “HI” menggunakan kunci K = [3512]
Tingkat Sedang
6. Enkripsi kata “KAMU” menggunakan kunci K = [5327]
7. Tentukan invers matriks K = [1235] dalam modulo 26.
8. Dekripsi pesan “HL” jika kunci K = [2113]
9. Apakah matriks [6432] bisa digunakan sebagai kunci Hill Cipher? Jelaskan!
10. Enkripsi kata “AMAN” menggunakan kunci K = [11387]
Tingkat Sulit
11. Dekripsi pesan “UMRO” jika kunci K = [6113]
12. Enkripsi kata “MATRIX” menggunakan kunci K = [9457]
13. Diketahui ciphertext adalah “PQRS” dan kunci K = [3512]. Dekripsi pesan tersebut!
14. Enkripsi pesan “CIPHER” menggunakan kunci K = [7235] lalu dekripsi hasilnya untuk membuktikan kebenaran.
15. Tentukan matriks kunci K berukuran 2×2 yang valid untuk Hill Cipher jika diketahui baris pertama [11, 8] dan det(K) mod 26 = 3. Kemudian enkripsi kata “GO” dengan kunci tersebut.