Panduan
Dokumen tamper-evident dan batasannya
Dokumen tamper-evident adalah dokumen yang membawa bukti sehingga perubahan pada isi atau riwayatnya bisa terdeteksi. Segel memakai hash SHA-256, rantai audit, cap waktu, dan verifikasi publik. Segel tidak membuat pemalsuan mustahil. Segel membuat setiap perubahan bisa ditemukan dan diperiksa ulang oleh siapa pun yang memegang berkasnya.
- Penulis
- Horulabs
- Terbit
- Diperbarui
Arti tamper-evident yang tepat
Tamper-evident bukan berarti dokumen tidak bisa diubah. Berkas digital selalu bisa disalin, dibuka, dan disunting. Yang berubah adalah konsekuensinya: setelah disegel, perubahan pada isi atau riwayat akan menghasilkan ketidakcocokan yang bisa dilihat saat diperiksa.
Analogi yang sering dipakai adalah segel fisik pada kemasan. Segel tidak mencegah seseorang membuka kemasan, tetapi segel yang rusak memberi tahu bahwa kemasan pernah dibuka. Pada dokumen digital, segel itu berupa nilai hash dan riwayat yang saling terhubung, bukan pita atau lak.
Lapisan yang membuat perubahan terlihat
Satu nilai hash saja tidak cukup. Bila hanya dokumen yang di-hash, orang bisa mengubah riwayat persetujuan tanpa menyentuh dokumennya. Karena itu segel memakai beberapa lapisan yang saling menopang.
| Lapisan | Membuktikan | Tidak membuktikan |
|---|---|---|
| Hash dokumen SHA-256 | Isi dokumen tidak berubah sejak disegel | Bahwa isi dokumen benar |
| Hash paket | File tersegel tidak berubah | Bahwa file itu berasal dari penerbit yang sah |
| Rantai audit | Riwayat kejadian tidak ditulis ulang | Bahwa setiap keputusan bijak |
| Cap waktu RFC 3161 | Catatan sudah ada pada waktu tertentu | Bahwa waktu itu cocok dengan jam kantor Anda |
| Verifikasi publik | Siapa pun bisa memeriksa catatan | Bahwa penerbit selalu jujur dalam isi dokumen |
Kekuatan lapisan-lapisan ini justru ada pada keterbatasannya yang jelas. Masing-masing menjawab satu pertanyaan sempit. Bersama-sama, mereka membuat cerita yang konsisten sulit dipertahankan bila ada yang diubah.
Bagaimana perubahan biasanya terdeteksi
Ada beberapa titik di mana perubahan paling sering muncul. Memahami titik ini membantu ketika Anda menerima hasil pemeriksaan yang tidak cocok.
- Isi dokumen diubah, misalnya nominal atau nama vendor. Hash dokumen tidak lagi cocok.
- Halaman sertifikat dihapus atau diganti. Hash paket tidak lagi cocok dengan catatan segel.
- Satu langkah persetujuan dihapus dari riwayat. Rantai audit putus dan akar audit berubah.
- Berkas dicetak ulang atau diproses ulang. Byte berubah, sehingga hash paket juga berubah.
- Waktu segel dimundurkan. Cap waktu dari otoritas waktu tidak lagi mendukung klaim itu.
Pada pemeriksaan yang dilakukan lewat halaman verifikasi, ketidakcocokan ditampilkan sebagai hasil yang gagal, bukan sebagai pesan yang menghakimi. Tugas Anda adalah mencari tahu mengapa berkas itu berbeda, bukan langsung menyimpulkan niat buruk.
Mengapa hash saja tidak cukup
Hash adalah fungsi satu arah. Nilai hash yang sama menunjukkan isi yang sama, dan perubahan sekecil apa pun akan menghasilkan nilai yang berbeda. Namun hash tidak punya waktu. Hash juga tidak memberi tahu siapa yang membuatnya atau kapan.
Tanpa cap waktu dari pihak ketiga, seseorang bisa membuat dokumen hari ini lalu mengklaim bahwa dokumen itu sudah ada tahun lalu. Otoritas waktu tepercaya menutup celah itu dengan menandatangani bahwa nilai tertentu sudah ada pada waktu tertentu. Di Segel, cap waktu mengikuti standar RFC 3161.
Tanpa rantai audit, hash dokumen hanya melindungi satu berkas. Rantai audit melindungi urutan kejadian: pengajuan, peninjauan, persetujuan, penolakan, dan pengembalian. Setiap kejadian terhubung ke kejadian sebelumnya, sehingga menghapus satu baris akan memutus rangkaiannya.
Apa yang tidak bisa dijamin
Segel tidak bisa menjamin bahwa dokumen yang disetujui memang benar isinya. Bila invoice memuat nominal yang salah dan semua approver menyetujuinya, segel akan tetap membuktikan bahwa versi itulah yang disetujui. Segel mencatat keputusan, bukan menilai keputusan.
Segel juga tidak menjamin identitas orang di balik akun. Bila kredensial seseorang dipakai orang lain, catatan akan menunjukkan akun itu, bukan orang yang sebenarnya. Karena itu kontrol akses, kata sandi, dan kebijakan internal tetap penting.
Terakhir, segel bukan pengganti kewajiban hukum atau kepatuhan. Segel menyediakan bukti teknis. Penilaian apakah bukti itu cukup untuk suatu keperluan tetap berada pada manusia dan, bila perlu, penasihat hukum.
Cara memakai klaim ini dengan jujur
Saat menjelaskan segel kepada auditor, klien, atau tim internal, gunakan kalimat yang bisa dipertahankan. Hindari kata-kata yang menjanjikan lebih dari yang bisa dibuktikan.
- Katakan: catatan ini tamper-evident, sehingga perubahan pada berkas atau riwayatnya akan terdeteksi.
- Katakan: catatan ini bisa diverifikasi secara independen oleh siapa pun yang memegang berkasnya.
- Jangan katakan: dokumen ini tidak mungkin dipalsukan.
- Jangan katakan: dokumen ini otomatis sah di pengadilan atau memenuhi semua syarat hukum tertentu.
Kalimat yang tepat justru lebih berguna. Auditor biasanya tidak meminta jaminan absolut. Mereka meminta bukti yang bisa diperiksa dan penjelasan yang konsisten tentang batasnya.
Setiap lapisan, apa yang dibuktikan, dan apa yang tidak.
Kapan pendekatan ini cocok
Pendekatan tamper-evident paling berguna ketika keputusan melibatkan beberapa orang dan bukti diperlukan setelah prosesnya selesai. Contohnya persetujuan invoice, kontrak, pengajuan pembelian, dan dokumen internal yang harus ditinjau pihak berwenang.
Pendekatan ini kurang relevan untuk dokumen yang sepenuhnya internal dan tidak pernah diperiksa ulang. Untuk kebutuhan itu, folder bersama mungkin sudah cukup. Yang perlu dinilai adalah biaya menyusun ulang bukti ketika suatu hari ada pertanyaan.
Langkah praktis saat menerima berkas tersegel.
Definisi dan isi catatan yang disegel.
Bandingkan berkas tersegel dengan salinan yang diubah.
Pertanyaan yang sering muncul
Apa bedanya tamper-evident dan tamper-proof?
Tamper-evident berarti perubahan bisa dideteksi. Tamper-proof berarti perubahan dicegah sepenuhnya. Segel membuat catatan yang tamper-evident. Berkas digital tetap bisa disalin dan diubah, tetapi perubahannya akan terlihat saat diperiksa.
Apakah hash SHA-256 bisa dibalik menjadi isi dokumen?
Tidak. Hash adalah fungsi satu arah. Dari nilai hash orang tidak bisa merekonstruksi isi dokumen. Yang bisa dilakukan adalah menghitung hash dari dokumen lain dan membandingkan apakah nilainya sama.
Untuk apa cap waktu kalau dokumen sudah punya hash?
Hash membuktikan isi tidak berubah, tetapi tidak membuktikan kapan dokumen itu ada. Cap waktu dari otoritas waktu tepercaya menandatangani bahwa nilai tertentu sudah ada pada waktu tertentu, sehingga dokumen tidak bisa diklaim dibuat lebih awal.
Apakah segel melindungi dari orang dalam yang mengubah catatan?
Segel membuat perubahan pada catatan dan riwayatnya terdeteksi, termasuk perubahan oleh orang dalam. Segel tidak mencegah orang dalam mengubah berkas salinan. Karena itu kontrol akses dan pemisahan tugas tetap diperlukan.