Kriptografi klasik.
ABSTRAK
Marselinus Junardi Rebu. 2015. Kriptografi Klasik. Makalah. Program
Studi Matematika, Jurusan Matematika, Fakultas Sains dan Teknologi, Universitas Sanata Dharma, Yogyakarta.
Makalah ini membahas beberapa sandi symetris-key untuk mengenkripsi maupun mendekripsi pesan. Setiap perhitungan pada fungsi enkripsi dan fungsi dekripsi dilakukan menggunakan aritmetika modulo, khususnya modulo . Kriptanalisis, yaitu metode untuk memecahkan sandi, juga dipaparkan dalam tugas akhir ini untuk beberapa sandi.
Dalam tugas akhir ini, kunci yang digunakan untuk masing-masing sandi bervariasi, dapat berupa bilangan, pasangan terurut, dan matriks. Kunci-kunci ini harus mempunyai invers agar proses dekripsi dapat dilakukan. Oleh karena itu, kunci yang sulit ditebak akan menghasilkan teks-sandi yang sulit dipecahkan oleh kriptanalis.
(2)
ABSTRACT
Marselinus Junardi Rebu. 2015. Classical Cryptography. Paper.
Mathematics Study Program, Department of Mathematics, Faculty of Science and Technology, Sanata Dharma Unyversity, Yogyakarta.
This paper discusses some cipher of symetris-key to encrypt and decrypt messages. Every calculation on encryption function and decryption function is performed using modular arithmetic, especially modulo . Cryptanalysis, the method to break the cipher, is also presented in this paper for some cipher.
In this paper, the key used for each cipher varies, it can be a number, ordered pairs, or a matrix. These keys must have an inverse in order that decryption process can be performed. Therefore, the key which is difficult to guess will generate ciphertext that is difficult to break by the cryptanalyst.
(3)
i
KRIPTOGRAFI KLASIK
MAKALAHDiajukan untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Sains
Program Studi Matematika
Oleh:
Marselinus Junardi Rebu NIM : 103114017
PROGRAM STUDI MATEMATIKA JURUSAN MATEMATIKA FAKULTAS SAINS DAN TEKNOLOGI
UNIVERSITAS SANATA DHARMA YOGYAKARTA
(4)
ii
CLASSICAL CRYPTOGRAPHY
PAPERPresented as Partial Fulfillment of the Requirements To Obtain the Degree of Sarjana Sains
Mathematics Study Program
By:
Marselinus Junardi Rebu NIM : 103114017
MATHEMATICS STUDY PROGRAM DEPARTMENT OF MATHEMATICS FACULTY OF SCIENCE AND TECHNOLOGY
SANATA DHARMA UNIVERSITY YOGYAKARTA
(5)
(6)
(7)
(8)
vi
HALAMAN PERSEMBAHAN
“I don’t care if you are a good mathematician,
or a good athletic,
or not good at anything that you think.
But I’m gonna come and tell you that you’re awesome the way you
are.”
-Nick Vujicic-
Ku persembahkan tugas akhir ini untuk: Tuhan Yesus dan Bunda Maria, Kedua orang tua tercinta, Yeremias Djere dan Agustina Todja, Adik-adik yang ku sayangi: Febronia Romana Rebu, Novita Modesta Rebu, dan Apolonius Marianus Rebu.
(9)
vii
ABSTRAK
Marselinus Junardi Rebu. 2015. Kriptografi Klasik. Makalah. Program
Studi Matematika, Jurusan Matematika, Fakultas Sains dan Teknologi, Universitas Sanata Dharma, Yogyakarta.
Makalah ini membahas beberapa sandi symetris-key untuk mengenkripsi maupun mendekripsi pesan. Setiap perhitungan pada fungsi enkripsi dan fungsi dekripsi dilakukan menggunakan aritmetika modulo, khususnya modulo . Kriptanalisis, yaitu metode untuk memecahkan sandi, juga dipaparkan dalam tugas akhir ini untuk beberapa sandi.
Dalam tugas akhir ini, kunci yang digunakan untuk masing-masing sandi bervariasi, dapat berupa bilangan, pasangan terurut, dan matriks. Kunci-kunci ini harus mempunyai invers agar proses dekripsi dapat dilakukan. Oleh karena itu, kunci yang sulit ditebak akan menghasilkan teks-sandi yang sulit dipecahkan oleh kriptanalis.
(10)
viii
ABSTRACT
Marselinus Junardi Rebu. 2015. Classical Cryptography. Paper.
Mathematics Study Program, Department of Mathematics, Faculty of Science and Technology, Sanata Dharma Unyversity, Yogyakarta.
This paper discusses some cipher of symetris-key to encrypt and decrypt messages. Every calculation on encryption function and decryption function is performed using modular arithmetic, especially modulo . Cryptanalysis, the method to break the cipher, is also presented in this paper for some cipher.
In this paper, the key used for each cipher varies, it can be a number, ordered pairs, or a matrix. These keys must have an inverse in order that decryption process can be performed. Therefore, the key which is difficult to guess will generate ciphertext that is difficult to break by the cryptanalyst.
(11)
(12)
x
KATA PENGANTAR
Puji syukur penulis haturkan kepada Tuhan Yesus Kristus atas berkat dan
rahmatNya yang selalu menyertai sehingga penulis dapat menyelesaikan makalah
ini dengan baik.
Makalah ini dibuat sebagai salah satu syarat untuk memperoleh gelar
Sarjana Sains pada Program Studi Matematika, Universitas Sanata Dharma.
Penulis menyadari banyak tantanga dalam proses penulisan makalah ini, namun
dengan penyertaan Tuhan serta dukungan dari berbagai pihak akhirnya makalah
ini bisa diselesaikan. Untuk itu penulis ingin mengucapkan terima kasih kepada:
1. Ibu MV. Any Herawati, S.Si, M.Si. selaku dosen pembimbing yang selalu
sabar dalam membimbing dan memberikan ide serta masukan selama proses
penulisan makalah ini.
2. Bapak Ir. Ig. Aris Dwiatmoko, M.Sc. yang telah memberikan banyak
masukan mengenai topik tugas akhir, juga selaku dosen pembimbing
akademik.
3. Ibu Paulina Heruningsih Prima Rosa, S.Si., M.Sc. selaku dekan Fakultas
Sains dan Teknologi.
4. Bapak YG. Hartono, S.Si., M.Sc., Ph.D selaku Ketua Program Studi
Matematika.
5. Seluruh Dosen Program Studi Matematika yang telah memberikan
(13)
xi
6. Kedua orang tuaku, Bapak Yeremias Djere dan Ibu Agustina Todja, yang
senantiasa memberikan doa, dukungan, semangat, dan motivasinya.
Adik-adikku: Febronia Romana Rebu, Novita Modesta Rebu, dan Apolonius
Marianus Rebu, yang selalu menjadi motivasi bagi penulis.
7. Teman-teman Matematika 2010: Arga, Ayu, Celly, Yosi, Tika, Agnes, Roy,
Ratri, Yohan, Pandu, Sary, Leny, Astri, dan Dini, terima kasih untuk
semangat dan motivasi yang diberikan. Terima kasih juga untuk semua
kenangan dalam suka dan duka baik di dalam perkuliahan maupun di luar
perkuliahan.
8. Semua pihak yang telah mendukung dan membantu penulis dalam
menyelesaikan tugas akhir ini yang tidak dapat disebutkan satu per satu.
Terima kasih banyak atas semua dukungannya.
Penulis menyadari bahwa masih ada kekurangan dalam penulisan makalah
ini. Oleh karena itu, penulis mengharapkan kritik dan saran demi penyempurnaan
makalah ini. Akhirnya, penulis berharap semoga makalah ini dapat bermanfaat
bagi para pembaca.
Yogyakarta, 20 Februari 2015
(14)
xii
DAFTAR
ISI
HALAMAN JUDUL (BAHASA INDONESIA)………..i
HALAMAN JUDUL (BAHASA INGGRIS)……….………..ii
LEMBAR PERSETUJUAN PEMBIMBING….……….……….…..iii
HALAMAN PENGESAHAN……….…iv
PERNYATAAN KEASLIAN KARYA………...…v
HALAMAN PERSEMBAHAN……….vii
ABSTRAK………..vii
ABSTRACT………...…...viii
LEMBAR PERSETUJUAN PUBLIKASI KARYA ILMIAH………...ix
KATA PENGANTAR……….x
DAFTAR ISI………..xii
BAB I PENDAHULUAN………...1
A. Latar Belakang.………...……….1
B. Rumusan Masalah………..………..7
C. Batasan Masalah……….….8
D. Tujuan Penulisan……….8
E. Metode Penulisan……….8
F. Manfaat Penulisan………...8
(15)
xiii
BAB II TEORI PEMBAGIAN, TEORI KEKONGRUENAN, MATRIKS DAN
FUNGSI……….………11
A. TEORI PEMBAGIAN………...………11
1. Definisi-definisi………..………11
2. Algoritma Pembagian……….13
3. Faktor Persekutuan Terbesar………..16
4. Persamaan Diophantine ………...……….20
B. TEORI KEKONGRUENAN……….23
1. Sifat-sifat Dasar Kekongruenan………..23
2. Kekongruenan Linear……….31
C. MATRIKS……….35
1. Notasi dan Istilah-istilah Matriks………...……35
2. Invers Matriks……….36
3. Determinan secara Umum………..40
4. Determinan Matriks (Ekspansi Kofaktor)………..43
5. Rumus untuk ………..…….47
6. Aritmetika Modulo untuk Matriks………..………50
D. FUNGSI……….………59
BAB III KRIPTOGRAFI KLASIK……….63
A. Kriptografi………...…..63
B. Sandi Geser………70
C. Sandi Affine………...………76
D. Sandi Vigenere………...………83
E. Sandi Hill………...…………90
F. Sandi Playfair………..………….106
G. Sandi Permutasi……….…………..112
H. Sandi Vernam………..…………115
I. Kriptanalisis………...………..122
(16)
xiv
2. Kriptanalisis Sandi Affine………137
3. Kriptanalisis Sandi Vigenere………143
4. Kriptanalisis Sandi Hill………..…..160
BAB IV PENUTUP………...170
A. Kesimpulan………..170
B. Saran………171
DAFTAR PUSTAKA………..172
(17)
1
BAB I
PENDAHULUAN
A. Latar Belakang
Di zaman sekarang yang serba canggih ini kita dapat melakukan suatu hal
dengan mudah, terutama dalam berkomunikasi. Seseorang dapat berkomunikasi
dengan siapapun, dimana pun dia berada dan kapanpun. Disaat dua orang (atau
lebih) melakukan komunikasi, baik itu secara lisan ataupun secara tertulis, saat itu
juga mereka memberitahukan hal-hal yang ada dipikiran mereka ke dalam
kata-kata ataupun simbol-simbol lainnya. Setiap kata-kata ataupun simbol yang
diungkapkan itu dinamakan pesan. Isi dari pesan tersebut akan memberikan
informasi bagi orang yang melakukan komunikasi.
Dalam berkomunikasi, terdapat satu pihak yang akan berusaha lebih dahulu
menyampaikan suatu pesan. Pihak ini dinamakan pengirim pesan. Pesan tersebut disampaikan ke pihak lainnya. Pihak lainnya yang menerima pesan dari pengirim
pesan dinamakan penerima pesan.
Saat ini sudah terdapat berbagai macam penemuan-penemuan dari zaman
purbakala, seperti penemuan mumi, prasasti-prasasti, dan lain-lain. Dari
hasil-hasil penemuan tersebut, terdapat simbol-simbol yang digunakan pada zamannya.
Lokasi ditemukannya juga berbeda-beda, terdapat beberapa simbol yang
ditemukan pada reruntuhan dinding-dinding bangunan zaman dahulu,
(18)
Masing-masing simbol tersebut pasti punya arti tertentu sehingga suatu kumpulan
simbol-simbol akan membentuk suatu informasi penting. Sebagai contoh pada
Gambar 1.1, simbol-simbol pada gambar tersebut menyimpan informasi yang
penting yaitu adanya harta karun pada suatu kota rahasia yang tersembunyi,
namun informasi dari gambar itu tidak sempurna. Hal ini dikarenakan gambar ini
hanya potongan sebagian dari keseluruhan simbol-simbol yang seharusnya.
Gambar 1.1: Potongan Simbol-simbol Lokasi Harta Karun (sumber: film National Treasure 2 – Book of Secrets)
Suatu pesan yang dibuat/diterima tidak selalu boleh dibaca oleh semua
orang. Bahkan, meski seorang teman sekalipun belum tentu diperbolehkan untuk
membaca suatu pesan yang dibuat/diterima tersebut, terkecuali orang itu
dipercaya untuk mengetahui informasi pada pesan tersebut. Dalam kehidupan kita,
terdapat pesan-pesan yang berisi informasi-informasi penting dan hanya boleh
diketahui oleh orang yang tepat, yaitu penerima pesan. Hal ini supaya informasi
yang terkandung dalam pesan tersebut tetap terjaga. Dalam bidang-bidang tertentu
pesan tersebut sangatlah penting dan harus sampai di tangan orang yang tepat,
(19)
bahkan bisa mengancam nyawanya sendiri. Misalnya di dalam bidang intelijen,
perbankan, dan bidang-bidang lainnya. Pesan-pesan yang dimaksud di atas biasa
disebut pesan rahasia. Pada permasalahan di atas, musuh yang dimaksud adalah pihak yang selalu berusaha ingin tahu dan mengganggu komunikasi antara
pengirim dan penerima pesan.
Oleh karena itu, agar pesan tersebut tidak mudah diketahui oleh musuh,
pengirim dan penerima pesan harus membuat suatu kesepakatan agar
menghasilkan teknik-teknik tertentu dalam menuliskan pesan tersebut.
Teknik-teknik tersebut bertujuan supaya pesan tidak dengan mudah dapat dibaca oleh
musuh begitu juga keamanan data-data dalam pesan tersebut tetap terlindungi dan
terjaga kerahasiaannya.
Untuk melakukan hal di atas, diperlukan metode-metode dalam mengubah
bentuk dari pesan tersebut. Metode tersebut mengubah bentuk dari pesan yang asli
dengan cara mengganti setiap huruf, angka, ataupun simbol-simbol dalam pesan
tersebut dengan suatu huruf, angka, ataupun simbol tertentu lainnya. Pesan yang
asli tersebut biasa disebut teks-asal (plaintext). Setelah mengubah bentuk pesan yang asli maka dihasilkan pesan yang berbeda dengan bentuk pesan yang asli,
namun informasi-informasi pada pesan ini tetap sama dengan isi pesan yang
aslinya. Perbedaan antara pesan yang asli dengan pesan tersebut adalah terletak
pada huruf ataupun simbol yang digunakan pada pesan tersebut. Pesan tersebut
biasa disebut teks-sandi (ciphertext). Selain dapat mengubah teks-asal menjadi teks-sandi, metode tersebut juga harus dapat mengubah kembali teks-sandi
(20)
Pengubahan kembali bentuk teks-sandi menjadi teks-asal ini bertujuan supaya
penerima pesan dapat melihat bentuk asli dari teks-sandi yang diterima. Setelah
diubah baru dapat dibaca dan dipahami oleh penerima pesan. Proses untuk
mengubah teks-asal menjadi teks-sandi dinamakan enkripsi, sedangkan proses untuk mengubah teks-sandikembali menjadi teks-asaldinamakan dekripsi.
Sejarah dipenuhi dengan contoh-contoh dimana orang berusaha untuk
menjaga informasi pada pesan rahasia dari musuh. Para raja dan para jenderal
berkomunikasi dengan pasukan mereka menggunakan suatu metode untuk
mencegah musuh mempelajari informasi militer yang sensitif. Metode tersebut
adalah kriptografi yaitu metode yang membuat pesan tidak dapat dipahami oleh musuh. Bahkan, Julius Caesar dilaporkan menggunakan sebuah sandi sederhana, yang kemudian dinamakan menurut namanya Sandi Caesar.
Sandi Caesar mempunyai cara kerja dengan menggeser masing-masing
huruf, seperti di bawah ini:
Gambar 1.2: PergeseranHuruf (Hardy, Richman, dan Walker, 2009 : 62)
Untuk proses enkripsi metode ini mempunyai rumus:
, dimana:
Plaintext
(21)
adalah teks-sandi,
adalahteks-asal,
, yaitu besarnya pergeseran alfabet.
Namun sebelumnya, setiap huruf harus dinotasikan dengan bilangan sampai , seperti di bawah ini:
Gambar 1.3: Pasangan Bilangan dan Alfabet yang Bersesuaian (Hardy, Richman, dan Walker, 2009 : bab 4)
Dari rumus untuk proses enkripsi di atas, dapat diperoleh rumus untuk
proses dekripsi pada Sandi Caesar yaitu:
.
Dengan rumus dekripsi di atas, dapat dilakukan pengubahan bentuk pesan dari
teks-sandi menjadi teks-asal.
Misal Alice ingin mengirim pesan ke Boby yang berbunyi:
“ ”. Dia menggeser tiga tempat untuk masing-masing huruf, sehingga terjadi perubahan susunan yaitu: menjadi , menjadi , menjadi ,
dan seterusnya sehingga pada akhirnya menjadi , seperti Gambar 1.2.
Kemudian dilakukan proses enkripsi untuk masing-masing huruf pada pesan
tersebut, sehingga dihasilkan seperti berikut:
(22)
Begitu juga sebaliknya, apabila Boby menerima pesan yang berbentuk:
“ ”
Untuk mengetahui bentuk asli pesan tersebut, dia harus mendekripsikan pesan
tersebut terlebih dahulu. Dengan menggunakan rumus untuk proses dekripsi,
Boby dapat melakukan proses dekripsi tersebut. Setelah itu akan diperoleh
teks-asaldari pesan tersebut yang berbunyi:
” ”
Kriptografi telah menjadi penting sepanjang sejarah. Kriptografi tidak hanya
tentang mengenkripsi dan mendekripsi pesan, kriptografi juga tentang pemecahan
masalah di dunia nyata yang membutuhkan keamanan informasi. Dalam makalah
ini akan dibahas tentang penyandian klasik terutama yang digunakan sebelum
munculnya komputer. Sandi-sandi ini terlalu lemah untuk digunakan saat ini,
terutama dengan komputer zaman sekarang, tetapi penyandian tersebut
memberikan ilustrasi yang baik dari beberapa ide-ide penting kriptologi, seperti
tanda tangan digital (digital signature), tanda pengenal (identification), pembuatan kunci (key establishment), berbagi rahasia (secret sharing), perdagangan elektronik (e-commerce), uang elektronik (electronic cash), permainan (games).
Plaintext
(23)
Sebagai masyarakat yang telah berkembang, kebutuhan akan
metode-metode yang lebih canggih terus meningkat. Ketika media menjadi terhubung,
permintaan untuk informasi dan layanan elektronik semakin berkembang, dan
dengan meningkatnya permintaan muncul peningkatan ketergantungan pada
sistem-sistem elektronik. Mengirim informasi yang sensitif melalui internet adalah
hal yang umum, seperti nomor kartu kredit. Melindungi data dan sistem-sistem
elektronik sangat penting untuk cara hidup zaman sekarang.
Oleh karena itu, peranan matematika dibutuhkan dalam memecahkan
permasalahan dunia nyata yang membutuhkan keamanan informasi. Makalah ini
akan menjelaskan mengenai sandi-sandi yang menjadi dasar dalam memecahkan
masalah-masalah tersebut. Sehingga perlu diketahui juga hal-hal di dalam
matematika seperti fungsi, vektor, matriks, aritmetika modulo, dan teori-teori
bilangan lainnya.
B. Rumusan Masalah
Masalah yang akan dibahas pada tugas akhir ini adalah:
1. Macam-macam penyandian klasik dan bagaimana cara menghasilkan
teks-sandidengan menggunakan macam-macam sandi tersebut?
2. Bagaimana cara menterjemahkan teks-sandi atau menghasilkan
kembali teks-asaldengan menggunakanmasing-masing sandi di atas?
(24)
C. Batasan Masalah
1. Sandi yang dibahas hanya sandi-sandi klasik, yakni pengirim dan
penerima pesan mengetahui kunci yang digunakan.
2. Teorema 2.12 dan Teorema 3.2 (Sandi Hill) tidak dibuktikan.
3. Kriptanalisis dilakukan hanya pada Sandi Geser, Sandi Affine, Sandi
Vigenère, Sandi Hill.
4. Proses enkripsi hanya dilakukan pada huruf-huruf alfabet,
simbol-simbol lainnya seperti: titik, koma, tanda seru, maupun simbol-simbol-simbol-simbol
lainnya tidak ikut dilakukan dalam proses enkripsi.
D. Tujuan Penulisan
Tujuan dari Tugas Akhir ini adalah untuk memberikan gambaran yang jelas
bagaimana proses mengubah bentuk suatu pesan, baik itu proses enkripsi maupun
proses dekripsi, dengan menggunakan sandi yang berbeda dalam
sandi-sandi klasik.
E. Metode Penulisan
Metode yang digunakan penulis adalah metode studi pustaka, yaitu dengan
mempelajari buku-buku ataupun sumber-sumber lainnya yang berkaitan dengan
model yang akan dibahas.
F. Manfaat Penulisan
Manfaat dari Tugas Akhir ini adalah dapat mengetahui proses-proses dalam
(25)
dalam suatu sandi. Selain itu, pembaca dapat juga mengetahui tentang
kriptanalisis beberapa sandi.
G. Sistematika Penulisan
BAB I PENDAHULUAN
A. Latar Belakang Masalah
B. Rumusan Masalah
C. Batasan Masalah
D. Tujuan Penulisan
E. Metode Penulisan
F. Manfaat Penulisan
G. Sistematika Penulisan
BAB II TEORI PEMBAGIAN, TEORI KEKONGRUENAN, MATRIKS,
DAN FUNGSI
A. Teori Pembagian
B. Teori Kekongruenan
C. Matriks
D. Fungsi
BAB III KRIPTOGRAFI KLASIK
A. Kriptografi
B. Sandi Geser
(26)
D. Sandi Vigenère
E. Sandi Hill
F. Sandi Playfair
G. Sandi Vernam
H. Kriptanalisis
BAB IV PENUTUP
A. Kesimpulan
(27)
11
BAB II
TEORI PEMBAGIAN, TEORI KEKONGRUENAN, MATRIKS,
DAN FUNGSI
A. TEORI PEMBAGIAN 1. Definisi-definisi
Salah satu sifat penting dari bilangan asli adalah Well Ordering Principle (Sifat Terurut secara Baik). Karena sifat ini tidak dapat dibuktikan dari sifat–sifat aritmetika biasa, maka akan diterima sebagai sebuah aksioma yaitu: setiap himpunan bilangan asli yang tak-kosong
mempunyai elemen terkecil.
Pernyataan di atas bila disimbolkan adalah sebagai berikut:
Jika dan , maka terdapat sedemikian sehingga
untuk setiap .
Definisi 2.1 (Membagi / Pembagi)
Misalkan dengan . Maka b membagi a, ditulis , jika terdapat sedemikian sehingga . Jika tidak membagi , ditulis dengan .
Terdapat beberapa cara untuk menyatakan , yaitu pembagi ,
(28)
Contoh 2.1
karena
5 | 15 karena
Contoh 2.2
Bilangan bulat 200 mempunyai beberapa pembagi berikut:
Oleh karena itu, sebagai contoh, dapat ditulis
, , , , .
Berikut ini akan ditunjukkan beberapa sifat dasar pembagi.
Teorema 2.1 (Sifat-sifat Membagi) Misalkan , berlaku:
, , dan .
jika dan hanya jika .
Jika dan , maka | | | |.
Jika dan , maka untuk setiap .
Bukti:
Sifat : karena , karena , karena
.
(29)
, atau , Sifat : jika , maka terdapat sedemikian sehingga .
Karena mengakibatkan . Bila kedua ruas diambil nilai mutlaknya, diperoleh:
| | | | | || |.
Karena berarti | | sehingga | | | || | | |. Sifat : bila dan maka dan , untuk suatu
. Dengan demikian:
.
Karena , dapat dikatakan bahwa .∎
2. Algoritma Pembagian
Teorema berikut, yaitu Teorema Pembagian, akan berperan sebagai
batu pondasi untuk pembahasan-pembahasan yang selanjutnya. Secara
garis besar, teorema tersebut menegaskan bahwa suatu bilangan bulat
dapat “dibagi” dengan bilangan bulat positif dengan sedemikian cara bahwa sisanya lebih kecil dari . Pernyataan yang lebih rinci untuk
teorema tersebut ada pada Teorema 2.2 berikut.
Teorema 2.2 (Algoritma Pembagian)
Jika dan , maka terdapat dengan tunggal bilangan bulat dan sedemikian sehingga dimana .
Bilangan bulat disebut hasil bagi dalam membagi dengan ; bulangan bulat disebut sisa dalam membagi dangan .
(30)
Bukti:
Terdapat dua bagian untuk membuktikannya, yang pertama adalah
eksistensi dan yang kedua adalah ketunggalan.
Perhatikan himpunan { | merupakan suatu bilangan bulat dan .
Jika , maka
untuk suatu bilangan bulat
. (b membagi a)
Hasil yang diinginkan dapat diperoleh dengan dan . Asumsikan . Karena tak-kosong,
[Jika maka ; jika maka
; karena ]
maka dapat diterapkan Well Ordering Principle untuk menyimpulkan bahwa S mempunyai anggota terkecil, sebut . Berarti terdapat bilangan bulat sehingga . Maka dan .
Akan dibuktikan bahwa sisa . Andaikan , maka
(31)
berarti . Tetapi , berarti bukan yang terkecil, sedangkan merupakan anggota terkecil dari
. Muncul kontradiksi. Jadi, .
Untuk membuktikan ketunggalan dari dan , dimisalkan bahwa
terdapat bilangan bulat dan sedemikian sehingga
, dan
,
Karena , salah satu lebih besar atau sama dengan yang lainnya, misal . Dari persamaan diperoleh , sedangkan dari persamaan diperoleh . Dengan mengurangkan keduanya maka dihasilkan:
.
Di sisi lain, dan kurang dari . Sebelumnya juga telah dimisalkan
bahwa , maka . Dengan demikian,
Tetapi, merupakan bilangan bulat, jadi ketidaksamaan ini berlaku jika dan hanya jika . Dengan kata lain, . Sehingga mengakibatkan
(32)
. ∎
Contoh 2.3
Untuk dan , berlaku:
dan untuk dan , berlaku:
.
3. Faktor Persekutuan Terbesar Definisi2.2 (Faktor Persekutuan)
Suatu bilangan bulat disebut faktor persekutuan dari bilangan bulat a dan b jika d membagi a dan b, yaitu: jika dan .
Karena adalah pembagi setiap bilangan bulat, maka adalah faktor
persekutuan dari dan . Oleh karena itu, himpunan faktor persekutuan
yang positif adalah tak-kosong. Setiap bilangan bulat membagi nol,
karena itu jika , maka setiap bilangan bulat merupakan faktor persekutuan dan . Dalam hal ini, himpunan faktor persekutuan yang
positif dari adalah tak-berhingga. Tetapi, apabila setidaknya salah satu dari atau yang tidak sama dengan nol, maka terdapat
berhingga banyak faktor persekutuan yang positif. Diantaranya, terdapat
(33)
Definisi 2.3 (Faktor Persekutuan Terbesar)
Jika a dan b adalah bilangan bulat yang keduanya tak-nol, maka faktor persekutuan terbesar d dari a dan b adalah faktor persekutuan yang paling besar dari a dan b. Faktor persekutuan terbesar dari a dan b ditulis sebagai:
.
Apabila , maka a dan b dikatakan relatif prima.
Contoh 2.4
Hitunglah ! Perhatikan pembagi 24 yaitu:
, dan pembagi 32 yaitu:
. Dengan demikian, faktor persekutuan dari 24 dan 32 yaitu:
.
Berdasarkan faktor persekutuan di atas, didapat faktor persekutuan yang
terbesar dari 24 dan 32 yaitu 8. Jadi, .
Teorema berikut akan menunjukkan bahwa dapat dinyatakan sebagai kombinasi linear dari dan .
Teorema 2.3 (FPB merupakan Kombinasi Linear)
Jika dan adalah bilangan bulat yang keduanya bukan nol, maka
(34)
.
Bukti:
Misalkan himpunan merupakan semua kombinasi linear positif dari
dan :
{ merupakan bilangan bulat . Akan ditunjukkan bahwa tak-kosong.
Jika , maka , dimana ; jika , maka , dimana .
Menurut Well-Ordering Principle, mempunyai elemen terkecil, misal
. Dengan demikian, berdasarkan definisi , terdapat bilangan bulat
dan sedemikian sehingga dapat dinyatakan bahwa
.
Dengan Algoritma Pembagian, dapat diperoleh bilangan bulat dan
sedemikian sehingga , dimana . Kemudian dapat ditulis ke dalam bentuk
.
Jika adalah positif, maka merupakan anggota . Muncul kontradiksi,
padahal elemen terkecil dari (ingat kembali bahwa ). Oleh karena itu, , sehingga atau dengan kata lain . Untuk
(35)
membuat sebagai faktor persekutuan dari dan , maka masih harus dibuktikan .
Misal, terdapat bilangan bulat dan sedemikian sehingga , dimana . Kemudian dapat ditulis ke dalam bentuk
.
Jika , maka merupakan anggota . Muncul kontradiksi, padahal elemen terkecil dari (ingat kembali bahwa ). Oleh karena itu,
, sehingga atau dengan kata lain .
Jika adalah sembarang faktor persekutuan positif dari bilangan bulat
dan , maka dengan menggunakan sifat dalam Teorema 2.1 dapat disimpulkan bahwa , dengan kata lain . Dengan sifat dalam Teorema 2.1, didapat | | | | , oleh karena itu lebih besar dari setiap faktor persekutuan positif dari dan . Dengan
demikian, . ∎
Teorema berikut ini memperkenalkan hubungan antara bilangan
bulat yang relatif prima di dalam bentuk kombinasi linear.
Teoreme 2.4 (Relatif Prima)
Misalkan , keduanya tidak nol. Maka dan relatif prima jika dan hanya jika terdapat sedemikian sehingga
(36)
.
Bukti:
Misal dan relatif prima, berarti . Maka Teorema 2.3 menjamin bahwa terdapat yang memenuhi .
Misalkan untuk sembarang , dan
. Ini berarti dan . Menurut sifat dalam Teorema 2.2, maka
.
Menurut Sifat dalam Teorema 2.1, berarti atau . Karena , maka diperoleh . Dengan demikian, disimpulkan bahwa dan relatif prima. ∎
4. Persamaan Diophantine
Menurut Teorema 2.3, diketahui bahwa untuk bilangan bulat positif
dan , terdapat bilangan bulat dan sedemikian sehingga
. Hal ini memunculkan pertanyaan: Dengan bilangan bulat
yang telah ditentukan dan tidak keduanya nol, apakah dapat ditemukan penyelesaian untuk persamaan
(37)
dimana ? Persamaan dari bentuk ini disebut persamaan Diophantine. Penyelesaian dari persamaan tersebut adalah pasangan bilangan bulat yang ketika disubstitusikan akan memenuhi persamaan tersebut, yaitu .
Teorema berikut akan memberikan syarat perlu dan cukup untuk
persamaan Diophantine menghasilkan penyelesaian bilangan bulat.
Teorema 2.5
Persamaan Diophantine mempunyai penyelesaian jika dan hanya jika , dimana .
Bukti:
Untuk berarti terdapat bilangan bulat dan sedemikian sehingga dan . Jika mempunyai penyelesaian, berarti untuk dan yang bersesuaian, sehingga
dan dapat dikatakan bahwa
Untuk sebaliknya, andaikan bahwa , berarti untuk suatu bilangan bulat . Dengan menggunakan Teorema 2.3, terdapat bilangan
bulat dan yang memenuhi . Sehingga apabila dikalikan dengan , maka dapat diperoleh
(38)
.
Oleh karena itu, persamaan Diophantine mempunyai penyelesaian tertentu yaitu dan . ∎
(39)
B. TEORI KEKONGRUENAN 1. Sifat-sifat Dasar Kekongruenan
Salah satu aplikasi dari algoritma pembagian yang cukup penting
adalah arimetika modulo. Arimetika modulo merupakan suatu penerapan
metode menghitung yang sering digunakan. Sebagai contoh, jika
sekarang adalah September, bulan apakah yang akan muncul bulan dari sekarang? Tentu saja jawabannya adalah Oktober, tetapi hal yang
menarik adalah jawabannya tidak diperoleh dengan menghitung bulan mulai dari September. Daripada melakukan hal yang demikian, dengan
mudah mengamati bahwa , dan dengan menambahkan bulan terhadap September maka jawabannya adalah Oktober. Dengan
cara yang sama, jika sekarang adalah hari Rabu, maka dapat diketahui
bahwa hari yang akan datang adalah hari Jumat. Dalam hal ini, jawaban dapat diperoleh dengan menulis bahwa , jadi cukup dengan menambahkan hari terhadap hari Rabu daripada harus
menghitung sampai hari.
Ketika a = qn + r, dimana adalah hasil bagi dari dengan dan adalah sisa dari pembagian dengan , dapat ditulis sebagai
atau . Dengan demikian,
karena ,
karena ,
(40)
Secara lebih umum dapat ditulis dalam definisi berikut.
Definisi 2.4 (Kongruen)
Misalkan dan adalah bilangan bulat positif, dikatakan bahwa
kongruen mod , ditulis
jika . Bilangan bulat positif disebut modulus.
Jika membagi selisih , hal ini menunjukkan bahwa
untuk suatu k anggota bilangan bulat. Ketika , dapat dikatakan bahwa tak kongruenterhadap modulo , dan dalam hal ini ditulis .
Dalam definisi 2.4, terdapat pilihan untuk , dapat dilihat bahwa
setiap bilangan bulat kongruen modulo ke salah satu dari nilai-nilai ,
, , . . . , . Secara khusus, jika dan hanya jika . Himpunan bilangan bulat { disebut himpunan sisa-sisa tak-negatif terkecil modulo atau .
Contoh 2.5
Misal .
Ini karena yaitu .
Contoh 2.6
Misal karena
(41)
Teorema berikut akan memberikan manfaat dari kongruen modulo
di dalam bentuk sisa-sisa pembagian dengan .
Teorema 2.6
Untuk bilangan bulat dan yang berbeda, jika dan hanya jika dan meninggalkan sisa-sisa tak-negatif yang sama ketika
dibagi dengan .
Bukti:
Misal , berarti
untuk suatu . Misalkan sisa dari bila dibagi dengan , adalah , yaitu:
, dimana . Oleh karena itu,
,
Ini menunjukkan bahwa mempunyai sisa yang sama dengan , yaitu .
Misal dan meninggalkan sisa yang sama ketika dibagi dengan berarti dapat ditulis bahwa dan dimana
. Maka
(42)
.
Ini berarti . Menurut Definisi 2.4, dapat ditulis
. ∎
Contoh 2.7
Perhatikan bilangan bulat dengan , dan . Keduanya ( dan ) dapat dinyatakan ke dalam bentuk:
dan
dengan sisa yang sama yaitu . Menurut Teorema 2.2, dapat ditulis
bahwa
.
Begitu juga dengan, mengakibatkan dan mempunyai sisa yang sama ketika dibagi dengan , yaitu:
dan .
Kongruensi dapat dilihat sebagai generalisasi bentuk kesamaan
(equality), dalam pengertian bahwa sifatnya terhadap penjumlahan dan perkalian mengingatkan kepada kesamaan biasa. Beberapa sifat dasar
kesamaan yang berlaku terhadap kekongruenan muncul dalam teorema
(43)
Teorema 2.7 (Sifat-sifat Dasar Kekongruenan)
Misalkan dan bilangan bulat yang berbeda. Maka berlaku sifat berikut:
. (SifatRefleksif)
Jika , maka . (SifatSimetris)
Jika dan , maka . (SifatTransitif)
Jika dan , maka
dan .
Jika , maka dan
.
Bukti:
Untuk sifat , karena , berarti . Dengan demikian .
Untuk sifat , andaikan maka dapat ditulis untuk suatu . Dengan mengkalikan terhadap kedua ruas, maka diperoleh:
. Karena , berarti dapat ditulis .
(44)
Untuk sifat , misalkan bahwa dan . Maka terdapat yang memenuhi dan . Ini berarti
yang dapat ditulis sebagai .
Untuk sifat , misalkan bahwa dan . Maka terdapat yang memenuhi dan
. Ini berarti
.
Begitu juga,
kedua ruas ditambah Karena dan , hal ini menunjukkan bahwa dan dapat dibagi dengan . Oleh karena itu, dari dan dapat ditulis ke dalam bentuk kongruen yaitu: dan .
(45)
Untuk membuktikan sifat cukup dengan menggunakan sifat dan sifat dimana . Sehingga dan
∎
Di dalam penerapannya, ketika ingin menghitung atau
, dan a atau b yang lebih besar dari n, akan lebih mudah
dengan menghitung “mod first”. Sebagai contoh, untuk menghitung
perhatikan bahwa dan , sehingga diperoleh .
Contoh 2.8
Tentukan, , dan !
, karena .
, karena .
Untuk beberapa materi yang akan datang akan sering dihadapkan
dengan masalah dalam menyelesaikan kekongruenan
untuk suatu .
Kunci untuk menyelesaikan masalah yang demikian adalah gagasan
(46)
Definisi 2.5 (Invers Modulo)
Misalkan . Bilangan disebut sebagai invers perkalian dari modulo , jika
.
Invers perkalian dari modulo biasa ditulis .
Teorema 2.8 (Invers Perkalian Modulo)
Bilangan mempunyai invers perkalian modulo jika dan hanya jika .
Bukti:
Andaikan mempunyai invers modulo , sebut . Maka mengakibatkan , untuk . Dapat ditulis dengan . Menurut Teorema 2.4, berarti dan relatif prima atau .
Misalkan , maka menurut Teorema 2.4 dapat ditulis dalam bentuk . Ini berarti yang mengakibatkan
. Dengan demikian
(47)
Contoh 2.9
Bilangan bulat mempunyai invers perkalian modulo 26 karena dan
relatif prima. Invers perkalian tersebut dapat diperoleh dengan menemukan yang memenuhi kekongruenan
.
Kekongruenan ini dapat diselesaikan dengan mencoba
penyelesaian-penyelesaian yang mungkin, yaitu . Dengan cara ini akan diperoleh sebagai penyelesaian dari kekongruenan tersebut, karena
Dengan demikian, .
2. Kekongruenan Linear
Suatu persamaan yang berbentuk disebut sebagai
kekongruenan linear, dan penyelesaian untuk pesamaan tersebut adalah suatu bilangan bulat sedemikian sehingga . Dengan menggunakan Definisi 2.4, jika dan hanya jika
.
Untuk elemen-elemen dari yang manakah sehingga
kekongruenan
berlaku? Dapat dianggap bahwa kekongruenan linear jenis ini harus
mempunyai satu penyelesaian, tetapi dengan memeriksa sembilan elemen
(48)
dan . Hal ini karena , , dan
. Dengan demikian, telah ditunjukkan bahwa kekongruenan tersebut mempunyai tiga penyelesaian: ,
dan .
Beberapa kekongruenan linear tidak mempunyai penyelesaian.
Sebagai contoh,
tidak mempunyai penyelesaian. Andaikan merupakan
penyelesaiannya, maka dapat terdapat bilangan bulat sedemikian
sehingga
.
Dapat dilihat, ruas kiri dapat dibagi dengan 3 sedangkan ruas kanan tidak
dapat dibagi dengan 3, dengan demikian diperoleh kontradiksi.
Kapan suatu kekongruenan dari bentuk
mempunyai penyelesaian di dalam ? Berdasarkan contoh di atas, dapat
dilihat bahwa diperlukan syarat mempunyai penyelesaian, yaitu semua
faktor persekutuan dari dan harus membagi .
Teorema 2.9 (Kekongruenan Linear)
Kekongruenan linear mempunyai penyelesaian jika dan hanya jika , dimana
(49)
Bukti:
Kekongruenan dapat ditulis ke dalam bentuk
.
Kekongruenan tersebut mempunyai penyelesaian jika dan hanya jika
terdapat sedemikian sehingga .
Pada pembahasan yang sebelumnya telah dipelajari mengenai Persamaan
Diophantine, dapat dikatakan bahwa persamaan ekuivalen dengan persamaan linear Diophantine, yaitu:
.
Dengan kata lain, kekongruenan tersebut mempunyai penyelesaian jika
dan hanya jika persamaan linear Diophantine mempunyai penyelesaian.
Menurut Teorema 2.5, dapat disimpulkan bahwa kekongruenan tersebut
mempunyai penyelesaian jika dan hanya jika , dimana
. ∎
Akibat 2.10
Kekongruenan linear mempunyai penyelesaian tunggal
jika dan hanya jika .
Bukti:
Menurut Teorema 2.9, kekongruenan linear mempunyai penyelesaian jika dan hanya jika . Karena
(50)
dan menurut Teorema 2.8, berarti kekongruenan linear
mempunyai penyelesaian .
Untuk menunjukkan ketunggalan dari penyelesaian tersebut, dimisalkan terdapat dan .
Menurut Teorema 2.7 , dapat ditulis sebagai
dan menurut Teorema 2.7 maka
.
Dengan menggunakan Teorema 2.7 , kekongruenan di atas berlaku apabila . ∎
(51)
C. MATRIKS
1. Notasi dan Istilah-istilah Matriks
Matriks merupakan susunan bilangan-bilangan yang berbentuk
segiempat. Bilangan-bilangan tersebut disebut elemen-elemen. Matriks yang mempunyai baris dan kolom dikatakan berukuran
(dibaca “ kali ”). Perhatikan beberapa contoh berikut:
[ ]
,
, [ ], , [ ].
Untuk menyatakan suatu matriks biasanya menggunakan huruf kapital,
dan untuk menyatakan elemen-elemen dari matriks tersebut digunakan
huruf kecil. Secara lebih umum, suatu matriks berukuran dinyatakan sebagai berikut:
[
].
Matriks di atas dapat dinotasikan dengan [ ]
atau [ ],
dimana dan . Matriks yang mempunyai baris dan kolom disebut mariks persegi. Elemen-elemen , , . . . , disebut sebagai diagonal utama dari matriks tersebut.
(52)
[
]
Gambar 2.1: Diagonal Utama Matriks
Matriks persegi dengan elemen-elemen yang terletak sepanjang
diagonal utama dan selain diagonal utamanya disebut matriks identitas. Matriks identitas dinotasikan dengan .
Gambar 2.2: Matriks Identitas
Simbol atau digunakan untuk menyatakan elemen pada baris dan kolom dari matriks . Sebagai contoh, jika
maka , , , dan .
2. Invers Matriks
Dalam aritmetika biasa, setiap bilangan taknol mempunyai
kebalikan (reciprocal) dengan sifat
(53)
Bilangan kadang disebut invers perkalian . Pembahasan selanjutnya adalah untuk melihat hasil yang analog ini dalam aritmetika
matriks.
Definisi 2.6 (Invers Matriks)
Jika merupakan matriks persegi, dan jika terdapat matriks dengan
ukuran yang sama seperti sedemikian sehingga
maka dikatakan invertibel (atau tak singular), dan disebut invers
dari . Jika tidak terdapat matriks dengan sifat ini, maka dikatakan
singular.
Perhatikan bahwa syarat tidak berubah dengan menukar dan . Dengan demikian, jika invertibel dan invers dari
, maka invertibel dan invers dari juga benar. Karena itu, ketka
syarat berlaku, hal ini benar untuk mengatakan bahwa dan merupakan invers satu sama lain.
Contoh 2.10:
Misal
dan . Maka
(54)
.
(
.
Dengan demikian, dan invertibel dan masing-masing invers satu
sama lain.
Selanjutnya dalam bagian ini akan dibicarakan metode yang umum
untuk menghasilkan invers dari suatu matriks invertible. Tetapi, dalam
kasus sederhana dari matriks invertibel berukuran , inversnya dapat diperoleh menggunakan rumus dalam teorema berikut.
Teorema 2.11 (Invers Matriks )
Matriks
adalah invertible jika dan hanya jika ,
dalam kasus dimana invers diberikan dengan rumus
Bukti:
MIsal
dan (
(55)
( )
Pembagian dari elemen-elemen matriks di atas dapat dilakukan jika dan
hanya jika penyebut tidak sama dengan nol. Berarti, . Sehingga dihasilkan . Begitu juga ( ) . ∎
(56)
Kuantitas dalam teorema di atas disebut determinan matriks berukuran dan dinotasikan dengan
.
Dengan istilah determinan, Teorema (diatas) mengatakan bahwa matriks
berukuran invertibel jika dan hanya jika .
Contoh 2.11:
Tentukan invers matriks
.
Karena , maka invertibel dan
(
)
3. Determinan secara Umum
Sebelumnya telah diungkit mengenai determinan matriks berukuran
yaitu . Untuk memperluas definisi terhadap matriks dengan orde yang lebih tinggi, akan bermanfaat dengan
menggunakan penulisan elemen-elemen , dimana menjadi
| | . . . .
Ini disebut determinan . Determinan matriks berukuran , juga disebut determinan , didefinisikan dengan rumus
(57)
|
|
. . . .
Untuk memperluas definisi determinan terhadap matriks akan bermanfaat dengan memeriksa struktur Rumus dan . Determinan dari kedua rumus tersebut merupakan penjumlahan dari hasil
kali, masing-masing mempunyai tepat satu elemen dari setiap baris dan
satu elemen dari setiap kolom dari matriks tersebut. Oleh karena itu,
didefinisikan suatu hasil kali elementer dari matriks berorde sebagai hasil kali elemen dari matriks , dimana tidak ada yang berasal
dari dua baris atau kolom yang sama. Dengan demikian, jika [ ], maka setiap hasil kali elementer dinyatakan dalam bentuk
. . . .
dimana indeks kolom membentuk permutasi bilangan bulat { dari sampai dan indeks baris dalam urutan asli.
Hasil kali elementer yang dihubungkan dengan tanda atau – disebut hasil kali elementer bertanda. Tanda yang mendahului hasil kali
elementer berhubungan dengan permutasi dari indeks kolom. Lebih
tepatnya, tanda untuk setiap hasil kali elementer dapat ditentukan dengan
menghitung jumlah minimum pertukaran (the minimum number of interchanges) dalam permutasi dari indeks kolom yang diperlukan untuk
(58)
menempatkan indeks-indeks tersebut menjadi urutan aslinya: tanda
jika jumlahnya genap dan tanda – jika jumlahnya ganjil. Sebagai contoh, dalam Rumus :
untuk determinan , hasil kali elementer menggunakan tanda tambah karena permutasi { dari indeks kolomnya telah sesuai dengan urutan asli (sehingga jumlah minimum pertukaran yang diperlukan untuk
menempatkan indeks tersebut dalam urutan asli adalah , yang adalah
bilangan bulat genap). Dengan cara yang sama, hasil kali elementer
menggunakan tanda kurang karena permutasi { dari indeks
kolom memerlukan pertukaran untuk menempatkan mereka dalam
urutan asli.
Definisi 2.7: (Determinan)
Determinan suatu matriks persegi dinotasikan dengan dan didefinisikan sebagai penjumlahan semua hasil kali elementer bertanda
dari matriks .
Determinan matriks juga dapat ditulis dalam notasi palang tegak
| | |
(59)
Kita akan sebut ini determinan atau determinan orde ke- . Ketika tidak menyusahkan, Definisi 2.7 dapat dinyatakan dalam notasi
∑ . . . .
dimana ∑ dan bermaksud untuk mengusulkan bahwa hasil kali elementer bertanda dijumlahkan terhadap semua kemungkinan permutasi
{ darik indeks kolom.
4. Determinan Matriks (Ekspansi Kofaktor)
Akan dikembangkan cara untuk menghitung determinan yang
berdasarkan determinan dengan orde yang lebih rendah.
Definisi 2.8 (Minor dan Kofaktor)
Jika adalah matriks persegi, maka minor dari elemen (juga disebut minor ke- dari ) dinotasikan dengan dan didefinisikan sebagai determinan submatriks ketika baris ke- dan kolom ke- dari dihapus.
Bilangan disebut kofaktor dari elemen (atau kofaktor ke- dari ).
(60)
Contoh 2.12:
Misal (
.
Minor dari elemen adalah
| |
dan kofaktor yang bersesuaian adalah
.
Minor dari elemen adalah
| |
dan kofaktor yang bersesuaian adalah
.
Akan ditunjukkan bagaimana determinan dapat dinyatakan dalam bentuk determinan . Ingat bahwa determinan dari matriks didefinisikan sebagai
. . . .
(61)
Tetapi, pernyataan dalam tanda kurung adalah kofaktor , , dan , sehingga dapat ditunjukkan bahwa
.
Dalam kata-kata, rumus ini menyatakan bahwa dapat diperoleh dengan mengalikan setiap elemen pada kolom pertama matriks dengan
kofaktornya dan menambahkan hasil kali yang dihasilkan. Tidak ada
yang spesial tentang kolom pertama, dengan mengelompokkan
suku-suku dalam Rumus , dapat ditunjukkan bahwa terdapat enam rumus:
. . . .
Ini disebut ekspansi kofaktor dari . Sebagai catatan bahwa dalam setiap
ekspansi kofaktor, elemen dan kofaktor berasal baris yang sama atau
(62)
Contoh 2.13:
Tentukan determinan matriks berikut dengan ekspansi kofaktor pada kolom pertama:
|
| | | | | | |
.
Ekspansi kofaktor untuk determinan matriks merupakan kasus khusus dari teorema berikut, yang dinyatakan tanpa bukti.
Teorema 2.12 (Ekspansi Kofaktor)
Determinan matriks berukuran dapat dihitung dengan mengalikan elemen-elemen di sembarang baris (atau kolom) dengan
kofaktornya dan menjumlahkan hasil kali yang dihasilkan; yaitu untuk
setiap dan ,
(ekspansi kofaktor sepanjang kolom ke-)
dan
(63)
5. Rumus untuk
Pada bagian ini akan digunakan deteminan dalam menghasilkan
rumus untuk invers suatu matriks. Dalam ekspansi kofaktor, dihitung dengan mengalikan elemen-elemen di sembarang baris atau
kolom dengan kofaktornya dan menjumlahkan hasil kali.
Definisi 2.9 (Matriks Kofaktor)
Jika adalah matriks dan adalah kofaktor dari , maka matriks
disebut matriks kofaktor dari . Transpose dari matriks ini disebut
adjoint dari dan dinotasikan dengan .
Contoh 2.14:
Kofaktor dari matriks (
adalah
(64)
(
dan (
.
Sekarang saatnya untuk menurunkan rumus untuk invers matriks
invertibel.
Teorema 2.13 (Matriks Invers) Jika adalah matriks invertibel, maka
. . . .
Bukti:
Pertama akan ditunjukkan bahwa . Untuk tujuan ini, andaikan hasilkali ( )
Dapat dilihat bahwa elemen pada baris ke- dan kolom ke- dari hasil kali
ini adalah
.
Dalam kasus dimana , elemen dan kofaktor dari baris yang sama dari , jadi merupakan ekspansi kofaktor dari sepanjang baris
(65)
tersebut. Dalam kasus dimana , elemen dan kofaktor dari baris yang berbeda, jadi penjumlahannya adalah nol menurut Teorema 4.3.1 (Anton
dan Busby, 2003 : 196). Dengan demikian,
.
Karena invertibel, ini berarti bahwa , jadi persamaan ini dapat ditulis kembali sebagai
[ ]
yang mana Rumus sekarang berlaku. ∎
Contoh 2.15:
Gunakan Rumus untuk menentukan invers matriks dalam contoh sebelumnya.
(
(66)
( )
6. Aritmetika Modulo untuk Matriks
Tujuan selanjutnya adalah menggeneralisasi perhitungan modular
terhadap matriks. Sebuah matriks yang diambil dari elemen-elemen
bilangan bulat adalah mudah, cukup mengambil untuk masing-masing elemen. Sebagai contoh,
( ( .
Penjumlahan, pengurangan, dan perkalian sama mudah. Pertama lakukan
penjumlahan, pengurangan, atau perkalian seperti biasanya dan ambil
hasil tersebut , yaitu ambil setiap elemen .
Contoh 2.16:
Misal
dan .
Tentukan , , dan !
(67)
.
.
(
.
Bekerja dengan matriks menggunakan aritmetika modulo dapat menjadi
menantang. Hal ini dikarenakan perhitungan yang dilakukan tidak sama
saat bekerja pada lapangan seperti . Sebelum bekerja pada modulo
matriks, perlu diingat notasi-notasi dasar dan teori di dalam aritmetika
modulo.
Definisi 2.10 (Kekongruenan Matriks)
Andaikan dan adalah matriks. Maka merupakan matriks yang diperoleh dengan mengurangi (mereduksi) setiap elemen matriks
dengan . Matriks dan disebut kongruen jika elemen-elemen yang bersesuaian dari mariks dan kongruen. Matriks kongruen
(68)
Perlu diingat, modulo memenuhi semua sifat lapangan, kecuali
satu yaitu tidak semua bilangan mempunyai invers perkalian. Misalkan
diberikan , belum tentu terdapat yang memenuhi
.
Hal pertama yang dapat diamati tentang adalah bahwa penjumlahan
matriks, perkalian matriks, dan determinan matriks akan bekerja pada
seperti halnya pada . Operasi-operasi matriks ini didefinisikan dalam
istilah-istilah penjumlahan skalar dan perkalian elemen-elemen matriks.
Semua operasi-operasi terhadap modulo ini dapat ditunjukkan seperti
halnya pada lapangan. Contoh berikut memberikan penjelasan perkalian
matriks di , yang akan menjadi ide dasar dari Sandi Hill pada BAB III.
Contoh 2.17:
Misalkan matriks
dan . Maka
[ ]
(69)
Seperti yang telah dikatakan sebelumnya, tidak semua bilangan
mempunyai invers perkalian. Ini merupakan perbedaan penting untuk
mendekripsi pesan yang terenkripsi menggunakan Sandi Hill, diperlukan
untuk menemukan invers dari matriks kunci. Jika ingin menghitung
invers matriks, baik itu dengan reduksi baris atau ekspansi kofaktor,
maka diperlukan invers perkalian bilangan-bilangan. Namun, dengan
menggunakan Teorema 2.8 dapat membantu dalam menentukan invers
perkalian di dalam modulo.
Berdasarkan teorema tersebut, dapat dilihat jika adalah bilangan
prima, maka setiap bilangan taknol di dalam mempunyai invers
perkalian (dan oleh karena itu adalah lapangan). Tetapi, bila bukan
bilangan prima, maka tidak semua anggota mempunyai invers.
Sebagai contoh, di dalam hanya yang relatif prima terhadap , dan invers-inversnya adalah:
, , , , , , dan .
Sekarang setelah mengetahui invers bilangan, maka dapat melanjutkan ke
invers matriks.
Definisi 2.11 (Invers)
Misal merupakan matriks dengan elemen-elemen di . Matriks
(70)
invers kanan dari matriks jika , dimana semua operasi dilakukan di dalam modulo . Secara ekuivalensi dapat ditulis dengan
atau . Matriks disebut invers dari matriks jika merupakan invers kiri dan invers kanan dari matriks .
Contoh 2.18:
Misal (
matriks yang elemen-elemennya anggota ,
( ( ( ( ( (
maka (
adalah invers . Dapat diuji dengan melihat
hasil kali kedua matriks dari kiri maupun kanan akan menghasilkan
matriks identitas, dimana setiap perhitungan menggunakan modulo 26.
( ( ( ( .
(71)
(
(
(
(
.
Teorema 2.14 (Syarat untuk Invers pada Modulo)
Suatu matriks persegi adalah invertibel pada jika dan hanya jika
determinan matriks mempunyai invers di dalam . Jika matriks
adalah invertibel, maka matriks tunggal dalam modulo. Jika matriks mempunyai invers kiri atau invers kanan, maka matriks invers kiri
maupun inver kanan tersebut adalah inversnya.
Bukti:
Andaikan matriks adalah invertibel. Maka
dan
jadi determinan mempunyai invers perkalian.
Sebaliknya, jika determinan mempunyai invers perkalian, maka rumus kofaktor untuk invers akan menghasilkan tanpa menggunakan sembarang invers perkalian selain invers determinan. Kita belum
(72)
membuktikan bahwa invers kanan dalam modulo juga merupakan
invers kiri , jadi kita harus memeriksa bahwa matriks invers yang
diberikan dalam metode ini adalah invers kanan dan kiri .
Rumus kofaktor untuk determinan dan invers dari matriks berukuran
akan digunakan seperti yang dinyatakan dan dibuktikan (Treil, 2009) dengan sedikit perubahan notasi. Misal merupakan elemen matriks pada baris ke- dan kolom ke- . Misal merupakan matriks yang dibentuk dengan menghilangkan baris dan kolom dari matriks .
Misal ( .
Untuk setiap baris pada matriks ,
∑
Untuk setiap kolom ,
∑
Misal adalah matriks yang dibentuk dengan meletakkan kofaktor dari matriks pada baris dan kolom . Maka
(73)
Untuk menunjukkan bahwa ini merupakan invers kiri dengan
menghitung . Elemen matriks adalah
∑
Elemen matriks , dimana adalah
∑
yang mana determinan tersebut untuk matriks seperti dimana kolom
diganti dengan kolom . Matriks ini mempunyai dua kolom yang sama,
sehingga determinannya nol. Dengan demikian, semua elemen bukan
diagonal utama dari adalah nol dan semua elemen diagonal utama
adalah . Sehingga
.
berarti ( merupakan invers kiri dari matriks . Bukti untuk invers kanan mirip, dan telah diberikan oleh Treil (2009). Ini berarti
bahwa matriks yang determinannya mempunyai inverse perkalian
(74)
Misal merupakan invers kofaktor ( . Setiap invers kiri dan setiap invers kanan dari matriks akan buktikan sama dengan .
Andaikan matriks merupakan invers kiri dari matriks . Maka, dengan
menggunakan operasi pada modulo ,
dan . Dengan demikian, matriks .
Andaikan merupakan invers kanan dari matriks . Maka
dan , berarti . Hal ini membuktikan bahwa invers dari matriks
terhadap modulo adalah tunggal. Dengan demikian, setiap invers kiri
atau invers kanan adalah invers, karena sama dengan yang merupakan
(75)
D. FUNGSI
Definisi 2.12 (Fungsi atau Pemetaan)
Fungsi (atau pemetaan) dari himpunan ke adalah aturan yang
memasangkan setiap elemen dengan tepat satu elemen . Himpunan disebut domain dari dan himpunan disebut kodomain dari
. Jika memasangkan ke , maka disebut peta terhadap .
Untuk mempersingkat penulisan, dapat ditulis dengan yang berarti bahwa memetakan ke . Ditulis atau yang menyatakan bahwa memetakan ke .
Secara simbolis definisi fungsi dapat ditulis
.
bukan fungsi bukan fungsi fungsi
Gambar 2.3: Fungsi
(76)
Definisi 2.13 (Komposisi Fungsi)
Misal dan . Komposisi adalah pemetaan dari himpunan ke himpunan yang didefinisikan oleh
( untuk semua . Komposisi fungsi dapat digambarkan seperti pada Gambar 2.4.
Pada pelajaran kalkulus, komposisi dari dengan g ditulis g
dan didefinisikan sebagai g . Ketika fungsi disusun, tanda “lingkaran”
dihilangkan.
a
(
Gambar 2.4: Komposisi fungsi dan .
Definisi 2.14 (Fungsi One-to-One)
Suatu fungsi dari himpunan ke himpunan disebut one-to-one (injektif) jika untuk setiap , mengakibatkan .
Istilah one-to-one memastikan bahwa satu elemen merupakan peta hanya dari satu elemen . Dengan kata lain, adalah one-to-one jika
(77)
berbeda dari memetakan di elemen-elemen yang berbeda dari . Lihat
Gambar 2.5.
Fungsi adalah one-to-one bukan fungsi one-to-one Gambar 2.5: Fungsi one-to-one
Definisi2.15 (Fungsi onto)
Suatu fungsi dari himpunan ke himpunan dikatakan onto jika setiap elemen adalah peta dari paling sedikit satu elemen . Dengan simbol,
adalah onto jika untuk setiap , terdapat setidaknya satu
sedemikian sehingga . Lihat Gambar 2.6.
Fungsi adalah onto bukan fungsi onto Gambar 2.6: Fungsi onto
(78)
Definisi 2.16 (Fungsi Bijektif)
Fungsi dari himpunan ke himpunan dikatakan bijektif jika dan hanya jika one-to-one dan onto. Lihat Gambar 2.7
Gambar 2.7: Fungsi bijektif
(79)
63
BAB III
KRIPTOGRAFI KLASIK
A. KRIPTOGRAFI
Definisi dan Konsep Kriptografi/ Istilah-istilah
Istiah kriptografi berasal dari bahasa Yunani, kryptos yang berarti
“rahasia, tersembunyi”, dan graphos yang berarti “tulisan”. Istilah kriptografi mengarah kepada aktivitas dalam merencanakan cara yang aman
untuk berkomunikasi secara rahasia antara dua atau lebih pihak, dan untuk
melakukan cara-cara yang dimaksud merupakan tugas dari pihak-pihak
tersebut. Pihak-pihak tersebut dapat disebut sebagai kriptografer.
Definisi 3.1 (Kriptografi)
Kriptografi adalah teknik untuk menyamarkan dan memproteksi pesan. Pesan yang asli disebut teks-asal (plaintext), pesan yang disamarkan disebut
teks-sandi (ciphertext).
Persoalan utama di dalam kriptografi adalah bagaimana cara pihak
satu, yang disebut “pengirim”, mengirimkan pesan ke pihak lainnya, yang disebut “penerima”, dengan berbagai cara yang dilakukan sehingga tidak ada pihak lain yang dapat mengetahui isi pesan tersebut. Pihak lain yang
dimaksud yaitu musuh atau lawan yang ingin tahu isi pesan yang asli. Dalam hal ini, pengirim mengubah teks-asal menjadi bentuk lain yang tidak
(80)
mudah dipahami yang disebut teks-sandi. Proses ini disebut enkripsi. Sedangkan proses yang sebaliknya disebut dekripsi, yaitu proses mengubah teks-sandi menjadi teks-asal. Untuk melakukan enkripsi dan dekripsi
diperlukan kunci (key). Kunci ini sangat penting dan rahasia.
Enkripsi merupakan proses yang penting dalam kriptografi. Seperti
yang telah dijelaskan singkat sebelumnya, enkripsi merupakan suatu proses
dimana teks-asal diubah menjadi teks-sandi. Proses ini bertujuan agar isi
pesan yang dikirim tidak dapat diketahui oleh orang lain. Untuk melakukan
proses ini dibutuhkan sebuah fungsi agar dapat mengubah suatu teks-asal.
Fungsi ini biasa disebut fungsi enkripsi.
Selain proses enkripsi, salah satu proses terpenting lainnya adalah
proses dekripsi. Dekripsi merupakan suatu proses dimana teks-sandi diubah
ke dalam teks-asal. Dalam hal ini, teks-sandi yang dihasilkan diubah
kembali ke dalam teks-asal. Proses ini bertujuan agar penerima pesan dapat
memahami arti sebenarnya dari pesan tersebut. Sama halnya dengan proses
enkripsi, proses dekripsi ini juga memerlukan sebuah fungsi agar dapat
mengubah kembali pesan tersebut. Fungsi tersebut biasa disebut fungsi dekripsi.
Definisi 3.2 (Fungsi Enkripsi dan Fungsi Dekripsi) Fungsi enkripsi merupakan fungsi one-to-one
dimana K merupakan kunci untuk menentukan yang sesuai dengan teks-asal untuk menghasilkan teks-sandi .
(81)
Fungsi dekripsi merupakan fungsi one-to-one
dimana K merupakan kunci untuk menentukan yang sesuai dengan teks-sandi untuk menghasilkan teks-asal .
Dua hal yang harus dipenuhi oleh seorang kriptografer, yaitu:
a) Untuk menyediakan metode yang mudah dan murah dalam melakukan
enkripsi dan dekripsi pesan untuk penerima.
b) Untuk menjadikan pesan tersebut sulit dan mahal bagi pihak yang tidak
berhak menerima dan mendekripsikan teks-sandi.
Ada juga beberapa prinsip yang mendasari kriptografi, yaitu:
a) Confidentiality (kerahasiaan) yaitu layanan agar isi pesan yang dikirimkan tetap rahasia dan tidak diketahui oleh pihak lain.
b) Data Integrity (integritas data atau keutuhan data) yaitu layanan yang mampu mengenali/mendeteksi adanya manipulasi (penghapusan,
pengubahan atau penambahan) data yang tidak sah (oleh pihak lain).
c) Authentication (keaslian) yaitu layanan yang berhubungan dengan identifikasi. Baik keaslian pihak-pihak yang terlibat dalam pengiriman data
maupun keaslian data/informasi.
d) Non-repudiation (anti penyangkalan) yaitu layanan yang dapat mencegah suatu pihak untuk menyangkal aksi yang dilakukan sebelumnya (menyangkal
(82)
Definisi 3.3 (Sandi atau Sistem-Kripto)
Sandi atau Sistem-Kripto merupakan himpunan-himpunan berhingga
dengan:
a) adalah himpunan teks-asal (plaintext) b) adalah himpunan teks-sandi (ciphertext) c) adalah himpunan kunci (key)
d) adalah himpunan fungsi enkripsi
e) adalah himpunan fungsi dekripsi
dan memenuhi syarat sebagai berikut:
untuk setiap , terdapat fungsi enkripsi dan fungsi dekripsi
yang berhubungan, dimana
dan sedemikian sehingga
(
untuk setiap anggota teks-asal
Syarat tersebut mengatakan bahwa jika teks-asal x di-enkripsi menggunakan
,
dan menghasilkan teks-sandi sesudah itu didekripsi menggunakan,
maka menghasilkan teks-asal yang asli x.
Sebagai contoh, Alice dan Boby akan menggunakan cara berikut
dengan menggunakan sandi tertentu. Pertama, mereka memilih sembarang
kunci . Hal ini akan selesai ketika mereka berada di tempat yang sama dan tidak diamati oleh pihak ketiga atau musuh (misal: Oscar), atau
(83)
yang aman dan berada di tempat yang berbeda. Kemudian, misalkan Alice
ingin menyampaikan pesan kepada Boby di jaringan yang tidak aman.
Andaikan bahwa pesan ini merupakan suatu rangkaian
untuk suatu bilangan bulat , dimana setiap simbol teks-asal
.
Setiap dienkripsi menggunakan fungsi enkripsi yang telah ditetapkan oleh kunci K. Oleh karena itu, Alice menghitung, dan menghasilkan rangkaian teks-sandi
yang dikirim menggunakan jaringan aman. Ketika Boby menerima pesan
, dia mendekripsikan pesan tersebut menggunakan fungsi dekripsi
,
kemudian menghasilkan rangkaian teks-asal . Lihat Gambar 3.1 untuk ilustrasi jaringan komunikasi.x y x
K
Gambar 3.1: Jaringan Komunikasi
Alice enkripsi dekripsi Boby
Key sourse
Saluran aman Oscar
(84)
Terlihat jelas, bahwa hal di atas merupakan kasus dimana setiap fungsi
enkripsi merupakan fungsi injektif (dengan kata lain, one-to-one), apabila tidak demikian proses dekripsi tidak dapat diselesaikan dengan cara yang
sudah jelas. Sebagai contoh, jika
dimana , maka Boby tidak punya cara untuk mengetahui apakah y
harus didekripsikan menjadi atau . Perhatikan, jika , ini berarti bahwa setiap fungsi enkripsi merupakan suatu pengubahan urutan
(permutation). Berarti, jika himpunan teks-asal dan teks-sandi adalah sama, maka setiap fungsi enkripsi hanya penyusunan ulang (atau mengubah
susunan) elemen dari himpunan ini.
Andaikan bahwa tidak diketahui informasi mengenai proses enkripsi
dan dekripsi, meskipun demikian ada keinginan untuk mengetahui bentuk
asli pesan yang telah dienkripsi (teks-sandi). Hal ini disebut memecahkan
teks-sandi, dan ilmu untuk memecahkan teks-sandi disebut cryptanalysis
(kriptanalisis). Orang yang dapat melakukan hal tersebut disebut
cryptanalyst (kriptanalis). Sebuah sandi dapat dipecahkan jika memungkinkan untuk menghasilkan asal atau kunci berdasarkan
teks-sandi, atau dapat menghasilkan kunci berdasarkan teks-asal dan teks-sandi.
Tentu saja, seseorang tidak dapat melakukan kriptanalisis tanpa
memahami kriptografi dan seseorang tidak dapat melakukan kriptografi
tanpa memahami kripanalisis; dengan kata lain, kriptografer dan kriptanalis
(85)
berbeda. Sebagai contoh, pembuat model sandi yang bagus perlu menguji
sandi tersebut terhadap serangan kriptanalisis dan ini berarti bahwa pembuat
model tersebut menjadi kripanalis dan mencoba memecahkan sandinya
sendiri. Kata kriptologi merupakan istilah yang lebih umum yang digunakan mengenai kriptografi dan kriptanalisa, seperti pada Gambar 3.2.
Gambar 3.2: Bagian-bagian Kriptologi
(86)
B. SANDI GESER
Pada bagian ini akan dijelaskan mengenai sandi geser. Pada dasarnya,
sandi geser didasarkan pada aritmetika modulo. Tetapi sebelumnya perlu
diingat kembali definisi dasar aritmetika modulo (lihat Definisi 2.4).
Cara kerja sandi geser adalah dengan mengganti huruf dari teks-asal
dengan huruf pada teks-sandi menurut gambar berikut:
Plaintext
a b c d e f g h i j k l m n o p q r s t u v w x y z
D E F G H I J K L M N O P Q R S T U V W X Y Z A B C
Ciphertext
Gambar 3.3:
Huruf yang bersesuaian dari Sandi Caesar (dengan pergeseran)
Dengan catatan bahwa teks-sandi diperoleh dengan cara menggeser terlebih
dahulu teks-asal ke kanan, dan huruf-huruf alfabet yang berada dibagian
akhir menggantikan huruf-huruf yang berada di awal. Seperti dalam gambar
di atas, huruf-huruf teks-asal digeser sebanyak tiga ke kanan. Maka akan
diperoleh huruf berada pada posisi huruf , huruf berada pada posisi
huruf , huruf berada pada posisi huruf , dan seterusnya sehingga
diperoleh huruf berada pada posisi huruf , huruf berada pada posisi
huruf , dan huruf berada pada posisi huruf . Sedangkan tiga huruf
alfabet terakhir yaitu , , dan berturut-turut berada pada posisi huruf ,
(87)
Definisi 3.4 (Sandi Geser modulo )
Misalkan . Untuk suatu didefinisikan
dan
dimana dan .
Dalam definisi di atas, Sandi Geser dinyatakan dalam hal ini dikarenakan terdapat huruf di dalam alphabet yang akan digunakan. Dapat dilihat dengan mudah bahwa Sandi Geser membentuk sistem-kripto
seperti yang telah dinyatakan sebelumnya di atas (Definisi 3.3), dengan kata
lain,
(
untuk setiap . Untuk mengenkripsi dalam Sandi Geser harus mengatur terlebih
dahulu hubungan antara huruf-huruf alfabet dengan anggota himpunan
bilangan bulat modulo sebagai berikut:
A 0, B 1, C 2, D 3, . . . , Z 25,
(1)
Sehingga menghasilkan teks-sandi yang sama dengan yang dimiliki:
(2)
170
BAB IV
PENUTUP
A. KESIMPULAN
Sandi digunakan untuk melindungi informasi-informasi yang terkandung di dalam suatu pesan. Hal ini dilakukan dengan cara melakukan mengubah bentuk dari pesan tersebut. Untuk mengubah bentuk pesan dilakukan dengan proses enkripsi, dimana suatu teks-asal berubah menjadi teks-sandi. Pada proses enkripsi dibutuhkan suatu fungsi enkripsi . Oleh karena itu, untuk mengubah bentuk pesan (asal) tersebut menjadi teks-sandi dengan menggunakan suatu fungsi enkripsi . Dengan melakukan proses enkripsi pada pesan rahasia dapat membuat musuh kesulitan untuk mengetahui informasi-informasi yang terdapat dalam pesan tersebut (teks-sandi).
Setelah teks-sandi diterima ditangan penerima pesan yang sah, dia juga harus mengetahui teks-asal dari pesan yang diterima. Untuk itu, dia melakukan proses dekripsi, dimana teks-sandi diubah (kembali) ke dalam teks-asal. Pada proses dekripsi juga dibutuhkan suatu fungsi dekripsi . Dengan demikian, untuk mengubah kembali teks-sandi kembali menjadi teks-asal dibutuhkan suatu fungsi dekripsi .
Agar pesan tetap aman pengirim maupun penerima pesan perlu menerapkan Prinsip Kerckhoffs yang selalu menganggap kriptanalis mengetahui sandi yang digunakan. Seorang kriptanalis yang ingin
(3)
menetahui informasi-informasi pada pesan juga mempunyai cara tersendiri untuk mengetahuinya. Untuk melakukan kriptanalisis, dapat dilakukan dengan empat jenis serangan yaitu: serangan ciphertext-only, serangan known-plaintext, serangan chosen plaintext, serangan chosen ciphertext. Dari keempat jenis serangan tersebut digunakan: Pencarian secara Menyeluruh (exhaustive search), Analisis Frekuensi (frequency analysis), maupun Uji Kasiski (Kasiski Test) dan Indeks Koinsiden (index of coincidence), agar dapat menghasilkan teks-asal.
Dari beberapa metode penyandian yang dibahas di depan, Sandi Vernam merupakan sandi yang lebih baik karena sandi ini memberikan perfect secrecy. Selain itu juga karena kunci yang digunakan juga panjang dan hanya satu kali digunakan, sehingga sulit untuk dilakukan kriptanalisis.
B. SARAN
Sandi yang dibahas dalam makalah ini merupakan sandi-sandi yang termasuk dalam sandi simetris-key saja atau secret-key, dimana kunci yang digunakan telah diketahui antara pengirim dan penerima pesan, serta kriptanalisis untuk beberapa sandi. Bagi pembaca yang tertarik dalam kriptografi salah satu pilihannya dapat melanjutkkan makalah ini dengan kriptanalisis dari semua sandi. Selain itu, dapat membahas sandi-sandi yang termasuk dalam kategori public-key serta penerapannya pada komputer zaman sekarang.
(4)
172
DAFTAR PUSTAKA
Anton, H dan Busby, R C. (2003). Contemporary Linear Algebra. Hoboken, NJ: John Wiley & Sons, Inc.
Baldoni, M. W., Ciliberto C., dan Cattaneo G. M. P. (2009). Elementary Number Theory, Cryptography, and Codes. Berlin Heidelberg: Springer-Verlag..
Erickson, M. dan Vazzana, A.(2008). Introduction To Number Theory. Boca Raton, FL: Taylor & Francis Group.
Gallian, J A. (2010). Contemporary Abstract Algebra ( ed.). Belmont, CA: Brooks/Cole.
Hardy, D.W., Richman, F., Walker, C.L. (2009). Applied Algebra Codes, Ciphers, and Discrete Algorithms. Boca Raton, FL: Taylor & Francis Group.
Koblitz, N. (1994). A Course in Number Theory and Cryptography ( ed). New York: Springer-Verlag.
Loepp, S. dan Wootters, W. K. (2006). Protecting Information from Classical Error Correction to Quantum Cryptography. Cambridge: Cambridge University Press.
Mollin, R. A. (2007). An Introduction to Cryptography ( ed). Boca Raton, FL: Chapman & Hall/CRC.
Ricardo, H. (2010). A Modern Introduction to Linear Algebra. Boca Raton, FL: Chapman & Hall/CRC.
(5)
Shier, D. R. dan Wallenius, K. T. (1999). Applied Mathematical Modeling. Boca Raton, FL: Chapman & Hall/CRC.
Stinson, D. R. (2006). Cryptography Theory and Practice ( ed.). Boca Raton, FL: Chapman & Hall/CRC.
Trappe, W. dan Washington, L. C. (2006). Introduction to Cryptography with Coding Theory. Upper Saddle River, NJ: Pearson.Education, Inc.
Treil, S. (2009). Linear Algebra Done Wrong. Brown University.
Vaudenay, S. (2006). A Classical Introduction To Cryptography: Application for Communication Security. New York: Springer Science+Business Media, Inc.
Yan, S. Y. (2013). Computational Number Theory and Modern Cryptography. Fusionopolis: Higher Education Press.
Williams, H. C. (1998). E´douard Lucas and Primality Testing, Hoboken, NJ: John Wiley & Sons.
(6)
174
LAMPIRAN
Menentukan Nilai untuk Tabel 3.9
%Program untuk menentukan nilai Mg dalam Kriptanalisis Sandi Vigenere
%Created by: Marselinus Junardi Rebu (10 3114 017) clc
clear all
%Probabilitas masing-masing huruf (pada teks bahasa Inggris) P = [0.082 0.015 0.028 0.043 0.127 0.022 0.020 0.061 0.070 0.002 0.008 0.040 0.024 0.067 0.075 0.019 0.001 0.060 0.063 0.091 0.028 0.010 0.0230 0.001 0.020 0.001];
%Fyi frekuensi masing-masing huruf di yi(tergantung panjang kata-kunci)
Fy1 = [7 6 6 4 1 2 0 0 1 2 2 0 2 4 0 1 4 3 0 2 1 1 9 5 0 0]; Fy2 = [3 0 0 3 10 2 3 6 3 0 0 0 2 6 6 1 0 3 7 5 1 1 1 0 0 0]; Fy3 = [5 3 1 0 3 0 4 2 3 3 0 2 0 5 1 2 4 13 1 2 2 4 0 1 2 0]; Fy4 = [1 1 1 0 10 0 1 3 4 2 4 4 8 0 0 3 2 3 1 1 0 3 3 4 1 2]; Fy5 = [3 5 0 0 2 2 7 6 0 0 4 6 5 0 0 1 0 2 0 4 0 1 3 10 0 1]; %Indeks P dan F
I = 0:25; G = 0:25; for g = 1:26 for i = 1:26
indeksF(g,i) = mod(I(i)+G(g),26); indeksP(i) = I(i);
M1(g,i) = P(i)*Fy1(indeksF(g,i)+1); M2(g,i) = P(i)*Fy2(indeksF(g,i)+1); M3(g,i) = P(i)*Fy3(indeksF(g,i)+1); M4(g,i) = P(i)*Fy4(indeksF(g,i)+1); M5(g,i) = P(i)*Fy5(indeksF(g,i)+1); end end indeksP; indeksF; M1; M2; M3; M4; M5;
Mg1 = sum(M1')/sum(Fy1) Mg2 = sum(M2')/sum(Fy2) Mg3 = sum(M3')/sum(Fy3) Mg4 = sum(M4')/sum(Fy4) Mg5 = sum(M5')/sum(Fy5)