Cara Menyensor Informasi Sensitif dari PDF dengan Benar
Menyensor PDF adalah salah satu dari tugas-tugas yang terlihat mudah dan menjadi salah dengan cara yang spektakuler. Menggambar persegi panjang hitam di atas sebuah nama di Acrobat atau Preview menyembunyikan nama secara visual tetapi meninggalkan teks asli dalam dokumen, dapat dipulihkan dalam hitungan detik oleh siapa pun dengan pembaca PDF gratis. Kebocoran terkenal di Perserikatan Bangsa-Bangsa, U.S. Department of Justice, dan tim hukum Manafort semuanya melibatkan persis kesalahan ini. Penyensoran yang benar menghapus teks secara permanen dari dokumen, yang lebih sulit daripada kedengarannya dan diuntungkan dari alat yang dibangun untuk tujuan tersebut.
Sejarah singkat penyensoran PDF yang gagal
Kegagalan penyensoran PDF telah menjadi cerita berita berulang selama lebih dari dua puluh tahun. Pada Mei 2005, militer AS menerbitkan laporan tentang pembunuhan jurnalis Italia Nicola Calipari di Irak dengan bagian-bagian sensitif "disensor" oleh overlay hitam; jurnalis Italia yang mengunduh PDF dapat memilih dan menyalin teks di bawahnya dalam hitungan menit. Pada 2009, U.S. Department of Justice merilis memo tentang interogasi yang ditingkatkan dengan cacat yang sama. Pada 2019, tim hukum Paul Manafort mengajukan dokumen pengadilan dengan penyensoran hitam bertanda kurung yang ternyata adalah kotak transparan, mengekspos rincian kontaknya dengan Konstantin Kilimnik. Tahun yang sama, pengajuan rahasia Boeing FAA tentang sistem MCAS 737 MAX mencapai reporter dalam bentuk yang sepenuhnya dapat dibaca karena penyensoran hanyalah bentuk.
Pola ini sangat konsisten sehingga NSA menerbitkan panduan "Redacting with Confidence: How to Safely Publish Sanitized Reports Converted from Word to PDF" pada akhir 2005, dan Adobe maupun Foxit sama-sama mengirimkan mode penyensoran khusus dalam tahun-tahun berikutnya. Pelajaran inti: alat penyensoran harus menghapus teks di bawahnya dan menggantinya dengan tanda buram; menutupi secara visual dengan persegi panjang tidak pernah cukup.
Mengapa menutupi teks secara visual gagal
PDF menyimpan halaman sebagai content stream: urutan operator gambar yang menempatkan teks, garis, persegi panjang, dan gambar pada halaman. Ketika Anda menggambar persegi panjang hitam di atas nama di Acrobat, PDF sekarang berisi baik operator teks (menulis nama) dan operator persegi panjang (menggambar kotak di atasnya). Penampil merender keduanya, secara berurutan, menghasilkan halaman di mana nama disembunyikan secara visual. Operator teks masih dalam file, dapat diindeks, dapat disalin, dan dapat dipulihkan oleh parser PDF apa pun. Reader milik Adobe sendiri akan membiarkan Anda memilih teks tersembunyi dengan Ctrl+A dan menempelkannya ke Notepad.
Bidang formulir, komentar, dan metadata disimpan dalam kamus yang sepenuhnya terpisah dalam PDF dan tidak terpengaruh oleh overlay visual sama sekali. PDF "disensor" yang masih memiliki nama penulis di metadata, komentar yang merujuk teks yang disensor dengan nama, atau nilai bidang formulir yang berisi data asli sama bocornya dengan yang memiliki teks di bawah persegi panjang.
Cara alat penyensoran yang tepat bekerja
Penyensoran nyata melakukan tiga hal:
- Menghapus konten teks dari content stream di wilayah yang disensor, sehingga parser masa depan apa pun melihat tanda penyensoran, bukan teks asli.
- Menghapus metadata apa pun yang merujuk konten asli, termasuk penulis dokumen, editor terakhir, perangkat lunak, nama file asli, dan bidang metadata XMP kustom apa pun.
- Menghapus bidang formulir, komentar, dan lampiran yang tumpang tindih atau merujuk wilayah yang disensor.
- Mengganti area dengan tanda buram (biasanya persegi panjang hitam, kadang-kadang dengan alasan penyensoran seperti "[FOIA exemption b6]") digambar di atas konten yang sekarang kosong.
Alat penyensoran berbasis browser yang menggunakan pdf-lib atau PDF.js dapat melakukan semua ini dalam JavaScript tanpa mengunggah file. PDF yang disensor dibangun kembali secara lokal dan ditawarkan sebagai unduhan. Karena yang asli tidak pernah meninggalkan perangkat Anda, jaminan privasi sepenuhnya.
Cara menyensor PDF, langkah demi langkah
- Unggah PDF. Jatuhkan file ke halaman. Alat membacanya ke memori dan menunjukkan halaman pertama untuk pratinjau. Tidak ada yang diunggah.
- Temukan apa yang harus disensor. Gunakan pencarian teks untuk menemukan nama, nomor rekening, tanggal lahir, alamat, atau string sensitif berulang lainnya. Alat menyoroti setiap kemunculan.
- Tandai wilayah penyensoran. Klik dan seret untuk menggambar persegi panjang, atau klik "sensor semua kecocokan" untuk menerapkan tanda ke setiap instance yang ditemukan sekaligus.
- Opsional tambahkan label alasan. Alur kerja pemerintah (FOIA, GDPR Pasal 17, HIPAA) sering mengharuskan penyensoran dilabel dengan dasar hukumnya. Ketik label dan akan digambar di dalam persegi panjang.
- Terapkan penyensoran. Ini adalah langkah kuncinya: ini secara permanen menghapus teks di bawah persegi panjang dari content stream, membersihkan metadata, dan menyimpan PDF baru dengan tanda yang dibakar masuk.
- Verifikasi hasilnya. Buka PDF yang disensor, coba Ctrl+A lalu Ctrl+C dan tempelkan ke editor teks. Anda harus melihat label penyensoran (atau tidak ada) di mana teks asli berada, tidak pernah teks asli itu sendiri.
Apa yang harus disensor
Kasus yang jelas adalah nama, alamat, nomor telepon, alamat email, dan nomor rekening. Yang kurang jelas menyebabkan sebagian besar kebocoran dunia nyata:
| Kategori | Apa yang dicari |
|---|---|
| Pengenal langsung | Nama, alamat, nomor telepon, alamat email, nomor jaminan sosial |
| Finansial | Nomor rekening, nomor kartu kredit, IBAN, nomor routing, saldo |
| Kesehatan | Diagnosis, obat-obatan, tanggal perawatan, ID pasien, nomor asuransi |
| Pemerintah | Nomor kasus, pengenal sumber, tanggal dan waktu operasi, lokasi |
| Pengenal tidak langsung | Jabatan + atasan + kota (mengidentifikasi unik), deskripsi kendaraan unik, kondisi medis khas |
| Metadata | Penulis dokumen, nama file asli, editor terakhir, versi perangkat lunak, total waktu edit |
| Komentar | Komentar peninjau, anotasi "Q: siapa orang ini?", perubahan terlacak |
| Bidang formulir | Nilai pra-isi, bahkan dari versi sebelumnya |
| Lampiran | File tertanam yang dirujuk oleh dokumen |
| Wilayah gambar | Nama pada screenshot, wajah dalam foto, plat nomor, alamat pada amplop |
Baris terakhir sangat penting: screenshot CRM yang menunjukkan catatan pelanggan, tertanam di PDF sebagai gambar raster, tidak akan disensor oleh alat lapisan teks. Gambar itu sendiri harus dicat.
Jebakan umum
- Memberi kotak hitam di Word dan mengekspor ulang ke PDF. Teks di bawah kotak masih dalam dokumen Word dan bertahan ekspor. Meskipun halaman yang terlihat tampak bersih, content stream PDF berisi yang asli.
- Menggunakan sorot + ubah warna menjadi hitam. Sorot adalah anotasi komentar, bukan perubahan content stream. Siapa pun dapat menghapus anotasi untuk mengungkapkan yang asli.
- Melupakan metadata. Memo yang disensor dengan "Penulis: John Smith" di properti dokumen memberitahu Anda siapa yang menulisnya, bahkan jika setiap nama di badan disensor.
- Melupakan komentar. Peninjau Adobe dan PDFelement sering menambahkan komentar yang merujuk nama yang sedang disensor di badan. Bersihkan semua komentar.
- Melupakan riwayat bidang formulir. Formulir PDF yang diisi dapat membawa nilai dari pengiriman formulir sebelumnya dalam kamus AcroForm-nya. Meratakan menghapus bidang, tetapi nilai mungkin masih ada dalam riwayat dokumen.
- Tidak menyensor gambar teks. OCR dokumen, identifikasi kotak pembatas teks, lalu cat wilayah tersebut dalam gambar itu sendiri, bukan hanya lapisan teks OCR.
- Bingung print-to-PDF dengan penyensoran. Mencetak ke PDF meraster halaman, yang memang menghapus lapisan teks, tetapi menghasilkan file yang jauh lebih besar dan kehilangan kemampuan pencarian. Itu adalah solusi yang berat, bukan penyensoran.
- Membagikan yang asli karena kesalahan. Selalu ganti nama file yang disensor dengan akhiran yang jelas (
-redacted.pdf) sehingga Anda tidak dapat secara tidak sengaja melampirkan yang asli. - Mempercayai tinjauan visual saja. PDF yang disensor mungkin terlihat sempurna dan masih bocor. Selalu uji dengan memilih semua teks dan menyalin, dengan mengekstrak metadata dengan
pdfinfoatauexiftool, dan dengan memeriksa ukuran file terhadap yang asli. - "Penyensoran" berbasis izin. Mengunci PDF dengan kata sandi atau membatasi salin bukan penyensoran. Data masih dalam file dan pembatasan bersifat penasehat; penghapus kata sandi PDF hanya satu klik saja.
Alat dan alur kerja alternatif
| Alat | Kekuatan | Waspadalah pada |
|---|---|---|
| Browser PDF redactor (alat ini) | Lokal, tanpa unggah, gratis | Lebih lambat dari alat asli pada PDF yang sangat besar |
| Adobe Acrobat Pro | Standar industri, penyensoran batch, jejak audit yang ditandatangani | Berbayar, memproses secara lokal tetapi vendor lock-in |
| Foxit PhantomPDF | Lebih murah dari Adobe, set fitur serupa | Beberapa penyensoran adalah tier langganan |
| qpdf (CLI) | Kuat, dapat di-script, gratis | Bukan alat penyensoran sejati, Anda harus menggabungkan dengan pdftotext + sed untuk penghapusan teks |
| pdftk | Umum untuk pemisahan dan penggabungan | Tidak termasuk penyensoran; jangan gunakan untuk penghapusan sensitif |
| Rasterisasi print-to-PDF | Menghapus lapisan teks secara desain | Ukuran file besar, hilangnya kemampuan pencarian, jejak tingkat gambar mungkin tetap |
| Layanan "penyensoran" online | UI cepat | Unggah ke server pihak ketiga; tinjau kebijakan retensi dan privasi mereka |
Untuk pengajuan hukum sekali pakai atau lamaran pekerjaan, alat browser adalah jawaban yang tepat. Untuk penyensoran batch ratusan permintaan FOIA, Acrobat Pro atau pipeline qpdf + pdftotext yang di-script membayar dirinya sendiri. Untuk menyensor pemindaian yang banyak gambar, jalankan OCR terlebih dahulu dan kemudian sensor kotak pembatas baik dalam lapisan teks OCR maupun raster yang mendasarinya.
Daftar periksa verifikasi sebelum berbagi
Sebelum Anda mengirim PDF yang disensor ke luar tim Anda, telusuri daftar periksa ini:
- Pilih semua teks (Ctrl+A) dan salin ke editor teks. String yang disensor seharusnya tidak muncul.
- Buka metadata:
exiftool file.pdfatau gunakan dialog properti penampil PDF. Penulis, pencipta, editor terakhir, nama file asli, bidang XMP kustom semuanya harus kosong atau anonim. - Periksa komentar dan anotasi secara eksplisit. Panel komentar Acrobat, daftar anotasi Preview, atau
pdftotext -layoutsemuanya akan memunculkannya. - Konfirmasikan ukuran file secara material lebih kecil dari yang asli (teks dan metadata yang dihapus seharusnya mengurangi ukuran). PDF yang disensor yang berukuran byte sama dengan yang asli mencurigakan.
- Untuk dokumen dengan gambar: buka di penampil gambar dan zoom pada area yang disensor. Beberapa penampil mengungkapkan konten gambar di bawah overlay.
- Untuk dokumen multi-halaman: periksa setidaknya halaman pertama, terakhir, dan tiga halaman tengah acak. Cari nama yang disensor lagi untuk memastikan tidak ada kemunculan yang terlewat.
Privasi dan redactor
Browser PDF redactor berjalan sepenuhnya di memori perangkat Anda. File yang Anda jatuhkan dibaca oleh File API, diuraikan oleh pdf-lib atau PDF.js dalam JavaScript, dirender ulang dengan penyensoran diterapkan, dan ditawarkan kembali sebagai unduhan. Tidak ada yang diunggah, tidak ada yang dicatat, tidak ada yang di-cache di sisi server. Untuk materi sensitif (pengajuan pengadilan, catatan medis, tanggapan FOIA, pemberitahuan pelanggaran), alur khusus-lokal itu adalah perbedaan antara penyensoran yang Anda kontrol dan penyensoran yang Anda harus percayakan orang lain untuk menangani dengan benar. Seluruh alat dapat berjalan offline setelah halaman dimuat, yang dapat Anda verifikasi dengan memutuskan jaringan dan menyensor file lain.
Pertanyaan yang sering diajukan
Is drawing a black box over text in a PDF editor enough to redact it?
No. Drawing a black rectangle over text only hides the text visually. The underlying characters remain in the PDF and can be recovered by copying, by selecting the text under the rectangle, or by extracting the text layer with any PDF parser. Proper redaction removes the text from the document and replaces it with an opaque shape.
What kinds of information can be recovered from a poorly redacted PDF?
Text content (even if covered visually), embedded metadata (author, last editor, software, original filename), revision history if the PDF was saved with track changes, comments, form field values, attached files, and sometimes raster image previews that show the original page before the redaction overlay.
Does flattening a PDF redact it?
Flattening merges layers and removes form fields, but does not by itself remove the text under a drawn rectangle. The text content remains in the content stream. You must explicitly delete the text, not just cover it.
How do I redact text that appears as part of an image (a scan)?
For scanned documents, run OCR first to detect the text positions, then redact those regions in the underlying image (not just the OCR layer). Some tools let you paint over the image with a solid colour at the redaction location, which is the correct approach for raster content.
What standards define proper PDF redaction?
The U.S. National Security Agency published "Redacting with Confidence" in 2005-2006, after several high-profile failed redactions led to leaks. Adobe's PDF Reference and the ISO 32000-1 PDF specification describe content streams in enough detail to confirm that visually covering text does not remove it. The CIA, FBI, and most government agencies now require the use of dedicated redaction tools that destroy the underlying content, not just hide it.