Mode Warna Domain Parameter Kurva Eliptik pada GF2

hingga citra membentuk matriks M × N dan jumlah tingkat keabuan piksel G. Biasanya besar M, N, G adalah perpangkatan dari dua : 2 m M  , 2 n N  , dan 2 k G  yang dalam hal ini m, n, dan k adalah bilangan bulat positif. Jika b menyatakan jumlah menyatakan bit yang diperlukan untuk menyimpan citra digital dalam memori, maka: b m n k   

2.12.3 Mode Warna

Menampilkan sebuah citra pada layar monitor diperlukan lebih informasi mengenai letak dari pixel-pixel pembentuk citra. Untuk memperoleh gambaran yang tepat dibutuhkan juga informasi tentang warna-warna yang dipakai untuk menggambarkan sebuah citra digital. Beberapa mode warna yang sering digunakan: 1. Bitmap Mode, memerlukan 1-bit data untuk menampilkan warna dan warna yang dapat ditampilkan hanya warna hitam dan putih monokrom. 2. Indexed Color Mode, mengurutkan warna dalam jangkauan 0-255 8-bit. 3. Grayscale Mode, menampilkan citra dalam 256 tingkat keabuan. 4. RGB Mode, menampilkan citra dalam kombinasi tiga warna dasar red, green, dan blue, tiap warna dasar memiliki intensitas warna 0-255 8-bit. 5. CMYK Mode, menampilkan citra dalam kombinasi empat warna dasar cyan, magenta, yellow dan black, tiap warna memiliki intensitas 0-255 8-bit.

2.12.4 Penyimpanan Citra

Menyimpan citra ke dalam media penyimpanan dalam bentuk digital memiliki bentuk yang beragam. Ada dua cara penyimpanan yang biasa dilakukan oleh perangkat lunak yaitu bitmap dan vector. Dalam hal ini sering juga digunakan istilah program paint dan program draw. Universitas Sumatera Utara Program paint atau program berbasis bitmap menyimpan citra sebagaimana ditampilkan di layar yaitu sebagai array dari pixel-pixel. Perubahan yang dilakukan pada citra dengan menggunakan program ini akan mengubah langsung tiap titik atau pixel pada citra. Kelebihan cara ini adalah kemudahannya untuk menampilkan gambar secara rinci dengan pola-pola yang kompleks atau gambar fotorealistik, yang tidak dapat dengan mudah direpresentasikan sebagai model matematika. Program draw atau program berbasis vector menyimpan citra sebagai model matematika, dan setiap elemen citra disimpan secara terpisah. Perubahan yang dilakukan pada citra menggunakan program ini akan mengubah deskripsi matematika yang menyusun gambar dan program menghitung perubahan yang perlu pada warna- warna pixel secara tidak langsung. Kelebihan cara ini adalah kemampuannya untuk menciptakan gambar dalam resolusi yang berbeda tanpa kehilangan mutu gambar yang berarti. Format File Citra BMP Format file BMP merupakan format standar sistem operasi Windows dan IBM OS2. Format ini mendukung mode warna dari Bitmap Mode hingga RGB Mode. BMP mudah dibuka dan disimpan, tetapi ada beberapa aturan khusus yang harus dicermati, diantaranya: 1. Format file ini menyimpan datanya secara terbalik, yaitu dari bawah ke atas. 2. Citra dengan resolusi warna 8-bit, lebar citra harus merupakan kelipatan dari 4, bila tidak maka pada saat penyimpanan akan ditambahkan beberapa byte pada data hingga merupakan kelipatan dari 4. 3. Citra dengan resolusi warna 24-bit, urutan penyimpanan tiga warna dasar adalah biru, hijau, merah B, G, R. Lebar citra dikalikan dengan 3 harus merupakan kelipatan dari 4, bila tidak maka pada saat penyimpanan akan ditambahkan beberapa byte pada data hingga merupakan kelipatan dari 4. 4. BMP mendukung pemampatan run length encoding RLE. Universitas Sumatera Utara Format File Citra GIF Format file GIF Graphics Interchange Format merupakan hasil rancangan CompuServe Incorporated. Format ini dirancang untuk memudahkan pertukaran citra bitmap antar komputer. GIF hanya mendukung resolusi warna sampai 256 warna 8- bit. Format file GIF memiliki dua versi yaitu GIF 87a dan GIF89a. Versi GIF89a diperkenalkan pada bulan Juli 1989 merupakan perbaikan dari versi GIF87a. Pada GIF89a ditambahkan kemampuan untuk menampilkan citra dengan latar belakang transparan background transparency, penyimpanan data citra secara interlaced dan kemampuan untuk menampilkan citra animasi. GIF menggunakan variable-length code yang merupakan modifikasi dari algoritma LZW Lemple-Ziv Wetch untuk memampatkan data citra. Teknik pemampatan data ini mampu menghasilkan pemampatan yang baik dan merupakan teknik pemampatan yang mampu mengembalikan data sama persis dengan aslinya lossless data comperssion. Format File Citra JPEG Format file Joint Photographic Experts Group JPEG atau yang biasa disingkat JPG meningkat pesat penggunaannya. Format ini terkenal karena ukurannya yang mini dibandingkan dengan format-format lainnya. JPEG mendukung mode warna RGB, CMYK dan Grayscale, tetapi tidak mampu menampilkan citra dengan latar belakang transparan. Format JPEG menterjemahkan informasi tersebut menjadi komponen luminance komponen cahaya dan dua komponen chromatic komponen perubahan warna dari hijau ke merah dan dari biru ke kuning. Untuk kompresinya format file citra ini menggunakan kompresi JPEG Universitas Sumatera Utara Bab 3 ANALISIS DAN PERANCANGAN APLIKASI

3.1 Analisis Algoritma Tanda Tangan Digital

Cara kerja tanda tangan digital digital signature hampir sama dengan cara kerja “tanda tangan” dokumen biasa. Terdapat dua algoritma pada sistem digital signature, yaitu algoritma sign untuk menandatangani sebuah dokumen M dan menghasilkan sebuah tanda tangan sign ρ, dan algoritma verify yang mengembalikan nilai true bila tanda tangan ρ memang pemilik penandatangan dan untuk dokumen M. Sistem digital signature menggunakan kunci asimetris dengan algoritma sign menggunakan kunci privat dan algoritma verify menggunakan kunci publik. Sebelum pengirm ingin mengirim dokumen bertanda tangan secara digital pada penerima terlebih dahulu pengirim harus membangkitkan sepasang kunci asimetris miliknya, yaitu kunci privat K privat dan kunci publik K publik . Kemudian pengirim menandatangani dokumen M dengan memanggil algoritma sign sebagai berikut : ρ ← signM, K privat untuk menghasilkan tanda tangan ρ. Pengirim kemudian mengirim M,ρ kepada penerima. Penerima pada akhirnya memanggil algoritma verify sebagai berikut : terima ← verify M, ρ, K publik untuk memverifikasi tanda tangan ρ. Penerima menerima pasangan M,ρ jika nilai terima adalah true. Universitas Sumatera Utara Proses tanda tangan digital digital signature dengan kunci asimetris dapat dilihat pada gambar 3.1. Pengirim Penerima Kunci Publik Kunci privat Gambar 3.1 Proses digital signature dengan kunci asimetris Dalam perkembangannya, tanda tangan digital tidak lagi dibuat langsung dari pesan aslinya seperti yang diperlihatkan oleh gambar 3.1. Hal ini dikarenakan pesan mungkin saja sangat panjang yang mengakibatkan tanda tangan digitalnya juga menjadi sangat panjang. Untuk itu digunakan fungsi hash hash function. Fungsi hash bersifat satu arah, sehingga output dari fungsi ini tidak dapat dikembalikan ke bentuk inputnya lagi. Tanda tangan digital dibuat dari hasil fungsi hash pesan. Sifat hash yang menunjukkan integritas data terdapat pada tanda tangan digital. Pembangkit Kunci Sign Verify M, � ρ Terima ? M Universitas Sumatera Utara Kekuatan tanda tangan digital adalah bahwa setiap data mempunyai tanda tangannya sendiri. Artinya setiap tanda tangan adalah unik terhadap pesan dan pasangan kunci yang digunakan. Ketika dua buah pesan ditandatangani dengan kunci yang sama, tanda tangan yang dihasilkan akan berbeda. Bahkan ketika dua orang dengan kunci yang berbeda menandatangani pesan yang sama, tanda tangan yang dihasilkan akan berbeda. Sifat ini menunjukkan sifat otentikasi dan integritas data pada pesan. Proses tanda tangan dan validasi ditunjukkan di bawah ini Signer Verify Publik Key Privat Key ? = Gambar 3.2 Proses pembentukan dan validasi tanda tangan digital Message Message Signature Message Signature Message Signature Message Digest Message Digest Signature Message Digest Fungsi Hash Sign Verify Fungsi Hash Universitas Sumatera Utara Tanda tangan digital berbentuk sepasang besar angka yang ditampilkan komputer sebagai string dari digit biner. Tanda tangan digital dihitung dengan menggunakan sejumlah aturan dan sejumlah parameter sehingga identitas pemilik dan integritas data dapat diverifikasi. Pembuat tanda tangan menggunakan kunci privat untuk membuat tanda tangan; sedangkan kunci publik, yang berkorespodensi dengan kunci privat namun tidak sama, digunakan untuk memverifikasi tanda tangan. Setiap user memiliki sepasang kunci publik dan kunci privat. kunci publik diasumsikan diketahui public secara umum, sedangkan kunci privat tidak pernah disebar. Algoritma tanda tangan digital Digital Signature AlgorithmDSA dapat dilihat sebagai variasi dari skema tanda tangan ELGamal. Algoritma tanda tangan digital DSA menggunakan parameter sebagai berikut: 1. p adalah bilangan prima dengan panjang L bit, yang dalam hal ini 512 1024 L   dan L harus kelipatan 64. 2. q bilangan prima 160 bit, merupakan faktor dari 1 p  . Dengan kata lain 1 mod p q   . 3. 1 mod p q g h p   , yang dalam hal ini 1 h p   sedemikian sehingga 1 mod 1 p q h p   . 4. Domain parameter adalah p, q, g. Dari domain parameter p, q, g, maka dilakukan pembangkitan pasangan kunci privat dan kunci publik. Algoritma untuk membangkitkan kunci sebagai berikut: 1. Pilih bilangan acak x dengan ketentuan 1 1 x q    . 2. Hitung mod x y g p  . 3. x adalah kunci privat dan y adalah kunci publik. Universitas Sumatera Utara Setelah membangkitkan pasangan kunci maka pesan M ditandatangani dengan algoritma sebagai berikut : 1. Ubah pesan M menjadi message digest dengan fungsi hash SHA. 2. Tentukan bilangan acak 1 1 k q    . 3. Hitung mod mod k r g p q  . 4. Hitung 1 mod s k H M xr q    . 5. Tanda tangan digital dari pesan M adalah r dan s. Algoritma untuk menverifikasi tanda tangan r dan s sebagai berikut: 1. Periksa bahwa r dan s berada pada interval [1, 1 q  ]. 2. Hitung 1 mod w s q   . 3. Hitung 1 mod u H M w q  dan 2 mod u rw q  . 4. Hitung 1 2 mod mod u u v q y p q  . 5. Jika v r  maka tanda tangan digital valid, jika tidak maka tanda tangan digital ditolak.

3.2 Analisis Algoritma Tanda Tangan Digital Berbasis Kriptografi Kurva Eliptik

Kriptografi kurva eliptik dapat dipakai untuk menandatangani suatu pesan karena kriptografi kurva eliptik termasuk sistem kriptografi kunci publik yang mendasarkan keamanannya pada permasalahan matematika kurva eliptik. Proses tanda tangan digital menggunakan kriptografi kurva eliptik sama dengan tanda tangan digital menggunakan algoritma tanda tangan digital Digital Signature AlgorithmDSA. Pada algoritma tanda tangan digital menggunakan kriptografi kurva eliptik proses pembangkitan tanda tangan digital dan verifikasi tanda tangan sama dengan algoritma tanda tangan digital Digital Signature AlgorithmDSA, yang membedakan adalah domain parameter yang digunakan dan proses pembangkitan kunci privat dan kunci publik. Universitas Sumatera Utara Kekuatan kriptografi kurva eliptik tergantung dari pemilihan domain parameter yang digunakan. Pemilihan parameter ini dilakukan sedemikian sehingga terhindar dari serangan serangan terhadap kekuatan kriptografi kurva eliptik miaslnya serangan Polhig- Hellman dan serangan Pollard’s rho. Kriptografi kurva eliptik menggunakan masalah logaritma diskrit pada titik-titik kurva eliptik yang disebut dengan masalah logaritma diskrit kurva eliptik Eliptic Curve Disctrete Logarithm Problem. Algoritma tanda tangan digital berbasis kriptografi kurva eliptik mempunyai empat proses utama yaitu : 1. Pemilihan domain parameter. 2. Pembangkitan pasangan kunci. 3. Pembangkitan tanda tangan digital. 4. Verifikasi tanda tangan digital.

3.2.1 Domain Parameter Kurva Eliptik pada GF2

m Tanda tangan digital berdasarkan kriptografi kurva eliptik menggunakan parameter yang berbeda dengan algoritma tanda tangan digital Digital Signature AlgorithmDSA. Domain parameter kurva eliptik pada GF2 m adalah m, a, b, G, n, h, fx. Domain parameter kurva eliptik , , , , , , D m a b G n h f x  dapat dilihat pada tabel 3.1. Universitas Sumatera Utara Tabel 3.1 Notasi yang digunakan pada domain parameter kurva eliptik Notasi Keterangan m Besarnya finite field GF2 m dimana m integer dan m 1 fx irreducible polynomial a dan b Koefisien pada persaman kurva eliptik 2 3 2 : m E F y xy x ax b     , g g G x y  Titik dasar 2 m G E F  dimana 2 , m g g x y F  n Order dari titik G dengan 160 2 n  dan 4 2 m n  h Kofaktor 2 m h E F n  dimana 2 m E F jumlah titik pada E Ada dua cara untuk mendapatkan domain parameter yaitu dengan membangkitkan kurva eliptik E secara acak kemudian membangkitkan domain parameter lalu dilakukan validasi untuk menjamin keamanan kurva eliptik. Cara lainnya adalah dengan menggunakan domain parameter yang mengacu pada standar yang ada. Domain parameter jenis ini direkomendasikan salah satunya oleh NIST. NIST merekomendasikan finite field 2 m F yang digunakan yaitu 163 233 283 409 2 2 2 2 , , , F F F F dan 571 2 F . Untuk menghindari serangan Polhig- Hellman dan serangan Pollard’s rho pada permasalahan logaritma diskrit kurva eliptik maka nilai n harus 160 2 n  dan 4 2 m n  . Berdasarkan teorema Hasse maka jumlah titik pada E yaitu 2 m E F berada pada interval 2 1 2 2 , 1 2 2 m m m q         . Universitas Sumatera Utara

3.2.2 Pembangkitan Pasangan Kunci