Anda di halaman 1dari 12

Penerapan Teori Bilangan Bulat dalam Kriptografi dan

Aplikasinya dalam Kehidupan Sehari-hari


Kukuh Nasrul Wicaksono – NIM 13505097

Program Studi Teknik Informatika


Institut Teknologi Bandung
Jl. Ganesha 10 Bandung 40132

E-mail : if15097@students.if.itb.ac.id

Abstrak

Seiring dengan perkembangan zaman, maka munculah cabang matematika baru yang disebut dengan
matematika diskrit. Perkembangan yang pesat dari ilmu matematika diskrit ini berkaitan erat dengan
perkembangan pesat dari dunia komputer digital, karena komputer digital bekerja secara diskrit.
Perkembangan matematika diskrit ini juga diikuti dengan perkembangan ilmu lainnya yang memakai
matematika sebagai landasan ilmunya. Salah satunya adalah ilmu kriptrografi yang memakai teori bilangan
bulat sebagai landasan ilmunya. Dalam paparan di bawah ini akan dijelaskan bahwa matematika diskrit
khusunya teori bilangan bulat memiliki hubungan yang sangat erat dengan ilmu kriptografi. Selain itu akan
dijelaskan pula mengenai aplikasi dari ilmu keriptografi ini dalam kehidupan sehari-hari.

Kata kunci : Teori bilangan bulat, kriptografi

1. Pendahuluan

Dalam kehidupan sehari-hari, kita pasti telah Apakah manfaat kriptografi ini dalam kehidupan
sering menemukan bahwa ilmu pasti, khususnya sehari-hari kita? Dan apa pula hubungan
Matematika dan berbagai cabang ilmu matematika diskrit khususnya teori bilangan
Matematika lainnya sangat banyak digunakan bulat dengan kriptografi? Dalam tulisan
manusia untuk membantu menyelesaikan suatu berikutnya, akan dijelaskan jawaban dari
masalah. Mulai dari masalah kecil dan pertanyaan di atas.
tradisional, hingga masalah besar dan modern.

Seiring dengan perkembangan zaman, maka 2. Matematika Diskrit dan Teori


munculah cabang matematika baru yang disebut Bilangan Bulat
dengan matematika diskrit. Perkembangan yang
pesat dari ilmu matematika diskrit ini berkaitan
erat dengan perkembangan pesat dari dunia Matematika diskrit adalah cabang matematika
komputer digital, karena komputer digital yang mengkaji objek-objek diskrit. Apa yang
bekerja secara diskrit. Perkembangan dimaksud dengan kata diskrit (discrete)? Benda
matematika diskrit ini juga diikuti dengan disebut diskrit jika ia terdiri dari sejumlah
perkembangan ilmu lainnya yang memakai berhingga elemen yang berbeda atau elemen-
matematika diskrit landasan ilmunya. Salah elemen yang tidak berkesinambungan.
satunya adalah ilmu kriptrografi yang memakai Himpunan bilangan bulat (integer) dipandang
teori bilangan bulat sebagai landasan ilmunya. sebagai objek diskrit. Lawan kata diskrit adalah
kontinyu atau menerus. Himpunan bilangan riil
Kriptografi ini adalah suatu cabang ilmu yang (real) adalah suatu objek kontinu. Di dalam
digunakan untuk menjaga kerahasiaan pesan matematika kita mengenal fungsi diskrit dan
dengan cara menyamarkannya dan menjadikan fungsi kontinu. Fungsi diskrit digambarkan
bentuk sandi yang tidak mempunyai makna. sebagai sekumpulan titik-titik, sedangkan fungsi
kontinu digambarkan sebagai kurva.
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 2

.
Matematika diskrit berkembang sangat pesat
.
dalam dekade terakhir ini. Salah satu alasan yang
menyebabkan perkembangan pesat itu adalah .
karena komputer digital bekerja secara diskrit. rn-2 = rn-1 qn-1 + rn 0≤ rn ≤ rn-1
Informasi yang disimpan dan dimanipulasi oleh
komputer adalah dalam bentuk diskrit. rn-1 = rn qn + 0

Materi yang ada dalam matematika diskrit adalah Kemudian PBB dari m dan n (PBB(m,n)) adalah
materi yang khas informatika, sehingga sisa terakhir dari pembagian tersebut.
terkadang matematika diskrit ini disebut juga
matematika informatika. Salah satu materi di Singkatnya algoritma Euclidean akan dituliskan
dalam matematika diskrit ini adalah teori sebagai berikut.
bilangan bulat.
Algoritma Euclidean
Sesuai dengan namanya, teori bilangan bulat 1. Jika n = 0 maka
sangat erat hubungannya dengan bilangan bulat. m adalah PBB(m,n);
Bilangan bulat itu sendiri adalah bilangan yang stop
tidak mempunya pecahan desimal, misalnya tetapi jika n ≠ 0 ,
adalah 2, 43, 566, -64, 0 dan sebagainnya. Teori lanjutkan ke langkah 2.
bilangan bulat dalam matematika diskrit 2. Bagilah m dengan n dan misalkan r
memberikan penekanan dengan sifat pembagian. adalah sisanya.
Sifat pembagian pada bilangan bulat melahirkan 3. Gantilah nilai m dengan nilai n dan nilai
konsep-konsep seperti bilangan prima dan n dengan r, lalu ulang kembali ke
aritmatika modulo. Satu algoritma penting yang langkah 1.
berhubungan dengan sifat pembagian ini adalah
algoritma Euclidean. Baik bilangan prima, Catatan : jika m ≤ n, maka pertukarkan nilai
aritmatika modulo, dan algoritma Euclidean m dan n.
memainkan peran yang penting dalam bidang
ilmu Kriptografi, yaitu ilmu yang mempelajari
kerahasiaan pesan. 2.2. Aritmatika Modulo

Aritmatika modulo (modular arithmethic)


2.1. Algoritma Euclidean memainkan peran yang penting dalam komputasi
integer, khususnya pada aplikasi kriptografi.
Algoritma Euclidean adalah salah satu metode Operator yang digunakan pada aritmatika
yang mangkus dalam mencari Pembagi Bersama modulo adalah mod. Operator mod, jika
Terbesar (greates), disingkat menjadi PBB. digunakan pada pembagian bilangan bulat
Algoritma ini sudah dikenal sejak berabad-abad meberikan sisa pembagian sebagai kembaliannya.
yang lalu. Euclid ,penemu Algoritma Euclidean, Sebagai contoh 53 mod 5 meberikan hasil = 10
adalah seorang matematikawan yunani yang dan sisa = 3. Maka 53 mod 5 = 3. Definisi dari
menuliskan algoritmanya tersebut dalam operator mod adalah sebagai berikut
bukunya yang terkanal yang berjudul Element.
Misalkan a adalah bilangan bulat dan m
Secara formal algoritma Euclidean dirumuskan adalah bilangan bulat > 0. operasi a mod
sebagai berikut. m memberikan sisa jika a dibagi dengan
m. Dengan kata lain a mod m = r
Misalkan m dan n adalah bilangan bulat sedemikian sehingga a = mq + r , dengan
tak negatif dengan m ≥ n. Misalkan r0 = m 0≤r<m
dan r1 = n , lakukan secara berturut –
turut pembagian seperti dibawah ini.

r0 = r1q1 + r2 0≤ r2 ≤ r1

r1 = r2q2 + r3 0≤ r3 ≤ r2
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 3

2.2.1. Kongruen Pertanyaan tersebut dapat dirumuskan sebagai


berikut
Kadang – kadang dua buah bilangan bulat a dan
b, mempunyai sisa yang sama jika dibagi dengan X ≡ 3 (mod 5)
bilangan bulat positif m. Kita katakan bahwa a X ≡ 5 (mod 7)
dan b kongruen dalam mosulo m dan X ≡ 7 (mod 11)
dilambangkan sebagai
Teorema Chinese Remainder berikut akan
a ≡ b (mod m) digunakan untuk menyelesaikan sistem di atas

(notasi ‘≡’ dibaca kongruen) Misalkan m1, m2, …,mn adalah bilangan
bulat positid sedemikian sehingga
Jika a tidak kongruen dengan b dalam modulus PBB(mi,mj) = 1 untuk i ≠ j. Maka sistem
m, maka ditulis : kongruen lanjar

a ≡/ b (mod m) X ≡ ak (mod mk)

Sebagai contoh 53 mod 5 = 3 dan 13 mod 5 = 3, Mempunyai sebuah solusi unik untuk
maka 53 ≡ 13 (mod 5). modulo m = m1 . m2 . m3

Definisi formal dari kekongruenan dinyatakan Solusi akan dicari sebagai berikut. Solusi
sebagai berikut. modulo tersebut m = 5 . 7 . 11 = 5 . 77 = 11 . 35.
Karena 77 . 3 ≡ 1 (mod 5), 55 . 6 ≡ 1 (mod 7),
Misalkan a dan b adalah bilangan bulat dan dan 35 . 6 ≡ 1 (mod 11), solusi unik dari sistem
m adalah bilangan > 0 maka a ≡ b (mod m) kongruen tersebut adalah
jika m habis membagi a – b
X ≡ (3 . 77 . 3 + 5 . 55 . 6 + 7 . 35 . 6) (mod 385)
Sifat-sifat perhitungan pada aritmatika modulo, ≡ 3813 (mod 385)
khususnya terhadap operasi perkalian dan ≡ 348 (mod 385)
penjumlahan, dinyatakan sebagai berikut.

Misalkan m adalah bilangan bulat positif 2.3. Bilangan Prima


1. Jika a ≡ b (mod m) dan c adalah
sembarang bilangan bulat maka Bilangan bulat positif yang mempunya aplikasi
i. (a+c) ≡ (b+c) (mod m) penting dalam ilmu komputer dan matematika
ii. ac ≡ bc (mod m) diskrit adalah bilangan prima. Bilangan prima
iii. ap ≡ bp (mod m) untuk p adalah bilangan bulat positif yang lebih besar
bilangan bulat > 0 dari 1 yang hanya habis dibagi 1 dan dirinya
2. Jika a ≡ b (mod m) dan c ≡ d (mod m), sendiri. Secara formal definisi dari bilangan
maka prima adalah sebagai berikut.
i. (a+c) ≡ (b+d) (mod m)
ii. ac ≡ bd (mod m) Bilangan bulat positif p (p > 1) disebut
bilangan prima jika bilangan yang habis
membaginya hanya 1 dan p.
2.2.2. Chinese Remainder Problem
Sebagai contoh adalah bilangan 13. Bilangan 13
Pada abad pertama, seorang matematikawan hanya habis dibagi 1 dan 13. Maka 13 adalah
china yang bernama Sun Tse mengajukan bilangan prima.
pertanyaan sebagai berikut.
Bilangan selain prima adalah bilangan komposit.
Tentukan sebuah bilangan bulat yang bila Misalnya 12 adalah bilangan yang dapat habis
dibagi dengan 5 menyisakan 3, bila dibagi 7 dibagi 1,2,4,6,12.
menyisakan 5, dan bila dibagi 11
menyisakan 7. Teorema penting menyangkut bilangan prima
dinyatakan oleh teorema yang terkenal dalam
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 4

teori bilangan yaitu teorema fundamental Sebagai pembanding, selain definisi tersebut di
aritmatik, yang berisi sebagai berikut atas, terdapat pula definisi yang dikemukakan di
dalam [MEN96]:
Setiap bilangan bulat positif yang lebih besar
atau sama dengan 2 dapat dinyatakan sebagai Kriptografi adalah ilmu yang
perkalian satu atau lebih baik bilangan prima mempelajari teknik-teknik matematika
maupun bilangan komposit, keduanya dapat yang berhubungan dengan aspek
dinyatakan sebagai perkalian satu atau lebih keamanan informasi seperti kerahasiaan,
faktor prima. Misalnya, integritas data, serta otentikasi

9=3×3 (2 buah faktor prima) Kata “seni” di dalam definisi di atas berasal dari
100 = 2×2×5×5 (4 buah faktor prima) fakta sejarah bahwa pada masa-masa awal
13 = 13 (1 buah faktor prima) sejarah kriptografi, setiap orang mungkin
12 = 2×2×3 (3 buah faktor prima) mempunyai cara yang unik untuk merahasiakan
pesan. Cara-cara unik tersebut mungkin berbeda-
beda pada setiap pelaku kriptografi sehingga
3. Kriptografi setiap cara menulis pesan rahasia pesan
mempunyai nilai estetika tersendiri sehingga
Aritmatika modulo dan bilangan prima kriptografi berkembang menjadi sebuah seni
mempunyai banyak aplikasi dalam ilmu merahasiakan pesan (kata “graphy” di dalam
komputer salah satu aplikasinya yang terpenting “cryptography” itu sendiri sudah menyiratkan
adalah ilmu kriptografi. sebuah seni). Kita akan melihat contoh-contoh
teknik keriptografi dari zaman dahulu hingga
Kriptografi (cryptography) berasal dari Bahasa zaman sekarang sehingga kita dapat mamahami
Yunani: “cryptós” artinya “secret” (rahasia), bahwa kriptografi dapat dipandang sebagai
sedangkan “gráphein” artinya “writing” (tulisan). sebuah seni merahasiakan pesan. Pada
Jadi, kriptografi berarti “secret writing” (tulisan perkembangan selanjutnya, kriptografi
rahasia). Ada beberapa definisi kriptografi yang berkembang menjadi sebuah disiplin ilmu sendiri
telah dikemukakan di dalam berbagai literatur. karena teknik-teknik kriptografi dapat
Definisi yang dipakai di dalam buku-buku yang diformulasikan secara matematik sehingga
lama (sebelum tahun 1980-an) menyatakan menjadi sebuah metode yang formal.
bahwa kriptografi adalah ilmu dan seni untuk
menjaga kerahasian pesan dengan cara Dalam kriptografi terdapat beberapa istilah
menyandikannya ke dalam bentuk yang tidak khusus. Pesan yang dirahasiakan dinamakan
dapat dimengerti lagi maknanya. Definisi ini plainteks (teks jelas dan dapat dimengerti),
mungkin cocok pada masa lalu di mana sedangkan pesan hasil penyamaran disebut
kriptografi digunakan untuk keamanan chiperteks (teks tersandi). Proses penyamaran
komunikasi penting seperti komunikasi di dari plainteks ke chiperteks disebut enkripsi dan
kalangan militer, diplomat, dan mata-mata. proses pembalikan dari chiperteks ke plainteks
Namun saat ini kriptografi lebih dari sekadar disebut deskripsi. Enkripsi dan deskripsi pada
privacy, tetapi juga untuk tujuan data integrity, suatu proses penyamaran pesan memiliki suatu
authentication, dan non-repudiation. kunci tersendiri. Dan hanya orang yang berhak
yang mengetahui kunci tersebut. Gambar 1.1
Definisi yang kita pakai di dalam makalah ini memperlihatkan diagram kedua proses yang
mengutip definisi yang dikemukakan di dalam dimaksud.
[SCH96]:
Kunci Kunci

Kriptografi adalah ilmu dan seni untuk


menjaga keamanan pesan
(Cryptography is the art and science of Plainteks Enkripsi
Cipherteks
Dekripsi Plainteks
keeping messages secure)

Gambar 1.1
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 5

Sebagai contoh, dalam gambar 1.2 sebuah Seperti yang telah diungkapkan diatas bahwa
plainteks (sebelah kanan) disandikan menjadi kriptografi sangat erat hubungannya dengan
chiperteks (sebelah kiri) dengan suatu teknik matematika diskrit terutama fungsi dan teori
kriptografi tersebut. bilangan bulat yang berisi tentang.

Ketika saya Ztâxzp/épêp/qtü - Integer dan sifat-sifat pembagian


berjalan-jalan di yp{p}<yp{p}/sx/ - Algoritma Euclidean
pantai, saya •p}
menemukan banyak âpx; - Aritmetika modulo
sekali kepiting __épêp/|t}t|äzp - Bilangan prima
yang merangkak }/qp}êpz/étzp{x
menuju laut. / Hal yang diungkapkan di atas sangat relevan
Mereka adalah •xâx
anak-anak }v_êp}v/|tüp}vz karena saat ini kriptografi modern tidak lagi
kepiting yang pz/|t}äyä/{päâ= mendasarkan kekuatan kriptografi pada
baru / \ algoritmanya. Namun kriptografi saat ini
menetas dari tütz
dalam pasir. p_psp{pw/p}pz<p
mendasarkan kekuatan kriptografinya pada kunci.
Naluri mereka }pz/zt•xâx}v/êp Sebelum melangkah lebih jauh, alangakah lebih
mengatakan bahwa } baiknya jika dijelaskan mengenai kekuatan
laut adalah v/qpüä_|t}tâpé/ kriptrografi berdasarkan algoritma maupun kunci
tempat kehidupan spüx
mereka. /sp{p|/•péxü= sebagai berikut.
/]
Algoritma kriptografi atau chipper adalah fungsi
matematika yang digunakan untuk enkripsi dan
Gambar 1.2 deskripsi. Kekeuatan suatu algoritma kriptografi
diukur dari banyaknya kerja yang dibutuhkan
Chiperteks meskipun sudah tidak bersifat rahasia untuk memecahkan data chipperteks menjadi
lagi, namun isinya sudah tidak jelas dan tidak plainteksnya. Semakin banyak usaha yang
dapat dimengerti maksudnya. Hanya orang yang diperlukan, yang berarti semakin banyak waktu
berhak saja yang dapat mengembalikan pesan yang dubutuhkan, maka semakin kuat algoritma
tidak jelas tersebut menjadi pesan semula dengan kriptografinya, yang berarti semakin aman
menggunakan suatu kunci. digunakan untuk menyandikan pesan.

Kriptografi juga dapat dituliskan dalam notasi Jika kekuatan kriptografi ditentukan dengan
matematis. Jika chiperteks dilambangkan dengan menjaga kerahasiaan algoritmanya, maka
C dan plainteks dilambangkan dengan P, maka algoritma kriptografinya dinamakan algoritma
fungsi enkripsi E memetakan P ke C, dapat restricted. Misalkan di dalam sebuah kelompok
ditulis sebagai berikut orang meraka sepakat untuk menyadikan setiap
pesan-pesan dengan algoritma yang sama,
E(P) = C Algoritmanya adalah mempertukarkan setiap
kata karakter pertama dengan karakter kedua,
Pada proses kebalikannya yaitu proses deskripsi, karakter ketiga dengan karakter keempat dan
fungsi deskripsi D memetakan C ke P, dapat seterusnya. Contohnya,
ditulis sebagai berikut
Plainteks : STRUKTUR DISKRIT
D(C) = P Chiperteks : TSURTKRU IDKSIRT

Karena proses enkripsi kemudian deskripsi Untuk mendeskripsikan pesan, algoritma yang
mengembalikan pesan ke pesan asal, maka sama digunakan kembali. Sayangnya, algoritma
kesamaan berikut harus benar. restricted tidak cocok saat ini. Bila salah seorang
keluar dari kelompok, maka algoritma
D(E(P)) = P penyandian pesan harus diubah lagi karena
kerahasiaannya tidak lagi dapat diandalkan.

4. Hubungan Teori Bilangan Bulat Kriptografi modern tidak lagi mendasarkan


kekuatan pada algoritmanya. Jadi algoritma tidak
dengan Kriptografi
lagi dirahasiakan dan boleh diketahui oleh umum.
Kekuatan kriptografinya terletak pada kunci,
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 6

yang berupa dereten karakter atau deretan Dekripsi: pi = D(ci) = (ci – k) mod 256
bilangan bulat, dijaga kerahasiaannya. Hanya k = kunci rahasia
orang uang mengetahui kunci yang dapat
melakukan enkripsi dan deskripsi. Kunci ini Namun teknik ini memiliki kelemahan yaitu
analog fungsinya dengan password pada sistem mudah dipecahkan dengan exhaustive key search
komputer, PIN pada ATM atau kartu kredit. karena jumlah kuncinya sangat sedikit (hanya
Bedanya jika password bertujuan untuk otorisasi ada 26 kunci).
akses, maka kunci pada kriptografi digunakan
pada proses enkripsi dan deskripsi.
4.2. Vigènere Cipher
Kriptografi yang mendasarkan kekuatan pada
kunci sering menggunakan dasar teori bilangan Algoritma kriptografi ini dipublikasikan oleh
bulat diatas sebagai dasar algoritma dan juga diplomat (sekaligus seorang kriptologis) Perancis,
kuncinya. Selanjutnaya akan dijelaskan dalam Blaise de Vigènere pada abad 16 (tahun 1586).
sub bab berikut ini. Vigènere Cipher digunakan oleh Tentara
Konfederasi (Confederate Army) pada Perang
Sipil Amerika (American Civil war).
4.1. Caesar Chiper Vigènere Cipher menggunakan Bujursangkar
Vigènere untuk melakukan enkripsi. Setiap baris
Teknik kriptografi ini digunakan oleh Julius di dalam bujursangkar menyatakan huruf-huruf
Caesar, kaisar Romawi, untuk menyandikan cipherteks yang diperoleh dengan Caesar Cipher.
pesan yang ia kirim kepada gubernurnya. Pada Pada dasarnya teknik yang digunakan hampir
caesar chiper, tiap huruf disubstitusi dengan sama dengan Caesar Cipher.
huruf ketiga berikutnya dari susunan alfabet.
Dalam hal ini kuncinya adalah jumlah Jika panjang kunci lebih pendek daripada
pergeseran huruf (yaitu 3). panjang plainteks, maka kunci diulang secara
periodik. Bila panjang kunci adalah m, maka
Plainteks pi : periodenya dikatakan m. Berikut ini contoh
A B C D E F G H I J K L M N O P penggunaan Vigènere Cipher.
Q R S T U V W X Y Z
kunci = sony
Chiperteks ci : Plainteks :THIS PLAINTEXT
D E F G H I J K L M N O P Q R S Kunci :sony sonysonys
T U V W X Y Z A B C
Hasil enkripsi seluruhnya adalah sebagai berikut:
Dengan mengkodekan setiap huruf alfabet
dengan integer: A = 0, B = 1, … , Z = 25, maka Plainteks :THIS PLAINTEXT
secara matematis caesar chiper menyandikan Kunci :sony sonysonys
plainteks pi menjadi ci dengan aturan sebagai Cipherteks : LVVQ HZNGFHRVL
berikut
Pada dasarnya, setiap enkripsi huruf adalah
ci = E(pi) = (pi + 3) mod 26 Caesar cipher dengan kunci yang berbeda-beda.

Persoalan di atas dapat digenerik-an sebagai c(‘T’) = (‘T’ + ‘s’) mod 26 = L


berikut. c(‘H’) = (‘H’ + ‘o’) mod 26 = V, dst

Jika pergeseran huruf sejauh k, maka: Keunggulan dari penggunaan Vignere Cipher
adalah huruf yang sama tidak selalu dienkripsi
Enkripsi: ci = E(pi) = (pi + k) mod 26 menjadi huruf cipheteks yang sama pula
Dekripsi: pi = D(ci) = (ci – k) mod 26 sehingga lebih sukar untuk mengubah cipherteks
k = kunci rahasia menjadi plainteks asal jika tidak mengetahui
kuncinya.
Untuk 256 karakter ASCII, maka:

Enkripsi: ci = E(pi) = (pi + k) mod 256


Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 7

6. Proses deskripsi dilakukan dengan


4.3. RSA (Rivest-Shamir-Adleman) menggunakan persamaan pi = ci d mod n,
yang dalam hal ini d adalah kunci
Algoritma RSA diperkenalkan oleh tiga orang deskripsi.
peneliti dari MIT (Massachussets Institute of
Technology), yaitu Ron Rivest, Adi Shamir, dan Pehatikan bahwa dalam langkah 4 kekongruenan
Len Adleman, pada tahun 1976. RSA ed ≡ 1 (mod m) sama dengan ed mod m = 1. ed
mendasarkan proses enkripsi dan deskripsinya mod m = 1 ekivalen dengan ed = km + 1
pada konsep bilangan prima dan aritmatika sehingga akan menghasilkan persamaan
modulo. Baik kunci enkripsi maupun kunci
deskripsi keduanya merupakan bilangan bulat. d = (1 + km) / e
Kunci enkripsi tidak dirahasiakan dan diketahui
umum (sehingga dinamakan juga kunci publik), akan terdapat bilangan bulat k yang
namun kunci untuk deskripsi bersifat rahasia. menyebabkan persaman diatas memberikan
Kunci deskripsi dibangkitkan oleh beberapa buah bilangan bulat d.
bilangan prima bersama-sama dengan kunci
enkripsi. Untuk menemukan kunci enkripsi, Kekuatan dan Keamanan RSA
seseorang harus memfaktorkan suatu bilangan
non proma menjadi faktor primanya. Seperti yang telah dikatakan sebelumnya,
Kenyataannya, memfaktorkan bilangan non- kekuatan RSA terletak pada tingkat kesulitan
prima menjadi faktor primanya bukanlah dalam memfaktorkan bilangan non-prima
pekerjaan yang mudah. Belum ada algoritma menjadi faktor primanya, yang dalam hal ini n =
yang efisien yang ditemukan untuk pemfaktoran a × b. Sekali n berhasil difaktorkan menjadi a
itu. Semakin besar bilangan non-primanya tentu dan b maka m = (a – 1) × (b – 1) dapat dihitung.
akan semakin sulit menemukan faktor primanya. Selanjutnya, karena kunci enkripsi e diumumkan
Semakin sulit pemfaktorannya, semakin kuat (tidak rahasia), maka kunci deskripsi d dapat
pula algoritma RSA. Algoritma RSA sebenarnya dihitung dari persamaan e × d ≡ 1 (mod m). Ini
sederhana sekali. Secara ringkas, algoritma RSA berarti proses deskripsi dapat dilakukan oleh
adalah sebagai berikut. orang yang tidak berhak.

Algoritma RSA Penemu algortima RSA menyarankan nilai a dan


1. Pilih dua buah bilangan prima b yang dipakai panjangnya lebih dari 100 digit.
sembarang, sebut a dan b. Jaga dengan demikian hasil kali n = a × b akan
kerahasiaan a dan b ini. berukuran lebih dari 200 digit. Bayangkan
2. Hitung n = a × b. Besaran n tidak berapa besar usaha kerja yang diperlukan untuk
dirahasiakan. memfaktorkan bilangan bulat 200 digit menjadi
3. Hitung m = (a – 1) × (b – 1). Sekali m faktor primanya. Menurut Rivest dan kawan-
telah dihitung, a dan b dapat dihapus kawan, usaha untuk mencari faktor bilangan 200
untuk mencegah diketahui pihak lain. digit membutuhkan waktu komputasi selama 4
4. Pilih sebuah bilangan bulat untuk kunci milyar tahun. (Dengan asumsi bahwa algoritma
publik, sebut namanya e, yang relatif pemfaktoran yang digunakan adalah algoritma
prima terhadap m. tercepat saat ini dan komputer yang dipakai
5. Bangkitkan kunci deskripsi, d, dengan mempunyai kecepatan 1 milidetik).
kekongruenan ed ≡ 1 (mod m). Lakukan
enkripsi terhadap isi pesan dengan Untunglah algoritma yang paling mangkus untuk
persamaan ci = pi e mod n, yang dalam memfaktorkan bilangan yang besar belum
ditemukan. Inilah yang membuat algoritma RSA
hal ini pi adalah blok plainteks, ci adalah
tetap dipakai hingga saat ini. Selagi belum
chiperteks yang diperoleh, dan e adalah ditemukan algoritma yang mangkus untuk
kunci enkripsi (kunci publik). Harus memfaktorkan bilangan bulat menjadi faktor
dipenuhi persyaratan bahwa nilai pi primanya, maka algoritma RSA masih
harus terletak dalam himpunan nilai 0, 1, direkomendasikan untuk penyandian pesan.
2, …, n – 1 untuk menjamin hasil
perhitungan tidak berada di luar
himpunan.
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 8

5. Kriptografi Dalam Kehidupan


Sehari-hari
Kehidupan kita saat ini dikelililingi oleh
kriptografi. Kriptografi sudah digunakan dalam
berbagai aplikasi, mulai dari penarikan uang di
ATM, penggunaan kartu kredit, penggunaan
kartu cerdas (smart card), percakapan dengan
telepon genggam, password komputer, televisi,
transaksi e-commerce di internet, sampai pada
pengaktifan peluru kendali dan bom nuklir. Bab
ini membahas secara ringkas penerapan
kriptografi dalam kehidupan sehari-hari.

5.1. Kartu Cerdas (Smart Card)


Gambar 1.4 Pembaca kartu cerdas
Salah satu aplikasi yang menggunakan
Kartu cerdas menyimpan kunci privat, sertifikat
kriptografi adalah kartu cerdas (smart card).
digital, dan informasi lainnya. Kartu cerdas juga
Kartu cerdas (gambar 1.3) saat ini tumbuh
menyimpan nomor kartu kredit dan informasi
sangat pesat. Kartu cerdas yang mirip dengan
kontak personal (no telpon). Sertifikat digital
kartu kredit dapat melayani banyak fungsi, mulai
ditandatangani oleh card issuer (CA) untuk
dari otentikasi sampai penyimpanan data.
mensertifikasi kunci publik pemilik kartu.
Dengan menggunakan kartu cerdas, pengguna
dapat mengakses informasi dari berbagai
Penggunaan kartu cerdas dikombinasikan dengan
peralatan dengan kartu cerdas yang sama.
PIN (Personal Identification Number). Jadi, ada
dua level yang harus dari penggunaan kartu
cerdas, yaitu memiliki kartu cerdas itu sendiri
dan mengetahui PIN yang mengakses informasi
yang disimpan di dalam kartu. Komputer server
mengotentikasi kartu dengan cara mengirimkan
suatu nilai atau string (yang disebut challenge)
ke kartu untuk ditandatangani dengan
menggunakan kunci privat (yang tersimpan di
dalam kartu), lalu tanda-tangan tersebut
diverifikasi oleh mesin dengan menggunakan
kunci publik pemilik kartu. Komputer server
perlu menyimpan kunci publik card issuer untuk
memvalidasi sertifikat digital.

Banyak peralatan mobile yang menggunakan


Gambar 1.3 Sebuah smart card dari Siemens kartu cerdas untuk otentikasi. Namun kartu
cerdas masih tidak menjamin keamanan secara
Kartu cerdas yang paling populer adalah memory total. Jika peralatan mobile hilang atau dicuri,
card dan microprocessor card. Memory card sertifikat digital dan kunci privat di dalam kartu
mirip dengan floppy disk, sedangkan cerdas (yang terdapat di dalam peralatan
microprocessor card mirip dengan komputer tersebut) berpotensi diakses oleh pencuri untuk
kecil dengan sistem operasi, sekuriti, dan mengakses informasi rahasia. Telpon seluler
penyimpanan data. Kartu cerdas mempunyai dengan teknologi GSM memiliki kartu cerdas
beberapa jenis antarmuka (interface) yang yang terintegrasi di dalam handphone. Pemilik
berbeda. Jenis antarmuka yang umum adalah handphone memiliki opsi untuk men-set PIN
contact interface, yang dalam hal ini kartu cerdas untuk proteksi tambahan, sehingga jika
dimasukkan ke dalam alat pembaca (card handphone hilang atau dicuri, handphone tidak
reader) dan secara fisik terjadi kontak fisik dapat digunakan tanpa mengetahui PIN tersebut.
antara alat dan kartu (Gambar 1.4).
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 9

Kartu cerdas Wireless Identity Module (WIM) arah antara ATM dan komputer host. ATM
termasuk di dalam Wireless Application Protocol mengirim PIN dan informasi tambahan pada
(WAP). Kartu WIM memproteksi komunikasi kartu ke komputer host, host melakukan
dan transaksi mobile dengan tandatangan digital. verifikasi dengan cara membandingkan PIN yang
Kartu WIM menyediakan keamanan untuk di-entry-kan oleh nasabah dengan PIN yang
sertifikat digital, manajemen kode PIN, kunci, disimpan di dalam basisdata komputer host,
dan tanda-tangan digital. WIM menyimpan lalu mengirimkan pesan tanggapan ke ATM yang
algoritma enkripsi yang diperlukan di dalam menyatakan apakah transaksi dapat dilanjutkan
kartu cerdas. Semua fungsi yang diperlukan atau ditolak.
untuk sistem keamanan dan privatisasi
dimasukkan ke dalam kartu cerdas. Selama transmisi dari ATM ke komputer host,
PIN harus dilindungi dari penyadapan oleh orang
yang tidak berhak. Bentuk perlindungan yang
5.2. Transaksi Melalui Anjungan dilakukan selama transmisi adalah dengan
Tunai Mandiri (ATM) mengenkripsikan PIN. Di sisi bank, PIN yang
disimpan di dalam basisdata juga dienkripsi
Anjungan Tunai Mandiri atau Automatic Teller (lihat Gambar 1.5).
Machine (ATM) digunakan nasabah bank untuk
melakukan transaski perbankan. Utamanya, Algoritma enkripsi yang digunakan adalah DES
kegunaan ATM adalah untuk menarik uang dengan mode ECB. Karena DES bekerja dengan
secara tunai (cash withdrawal), namun saat ini mengenkripsikan blok 64-bit, maka PIN yang
ATM juga digunakan untuk transfer uang hanya terdiri dari 4 angka (32 bit) harus
(pemindahbukuan), mengecek saldo, membayar ditambah dengan padding bits sehingga
tagihan kartu ponsel, membeli tiket kereta api, panjangnya menjadi 64 bit. Padding bits yang
dan sebagainya. ditambahkan berbeda-beda untuk setiap PIN,
bergantung pada informasi tambahan pada setiap
Transaksi lewat ATM memerlukan kartu kartu ATM-nya [PIN02].
magnetik (disebut juga kartu ATM) yang terbuat
dari plastik dan kode PIN (Personal Information Karena panjang PIN hanya 4 angka, maka
Number) yang berasosiasi dengan kartu tersebut. peluang ditebak sangat besar. Seseorang yang
PIN terdiri dari 4 angka yang harus dijaga memperoleh kartu ATM curian atau hilang dapat
kerahasiannya oleh pemilik kartu ATM, sebab mencoba semua kemungkinan kode PIN yang
orang lain yang mengetahui PIN dapat mungkin, sebab hanya ada 10 × 10 × 10 × 10 =
menggunakan kartu ATM yang dicuri atau 10.000 kemungkinan kode PIN 4- angka. Untuk
hilang untuk melakukan penarikan uang. mengatasi masalah ini, maka kebanyakan ATM

Gambar 1.5 Mekanisme enkripsi dan deskripsi PIN pada transaksi dengan mesin ATM

PIN digunakan untuk memverifikasi kartu yang hanya membolehkan pengentry-an PIN
dimasukkan oleh nasabah di ATM. Proses maksimum 3 kali, jika 3 kali tetap salah maka
verifikasi dilakukan di komputer pusat (host) ATM akan ‘menelan’ kartu ATM. Masalah ini
bank, oleh karena itu harus ada komunikasi dua juga menunjukkan bahwa kriptografi tidak selalu
dapat menyelesaikan masalah keamanan data.
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 10

Jadi, pada GSM diperlukan dua kebutuhan


Beberapa jaringan ATM sekarang menggunakan keamanan lainnya, yaitu:
kartu cerdas sehingga memungkinkan 1. otentikasi penelpon (user
penggunaan kriptografi kunci publik. Kartu ATM authentication), yang merupakan
pengguna mengandung kunci privat dan kebutuhan bagi sistem,
sertifikat digital yang ditandatangani oleh card 2. kerahasiaan (confidentiality) pesan (data
issuer (CA) untuk mensertifikasi kunci publiknya. atau suara), yang merupakan kebutuhan
ATM mengotentikasi kartu dengan cara bagi pelanggan,
mengirimkan suatu string ke kartu untuk
ditandatangani dengan menggunakan kunci Dua kebutuhan ini dipenuhi dengan penggunaan
privat, lalu tanda-tangan tersebut diverifikasi kartu cerdas (smart card) personal yang disebut
oleh ATM dengan menggunakan kunci publik kartu SIM (Subscriber Identity Module card).
pemilik kartu. Seperti semua sistem yang Kartu SIM berisi:
berbasis sertifikat digital, terminal ATM perlu 1. identitas pelanggan/pengguna operator
memiliki salinan kunci publik card issuer seluler berupa IMSI (International
dengan maksud untuk memvalidasi sertifikat Mobile Subscriber Identity) yang unik
digital. Hal ini direalisasikan dengan nilainya,
menginstalasi kunci publik tersebut ke dalam 2. kunci otentikasi rahasia sepanjang 128-
mesin ATM. bit yang diketahui hanya oleh operator.
Nilai ini digunakan sebagai kunci pada
protokol otentikasi dengan
5.3. Komunikasi dengan Telepon menggunakan program enkripsi yang
Seluler dipilih oleh operator (algoritma A2, A3,
atau A5),
Penggunaan telepon seluler (ponsel) atau lebih 3. PIN (jika di-set oleh pengguna).
dieknal dengan nama telepon genggam 4. Program enkripsi.
(handphone) yang bersifat mobile
memungkinkan orang berkomunikasi dari tempat Secara keseluruhan, sistem keamanan GSM
mana saja. Telepon seluler bersifat nirkabel terdiri atas dalam 3 komponen, yaitu:
(wireless), sehingga pesan yang dikirim dari 1. kartu SIM,
ponsel ditransmisikan melalui gelombang mikro 2. handset (pesawat telepon seluler),
(microwave) atau radio sampai ia mencapai base 3. jaringan GSM (seperti jaringan ProXL,
station (BST) terdekat, selanjutnya ditransfer ke Simpati, IM3). Setiap jaringan
ponsel penerim. GSM merupakan teknologi dioperasikan oleh operatornya masing-
telepon seluler yang paling banyak digunakan di masing (Excelcomindo, Telkomsel,
seluruh dunia. Satelindo). Komputer operator (host)
memiliki basisdata yang berisi identitas
Karena menyadap sinyal radio jauh lebih mudah (IMSI) dan kunci otentikasi rahasia
daripada menyadap sinyal pada saluran kabel, semua pelanggan/pengguna GSM.
maka ini berarti GSM tidak lebih aman daripada
telepon fixed konvensional. Untuk membuat
komunikasi lewat ponsel aman, maka pesan 5.3.1. Otentikasi Penelpon
dienkripsi selama transmisi dari ponsel ke BST
terdekat. Metode enkripsi yang digunakan adalah Otentikasi penelpon dilakukan melalui protokol
metode cipher aliran (stream cipher). otentikasi dengan mekanisme challenge –
response. Ketika pengguna ponsel melakukan
Masalah keamanan lain adalah identitas panggilan (call), identitasnya dikirim ke
penelpon. Operator seluler harus dapat komputer operator via BST untuk keperluan
mengidentifikasi suatu panggilan (call) dan otentikasi. Karena BST tidak mengetahui kunci
mengetahui identitas penelpon (apakah penelpon otentikasi kartu SIM, dan bahkan tidak
merupakan pengguna/pelanggan dari operator mengetahui algoritma otentikasi, maka komputer
seluler tersebut atau pengguna/ pelanggan dari operator melakukan verifikasi pengguna dengan
operator lain). cara mengirimkan suatu nilai acak (128 bit) yang
disebut challenge ke SIM card penelpon. Kartu
SIM mengeluarkan response dengan cara
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 11

mengenkripsi challenge 128-bit tersebut dengan 6. Kesimpulan


menggunakan kunci otentikasi yang terdapat di
dalam kartu. Dari paparan di atas, kita dapat menyimpulkan
283 bahwa matematika diskrit khusunya teori
Enkripsi terhadap challenge menghasilkan bilangan bulat memiliki hubungan yang sangat
keluaran 128-bit; dari 128-bit keluaran ini hanya erat dengan ilmu kriptografi seperti yang telah
32 bit yang dikirim dari kartu SIM ke BST dijelaskan di atas. Karena dalam dekade terakhir
sebagai response. BST meneruskan response ke ini komputer digital yang bekerja secara diskrit
komputer operator. Ketika response sampai di mengalami perkembangan yang sangat pesat,
komputer operator, komputer operator maka matematika diskrit dan juga kriptrografi
melakukan perhitungan yang sama dengan yang juga mengalami perkembangan yang pesat secara
dilakukan oleh kartu SIM; yang dalam hal ini langsung.
komputer mengenkripsi challenge yang dikirim
tadi dengan menggunakan kunci otentikasi Ilmu kriptrografi yang saat ini erat hubungannya
penelpon (ingat, komputer operator mengetahui dengan sistem komputer digital dalam menjaga
kunci otentikasi semua kartu SIM), lalu keamanan dan privasi data, menjadi banyak kita
membandingkan hasil enkripsi ini (yang diambil temukan dalam kehidupan sehari-hari karena
hanya 32 bit) dengan response yang ia terima. perkembangan komputer digital itu sendiri.
Jika sama, maka otentikasi berhasil, dan Boleh dikatakan bahwa kehidupan manusia saat
penelpon dapat melakukan percakapan. ini dikelilingi oleh kriptografi dan juga
matematika diskrit. Oleh karena itu, sebagai
Sebagaimana dijelaskan di atas, dari 128-bit hasil manusia yang hidup di zaman modern ini, kita
enkripsi, hanya 32 bit yang dikirim sebagai diharapkan untuk dapat mengembangkan
response. Jadi, masih ada 96 bit sisanya yang setidaknya memahami kedua ilmu tersebut.
hanya diketahui oleh kartu SIM, BST, dan
komputer operator.

5.3.2. Kerahasiaan Pesan

SIM card juga berisi program stream cipher


(algoritma A5) untuk mengenkripsi pesan dari
ponsel ke BST. Kunci enkripsi panjangnya 64 bit,
yang diambil dari 96 bit sisa dari response SIM
card. Perhatikan bahwa kunci enkripsi 64-bit ini
berbeda setiap kali proses otentikasi dilakukan.
Hal ini memenuhi prinsip algoritma OTP (one-
time pad).
Penerapan Teori Bilangan Bulat dalam Kriptografi dan Aplikasinya dalam Kehidupan Sehari-hari 12

Daftar Pustaka

[1] Handbook of Applied Cryptography,


http://www.cacr.math.uwaterloo.ca
/hac/ Diakses tanggal 30 Desember 2006,
pukul 14.05 WIB

[2] Munir, Rinaldi. (2004). Diktat Kuliah IF


2153 Matematika Diskrit, Edisi Keempat.
Departemen Teknik Informatika, Institut
Teknologi Bandung. 2006

[3] Munir, Rinaldi. (2004). Bahan Kuliah


IF5054 Kriptografi. Departemen Teknik
Informatika, Institut Teknologi Bandung.

Anda mungkin juga menyukai