�
1 �
−1
= �
1 �−1−�
��� � ..................................................................... 4 dimana:
k = kunci publik bilangan acak
c
1
= hasil cipherteks 1 c
2
= hasil cipherteks 2 m
= pesan atau teks asli
Sebagai contoh penggunaan algoritma ElGamal, untuk melakukan enkripsi diambil bilangan prima
� = 257, bilangan acak � = 3, � = 4 dan � = 7. Hitung � = �
�
��� � → � = 81. Pengirim ingin mengirim huruf “A” maka nilai dari setiap huruf dapat diambil dari tabel ASCII. Maka enkripsi dapat dilakukan seperti
berikut: 1.
A dalam ASCII bernilai 65. 2.
Hitung �
1
= �
�
��� � → �
1
= 3
7
��� 257→ �
1
= 131. 3.
Hitung �
2
= �
�
� ��� � → �
2
= 81
7
× 65 ��� 257 → �
2
= 210 Pengirim akan mengirim
�
1
dan �
2
kepada penerima pesan rahasia. Untuk melakukan dekripsi dibutuhkan nilai x,
�
1
dan �
2
. Maka enkripsi dapat dilakukan seperti berikut:
1. Hitung �
1 �
−1
= �
1 �−1−�
��� � → �
1 �
−1
= 131
257−1−4
��� 252 →�
1 �
−1
= 190. 2.
Hitung � = �
2
× �
1 �
−1
��� � → � = 210 × 190 ��� 257 → m = 65. 3.
Kemudian bilangan 65 diubah ke ASCII menjadi huruf “A”.
Setelah melakukan dekripsi, penerima menemukan pesan rahasia yaitu teks asli yang sebelum dilakukan enkripsi oleh pengirim pesan rahasia. Maka didapat
plainteks
“A” dan tersampaikan pesan rahasia.
2.5 Bilangan Prima
Bilangan positif p � 1 disebut bilangan prima jika pembaginya hanya 1 dan p.
Sebagai contoh bilangan 23 adalah bilangan prima karena ia hanya habis dibagi 1 dan 23. Karena bilangan prima harus lebih besar dari satu, maka barisan bilangan prima
Universitas Sumatera Utara
dimulai dari 2, yaitu 2, 3, 5 , 7, 11, 13, .... Seluruh bilangan prima adalah bilangan ganjil, kecuali dua yang merupakan bilangan genap. [12]
2.6 Aritmatika Modulo
Aritmatika modulo merupakan sisa hasil pembagian 2 dua bilangan. Operator yang digunakan dalam aritmatika modulo adalah mod. Misalkan a adalah bilangan bulat
dibagi dengan m adalah bilangan bulat 0 , maka akan menghasilkan sisa bagi r dengan q adalah hasil bagi. Sehingga dapat dinotasikan sebagai berikut[7] :
� ��� � = � sedemikian sehingga � = �� + �, dengan 0 ≤ � � Contoh :
16 ��� 6 = 4, dimana 16 = 4 × 3 + 4
2.7 Fermat’s Little Theorem
Fermat’s little theorem adalah suatu metode yang digunakan untuk menguji
keprimaan suatu bilangan bulat. Teorema Fermat ditemukan oleh Pierre De Fermat merupakan seorang matematikawan Perancis pada tahun 1640. Fermats Little
Theorem digunakan jika bilangan prima p dan bilangan bulat a adalah bilangan bulat
yang tidak habis dibagi oleh p, yaitu PBB �, � = 1, maka �
�−1
≡ 1 mod p[12]. Untuk nilai a rentang dalam 1
� �.
Sebagai contoh diambil bilangan prima � = 7. Sehingga nilai a dalam rentang
1 � 7 adalah � = 2, . . . , 7. Misalkan � = 2, maka:
2
�−1
≡ 1��� � 2
7−1
≡ 2
6
��� 7 ≡ 64��� 7
≡ 1��� 7
Didapatkan hasil dari 2
7
≡ 1 ��� 7, dapat disimpulkan bahwa 7 adalah bilangan prima.
Universitas Sumatera Utara
Meskipun dapat digunakan untuk mempermudah kalkulasi dalam kriptografi, peran terpenting dari Fermats little theorem adalah sebagai dasar dari berbagai teknik
enkripsi asimetris.[10]
2.8 Citra Digital
Citra adalah suatu representasi gambaran, kemiripan, atau imitasi dari suatu objek. Citra sebagai keluaran suatu sistem perekaman data dapat bersifat optik berupa foto,
bersifat analog berupa sinyal-sinyal video seperti gambar pada monitor televisi, atau bersifat digital yang dapat langsung disimpan pada suatu media penyimpanan. Citra
digital adalah citra yang dapat diolah komputer[14]. Beberapa format citra digital yang banyak ditemui adalah BMP, JPEG, GIF, PNG, dan lain-lain.
2.8.1. BITMAP
File citra bitmap merupakan format file citra yang tidak mengalami proses kompresi
sehingga kualitas gambar yang dihasilkan baik daripada file citra dengan format lain. Pada file citra bitmap, nilai intensitas pixel dalam citra dipetakan ke dalam sejumlah
bit tertentu yang umumnya panjang setiap pixel adalah 8 bit. Delapan bit ini merepresentasikan nilai intensitas pixel. Dengan demikian ada sebanyak 2
8
= 256 derajat keabuan, mulai dari 0 sampai 255.[7]
File citra bitmap menyimpan data kode citra secara digital dan lengkap cara
penyimpanannya adalah per pixsel. Citra ini memiliki kelebihan untuk memanipulasi warna, tetapi mengubah objek lebih sulit.[14] File citra bitmap dapat dilihat pada
Gambar 2.5.
Gambar 2.5 Contoh File
Citra Bitmap
Universitas Sumatera Utara
2.8.2. PNG
PNG adalah kependekam dari Portable Network Grapihics dan merupakan format standar terbuka format image raster yang didukung oleh W3C dan IETF. Format PNG
bukan merupakan format baru karena telah dikembangkan pada tahun 1995 untuk mengganti format GIF Graphics Interchange Format dan format TIFF Tagged
Image File Format. PNG memiliki tiga mode warna, yaitu paletted 8 bit, grayscale 16 bit, truecolor hingga 48 bit. [11] File citra PNG memiliki fitur transparansi
seperti yang terlihat pada Gambar 2.6.
Gambar 2.6
Contoh File Citra PNG
2.8.3. JPEG
Joint Photograpic Experts JPEG , dibaca jay-peg di rancang untuk kompresi beberapa full-color atau gray-scale dari suatu gambar yang asli, seperti pemandangan
asli di dunia ini. JPEG sudah mendukung untuk 24-bit color depth atau sama dengan 16,7 juta warna 2
24
= 16.777.216 warna. JPEG adalah algoritma kompresi secara lossy. JPEG bekerja dengan merubah gambar spasial dan merepresentasikan kedalam
pemetaan frekueunsi. [6]
JPEG dirancang untuk mengeksploitasi tingkatan dari mata kita yakni bahwa mata kita tidak akan dapat mebedakan perubahan yang lambat terang dan warna
dibandingkan dengan perbedaan suatu jarak apakah jauh atau dekat. Untuk itu JPEG sangat baik digunkan pada fotografi dan monitor 80-bit. JPEG sebenarnya hanyalah
algoritma kompresi, bukan merupakan nama format file. File yang biasa disebut JPEG pada jaringan sebenarnya adalah JFIF JPEG File Interchange Format. [6] File citra
JPEG dapat dilihat pada Gambar 2.7.
Universitas Sumatera Utara
Gambar 2.7
Contoh File Citra JPEG
2.9 Steganografi