DIGITAL SIGNATURE Tandatangan Digital DIGITAL SIGNATURE Sejak zaman

  • Slides: 20
Download presentation
DIGITAL SIGNATURE

DIGITAL SIGNATURE

Tanda-tangan Digital (DIGITAL SIGNATURE) Sejak zaman dahulu, tanda-tangan sudah digunakan untuk otentikasi dokumen cetak/kertas

Tanda-tangan Digital (DIGITAL SIGNATURE) Sejak zaman dahulu, tanda-tangan sudah digunakan untuk otentikasi dokumen cetak/kertas (surat, piagam, ijazah, dll) Tanda-tangan mempunyai karakteristik sebagai berikut: - Tanda-tangan adalah bukti yang otentik. - Tanda tangan tidak dapat dilupakan. - Tanda-tangan tidak dapat dipindah untuk digunakan ulang. - Dokumen yang telah ditandatangani tidak dapat diubah. -Tanda-tangan tidak dapat disangkal( repudiation).

 Fungsi tanda tangan pada dokumen kertas juga diterapkan untuk otentikasi pada data digital

Fungsi tanda tangan pada dokumen kertas juga diterapkan untuk otentikasi pada data digital (pesan, dokumen elektronik). Tanda-tangan untuk data digital dinamakan tanda-tangan digital (digital signature). Tanda-tangan digital bukanlah tulisan tanda-tangan yang di-digitisasi (di-scan). Tanda-tangan digital adalah nilai kriptografis yang bergantung pada isi pesan dan kunci. Tanda-tangan pada dokumen cetak SELALU SAMA, apa pun isi dokumennya. Tanda-tangan digital SELALU BERBEDA-BEDA antara satu isi dokumen dengan dokumen lain. Digital signature atau tanda tangan digital adalah kode digital yang dapat ditempelkan pada pesan dikirim secara elektronis. Tanda tangan inilah yang menjadi identifikasi dari si pengirim pesan. Seperti halnya tanda tangan tertulis, tujuan tanda tangan digital adalah untuk menjamin bahwa yang mengirimkan pesan itu memang benar-benar orang yang seharusnya.

 Tidak seperti tanda tangan konvensional (tulisan tangan), jenis tanda tangan digital tergantung pada

Tidak seperti tanda tangan konvensional (tulisan tangan), jenis tanda tangan digital tergantung pada data yang akan ditandai (tanda tangani). Tanda tangan digital dapat digunakan oleh penerima dokumen untuk verifikasi integritas data dan identitas pengirim dokumen. Biasanya tanda tangan digital dibuat menggunakan sepasang kunci dari teknik enkripsi Asimetris dan algoritma hash, contohnya MD 5 (Message Digest 5). Nilai hash-nya kemudian dihitung berdasarkan pada dokumen atau pesan yang akan ditandai (tanda tangani). Penggunaan tanda tangan digital biasanya melibatkan 2 proses, yaitu: proses pembuatan tanda tangan digital dan proses verifikasi tanda tangan digital.

 • Contoh: Tanda-tangan digital

• Contoh: Tanda-tangan digital

Proses pembuatan tanda tangan digital Untuk menandatangani sebuah dokumen atau pesan, penanda tangan (the

Proses pembuatan tanda tangan digital Untuk menandatangani sebuah dokumen atau pesan, penanda tangan (the signer) pertama kali harus menentukan secara pasti apa yang akan ditanda tangani. Fungsi hash diimplementasikan pada pesan untuk menghasilkan sebuah keluaran yang unik yang disebut nilai hash (hash value). Hal ini dapat dilakukan dengan menggunakan algoritma hash seperti SHA (Secure Hash Algorithm) atau MD 5 (Message Digest 5). Kunci privat penanda tangan (the signer), berasal dari sepasang kunci publik dan kunci privat, kemudian digunakan untuk mentransformasikan nilai hash menjadi tanda tangan digital yang unik untuk pesan tersebut dan kunci privat si penanda tangan (the signer). Setelah itu tanda tangan digital disertakan dikirim bersamaan dalam pesan yang akan dikirim atau dapat juga dikirim secara terpisah dari pesan yang akan dikirim sebagai elemen terpisah.

Proses verifikasi tanda tangan digital Ketika pesan yang telah ditandai dengan tanda tangan digital

Proses verifikasi tanda tangan digital Ketika pesan yang telah ditandai dengan tanda tangan digital telah diterima oleh si Penerima, maka pesan tersebut harus diverifikasi untuk memastikan apakah pesan tersebut berasal dari pengirim yang sudah dikenal dan apakah pesan tersebut belum diubah isinya tanpa seizin pemilik dokumen. Fungsi hash yang sama yang diaplikasikan oleh si penanda tangan (the signer) pada pesan yang dikirim juga diaplikasikan oleh si Penerima pesan tersebut. Nilai hash yang baru kemudian dibandingkan dengan nilai hash yang digenerate oleh si penanda tangan. Jika nilai hash tersebut sama nilainya, maka dapat dipastikan bahwa pesan tersebut belum pernah dilakukan perubahan selama proses pengiriman pesan dan integritas datanya dapat dipastikan.

Proses verifikasi tanda tangan digital Nilai hash kemudian digunakan untuk menghubungkan dengan kunci publik

Proses verifikasi tanda tangan digital Nilai hash kemudian digunakan untuk menghubungkan dengan kunci publik milik penanda tangan (the signer) untuk mem-verifikasi apakah kunci privat si Penanda tangan yang digunakan untuk menghasilkan tanda tangan digital tersebut. Tanda tangan digital dapat digunakan untuk menjamin integritas data pada sebuah pesan atau dokumen namun tidak dapat menjamin kerahasiaannya. Data yang dienkripsi oleh tanda tangan digital hanya nilai hash yang terdapat pada pesan tersebut, bukan enkripsi pada isi pesannya. Sangat dimungkinkan untuk mengkombinasikan tanda tangan digital sebuah pesan yang ter-enkripsi untuk menjamin agar integritas dan kerahasiaan data terjamin.

 Autentikasi adalah sebuah proses verifikasi bahwa pesan tersebut benar-benar dikirimkan oleh user yang

Autentikasi adalah sebuah proses verifikasi bahwa pesan tersebut benar-benar dikirimkan oleh user yang dikenal oleh si penerima pesan. Dalam sistem kunci rahasia (secret key system), dapat dikatakan bahwa pesan yang dikirimkan dikirim oleh seseorang yang mengetahui kunci rahasianya. Pada sistem kunci publik dan tanda tangan digital, dapat diketahui bahwa pemilik dari kunci privat yang digunakan untuk membuat tanda tangan digital adalah benar-benar si pengirim pesan tersebut

 Sifat yang diinginkan dari tanda tangan digital diantaranya adalah: a) Tanda tangan itu

Sifat yang diinginkan dari tanda tangan digital diantaranya adalah: a) Tanda tangan itu asli (otentik), tidak mudah ditulis/ditiru oleh orang lain. Pesan dan tanda tangan pesan tersebut juga dapat menjadi barang bukti, sehingga penandatangan tak bisa menyangkal bahwa dulu ia tidak pernah menandatanganinya. b) Tanda tangan itu hanya sah untuk dokumen (pesan) itu saja. Tanda tangan itu tidak bisa dipindahkan dari suatu dokumen ke dokumen lainnya. Ini juga berarti bahwa jika dokumen itu diubah, maka tanda tangan digital dari pesan tersebut tidak lagi sah. c) Tanda tangan itu dapat diperiksa dengan mudah. d) Tanda tangan itu dapat diperiksa oleh pihak-pihak yang belum pernah bertemu dengan penandatangan. e) Tanda tangan itu juga sah untuk kopi dari dokumen yang sama persis.

Dua cara menandatangani pesan 1. 2. Enkripsi pesan Menggunakan fungsi hash (hash function)

Dua cara menandatangani pesan 1. 2. Enkripsi pesan Menggunakan fungsi hash (hash function)

Penandatangan dengan Cara Mengenkripsi Pesan Menggunakan kriptografi simetri a. Pesan yang dienkripsi dengan algoritma

Penandatangan dengan Cara Mengenkripsi Pesan Menggunakan kriptografi simetri a. Pesan yang dienkripsi dengan algoritma simetri sudah memberikan solusi untuk otentikasi pengirim dan keaslian pesan karena kunci simetri hanya diketahui oleh pengirim dan penerima. namun cara ini tidak menyediakan mekanisme untuk antipenyangkalan.

Menggunakan fungsi Hash (Hash function) Hash function atau fungsi hash adalah suatu cara menciptakan

Menggunakan fungsi Hash (Hash function) Hash function atau fungsi hash adalah suatu cara menciptakan “fingerprint” dari berbagai data masukan. Hash function akan mengganti atau mentransposekan data tersebut untuk menciptakan fingerprint, yang biasa disebut hash value. Hash value biasanya digambarkan sebagai suatu string pendek yang terdiri atas huruf dan angka yang terlihat random (data biner yang ditulis dalam notasi heksadesimal).

 Suatu hash function adalah sebuah fungsi matematika, yang mengambil sebuah panjang variabel string

Suatu hash function adalah sebuah fungsi matematika, yang mengambil sebuah panjang variabel string input, yang disebut pre-image dan mengkonversikannya ke sebuah string output dengan panjang yang tetap dan biasanya lebih kecil, yang disebut message digest 5. Hash function digunakan untuk melakukan fingerprint pada pre-image, yaitu menghasilkan sebuah nilai yang dapat menandai (mewakili) pre-image sesungguhnya.

Persamaan fungsi hash secara matematis ialah h = H(M); M = pesan ukuran sembarang,

Persamaan fungsi hash secara matematis ialah h = H(M); M = pesan ukuran sembarang, h = nilai hash (hash value) atau pesan-ringkas (messagedigest); h <<<< M. Misalkan: size(M) = 1 MB, size(h) = 128 bit Nama lain fungsi hash adalah: a) fungsi kompresi (compression function) b) cetak-jari (fingerprint) c) cryptographic checksum d) message integrity check (MIC) e) manipulation detection code (MDC)

Sifat-Sifat Fungsi Hash Kriptografi Tahan preimej (Preimage resistant): bila diketahui nilai hash h maka

Sifat-Sifat Fungsi Hash Kriptografi Tahan preimej (Preimage resistant): bila diketahui nilai hash h maka sulit (secara komputasi tidak layak) untuk mendapatkan m dimana h = hash(m). Tahan preimej kedua (Second preimage resistant): bila diketahui input m 1 maka sulit mencari input m 2 (tidak sama dengan m 1) yang menyebabkan hash(m 1) = hash(m 2). Tahan tumbukan (Collision-resistant): sulit mencari dua input berbeda m 1 dan m 2 yang menyebabkan hash(m 1) = hash(m 2).

 Fungsi hash merupakan fungsi yang bersifat satu arah dimana jika kita masukkan data,

Fungsi hash merupakan fungsi yang bersifat satu arah dimana jika kita masukkan data, maka dia akan menghasilkan sebuah “checksum” atau “fingerprint” dari data tersebut dan tidak dapat diubah kembali menjadi pesan semula. Sebuah pesan yang dilewatkan ke fungsi hash akan menghasilkan keluaran yang disebut Message Authenticated Code (MAC). Dilihat dari sisi matematik, fungsi hash memetakan satu set data ke dalam sebuah set yang lebih kecil dan terbatas ukurannya.

Gambar : Fungsi Hash Satu Arah Aplikasi fungsi hash satu arah bertujuan untuk: 1.

Gambar : Fungsi Hash Satu Arah Aplikasi fungsi hash satu arah bertujuan untuk: 1. Menjaga integritas data a) Fungsi hash sangat peka terhadap perubahan 1 bit pada pesan b) Pesan berubah 1 bit, nilai hash berubah sangat signifikan. c) Bandingkan nilai hash baru dengan nilai hash lama. Jika sama, pesan masih asli. Jika tidak sama, pesan sudah dimodifikasi

2. Menghemat waktu pengiriman. a) Misal untuk memverifikasi sebuah salinan arsip dengan arsip asli.

2. Menghemat waktu pengiriman. a) Misal untuk memverifikasi sebuah salinan arsip dengan arsip asli. b) Salinan dokumen berada di tempat yang jauh dari basisdata arsip asli c) Daripada mengirim salinan arsip tersebut secara keseluruhan ke komputer pusat (yang membutuhkan waktu transmisi lama), lebih mangkus mengirimkan message digest-nya. d) Jika message digest salinan arsip sama dengan message digest arsip asli, berarti salinan arsip tersebut sama dengan arsip master. 3. Menormalkan panjang data yang beraneka ragam. a) Misalkan password panjangnya bebas (minimal 8 karakter) b) Password disimpan di komputer host (server) untuk keperluan otentikasi pemakai komputer. c) Password disimpan di dalam basisdata. d) Untuk menyeragamkan panjang field password di dalam basisdata, password disimpan dalam bentuk nilai hash (panjang nilai hash tetap).