dari proses penampilan distribusi identitas dalam indeks yang menggunakan Histogram Equalization dengan hasil melalui proses tersebut ditunjukan pada gambar
2.15
a b c
d e
Gambar 2.15 a Citra asli b Output pertama citra HE c Output pertama citra HE N=10 dOutput kedua citra HE e Output kedua citra HE N=10
2.5. Rivest Shamir Adleman RSA
Teknik kunci kriptografi RSA merupakan metode kriptografi yang menggunakan sistem kunci-publik public-key cryptosystem yang modern pada saat ini. Sistem
kriptografi ini patenkan di Amerika Serikat pada 14 Desember, 1977 dan dipublikasikan oleh Len Adleman, Ron Rivest dan Adi Shamir pada tahun 1978. Akan
tetapi, dikarenakan sistem yang dipatenkan terlebih dahulu sebelum dipublis oleh ketiga penemu maka tidak bisa dipatenkan diwilayah eropa dan jepang karena
terkendala oleh peraturan daerah masing- masing. Sistem keamanan RSA didasarkan pada kerumitan teknik pemfaktoran pada
nilai yang besar. Pada saat itu, lembaga ini didirikan oleh the state-of-the-art research
Universitas Sumatera Utara
pada penelitian pemfaktoran ini tapi tidak sepenuhnya dipahami. Untuk mengukur pemahaman tentang apa yang dibahas, RSA Data Security mengeluarkan RSA
Factoring Challenge pada tahun 1991 untuk mendorong penelitian komputasi teori bilangan dan kesulitan praktis dalam pemfaktoran bilangan bulat dengan jumlah besar
dan menyerang kunci RSA digunakan dalam kriptografi. Dengan nilai bilangan terkecil 100 digit angka desimal yang disebut RSA - 100, yang difaktorkan pada 1
April 1991, untuk mendapatkan hadiah sebesar US 1.000. Tantangan RSA tersebut berakhir pada tahun 2007 dan sampai saat ini yang dapat terpecahkan yaitu sekitar 12
juta digit bilangan prima. RSA menjadi sistem kriptografi kunci-publik yang terpopuler karena
merupakan sistem pertama yang sekaligus dapat digunakan untuk key distribution, confidentiality dan digital signature. Boleh dikatakan semua standar sistem kriptografi
memperbolehkan penggunaan RSA, termasuk SSLTLS untuk pengamanan http dan SSH secure shell Kromodimoeljo, 2009. Algortima RSA memiliki besaran-
besaran sebagai berikut 1. p dan q bilangan prima
rahasia 2. n = p. q
tidak rahasia 3.
ɸn = p – 1q – 1 rahasia
4. e kunci enkripsi tidak rahasia
5. d kunci dekripsi rahasia
6. m plaintext rahasia
7. c ciphertext tidak rahasia
2.5.1.Pembangkitan Kunci
RSA memiliki proses cara kerja dalam pembuatan kuncinya, dalam membuat suatu kunci untuk mendapatkan kunci public dan kunci private dari sistem ini adalah
sebagai berikut : 1.
Pilih dua bilangan prima bernilai sembarang, p dan q. 2.
Hitung n = p. q direkomendasikan p ≠ q, sebab jika p = q maka n = p
2
sehingga p dapat diperoleh dengan menarik akar pangkat dua dari n.
3. Hitung ɸn = p – 1q – 1.
Universitas Sumatera Utara
4. Pilih kunci publik e, yang relatif prima terhadap ɸn yaitu 1 e ɸn dan gcde,
ɸn = 1. 5.
Bangkitkan kunci privat dengan menggunakan persamaan
2.14
6. Hasil dari algoritma ini adalah :
a Kunci public adalah pasangan e, n
b Kunci private adalah pasangan d, n
Kromodimoeljo, 2009
2.5.2. Proses Enkripsi
Proses enkripsi pesan adalah sebagai berikut: 1.
Ambil kunci publik penerima pesan e dan modulus n. 2.
Nyatakan plaintext m menjadi blok-blok m1, m2, ..., sedemikian sehingga setiap blok merepresentasikan nilai di dalam selang [0, n
– 1]. 3.
Setiap blok dienkripsi menjadi blok
dengan rumus:
2.15
Contoh :
Misalkan Bob mengirim pesan kepada Alice. Pesan plaintext yang akan dikirim ke A adalah
m = BUDI Bob mengubah m ke dalam desimal pengkodean ASCII dan sistem akan memecah m
menjadi blok yang lebih kecil dengan menyeragamkan masing-masing blok menjadi 3 digit dengan menambahkan digit semu biasanya 0 karena kode ASCII memiliki
panjang digit maksimal sebesar 3 digit:
Universitas Sumatera Utara
m1= 066 m2 = 085
m3 = 068 m4 = 073
Nilai-nilai ini masih terletak di dalam selang [0, 3337-1] agar transformasi menjadi
satu-ke-satu. Bob mengetahui kunci publik Alice adalah e = 79 dan n = 3337. Bob dapat mengenkripsi setiap blok plaintext sebagai berikut:
c1 = 6679 mod 3337 = 795 c2 = 85 79 mod 3337 = 3048
c3 = 6879 mod 3337 = 2753 c4 = 7379 mod 3337 = 725
Dalam penerapannya, untuk memudahkan sistem membagi ciphertext menjadi blok- blok yang mewakili tiap karakter maka ditambahkan digit semu biasanya 0 pada
blok cipher sehingga tiap blok memiliki panjang yang sama sesuai ketetapan dalam hal ini panjangnya 4 digit. Jadi, ciphertext yang dihasilkan adalah :
c = 0795 3048 2753 0725
2.6.3. Proses Deskripsi
1. Ambil kunci privat penerima pesan d, dan modulus n.
2. Nyatakan plaintext c menjadi blok-blok c1, c2, ..., sedemikian sehingga setiap
blok merepresentasikan nilai di dalam selang [0, ]. 3.
Setiap blok dienkripsi menjadi blok
dengan rumus:
2.16
Contoh
: Dengan kunci private d = 1019, chiperteks yang telah dibagi menjadi blok-blok cipher
yang sama panjang, c = 0795 3048 2753 0725, kembali diubah ke dalam plaintext: BUDI
m1 = 7951019 mod 3337 = 66 m2 = 30481019 mod 3337 = 85
m3 = 27531019 mod 3337 = 68 m4 = 7351019 mod 3337 = 73
Sehingga plaintext yang dihasilkan m = BUDI
Universitas Sumatera Utara
2.6. Penelitian Terdahulu