A assinatura do Adobe Acrobat Pro custa mais de R$ 1.200 por ano: a assinatura do Adobe Acrobat Pro custa mais de R$ 1.200 por ano.

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.


O teste de 3 segundos: demonstrando a vulnerabilidade do copiar-colar

  1. Abra qualquer PDF em que o texto foi «ocultado» com uma forma ou marcador preto.
  2. Clique antes da barra preta, arraste o cursor sobre a área tarjada e solte.
  3. Pressione Ctrl + C (ou Cmd + C no Mac).
  4. Abra o Bloco de Notas ou a barra de endereços do navegador e pressione Ctrl + V.

Em quase todos os documentos editados de forma amadora, o texto confidencial aparece imediatamente em texto puro.

A busca com Ctrl + F também revela a falha: pesquise pelo nome ou número tarjado e o leitor de PDF destacará a palavra exatamente sob o retângulo.

[ PDF View ]     ====>     [ Clipboard Extraction ]
┌───────────────────────────┐                
│ João Silva          │               "João Silva
│ CPF / CNPJ: ███████████ │   Ctrl + C    CPF / CNPJ: 123.456.789-00
│ Valor do acordo: R$ 450.000,00 │   ========>   Valor do acordo: R$ 450.000,00"
└───────────────────────────┘                

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
  (Valor do acordo: R$ 450.000,00) 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 ]
>>

Essa instrução apenas diz ao leitor: «Desenhe um retângulo preto sólido nestas coordenadas». Como a anotação gráfica fica em uma camada separada, o texto original é preservado intacto no fluxo /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.

De acordo com a Lei Geral de Proteção de Dados (LGPD) e as resoluções da ANPD, o vazamento acidental de dados pessoais decorrente de tarjamento ineficaz sujeita empresas a multas de até 2% do faturamento (limitadas a R$ 50 milhões por infração).


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. Abra a ferramenta de tarjamento do Utiliome em qualquer navegador moderno.
  2. Arraste o seu PDF. O arquivo é lido diretamente na memória RAM local (sem transferência de rede).
  3. Selecione com o mouse as áreas que deseja eliminar permanentemente.
  4. O motor WebAssembly apaga os operadores de texto do fluxo /Contents e insere geometria preta definitiva.
  5. Clique em Baixar PDF redigido para obter um documento 100% limpo.

Método 2: Rasterização e achatamento (Solução alternativa offline)

  • Pros: Converte todo o texto em pixels de imagem, destruindo totalmente o fluxo de texto subjacente.
  • Contres: Aumento astronômico no tamanho do arquivo (de 300 KB para 25 MB), perda total da pesquisa (Ctrl+F) e incompatibilidade com leitores de tela.

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. Teste da área de transferência: selecione a área tarjada, pressione Ctrl+C e cole no Bloco de Notas. Nenhum caractere deve ser copiado.
  • 2. Teste de busca (Ctrl+F): busque pelos termos tarjados. O contador deve indicar rigorosamente 0 de 0.
  • 3. Propriedades do documento: verifique Arquivo > Propriedades para assegurar que autor e histórico de edição não exponham dados sigilosos.
  • 4. Marcadores e camadas: certifique-se de que a barra de índice não preserve nomes ou cláusulas confidenciais.
  • 5. Garantia sem nuvem: certifique-se de que o procedimento foi realizado localmente sem upload para plataformas de terceiros.