Datenmaske
FORSCHUNG

Reproduzierbare Erkennungsqualität. Nicht "vertrau uns" — prüfe nach.

Datenmaske veröffentlicht eine versionierte, reproduzierbare Benchmark-Stichprobe zur Erkennung deutscher personenbezogener Daten und zur Irreversibilität der Schwärzung. Methodik, Korpus-Hash und Rohdaten sind öffentlich; jede Zahl ist ihrer Quelle zugeordnet.

Korpus

6 PDFs

synthetisch, bepflanzt

PII-Entitäten

45

Ground-Truth

Irreversibel

✓ ja

MuPDF verifiziert

Stand

16.07.2026

Version 0.1.0

01 / Methodik

Wie gemessen wird

Korpus

Synthetische deutsche Test-PDFs (Arbeitsvertrag, Bewerbung, Behördenbescheid, Rechnung, Arztbrief, Anwaltsschreiben) mit platzierten PII-Entitäten und Ground-Truth-JSON-Sidecars.

Pipeline

pdfjs-dist (Textextraktion) → regelbasierte Muster + spaCy/GLiNER NER (selbst gehostet, EU) → MuPDF applyRedactions().

Hash

SHA-256 über die kanonische Ground-Truth-JSON-Konkatenation (scripts/test-docs/*.json) — nicht über rohe PDF-Bytes, da pdf-lib nicht-deterministische Metadaten einbettet.

Korpus-Hash (SHA-256)

231861473137d899722f0c92f9b7a264daa01dada73beb01ae67f8b1a2b60967

Korpus: synthetische deutsche Test-PDFs mit platzierten PII-Entitäten. Pipeline-Stufen: pdfjs-dist (Textextraktion) → regelbasierte Muster + spaCy/GLiNER NER (selbst gehostet, EU) → MuPDF applyRedactions(). Hash gebildet über die kanonische Ground-Truth-JSON-Konkatenation (scripts/test-docs/*.json). Irreversibilitäts-Nachweis ist deterministisch und offline reproduzierbar (scripts/redaction-claim-test.ts).

02 / Ergebnisse

Recall & Precision pro PII-Typ

Typ Recall Precision FN FP
address 100 % 53 % 0 8
birth_date 100 % 100 % 0 0
email 83 % 100 % 1 0
iban 100 % 100 % 0 0
insurance_number 100 % 100 % 0 0
name 83 % 77 % 2 3
phone 100 % 100 % 0 0
tax_id 100 % 100 % 0 0
gesamt 93 % 79 %

03 / Irreversibilität

Nachweis: echte Content-Stream-Entfernung

Der Irreversibilitäts-Nachweis ist deterministisch und offline reproduzierbar. Er vergleicht eine klassische "manuelle" Schwärzung (schwarzes Rechteck über dem Text) mit der echten Datenmaske-Pipeline (MuPDF applyRedactions()).

Manuell — schwarzer Balken

Ein schwarzes Rechteck wird über die IBAN gezeichnet. Das PDF wird mit pdfjs-dist wieder ausgelesen.

IBAN wiederherstellbar: JA

Datenmaske — applyRedactions()

MuPDF entfernt den Text physisch aus dem Content-Stream; der Verifizierer prüft, dass die IBAN nicht mehr im Text extrahierbar ist.

IBAN entfernt: JA Verifizierung passed: true

Quelle: scripts/redaction-claim-test.ts (Runner-Hash: 3669496ba337feb8…). Geplante Test-IBAN: DE89 3704 0044 0532 0130 00.

Dritte-Partei-Referenz

Essex Software — Stichprobe öffentlich indizierter PDFs: bei rund jedem sechsten Dokument (17 %, n=72) war der vermeintlich geschwärzte Text noch auswählbar.

Quelle: https://essexsoftware.com/research/ — abgerufen 16.07.2026.

04 / Im Branchenvergleich

Status der Wettbewerber

Jede Wettbewerber-Aussage ist entweder eine Herstelleraussage (mit Quelle und Abrufdatum) oder eine datierte Eigenmessung. Wir veröffentlichen keine strittigen gemessenen "Wettbewerber-Recall = X %"-Zahlen (UWG §5).

Foxit PDF Editor

vendor english only

Laut eigener Security-Seite unterstützt die Mustererkennung nur englischsprachige Dokumente — für deutsche PII also per Herstelleraussage nicht anwendbar.

Quelle: https://www.foxit.com/pdf-editor/security-and-privacy/ — abgerufen 16.07.2026.

Adobe Acrobat Pro

vendor no german ner

Adobe liefert kein dediziertes deutsches NER-Musterpaket für die Schwärzung; Dokumente müssen manuell markiert werden.

Quelle: https://helpx.adobe.com/acrobat/using/redact-pdf.html — abgerufen 16.07.2026.

Docuflair

pending

Manuelle Messung am selben Korpus geplant; Rohdaten werden unter scripts/benchmark/competitors/docuflair/ veröffentlicht.

Quelle: scripts/benchmark/competitors/MANIFEST.md — abgerufen 16.07.2026.

Vollständige Beleg-Liste: scripts/benchmark/competitors/MANIFEST.md.

05 / Funktionsabdeckung

Was heute messbar funktioniert — und was noch fehlt

„Bestanden“ gibt es nur mit reproduzierbarer Prüfung. Teilstände und fehlende Funktionen bleiben sichtbar, damit die Roadmap nicht als Produktbehauptung erscheint.

FunktionWebDesktopMessmethode
PDF/A-1b/2b/3b passGhostscript conversion validated with the exact veraPDF flavour; permanent-redaction regression rechecked after conversion partialNative adapter executed against the same real Ghostscript + veraPDF toolchain; automated check failed in this run veraPDF profiles + visual and irreversibility regression
QR- und Barcode-Erkennung passLocal ZXing detector over generated QR/DataMatrix/Code128 fixtures; payload discarded passLocal rxing detector over generated QR/DataMatrix/Code128 fixtures; payload discarded planted QR/DataMatrix/Code128 corpus; format and redactable bbox checks
Gesichter, Unterschriften, Stempel, Logos partialOffline semantic classifier over bounded embedded-image crops; ambiguous regions remain generic and are never auto-accepted partialNative classifier parity covers all four semantic classes plus a generic negative; shared published corpus measures the equivalent Web heuristic procedural image-crop corpus; per-class recall/precision; diverse licensed corpus and bbox mAP remain external validation
DOCX/XLSX/TIFF/MSG/EML in Desktop partialDOCX and image ingestion exist; this row targets Desktop partialLocal passive normalization for DOCX/XLSX/EML/MSG and direct TIFF-to-PDF; active sender HTML and remote resources are never rendered format corpus; passive parsing/rendering, extraction checks, security regression
Selektiver Export pro Empfänger passImmutable per-recipient export policy with exact visible-value allow-list passSame shared recipient policy applied before native redaction policy fixture matrix; expected visible/redacted entities per recipient
Inverser DSAR-Modus passExact requester preservation; non-rejected detected third parties automatically selected passSame fail-closed inverse DSAR policy runs locally subject/third-party labelled DSAR corpus; third-party selection and requester preservation
Import eigener Wörterbücher passShared bounded parser, persisted categories and boundary-safe literal matching passSQLite persistence plus the shared parser and native boundary-safe matching CSV/TXT fixtures; valid/invalid rows, literal match recall, collision rate
Manipulationserkennbare Audit-Hashkette passConvex mutation chains events atomically; deterministic tamper test passSQLite appends SHA-256 chain and exposes local verification command deterministic valid/tampered/removed-event tests
Öffentlicher/lokaler Zertifikatsprüfer pass/pruefen verifies entirely in-browser; no upload passCompliance screen verifies certificate files and optional document hashes entirely on-device valid/tampered certificate + optional original/output SHA-256 fixtures
Weiß, Blur, Pixel, Token-Ersatz passAll visual styles share permanent-removal verification; generated blur/pixel textures never sample source pixels passStyle selection plus native normalization and post-verification generated textures rendered pixel diff + text extraction + token consistency fixtures

Stand: 09.08.2026 · Schema v1

06 / Selbst verifizieren

Reproduzierbarkeit

Machine-checkable API

Die committed Benchmark-Datei ist über einen öffentlichen Endpoint abrufbar; der Hash im Response-Header lässt sich per curl | sha256sum nachprüfen.

curl -s https://datenmaske.de/api/benchmark | sha256sum
# vergleiche mit X-Datenmaske-Benchmark-Hash

/api/benchmark öffnen →

/api/benchmark/capabilities öffnen →

Runner selbst ausführen

Der Runner ist im Repo enthalten. Er regeneriert das Korpus, führt die echte Pipeline aus, bildet den Hash und scheitert geschlossen, wenn der NER-Endpoint nicht erreichbar ist.

git clone <repo>
cd datenmaske && pnpm install
SPACY_API_URL=https://spacy.mokka-dev.de pnpm run benchmark
# -> src/lib/benchmark/results.json

Quellen: scripts/benchmark/run-benchmark.ts, scripts/redaction-claim-test.ts, scripts/generate-test-docs.ts.

Hinweis

Messung an synthetischem Korpus unter Laborbedingungen; nicht repräsentativ für beliebige Fremd-Dokumente. Wettbewerber-Status jeweils Herstelleraussage oder datierte Eigenmessung. Keine der hier veröffentlichten Zahlen ist ein versicherungsförmiges Versprechen — die Erkennungsvollständigkeit ist ein best-effort Prozesses, der menschliche Prüfung nicht ersetzt (AGB § 3(5)).

Selbst testen — an eigenen Dokumenten.

Kostenlos registrieren. Keine Kreditkarte. Eigene PDF hochladen und die Erkennung in der Vorschau prüfen.

DATENMASKE
REPRODUZIERBARE ERKENNUNGSQUALITÄT