Digital Signature

download Digital Signature

of 22

  • date post

    27-Nov-2014
  • Category

    Documents

  • view

    93
  • download

    6

Embed Size (px)

Transcript of Digital Signature

Keamanan Sistem Komputer Digital Signature Algorithm

Nama NIM Mata Kuliah Jurusan

: Yoga Prihastomo : 2003-31-038 : Keamanan Sistem Komputer : Teknik Informatika

Keamanan Sistem Komputer

Digital Signature Algorithm

Pendahuluan KriptografiKriptografi, secara umum adalah ilmu dan seni untuk menjaga kerahasiaan berita [bruce Schneier - Applied Cryptography]. Kata cryptography berasal dari kata Yunani kryptos (tersembunyi) dan graphein (menulis). Selain pengertian tersebut terdapat pula pengertian ilmu yang mempelajari teknik-teknik matematika yang berhubungan dengan aspek keamanan informasi seperti kerahasiaan data, keabsahan data, integritas data, serta autentikasi data [A. Menezes, P. van Oorschot and S. Vanstone - Handbook of Applied Cryptography]. Cryptanalysis adalah aksi untuk memecahkan mekanisme kriptografi dengan cara mendapatkan plaintext atau kunci dari ciphertext yang digunakan untuk mendapatkan informasi berharga kemudian mengubah atau memalsukan pesan dengan tujuan untuk menipu penerima yang sesungguhnya, memecahkan ciphertext. Cryptology adalah ilmu yang mencakup cryptography dan cryptanalysis. Tidak semua aspek keamanan informasi ditangani oleh kriptografi. Ada empat tujuan mendasar dari ilmu kriptografi ini yang juga merupakan aspek keamanan informasi yaitu : Kerahasiaan, adalah layanan yang digunakan untuk menjaga isi dari informasi dari siapapun kecuali yang memiliki otoritas atau kunci rahasia untuk membuka/mengupas informasi yang telah disandi. Integritas data, adalah berhubungan dengan penjagaan dari perubahan data secara tidak sah. Untuk menjaga integritas data, sistem harus memiliki kemampuan untuk mendeteksi manipulasi data oleh pihak-pihak yang tidak berhak, antara lain penyisipan, penghapusan, dan pensubsitusian data lain kedalam data yang sebenarnya. Autentikasi, adalah berhubungan dengan identifikasi/pengenalan, baik secara kesatuan sistem maupun informasi itu sendiri. Dua pihak yang saling berkomunikasi harus saling memperkenalkan diri. Informasi yang dikirimkan melalui kanal harus diautentikasi keaslian, isi datanya, waktu pengiriman, dan lain-lain. Non-repudiasi., atau nirpenyangkalan adalah usaha untuk mencegah terjadinya penyangkalan terhadap pengiriman/terciptanya suatu informasi oleh yang mengirimkan/membuat. Enkripsi adalah transformasi data kedalam bentuk yang tidak dapat terbaca tanpa sebuah kunci tertentu. Tujuannya adalah untuk meyakinkan privasi dengan menyembunyikan informasi dari orang-orang yang tidak ditujukan, bahkan mereka mereka yang memiliki akses ke data terenkripsi. Dekripsi merupakan kebalikan dari enkripsi, yaitu transformasi data terenkripsi kembali ke bentuknya semula. Kriptografi saat ini lebih dari enkripsi dan dekripsi saja. Otentikasi menjadi bagian dari kehidupan kita sama seperti privasi. Kita menggunakan otentikasi dalam kehidupan sehari-hari, sebagai contoh saat kita menandatangani sejumlah dokumen dan saat kita berpindah ke dunia dimana keputusan dan persetujuan kita dikomunikasikan secara elektronis, kita membutuhkan tekikteknik untuk otentikasi. Kriptografi menyediakan mekanisme untuk prosedur semacam itu. Digital signature (tanda tangan digital) mengikat dokumen dengan kepemilikan kunci tertentu, sedangkan digital timestamp mengikat dokumen dengan pembuatnya pada saat tertentu.

Halaman

1

Keamanan Sistem Komputer

Digital Signature Algorithm

Standar KriptografiStandar kriptografi dibutuhkan untuk menciptakan interoperabilitas dalam dunia keamanan informasi. Pada dasarnya standar merupakan kondisi dan protokol yang dibuat untuk memungkinkan keseragaman dalam komunikasi, transaksi dan semua aktivitas secara virtual. Evolusi teknologi informasi yang terus berlanjut memotivasi pengembangan lebih banyak lagi standar, yang membantu memandu evolusi ini. Motivasi utama dibalik standar adalah untuk memungkinkan teknologi dari pabrik yang berbeda untuk berbicara bahasa yang sama, untuk berinteraksi secara efektif. Dalam kriptografi, standarisasi memiliki tujuan tambahan, yaitu sebagai landasan dari teknik-teknik kriptografi karena protokol yang rumit cenderung memiliki cacat dalam rancangan. Dengan menerapkan standar yang telah diuji dengan baik, industri dapat memproduksi produk yang lebih terpercaya. Bahkan protokol yang amanpun dapat lebih dipercaya pelanggan setelah menjadi standar, karena telah melalui proses pengesahan. Pemerintah, industri privat, dan organisasi lain berkontribusi dalam pengumpulan luas standar-standar kriptografi. Beberapa dari standar-standar ini adalah ISO, ANSI, IEEE, NIST, dan IETF. Ada banyak tipe standar, beberapa digunakan dalam industri perbankan, beberapa digunakan secara internasional, dan yang lain dalam pemerintahan. Standarisasi membantu pengembang merancang standar baru, mereka dapat mengikuti standar yang telah ada dalam proses pengembangan. Dengan proses ini pelanggan memiliki kesempatan untuk memilih diantara produk atau layanan yang berkompetisi.

Algoritma SandiAlgoritma sandi adalah algoritma yang berfungsi untuk melakukan tujuan kriptografis. Algoritma tersebut harus memiliki kekuatan untuk melakukan (dikemukakan oleh Shannon): konfusi/pembingungan (confusion), dari teks terang sehingga sulit untuk direkonstruksikan secara langsung tanpa menggunakan algoritma dekripsinya difusi/peleburan (difusion), dari teks terang sehingga karakteristik dari teks terang tersebut hilang. sehingga dapat digunakan untuk mengamankan informasi. Pada implementasinya sebuah algoritmas sandi harus memperhatikan kualitas layanan/Quality of Service atau QoS dari keseluruhan sistem dimana dia diimplementasikan. Algoritma sandi yang handal adalah algoritma sandi yang kekuatannya terletak pada kunci, bukan pada kerahasiaan algoritma itu sendiri. Teknik dan metode untuk menguji kehandalan algoritma sandi adalah kriptanalisa. Dasar matematis yang mendasari proses enkripsi dan dekripsi adalah relasi antara dua himpunan yaitu yang berisi elemen teks terang /plaintext dan yang berisi elemen teks sandi/ciphertext. Enkripsi dan dekripsi merupakan fungsi transformasi antara himpunanhimpunan tersebut. Apabila elemen-elemen teks terang dinotasikan dengan P, elemen-elemen teks sandi dinotasikan dengan C, sedang untuk proses enkripsi dinotasikan dengan E, dekripsi dengan notasi D.

Halaman

2

Keamanan Sistem Komputer

Digital Signature Algorithm

Enkripsi : E(P) = C Dekripsi : D(C) = P atau D(E(P)) = P Secara umum berdasarkan kesamaan kuncinya, algoritma sandi dibedakan menjadi : kunci-simetris/symetric-key, sering disebut juga algoritma sandi konvensional karena umumnya diterapkan pada algoritma sandi klasik kunci-asimetris/asymetric-key Berdasarkan arah implementasi dan pembabakan jamannya dibedakan menjadi : algoritma sandi klasik classic cryptography algoritma sandi modern modern cryptography Berdasarkan kerahasiaan kuncinya dibedakan menjadi : algoritma sandi kunci rahasia secret-key algoritma sandi kunci publik publik-key Pada skema kunci-simetris, digunakan sebuah kunci rahasia yang sama untuk melakukan proses enkripsi dan dekripsinya. Sedangkan pada sistem kunci-asimentris digunakan sepasang kunci yang berbeda, umumnya disebut kunci publik(public key) dan kunci pribadi (private key), digunakan untuk proses enkripsi dan proses dekripsinya. Bila elemen teks terang dienkripsi dengan menggunakan kunci pribadi maka elemen teks sandi yang dihasilkannya hanya bisa didekripsikan dengan menggunakan pasangan kunci pribadinya. Begitu juga sebaliknya, jika kunci pribadi digunakan untuk proses enkripsi maka proses dekripsi harus menggunakan kunci publik pasangannya

Digital Signature Algorithm (DSA)Tanda tangan digital DSA 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. DSA dapat dilihat sebagai variasi dari skema tanda tangan ElGamal. Keamanan DSA berdasarkan pada kemampuan logaritma diskrit dalam urutan bilangan prima Z*p. Domain parameter DSA dibangkitkan untuk setiap entitas dalam domain keamanan tertentu : 1. Pilih bilangan prima sepanjang 160 bit dan 1024 bit dengan kondisi : q | p 1 2. Pilih pembangkit g yang memiliki kelompok putaran yang unik di mana q berada dalam Z*p. Pilih sebuah elemen h Z*p dan hitung g = h (p-1)/q mod p. Ulangi hingga g 1 3. Parameter domain adalah p, q dan g.

Halaman

3

Keamanan Sistem Komputer

Digital Signature Algorithm

Setiap entitas A dalam domain, dengan domain parameter (p,q,g) melakukan :1. pilih bilangan acak x dengan ketentuan 1 x q1 2. hitung y = gx mod p 3. kunci publik A adalah y, sedangkan kunci privat A adalah x

Untuk menandatangani pesan m, A melakukan :1. 2. 3. 4. 5. 6. pilih bilangan acak k dengan ketentuan 1 k q1 hitung X = gk mod p dan r = X mod q. Jika r = 0, lakukan langkah 1 hitung k-1 mod q hitung e = SHA-1(m) hitung s = k-1 { e+xr } mod q. Jika s = 0, lakukan langkah 1 tanda tangan A untuk pesan m adalah (r,s)

Untuk memverifikasi tanda tangan A (r,s) pada m, B mendapat salinan sah dari domain parameter A (p,q,g) dan kunci publik y dan melakukan :1. 2. 3. 4. 5. 6. verifikasi bahwa r dan s berada dalam interval [1,q-1] hitung e = SHA-1(m) hitung w = s-1 mod q hitung u1 = ew mod q dan u2 = rw mod q hitung X = gu1yu2 mod p dan v = X mod q tanda tangan benar jika dan hanya jika v = r Algoritma DSA The signature scheme is correct in the sense that the verifier will a