Подписка на Adobe Acrobat Pro обходится более чем в 25 000 рублей в год: подписка на Adobe Acrobat Pro обходится более чем в 25 000 рублей в год.

Moltes persones recorren a solucions ràpides i perilloses per evitar aquest cost:

  1. L’ús de formes negres: dibuixar rectangles negres en visors ordinaris.
  2. Convertidors al núvol: penjar documents confidencials en webs desconegudes.

Aquestes pràctiques generen greus riscos legals i fuites de dades. En aquesta guia t’expliquem per què les caixes negres fallen i com WebAssembly permet una anonimització permanent i 100% segura sense Adobe i sense núvol.


3-секундный тест: демонстрация уязвимости копирования

  1. Откройте PDF, где текст закрашен чёрным прямоугольником или маркером.
  2. Нажмите курсором перед плашкой, протяните мышь через неё и отпустите.
  3. Нажмите Ctrl + C (или Cmd + C на Mac).
  4. Откройте Блокнот или адресную строку браузера и нажмите Ctrl + V.

В большинстве файлов, отредактированных кустарно, конфиденциальный текст мгновенно появится в открытом виде.

Поиск через Ctrl + F также мгновенно находит данные: введите скрытую фамилию, и просмотрщик подсветит слово прямо под чёрной плашкой.

[ PDF View ]     ====>     [ Clipboard Extraction ]
┌───────────────────────────┐                
│ Иван Иванов          │               "Иван Иванов
│ ИНН / СНИЛС: ███████████ │   Ctrl + C    ИНН / СНИЛС: 770123456789
│ Сумма по договору: 450 000 ₽ │   ========>   Сумма по договору: 450 000 ₽"
└───────────────────────────┘                

Anatomia de la sintaxi PDF: fluxos de contingut (/Contents) vs. capes d’anotació (/Annots)

Segons l’estàndard ISO 32000, un fitxer PDF no és una simple imatge plana, sinó una base de dades jeràrquica d’objectes independents.

El flux de contingut (/Contents)

El text es desa al flux de contingut com una seqüència d’operadors de posició i renderitzat de glifs:

BT
  /F1 12 Tf
  72 712 Td
  (Сумма по договору: 450 000 ₽) Tj
ET
  • BT i ET delimiten els blocs Begin Text i End Text.
  • /F1 12 Tf determina la font i la mida.
  • 72 712 Td estableix les coordenades a la pàgina.
  • (...) Tj mostra la cadena de caràcters.

La capa d’anotacions (/Annots)

En dibuixar una forma negra, el programari no modifica el flux /Contents, sinó que afegeix una entrada al diccionari /Annots:

<<
  /Type /Annot
  /Subtype /Square
  /Rect [ 70 710 320 726 ]
  /C [ 0 0 0 ]
  /IC [ 0 0 0 ]
>>

Эта инструкция лишь указывает просмотрщику: «Нарисуй чёрный прямоугольник по данным координатам». Так как аннотация лежит в отдельном слое, текстовый поток /Contents остаётся полностью нетронутым.


Comparació d’arquitectura: 3 enfocaments d’anonimització

flowchart TD
  subgraph Flawed["❌ 1. Trampa del bloc negre"]
    direction TB
    F_Doc["📄 Original PDF"] --> F_Draw["✏️ Black Shape (/Square Annot)"]
    F_Draw --> F_Out["📄 'Redacted' PDF"]
    F_Out -->|"Ctrl+C"| F_Leak["🚨 Secret Data Leaked"]
  end

  subgraph Cloud["⚠️ 2. Risc al núvol"]
    direction TB
    C_Doc["📄 Sensitive PDF"] -->|"Upload"| C_Server["☁️ Remote Server"]
    C_Server --> C_Worker["⚙️ Processing"]
    C_Worker --> C_Down["⬇️ Download"]
    C_Server -.-> C_Risk["🚨 Third-Party Exposure"]
  end

  subgraph Local["✅ 3. Utiliome Wasm"]
    direction TB
    L_Doc["📄 Local PDF"] -->|"Zero Upload"| L_RAM["💻 Browser RAM Sandbox"]
    L_RAM --> L_Wasm["⚡ Client-Side WebAssembly"]
    L_Wasm --> L_Clean["📄 100% Sanitized PDF"]
    L_Clean --> L_Safe["🔒 Zero Cloud Footprint"]
  end

  style Flawed fill:#fff,stroke:#f43f5e,stroke-width:1.5px
  style Cloud fill:#fff,stroke:#f59e0b,stroke-width:1.5px
  style Local fill:#fff,stroke:#10b981,stroke-width:2px

Desastres reals de filtració de dades

El cas de Paul Manafort el 2019 i els informes militars britànics sobre submarins nuclears el 2011 van evidenciar com el simple cobriment gràfic acaba en escàndol públic.

В соответствии с законодательством о защите персональных данных (152-ФЗ) и коммерческой тайне, несанкционированная утечка информации из-за некачественного удаления влечёт крупные штрафы и юридическую ответственность.


El parany dels serveis gratuïts al núvol

Pujar un fitxer confidencial a servidors desconeguts per esborrar-ne informació crea una paradoxa de privacitat inacceptable:

Fase del cicle de vidaServei al núvol tradicionalUtiliome Local-First Wasm
Transmissió de dadesFitxer complet enviat per HTTP POST a través d’Internet.0 bytes transmesos. Queda a la RAM del dispositiu.
EmmagatzematgeDesat a discs temporals o dipòsits AWS S3 externs.Cap. Mai s’escriu a servidors de tercers.
ProcessamentContenidor compartit a servidors remots.Màquina virtual WebAssembly aïllada al navegador.
RetencióFitxers conservats en memòria cau d’1 a 24 hores.Neteja immediata de memòria en tancar la pestanya.
Conformitat legalExigeix contractes DPA de tractament de dades.Exempt. No hi ha cessió a tercers.

Com anonimitzar un PDF amb seguretat sense Adobe Acrobat

Mètode 1: WebAssembly al navegador (Recomanat)

  1. Откройте инструмент удаления данных Utiliome в современном браузере.
  2. Перетащите PDF. Файл загружается прямо в локальную оперативную память (без передачи по сети).
  3. Выделите мышью области с конфиденциальными данными.
  4. Движок WebAssembly удаляет текстовые операторы из потока /Contents и встраивает постоянные чёрные векторы.
  5. Нажмите Скачать очищенный PDF для получения безопасного файла.

Способ 2: Растрирование и объединение (Офлайн-обход)

  • Pros: Превращает векторный текст в пиксели изображения, уничтожая текстовый слой.
  • Contres: Резкий рост размера файла (с 300 КБ до 30 МБ), потеря текстового поиска (Ctrl+F) и недоступность для скринридеров.

Prova de 10 segons a DevTools: comprova el zero trànsit de xarxa

  1. Obre l’eina al navegador.
  2. Prem F12 (o Cmd+Option+I) per obrir les eines de desenvolupador.
  3. Ves a la pestanya Network i filtra per Fetch/XHR.
  4. Neteja el registre (🚫).
  5. Arrossega el teu PDF i aplica l’anonimització.
[ Developer Tools - Network Tab ]
Filter: [ Fetch/XHR ] 
--------------------------------------------------------------------------------------
Name              Status   Type     Initiator   Size     Time
--------------------------------------------------------------------------------------
(Log is empty. 0 requests sent. 0 bytes uploaded.)
--------------------------------------------------------------------------------------
Result: 100% Client-Side. Your file never touched a server.

Llista de control abans d’enviar el document

  • 1. Проверка буфером обмена: выделите закрашенную область, нажмите Ctrl+C и вставьте в Блокнот. Текст не должен появляться.
  • 2. Проверка поиском (Ctrl+F): выполните поиск удалённых данных. Результат должен быть 0 из 0.
  • 3. Свойства документа: проверьте Файл > Свойства, чтобы название и автор не содержали закрытой информации.
  • 4. Закладки и структура: убедитесь, что оглавление не содержит удалённых фамилий или разделов.
  • 5. Локальность обработки: убедитесь, что документ обработан в локальной памяти без отправки в непроверенные облака.