E. SANDI HILL
Sejauh ini telah dibicarakan tentang sandi-sandi yang prosesnya yaitu mengganti satu huruf dengan satu huruf. Apabila prosesnya diubah yaitu
dengan melakukan penggantian menjadi suatu blok huruf dengan suatu blok huruf, tentu saja suatu sandi akan menjadi lebih rumit. Oleh karena itu lebih
sulit bagi musuh untuk memecahkan sandi tersebut. Sebagai contoh, jika ditentukan untuk menggunakan blok-blok yang terdiri dari dua huruf, maka
teks-asal dapat dipecah menjadi blok-blok yang terdiri dari dua huruf dan kemudian menggantinya menurut kunci yang telah ditetapkan sebelumnya.
Misal, dengan kesepakatan bahwa setiap waktu kita melihat diganti
dengan , setiap kali melihat diganti dengan , dan lain-lain.
Sebagai catatan bahwa terdapat kemungkinan pasangan
huruf, sehingga apabila dua orang yang ingin mengirim pesan rahasia satu sama lain maka harus setuju dan mengingat semua kemungkinan tersebut.
Jika digunakan blok-blok yang terdiri dari tiga huruf, maka terdapat pergantian. Apabila ukuran blok semakin mengingat, maka
semakin banyak kemungkinan yang harus diperiksa oleh musuh. Tetapi masalahnya adalah apabila ukuran blok semakin meningkat, maka
banyaknya pergantian yang harus disepakati dan diingat oleh kedua pihak juga semakin banyak. Berikut ini akan dibicarakan tentang Sandi Hill,
ditemukan pada 1929 oleh Lester S. Hill. Sandi ini akan memberikan gambaran yang lebih ringkas cara untuk mengganti blok-blok huruf dengan
blok-blok huruf.
Pada bagian ini, diandaikan hanya kasus dimana ukuran blok adalah .
Untuk teks-asal dapat ditulis ke dalam bentuk dan teks-sandi
dapat ditulis ke dalam bentuk . Ini dapat ditulis lebih ringkas ke
dalam notasi matriks sebagai berikut: ,
dimana semua perhitungan dilakukan di dalam . Tetapi metode ini dapat
diperluas menjadi sembarang ukuran blok. Untuk bentuk yang lebih umum akan digunakan matriks
yang berukuran sebagai matriks kunci
yang akan digunakan. Untuk dan , proses enkripsi
dihitung dengan , dimana
.
Dengan kata lain, dapat ditulis sebagai .
Dimulai dengan matriks kunci yang berukuran , yang anggota-
anggotanya adalah elemen dari . Matriks ini akan berperan sebagai kunci
dalam sandi ini dan tidak boleh jatuh ke tangan musuh atau sandi ini akan dengan mudah dipecahkan. Misalkan matriks tersebut yaitu:
.
Jika Alice yang berperan sebagai pengirim pesan ingin mengirim pesan “ ” kepada Boby, maka pertama-tama Alice harus mengubah pesan
tersebut menjadi blok-blok yang terdiri dari dua huruf. Sehingga diperoleh blok pertama adalah
“ ” dan blok kedua adalah “ ”. Kemudian, dia mengubah setiap blok tersebut menjadi vektor dua dimensi dengan anggota-
anggotanya di dalam . Setiap huruf diubah ke dalam bilangan-bilangan
menurut Tabel 3.1. Vektor ke- dari teks-asal dinyatakan dengan
. Oleh karena itu, vektor yang mewakili
adalah dan vektor yang
mewakili adalah
. Untuk menghasilkan teks-sandi atau melakukan proses enkripsi dengan melakukan perhitungan berikut
untuk setiap .
Setelah itu vektor-vektor tersebut diubah kembali ke dalam huruf-huruf. Sebagai contoh,
,
.
Angka mewakili huruf , mewakili
, dan mewakili , sehingga
dihasilkan teks-sandi yaitu . Ingat bahwa metode ini mengganti blok
yang terdiri dari dua huruf dengan blok yang terdiri dari dua huruf seperti yang diinginkan diawal, dan keuntungannya yaitu tidak perlu mengingat
kemungkinan tersebut. Alice dan Boby cukup mengetahui matriks . Selain proses enkripsi juga harus dipertimbangkan cara untuk proses
dekripsinya yaitu: bagaimana cara Boby memperoleh teks-asal berdasarkan teks
–sandi yang diberikan? Pembaca yang sudah mempelajari Aljabar Linear akan mengetahui bahwa dapat digunakan matriks invers
untuk proses dekripsinya. Dengan demikian, teks-sandi dapat didekripsi dengan
menggunakan persamaan . Boby yang telah mengetahui matriks
dan , dia ingin menemukan
. Dengan kata lain, dia ingin mencari penyelesaian persamaan
untuk semua . Andaikan dapat
ditemukan suatu matriks dengan anggota-anggotanya dalam
sedemikian sehingga
, dimana
semua perhitungan
menggunakan modulo 26. Jika maka
, sehingga .
Permasalahannya adalah cara menentukan matriks tersebut. Perlu diingat
bahwa di dalam Aljabar Linear: jika adalah matriks persegi dimana
elemen-elemennya adalah bilangan real, maka terdapat matriks dimana
elemen-elemen bilangan real sedemikian sehingga jika dan hanya
jika determinan matriks bukan nol, di mana I merupakan matriks identitas
Anton dan Busby, 2003 : 188. Tetapi hal ini harus teliti, perhitungan yang digunakan dalam aljabar linear yang standar tidak sama dengan yang
digunakan pada bagian ini. Hal ini dikarenakan semua perhitungan disini dilakukan dengan modulo 26. Tetapi, apakah hal ini memberikan
perbedaan? Perhatikan contoh berikut: Contoh 3.8
Andaikan . Maka determinan dari
adalah .
Tetapi, jika terdapat matriks sedemikian sehingga , dimana
semua perhitungan berdasarkan modulo 26, maka akan diperoleh
Jadi,
Dimana perhitungannya di dalam ,
Sehingga dengan menyelesaikan persamaan diperoleh dan
substitusikan hasil tersebut ke dalam persamaan , sehingga diperoleh
. Tetapi tidak terdapat elemen anggota yang memenuhi
persamaan . Dapat disimpulkan bahwa tidak terdapat matriks
tersebut. Sekarang keluar ke masalah utama yang lain dari sifat matriks kunci
di atas. Andaikan Alice menggunakan matriks dalam Contoh 3.7 untuk
mengirim pesan yang telah dienkripsi kepada Boby. Jika suatu blok teks- asal adalah
untuk menentukan teks-sandi yang bersesuaian, maka Alice harus menghitung
diperoleh teks-sandi yang bersesuaian . Tetapi, andaikan bahwa teks-asal
adalah . Dalam hal ini dia juga menghitung
dihasilkan kembali teks-sandi yang bersesuaian adalah . Sehingga, jika
Boby menerima sebagai satu blok, maka hal ini akan membingungkan
Boby untuk mengetahui apakah teks-asalnya adalah atau . Oleh
karena itu, dalam kasus ini matriks adalah kunci yang buruk untuk
digunakan dalam proses enkripsi. Dengan Contoh 3.7 tersebut, harus dicari cara yang mudah untuk menentukan apakah suatu matriks kunci tertentu
menjadi matriks yang baik untuk digunakan dalam proses enkripsi. Berdasarkan masalah-masalah yang telah dibahas sebelumnya dapat
disimpulkan bahwa matriks kunci harus memenuhi sifat-sifat tertentu.
Secara lebih rinci, matriks kunci harus mempunyai sifat bahwa terdapat
matriks sedemikian sehingga . Matriks kunci K juga harus
mempunyai sifat bahwa jika dan
adalah vektor-vektor yang berbeda dengan elemen-elemen di
, maka dan
juga merupakan vektor- vektor yang berbeda. Teorema berikut mengatakan bahwa dua sifat ini
adalah ekuivalen dan terdapat cara yang mudah untuk memeriksa apakah sifat tersebut berlaku atau tidak.
Teorema 3.1
Untuk Sandi Hill dengan 26 huruf alfabet, ukuran blok 2, dan matriks kunci , pernyataan berikut adalah ekuivalen:
1. tidak dapat dibagi oleh 2 atau 13.
2. Terdapat matriks B berukuran
dengan elemen-elemen di yang memenuhi
. 3.
Matriks K memenuhi sifat bahwa jika maka
. Setiap perhitungan dilakukan di dalam
.
Bukti:
Strategi untuk membuktikannya yaitu dengan menunjukkan bahwa pernyataan pertama mengakibatkan pernyataan kedua, pernyataan kedua
mengkibatkan pernyataan ketiga, dan pernyataan ketiga mengakibatkan pernyataan pertama.
Andaikan bahwa tidak dapat dibagi 2 atau 13. Maka menurut
Teorema 2.8, terdapat sedemikian sehingga
.
Misalkan , maka
.
Ini berarti bahwa sifat kedua berlaku. Sekarang, andaikan bahwa sifat kedua berlaku dan akan ditunjukkan bahwa
sifat kedua mengakibatkan sifat ketiga berlaku. Andaikan terdapat matriks
sedemikian sehingga . Jika , maka
, ini berarti bahwa sifat ketiga dari teorema tersebut berlaku.
Untuk bagian terakhir pembuktian ini, diandaikan bahwa memenuhi sifat
bahwa jika maka
. Misalkan dapat dibagi oleh
2 maka akan muncul kontradiksi. Karena 2 membagi , berarti
. Ingat semua perhitungan dilakukan dalam . Sehingga,
dan
.
Selain itu juga diperoleh
.
Apabila memenuhi sifat ketiga pada teorema tersebut, berarti
.
Sehingga dan .
Misalkan
.
Hal ini kontradiksi bahwa memenuhi sifat ketiga. Dengan cara yang
sama, juga dapat diperoleh kontradiksi jika dapat dibagi dengan 13.
Andaikan dapat dibagi oleh 13.
Karena membagi , berarti . Dengan demikian
dan
.
Selain itu juga diperoleh
.
Apabila memenuhi sifat ketiga pada teorema tersebut, berarti
.
Sehingga dan .
Misalkan
.
Hal ini juga menyangkal bahwa memenuhi sifat ketiga.
∎
Dengan demikian Teorema 3.1 telah terbukti. Perhatikan apabila Teorema 3.1 di atas dapat diperumum. Bentuk umum dari teorema tersebut
dinyatakan tanpa pembuktian.
Teorema 3.2
Untuk Sandi Hill dengan alfabet yang terdiri dari huruf, ukuran blok ,
dan matriks kunci , dimana adalah matriks dengan elemen-
elemen di . Pernyataan-pernyataan berikut adalah ekuivalen:
1. Determinan matriks K dan n adalah relative prima.
2. Terdapat suatu matriks B berukuran
dengan elemen-elemen di memenuhi
, dimana I marupakan matriks identitas berukuran
. 3.
Matriks K memenuhi sifat bahwa jika maka
. Semua perhitungan dilakukan di
.
Teorema 3.1 sangat berguna. Oleh karena itu, Alice dan Boby dapat dengan mudah menguji bahwa matriks kunci K yang dipilih akan menjadi
salah satu yang terbaik untuk mengenkripsi pesan. Mereka dapat dengan mudah menghitung
dan memastikannya tidak dapat dibagi dengan 2 atau 13. Namun, pada prakteknya terdapat masalah, bagaimana Bob
mengetahui teks-asal setelah menerima teks-sandi. Jawaban dari masalah ini berada pada Teorema 3.1 diilustrasikan dengan sebuah contoh.
Ingat pada contoh diawal, dimana Alice dan Bob menggunakan matriks
sebagai matriks kunci dan teks-asalnya adalah “ ”. Seperti yang telah
ditunjukkan diawal, teks-sandinya adalah . Andaikan bahwa Boby
menerima pesan dan tidak mengetahui pesan yang asli yang dikirim
Alice. Sekarang akan ditunjukkan bagaimana dia akan menemukan teks- asal. Pertama dia membuat vektor
dan dengan mengubah setiap huruf
ke dalam bilangan. Diperoleh, dan
.
Ingat bahwa Boby berusaha untuk menghasilkan dan
dan dia tahu bahwa
dan . Seperti yang telah dibicarakan
sebelumnya, Boby ingin memperoleh matrks sedemikian sehingga
. Perhatikan Teorema 3.1, sebenarnya matriks yang demikian dapat diperoleh. Jika
maka , dimana
memenuhi .
Di dalam masalah ini, , dan . Sehingga
dan , maka dapat diperoleh nilai
. Karena , berarti
. Kemudian,
. Jadi,
dan
. Kemudian diubah kembali bilangan-bilangan tersebut ke dalam huruf-huruf,
sehingga Boby menghasilkan teks-asal yang dikirim Alice, yaitu “ ”.
Seperti yang telah dinyatakan di atas, proses enkripsi dalam sandi Hill dilakukan dengan mengalikan matriks kunci
dengan teks-asal. Sedangkan untuk proses dekripsi dilakukan dengan mengalikan matriks invers
. Definisi berikut memberikan gambaran matematis mengenai Sandi Hill
terhadap .
Definisi 3.7 Sandi Hill
Misalkan adalah bilangan bulat. Misalkan
dan {matriks invertibel berukuran dengan elemen-elemen di dalam
Untuk kunci , didefinisikan
dan
dimana , , dan semua operasi dilakukan di dalam
.
Contoh 3.9: Andaikan bahwa
telah dienkripsi dengan menggunakan Sandi Hill dengan kunci
. Pembagian blok-blok huruf menjadi:
Untuk menentukan teks-asal, terlebih dahulu menghitung :
Diperoleh .
Kemudian dekripsi setiap blok teks-sandi menggunakan matriks kunci
.
.
.
.
.
.
Dengan menggunakan Tabel 3.1 akan dihasilkan huruf-huruf yang bersesuaian untuk setiap blok. Sehingga diperoleh teks-asal yaitu:
. Pada blok terdapat huruf yang lebih yaitu
. Huruf ini dapat dianggap sebagai huruf semu, jadi huruf tersebut dapat dihilangkan.
F. SANDI PLAYFAIR