Digital Signature
Digital signature itu signature, tanda, untuk menandai suatu data atau dokumen secara digital, bukan tanda tangan yang didigitalkan. Jadi begini, sekarang banyak kan dokumen penting yang dibuat dan dikirim secara digital. Siapa yang bisa menjamin keaslian dokumen itu, tidak ada halaman yang hilang, atau tidak ada perubahan terhadap isi dokumen itu setelah dikirim atau selama masa pengiriman? Nah, untuk itulah gunanya ada digital signature.
Dalam digital signature, suatu data/pesan akan dienkripsi dengan menggunakan kunci simetris yang diciptakan secara acak (randomly generated symmetric key). Kunci ini kemudian akan dienkripsi dengan menggunakan kunci publik dari calon penerima pesan. Hasil dari enkripsi ini kemudian dikenal/disebut sebagai “digital envelope” yang kemudian akan dikirimkan bersama pesan/data yang telah dienkripsi. Setelah menerima digital envelope penerima kemudian akan membuka/mendekripsi dengan menggunakkan kunci kunci prifatnya. Hasil yang ia dapatkan dari dekripsi tersebut adalah sebuah kunci simetris yang dapat digunakannya untuk membuka data/pesan tersebut.
Maksud dari menandatangani secara digital adalah memberikan suatu ciri khas terhadap suatu pesan. Message digest adalah suatu besaran (value) yang berasal dari suatu data/pesan yang memiliki sifat yang unik yang menandai bahwa pesan tersebut mempunyai suatu besaran tertentu. Messages digest diciptakan dengan melakukan enkripsi terhadap suatu data dengan menggunakan menggunakan kriptografi satu arah (one way crypthography), yaitu suatu tehnik kriptografi yang terhadapnya tidak dapat dilakukan proses pembalikan (reversed). Pada saat message digests dienkripsi dengan menggunakan kunci privat dari pengirim dan “ditambahkan” kepada data/pesan yang asli maka hasil yang didapat adalah digital signature dari pesan tersebut.
Penerima dari digital signature akan dapat mempercayai bahwa data/pesan benar berasal pengirim. Dan karena apabila terdapat perubahan suatu data/pesan akan menyebabkan akan merubah message digests dengan suatu cara yang tidak dapat diprediksi (in unpredictible way) maka penerima akan merasa yakin bahwa data/pesan tersebut tidak pernah diubah setelah message digest diciptakan. Sebelum kedua belah pihak (pengirim/penerima) hendak melakukan komunikasi diantaranya dengan menggunakan kriptografi kunci publik, masing-masing pihak harus merasa yakin akan keberaan mereka. Mereka kemudian akan melakukan otentifikasi terhadap keberadaan masing-masing pihak. Agar mereka dapat melakukan otentifikasi terhadap keberadaan mereka masing-msing maka mereka menunjuk pihak ketiga yang akan memberikan otentifikasi terhadap kunci publik mereka. Pihak ketiga ini kita kenal sebagai Certification Authorithy. Certification authorithy ini kemudian akan memberikan suatu sertifikat (certificate) yang berisi identitas dari pengguna (misalnya Alice), sertifikat ini ditandatangani secara digital oleh Certification authority tersebut. Isi dari sertifikat tersebut selain identitas ia juga berisi kunci publik dari pemiliknya.
Contoh dari penggunaan digital signature adalah sebagai berikut, Alice akan membuat message digest dari data/pesan yang hendak ia kirimkan. Kemudian messages digest tersebut dienkripsi dengan menggunakan kunci privat yang ia punyai, hasil yang didapat adalah digital signature dari adata tersebut. Ia kemudian mentransmisikan data dan digital signature itu kepada Bob. Bob pada saat menerima pesan itu akan melihat messages digest dari pesan dan kemudian ia akan membandingkan hasilnya dengan hasil dari digital signature. Apabila hasil yang didapat dari keduannya dalah sama maka Bob akan merasa yakin bahwa pesan yang telah ditandatangani oleh Alice dengan menggunakan kunci privatnya adalah tidak pernah berubah sejak dibuat.
Langkah-langkah dalam melakukan enkripsinya adalah sebagai berikut:
Alice menjalankan (runs) data yang hendak ia kirimkan, melalui algoritma satu arah (one way algorithm) sehingga ia mendapat suatu nilai (value) yang unik dari data tersebut. Nilai ini disebut message digest. Nilai adalah semacam sidik jari bagi data tersebut dan akan digunakan dalam proses yang lebih lanjut untuk meneliti keutuhan (integrity) dari data tersebut.
Alice kemudian melakukan enkripsi terhadap messages digest tersebut dengan menggunakan kunci prifatnya sehingga ia akan mendapatkan digital signature dari data tersebut.
Kemudian, Alice membuat (generates) suatu kunci simetris secara acak (random) dan menggunakan kunci itu melakukan enkripsi terhadap data yang hendak ia kirimkan, tandatangan (signature) miliknya, dan salinan dari sertifikat digitalnya yang berisi kunci publiknya. Untuk mendekripsi data tersebut Bob membutuhkan salinan dari kunci simetris tersebut.
Alice harus memiliki terlebih dahulu sertifikat milik Bob, sertifikat ini berisi salinan (copy) dari kunci publik milik Bob. Untuk menjamin keamanan transmisi dari kunci simetris maka kunsi tersebut dienkripsi dengan menggunakan kunci publik milik Bob. Kunci yang telah dienkripsi yang dikenal sebagai amplop digital (digital envelope) akan dikirimkan bersama-sama dengan data yang telah dienkripsi.
Alice kemudian akan mengirimkan data (message) tersebut yang berisi data yang telah dienkripsi dengan kunci simetris, tandatangan dan sertifikat digital, serta kunci simetris yang telah dienkripsi dengan kunci asimetris (digital envelope).
Bob menerima pesan(messages) dari Alice tersebut dan kemudian mendekripsi amplop digital dengan kunci prifat yang dipunyainya, ia kemudian akan mendapatkan kunci asimetris.
Bob kemudian menggunakan kunci simetris tersebut untuk mendekripsi data itu (property descryption), tandatangan Alice, dan sertifikat miliknya.
Ia kemudian mendekripsi digital signature milik Alice dengan menggunakan kunci publik milik Alice, yang didapat Bob dari sertifikat milik Alice. Dari dekripsi ini akan didapatkan message digest dari data tersebut.
Bob kemudian memproses (run) data itu dengan menggunakan algoritma satu arah yang sama yang digunakan Alice untuk message digest.
Akhirnya Bob akan membandingkan antara message digest yang didapatkannya dari proses dekripsi diatas dengan message digest yang didapatkan dari digital signature milik Alice. Kalau hasil yang didapat dari perbandingan itu adalah sama maka, Bob dapat merasa yakin bahwa data tersebut tidak pernah dirusak (altered) selama proses transmisi dan data itu ditandatangani dengan menggunakan kunci privat milik Alice. Kalau hasil dari perbandingan itu adalah tidak sama, maka data tersebut pastilah telah diubah atau dipalsukan setelah ditandatangani.
Begitulah kira-kira tentang digital signature.
Sumber :
1 comments:
nice gan, buat tambahan aja tutorial cara buat nya dari proses enkripsi hingga deskripsi, semoga bermanfaat
PEMBAHASAN LENGKAP TENTANG DIGITAL SIGNATURE atau TANDA TANGAN DIGITAL
Post a Comment