Salah Kaprah Tanda Tangan Digital

Banyak orang menyangka, “Tanda Tangan Digital” merupakan tanda tangan yang urutan pembuatannya adalah: (1) Tanda tangan menggunakan pena di atas kertas putih, (2) Difoto atau dipindai / discan, (3) Menjadi citra gambar JPG, GIF, atau PNG, (3) Disunting menggunakan aplikasi pengolah citra misalkan Adobe PhotoShop, (4) Disisipkan ke dokumen Microsoft Word.

Apakah benar seperti itu?
Menurut pendapat saya, itu bukan “Tanda Tangan Digital” atau “Digital Signature” melainkan hanya citra tanda tangan.

Definisi Digital Signature menurut Wikipedia adalah:

Tanda tangan digital adalah skema matematis untuk memverifikasi keaslian pesan atau dokumen digital. Tanda tangan digital yang valid, di mana prasyaratnya terpenuhi, memberi penerima alasan yang sangat kuat untuk percaya bahwa pesan itu dibuat oleh pengirim yang dikenal (otentikasi), dan bahwa pesan itu tidak diubah saat transit (integritas).

Jadi jelas, bahwa tujuan Tanda Tangan Digital adalah untuk memastikan bahwa dokumen yang ditandatangani adalah benar dari orang yang dimaksud (bukan buatan orang lain) dan tidak mengalami perubahan (ditambah, diubah, atau dihapus).

Perwujudan dari Tanda Tangan Digital ada beberapa macam.
Yang paling terkenal adalah Tanda Tangan Digital pada Kartu Keluarga yang berupa QR Code. Bila QR Code tersebut dipindai menggunakan aplikasi tertentu, maka akan muncul keterangan dokumen aslinya. Kita bisa mencocokkan keterangan itu dengan dokumen yang sedang dipegang, apakah ada perbedaan? Bila ada, berarti palsu.

Teknik lain yang lebih canggih adalah menggunakan suatu algoritma Matematis yang dinamakan “Pretty Good Privacy” (PGP).

Pada PGP dikenal 2 macam kunci yaitu “Private Key” dan “Public Key”.
Private Key harus disimpan dan jangan sampai diketahui orang lain, sedangkan Public Key boleh disebarkan ke semua orang. Fungci Public Key adalah untuk mencocokkan apakah pesan yang diterima adalah benar telah ditandatangani oleh Private Key. Kita tidak perlu khawatir seandainya Public Key tersebar lalu diketahui peretas, sebab Public Key tidak bisa dipakai untuk menandatangani teks. Hanya bisa dipakai untuk mengecek saja.

Misalkan saya mengetik pesan ini kepada Alice:

Assalamu'alaikum.
Tolong transfer uang sebanyak Rp 100.000
ke rekening bank saya.

Mawan A. Nugroho.

Pesan di atas, ditandatangani secara digital menggunakan private key milik saya sehingga hasilnya menjadi seperti di bawah ini:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Assalamu'alaikum.
Tolong transfer uang sebanyak Rp 100.000
ke rekening bank saya.

Mawan A. Nugroho.
-----BEGIN PGP SIGNATURE-----
Version: OpenPGP.js v2.6.2
Comment: https://openpgpjs.org

wsFcBAEBCAAQBQJf3BADCRCn9Fn22xE9rAAAiukP/Rid/O8ROE02AUGoc0qT
M51Hq9g5F9jdUEXH9sPkfjUo9SudBYEsKhVSaZzaOY4z9O/BajyXPmuuh70F
pOF7T0SikvlZLELjOZ+BPsGMOP0thytbftlkIXUgLSFxx45H1UPmZj11/xie
Dpz6IKfx/qpq/UjvlxrPG48CLz6zPIH+qcfuy8TeASGBwB11GOkKkPpBrd5a
JGYxl3WQ8etgC+I5aprqh2nK5Uvkw/0yNwyt5HP8Fzn3XJyr/lZH0dNjj2S7
y664Y6qS7JGw/asW4I0CEQc6Xm6mkfr/0k+HNqCa0HeOfSiKIYuQnnEeJjKC
91sC5fi0BxdlQJjKyIuOzmm4j7+6g/rx7N0WFFjtj7iT0Y2ijtdI279oqedZ
iqMc1N6LrK2ji9keF42+K6ov/6ffbCtBKOWq6DYBPHDRbnImqjrv36OLPZlu
9vTNiwCGrAR1ogqMUNDTtL31Tfm2DNPPDI/264LHmDq1c3gMTdBsg+hL1rrB
u1k60LDZM04q1PPZiNO9VWBQHhZhebzDg7reN5ckNMRx5BZTWJJ21FW2IZ7y
pVO0ksZW/51n3co7fhOHETfT9H+43uCqhY4N6+5f5d4x246J+HItwbOvMB7n
30wOj+pxohnLIsgwRwxoWea+h8PgTtAJSoccoiIHqed+aSrRuQJqWl/AFwxS
qODv
=9IZP
-----END PGP SIGNATURE-----

Alice bisa mencocokkan apakah teks di atas asli dari saya? Ataukah asli tapi di tengah jalan diubah angkanya (oleh penjahat) menjadi Rp 1.000.000? Caranya, Alice harus mempunyai Public Key milik saya yaitu:

-----BEGIN PGP PUBLIC KEY BLOCK-----
Version: OpenPGP.js v2.6.2
Comment: https://openpgpjs.org

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
+PFJSn14LZZtEB0Oyg==
=R6l/
-----END PGP PUBLIC KEY BLOCK-----

Dengan menggunakan Public Key di atas, pesan yang diterima kemudian dicocokkan.

Kehebatan dari PGP adalah teks tidak akan bisa dipalsukan. Bila ada satu huruf saja yang disisipkan atau diubah, bahkan posisinya diubah dari 89 menjadi 98, tetap akan ketahuan.

Untuk latihan, silakan menggunakan aplikasi Open PGP Online.

Web Hosting

Leave a Reply