Glosarium

Apa itu Tanda Tangan Digital?

Tanda tangan digital adalah skema kriptografi yang menggunakan kunci privat untuk menghasilkan tanda tangan atas pesan atau dokumen, yang dapat diverifikasi oleh siapa pun dengan kunci publik yang sesuai untuk mengonfirmasi keaslian dan integritas data.

Juga dikenal sebagai: code signing, message signing

Tanda tangan digital memberikan tiga jaminan: autentikasi (pesan dibuat oleh pengirim yang diklaim), integritas (pesan tidak diubah sejak ditandatangani), dan non-repudiasi (penandatangan tidak dapat menyangkal telah menandatanganinya). Properti-properti ini membuat tanda tangan digital mengikat secara hukum di banyak yurisdiksi dan sangat penting untuk distribusi perangkat lunak, transaksi keuangan, dan verifikasi identitas.

Proses penandatanganan bekerja dengan pertama-tama meng-hash pesan dengan fungsi hash kriptografi (seperti SHA-256) untuk menghasilkan digest berukuran tetap, kemudian mengenkripsi digest tersebut dengan kunci privat penandatangan. Verifikasi membalik prosesnya: verifier mendekripsi tanda tangan dengan kunci publik penandatangan, secara independen meng-hash pesan, dan membandingkan kedua digest. Jika cocok, tanda tangan valid. Algoritma yang umum mencakup tanda tangan RSA, ECDSA (Elliptic Curve Digital Signature Algorithm), dan EdDSA.

Tanda tangan digital berbeda dari HMAC, meskipun keduanya memverifikasi integritas. HMAC menggunakan kunci rahasia bersama — kedua pihak dapat menghasilkan dan memverifikasi kode, sehingga tidak dapat memberikan non-repudiasi. Tanda tangan digital menggunakan kunci asimetris, artinya hanya pemegang kunci privat yang dapat menandatangani, sementara siapa pun dengan kunci publik dapat memverifikasi. Asimetri ini yang memungkinkan non-repudiasi dan membuat tanda tangan digital cocok untuk skenario verifikasi publik.

Cara Vaulted menggunakan Tanda Tangan Digital

Vaulted tidak menggunakan tanda tangan digital dalam alur enkripsi intinya karena model berbagi bersifat simetris — pengirim dan penerima berbagi kunci yang sama melalui fragmen URL, dan tidak ada kebutuhan akan non-repudiasi atau verifikasi publik. Namun, sertifikat TLS yang mengamankan koneksi HTTPS Vaulted mengandalkan tanda tangan digital untuk membuktikan identitas server ke browsermu, dan integritas kode yang di-deploy Vaulted diverifikasi melalui penandatanganan kode dalam pipeline CI/CD.