Sebelum kamu memakai gambar sebagai bukti, ada dua hal yang perlu dibedakan: riwayat berkas dan kebenaran isinya. Catatan asal yang lolos pemeriksaan belum memastikan peristiwa dalam gambar benar-benar terjadi. Isi gambar tetap membutuhkan bukti lain.
Catatan sejarah pembuatan dan perubahan aset disebut provenance. Explainer C2PA 2.4 menjelaskan konsep ini dan membedakannya dari penilaian kebenaran isi. Content Credentials adalah catatan asal yang bisa diperiksa berdasarkan mekanisme tersebut; label teknisnya jangan sampai berubah menjadi cap “pasti benar”.
Kita akan menyusun contoh arsip aset dengan data buatan. Rancangan ini berasal dari Nalarku.
Tanyakan tiga hal yang berbeda
Apakah satuan data berkas, atau byte, masih sama dengan salinan yang pernah disimpan? Apakah keterangan asalnya bisa diperiksa menurut cara dan kebijakan kepercayaan yang dipakai? Lalu, apakah klaim faktual di dalamnya didukung bukti dari luar berkas?
Sidik hitung berkas, atau checksum, membantu menjawab pertanyaan pertama. Pemeriksaan Content Credentials melihat susunan data, ikatannya dengan aset atau binding, tanda tangan, dan dasar kepercayaannya. Pemeriksaan fakta mencocokkan isi dengan sumber dan konteks.
| Pemeriksaan | Yang bisa dibantu | Yang belum otomatis terbukti |
|---|---|---|
| Sidik berkas lokal dengan SHA-256 | Kesamaan byte dengan salinan yang diketahui | Identitas pembuat atau kebenaran isi |
| Pemeriksaan provenance | Asal dan riwayat yang bisa diverifikasi | Seluruh riwayat sudah dicatat lengkap |
| Pemeriksaan redaksi | Kecocokan klaim dengan bukti | Keutuhan seluruh rangkaian teknis |
Berkas tanpa Content Credentials juga belum tentu palsu. Catatannya bisa belum pernah ditambahkan, tidak didukung alat, atau hilang saat didistribusikan. Bedakan status tidak tersedia, gagal diperiksa, dan berhasil diperiksa.
Simpan hasil pemeriksaan beserta alasannya
Content Authenticity Initiative menjelaskan alat untuk merekam dan menampilkan provenance berdasarkan C2PA. Informasi yang bisa dibaca bergantung pada dukungan alat dan pilihan pembuat tentang apa yang disertakan. Catatan itu tidak selalu memuat seluruh sejarah aset.
Simpan hasil pemeriksaan, versi alat, dan aturan kepercayaan yang dipakai redaksi. Nilai ya atau tidak seperti has_c2pa belum cukup. Ada metadata, atau keterangan yang menyertai berkas, belum berarti pemeriksaannya berhasil; susunan yang benar pun belum menjelaskan seluruh keputusan tentang kepercayaan.
Jika pemeriksaan gagal, simpan alasan yang bisa ditelusuri. Jangan mengubah semua kegagalan menjadi label “AI-generated”. Penyebab lain tetap perlu dianalisis.
Beri identitas pada aset, versi, dan hak pakainya
Simpan berkas asli yang diterima, versi turunannya, metadata, kredit, dan informasi hak penggunaan. Pemotongan gambar, pemampatan, tambahan teks subtitle, atau tanda redaksi perlu menghasilkan versi yang bisa ditelusuri. Dengan begitu, kamu bisa melihat hubungan hasil suntingan dengan sumbernya.
Berikut contoh catatan internal. Ini bukan paket metadata C2PA yang disebut manifest:
{
"asset_id": "ASSET-042",
"revision": 2,
"parent_revision": 1,
"role": "editorial_illustration",
"credit": "Ilustrasi konseptual tim redaksi",
"rights_ref": "RIGHTS-017",
"provenance_status": "not_checked",
"validator_version": null,
"used_by": ["article:r3", "carousel:r2"]
}
Label ilustrasi menjelaskan fungsi gambar bagi pembaca, sedangkan status provenance menjelaskan pemeriksaan riwayatnya. Gambar yang dibuat untuk ilustrasi tidak boleh ditampilkan seolah foto dokumentasi. Riwayat pembuatan yang rapi tidak mengubah fungsi gambar itu.
Simpan informasi pribadi hanya jika diperlukan untuk arsip dan pemberian kredit. Metadata bisa memuat lokasi, identitas, atau riwayat kerja. Tidak semuanya perlu ditampilkan kepada publik.
Sidik berkas membantu memeriksa perubahan isi
Python hashlib menyediakan SHA-256 untuk menghitung nilai sidik, atau digest, dari isi berkas. Contoh lokal ini membaca berkas bertahap tanpa mengunggahnya ke layanan:
import hashlib
from pathlib import Path
def file_sha256(path):
digest = hashlib.sha256()
with Path(path).open("rb") as source:
for chunk in iter(lambda: source.read(1024 * 1024), b""):
digest.update(chunk)
return digest.hexdigest()
Panggil fungsi dengan lokasi berkas uji yang kamu miliki. Simpan digest bersama identitas revisinya di tempat yang aksesnya dikendalikan. Bila isi berkas berubah, digest biasanya ikut berubah.
Catatan rujukannya juga perlu dilindungi. Orang yang bisa mengganti berkas sekaligus digest rujukan bisa membuat pemeriksaan lokal tetap lolos. Membandingkan dua nilai tidak cukup bila keduanya bisa diganti tanpa jejak.
Fungsi ini tidak membaca manifest, memeriksa sertifikat, atau memvalidasi tanda tangan C2PA. Untuk itu, gunakan alat pemeriksa atau validator yang mengikuti spesifikasi. Jangan memberi label “C2PA verified” pada hasil SHA-256.
Periksa lagi berkas setelah diekspor dan dibagikan
Buat aset uji dengan riwayat yang diketahui, lalu ekspor lewat alat yang dipakai tim. Periksa berkas hasilnya juga. Mengubah ukuran atau format bisa mengubah byte, sementara perlakuan terhadap metadata bergantung pada alatnya.
Lanjutkan ke jalur distribusi yang memang boleh kamu uji. Jika tersedia, simpan versi yang diunggah dan versi yang diterima kembali. Satu percobaan pada satu format belum membuktikan semua kanal mempertahankan metadata.
Catat setiap perubahan sebagai kegiatan yang menghasilkan aset baru. Arsip internal masih bisa menyimpan hubungan versi terkompresi dengan sumbernya meski metadatanya berbeda. Hubungan itu membutuhkan bukti proses, bukan kemiripan nama berkas.
Tulis label sesuai pemeriksaan yang sudah dilakukan
Label “Ilustrasi konseptual” menjelaskan fungsi visual. Kalimat “Credentials terverifikasi oleh alat X pada tanggal Y” menjelaskan pemeriksaan tertentu. Label “Foto peristiwa” memerlukan dasar redaksi tentang peristiwanya sendiri.
Untuk latihan, pakai satu berkas asli dan dua hasil ekspor. Hitung checksum ketiganya, catat hubungan revisi, lalu bandingkan hasil validator provenance yang benar-benar tersedia. Pisahkan perbedaan byte, metadata yang bisa dibaca, dan hasil validasi menjadi tiga kolom; jangan mengisi bagian yang belum diperiksa hanya dari nama alat.
Jika satu aset dipakai di banyak keluaran, hubungkan ke peta hubungan konten. Koreksi kredit, hak, atau konteks bisa ditelusuri ke semua turunannya. Untuk gambar dan tabel yang menjadi bukti isi, panduan dokumen multimodal menjelaskan cara menjaga lokasi dan makna data saat mengambil isinya.