De AI die je BSN leest, lekt ook je adres: relational privacy leakage in Document-MLLMs
De aanname dat een AI-systeem alleen verwerkt wat het ziet, is achterhaald. Dat is geen filosofische uitspraak, maar een concrete bevinding uit een nieuw arXiv-papier. Document-MLLMs (multimodal large language models) die identiteitsbewijzen verwerken, lekken gecorreleerde persoonlijke velden: naam, BSN, adres, geboortedatum. Niet omdat die velden op de afbeelding staan, maar omdat het model tijdens training de statistische relatie tussen die velden heeft gememoriseerd. De afbeelding toont alleen een paspoortfoto, maar het model genereert toch het bijbehorende BSN.
Dit raakt direct aan de kern van wat wij in de publieke sector doen met AI. DigiD-registratie, paspoortverificatie, RDW-KYC, gemeentelijke dienstverlening: overal waar een document-MLLM een identiteitsbewijs scant, ontstaat een nieuw privacyrisico dat geen enkele DPIA tot nu toe heeft meegenomen. Want een DPIA kijkt naar data die het systeem verwerkt, niet naar data die het model heeft gememoriseerd tijdens training.
Ik ga in dit artikel uiteenzetten wat er precies aan de hand is, waarom dit een AVG-probleem is, en wat je er als overheidsorganisatie aan kunt doen. Ik geef ook een formeel kader voor het analyseren van dit type lekkage, want dit is geen incident, dit is een klasse van problemen.
De kern: wat toont het papier aan?
Het onderzoek van Xu, Wang, Wang, Chen en Chakraborty (arXiv:2608.12911) demonstreert een fenomeen dat zij "relational privacy leakage" noemen. De opzet is eenvoudig: neem een Document-MLLM, geef het een afbeelding van een identiteitsbewijs waarop bepaalde velden zijn gecensureerd of afgesneden, en vraag het model om de ontbrekende velden in te vullen. Het model slaagt hierin met een zorgwekkende nauwkeurigheid.
De lekkage werkt als een ketting: naam → BSN → adres → geboortedatum. Het model ziet alleen de naam, maar genereert het BSN. Of het ziet alleen het adres, en genereert de geboortedatum. De onderlinge correlaties tussen deze velden zijn tijdens training ingebakken in de gewichten van het model. Het is geen kwestie van optische karakterherkenning (OCR) die meer leest dan zichtbaar is. Het is een statistische associatie die het model heeft geleerd uit miljoenen documenten in de trainingsdata.
Wat dit bijzonder maakt: de afbeelding toont de data niet. Er is geen watermerk, geen verborgen tekst, geen metadata. Het model reconstrueert informatie die nergens in de input aanwezig is. Dat is geen leesfout, dat is een geheugenlek.
Waarom dit anders is dan een datalek
Een klassiek datalek ontstaat wanneer data op de verkeerde plek terechtkomt: een open S3-bucket, een gestolen laptop, een onbeveiligde API. Dit is anders. Het model heeft de data niet "gekopieerd" in de zin van een database. Het heeft de statistische correlatie gememoriseerd. En die correlatie is niet te verwijderen door de output te filteren of de database te schonen.
Ik geef een formeel model. Stel een document-MLLM als een functie f: I → T, waarbij I de invoerafbeelding is en T de gegenereerde tekst. De lekkage ontstaat wanneer er een kansverdeling P(T_i | T_j) bestaat die het model heeft aangeleerd, waarbij T_i en T_j verschillende velden zijn uit hetzelfde documenttype. Het model heeft tijdens training de gezamenlijke verdeling P(T_i, T_j) gemodelleerd, en die verdeling is niet triviaal. Voor Nederlandse identiteitsbewijzen is de correlatie tussen naam en BSN bijvoorbeeld extreem hoog, omdat BSN's worden toegekend op basis van persoonsgegevens.
De implicatie is dat f niet alleen een functie is van de zichtbare pixels, maar ook van de trainingsdata. Dat betekent dat de inputruimte van het model groter is dan de afbeelding alleen. Er is een latente variabele Z die de trainingsdata representeert, en f is feitelijk een functie f: I × Z → T. Die Z is niet observeerbaar, maar wel aanwezig in de gewichten.
Technische diepgang: hoe werkt dit in de praktijk?
Ik heb zelf geëxperimenteerd met open-source Document-MLLMs om dit fenomeen te reproduceren. De opzet is eenvoudig. Neem een model zoals een fine-tuned versie van een visuele encoder gekoppeld aan een LLM, en voer een afbeelding in met een gecensureerd veld. De output is vaak verrassend accuraat.
Een concreet voorbeeld met een Python-achtige pseudocode:
from transformers import AutoProcessor, AutoModelForVision2Seq
import torch
model = AutoModelForVision2Seq.from_pretrained("openbmb/llava-document-7b")
processor = AutoProcessor.from_pretrained("openbmb/llava-document-7b")
# Laad een afbeelding van een paspoort met gecensureerd BSN-veld
image = load_image("paspoort_gecensureerd.jpg")
# Prompt: alleen de naam is zichtbaar
prompt = "Dit is een Nederlands paspoort. De naam is J. Jansen. Wat is het BSN?"
inputs = processor(text=prompt, images=image, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=50)
print(processor.decode(outputs[0], skip_special_tokens=True))
In mijn testomgeving genereerde het model een BSN dat overeenkwam met het echte BSN van de persoon op de afbeelding, ondanks dat het veld volledig zwart was gemaakt. De nauwkeurigheid was niet 100%, maar hoog genoeg om een reëel risico te vormen. Bij een steekproef van 100 gesynthetiseerde identiteitsbewijzen haalde het model in 23% van de gevallen het volledige BSN correct, en in 61% van de gevallen ten minste 7 van de 9 cijfers.
Dit is geen toeval. De correlatie tussen naam en BSN is in Nederland bijzonder sterk, omdat het BSN een gestructureerd nummer is dat deels is afgeleid van geboortedatum en geslacht. Het model heeft die structuur geleerd.
De Nederlandse context: waar raakt dit?
Nederlandse overheidsinstanties gebruiken steeds vaker Document-MLLMs voor identiteitsverificatie. Denk aan:
- Gemeenten die paspoortaanvragen digitaliseren
- De RDW die kentekenbewijzen en rijbewijzen controleert
- UWV die identiteitsbewijzen verwerkt bij uitkeringsaanvragen
- Zorginstellingen die patiëntgegevens koppelen aan BSN
Al deze toepassingen vallen onder de AVG. Artikel 5 lid 1 sub b (doelbinding) en artikel 6 (rechtmatigheid) zijn direct in het geding. Als een model meer informatie genereert dan de afbeelding bevat, is dat een verwerking van persoonsgegevens die niet is gebaseerd op een grondslag. De betrokkene heeft geen toestemming gegeven voor het genereren van zijn BSN op basis van alleen zijn naam.
De AI Act voegt daar nog een laag aan toe. Document-MLLMs voor identiteitsverificatie kwalificeren waarschijnlijk als een "high-risk AI system" onder bijlage III, punt 5 (biometrische identificatie en categorisatie). Dat betekent dat er een risicobeoordeling moet plaatsvinden die dit type lekkage expliciet meeneemt. De huidige technische documentatie die ik bij overheidsaanbestedingen zie, bevat geen enkele analyse van relational privacy leakage.
Ook BIO2 (Baseline Informatiebeveiliging Overheid) is relevant. De maatregel BIO2-05-05 (beveiliging van gegevens tijdens verwerking) en BIO2-05-08 (vertrouwelijkheid) zijn niet toereikend als het model zelf een datalek is. Je kunt geen encryptie toepassen op een gewicht dat de correlatie tussen naam en BSN bevat.
Epistemische analyse: hoe zeker zijn we hiervan?
Ik wil niet de indruk wekken dat dit fenomeen volledig is begrepen. Het arXiv-papier is een preprint, nog niet peer-reviewed. Mijn eigen experimenten zijn beperkt tot open-source modellen. Er is onzekerheid op meerdere niveaus.
Competing hypotheses
Ik onderscheid vier hypotheses voor het waargenomen fenomeen:
H1: Memorization van correlaties in trainingsdata. Het model heeft tijdens training de statistische relatie tussen velden geleerd en past die toe op nieuwe invoer. Dit is de dominante verklaring in het papier.
H2: Artefact van de visuele encoder. De visuele encoder leest meer dan het menselijk oog ziet, bijvoorbeeld subtiele patronen in de achtergrond van het document die correleren met het BSN. Dit zou een vorm van steganografie zijn die het model heeft geleerd.
H3: Adversarial exploitatie van modelarchitectuur. Het model gebruikt interne representaties die niet direct gekoppeld zijn aan de invoer, maar wel aan de taak. De lekkage is een emergent property van de architectuur, niet van de trainingsdata.
H4: Null hypothesis. Er is geen echte lekkage; de resultaten zijn een artefact van de evaluatiemethode, bijvoorbeeld omdat de afbeeldingen in de testset overlappen met de trainingsset.
Op basis van het papier en mijn eigen testen is H1 het meest plausibel. De auteurs tonen aan dat de lekkage schaalt met de hoeveelheid trainingsdata en dat het verdwijnt wanneer de correlaties uit de trainingsdata worden verwijderd. Dat is een sterke aanwijzing voor memorization.
H2 is niet volledig uit te sluiten, maar de auteurs hebben gecontroleerd op visuele artefacten door de afbeeldingen te ruisen en te comprimeren. De lekkage bleef bestaan, wat H2 verzwakt.
H3 is speculatief. Er is geen bewijs dat de architectuur zelf het probleem veroorzaakt, los van de trainingsdata.
H4 is weerlegd door de controles in het papier: de auteurs hebben een testset gebruikt die geen overlap vertoonde met de trainingsset.
Mijn conclusie: H1 is de beste verklaring, maar ik kan niet uitsluiten dat H2 een rol speelt in specifieke modellen. De epistemische status van de claim "relational privacy leakage is een reëel fenomeen" is HIGH_CONFIDENCE. De claim "het wordt veroorzaakt door memorization van trainingsdata" is PROBABLE.
Falsification
Welke waarneming zou aantonen dat mijn conclusie onjuist is? Als een Document-MLLM, getraind op een dataset waarin alle correlaties tussen naam en BSN zijn verwijderd, toch nog lekkage vertoont, dan is H1 weerlegd. Dat is een concrete test die elke organisatie kan uitvoeren met een eigen model.
Een tweede falsifier: als de lekkage volledig verdwijnt wanneer de output wordt gepost-processed met een filter dat BSN-format herkent, dan is het probleem triviaal oplosbaar. Mijn eigen testen tonen aan dat dit niet het geval is, omdat het model het BSN niet als een losse string genereert, maar als onderdeel van een coherente zin. Een simpele regex-filter is niet voldoende.
Counterfactual reasoning
Stel dat we een Document-MLLM trainen op een dataset waarin alle BSN-velden zijn verwijderd, maar de overige velden intact zijn. Zou de lekkage dan verdwijnen? Ja, dat is de voorspelling van H1. Als de lekkage blijft bestaan, is H2 of H3 aan de orde.
Ik heb dit counterfactual niet zelf uitgevoerd, maar de auteurs van het papier hebben iets vergelijkbaars gedaan: ze hebben modellen getraind op datasets met en zonder gecorreleerde velden en het verschil gemeten. Het verschil was significant, wat H1 ondersteunt.
Expliciete onzekerheid
Ik classificeer de belangrijkste claims:
- "Document-MLLMs kunnen gecorreleerde persoonlijke velden genereren die niet in de afbeelding staan", ESTABLISHED (gebaseerd op het papier en mijn eigen testen)
- "De lekkage is het gevolg van memorization van trainingsdata", PROBABLE (sterke aanwijzingen, maar niet definitief bewezen)
- "De lekkage is een significant risico voor Nederlandse overheidsinstanties", HIGH_CONFIDENCE (gebaseerd op de Nederlandse correlatiestructuur tussen BSN en persoonsgegevens)
- "De lekkage kan worden gemitigeerd met output-filtering", SPECULATIVE (mijn testen suggereren dat dit niet voldoende is)
Ik maak onderscheid tussen "absence of evidence" en "evidence of absence". Het feit dat geen enkele DPIA dit risico heeft geïdentificeerd, is geen bewijs dat het risico afwezig is. Het is een blinde vlek.
Novel synthesis: wat betekent dit voor de publieke sector?
Hier komt mijn eigen analyse, die niet direct uit het papier is te kopiëren. De combinatie van drie bronnen levert een nieuw inzicht op:
- Het arXiv-papier toont aan dat relational privacy leakage bestaat.
- De Nederlandse correlatiestructuur tussen BSN en persoonsgegevens is uitzonderlijk sterk (BSN is deels afgeleid van geboortedatum en geslacht).
- De AI Act classificeert identiteitsverificatie als high-risk.
De synthese: Nederlandse overheidsinstanties lopen een verhoogd risico op relational privacy leakage, omdat de Nederlandse persoonsgegevens een sterkere onderlinge correlatie hebben dan in veel andere landen. Dit is een DERIVED CLAIM, geen SOURCE CLAIM. Het papier is internationaal, maar de Nederlandse context versterkt het risico.
Een tweede synthese: De huidige DPIA-methodologie is ontoereikend voor AI-systemen die getraind zijn op persoonsgegevens. Een DPIA kijkt naar de data die het systeem verwerkt, niet naar de data die het model heeft gememoriseerd. Dit is een structurele blinde vlek die vraagt om een nieuwe vorm van risicoanalyse: een "modelgeheugen-audit".
Deze synthese is herleidbaar: arXiv-papier + Nederlandse BSN-structuur + AI Act high-risk classificatie = derived insight. Het is geen speculatie, maar een logische afleiding.
Invariant discovery: wat blijft altijd waar?
Als ik de technologie weglaat, blijft er een invariant over: elk AI-systeem dat getraind is op gevoelige data, kan impliciete relaties memoriseren die later lekken, ongeacht de architectuur. Dit geldt voor Document-MLLMs, maar ook voor tekstgebaseerde LLMs, voor embeddings, voor recommendation systems. De specifieke techniek verandert, maar het fenomeen blijft.
Een tweede invariant: De correlatiestructuur van de trainingsdata is een risicofactor die onafhankelijk is van de modelarchitectuur. Of je nu een transformer gebruikt, een CNN, of een toekomstige architectuur, als de trainingsdata sterke correlaties bevat, zal het model die leren.
Deze invarianten zijn belangrijk voor beleidsmakers. Het heeft geen zin om te wachten op een specifieke fix voor Document-MLLMs. De oplossing moet liggen in de trainingsdata en in de governance daaromheen.
Adversarial self-check: wat klopt er niet aan mijn analyse?
Ik heb geprobeerd mijn eigen argumenten te breken. De sterkste tegenargumenten:
Tegenargument 1: De lekkage is misschien triviaal te mitigeren. Als een simpele output-filter die BSN-format herkent voldoende is, dan is het risico laag. Mijn testen tonen aan dat dit niet het geval is, maar ik heb slechts één model getest. Het is mogelijk dat commerciële modellen beter presteren.
Tegenargument 2: De correlatie tussen naam en BSN is misschien niet zo sterk als ik beweer. In Nederland is het BSN niet direct afgeleid van de naam, maar van geboortedatum en geslacht. De correlatie tussen naam en BSN is indirect. Mijn testen suggereren dat het model deze indirecte correlatie wel leert, maar de nauwkeurigheid was 23%, niet 90%. Dat is een risico, maar geen zekerheid.
Tegenargument 3: De AI Act is misschien niet van toepassing. Identiteitsverificatie is inderdaad high-risk, maar de vraag is of een Document-MLLM dat alleen documenten scant en geen biometrische gegevens verwerkt, onder die classificatie valt. Dit is een juridisch grijs gebied.
Ik verwerk deze tegenargumenten in mijn conclusie: het risico is reëel, maar de omvang is onzeker. Organisaties moeten dit niet negeren, maar ook niet in paniek raken. Een gerichte audit is de juiste eerste stap.
Wat kun je doen? Een concrete checklist
Ik geef geen verkooppraatje, maar een concrete handelingsoptie. Dit is wat je morgen kunt doen:
-
Inventariseer welke Document-MLLMs je gebruikt. Maak een lijst van alle systemen die identiteitsbewijzen verwerken. Dit valt onder de AI Act transparantieverplichting.
-
Test op relational privacy leakage. Neem een representatieve steekproef van documenten, censureer één veld, en vraag het model om het in te vullen. Gebruik de pseudocode hierboven als startpunt.
-
Voer een modelgeheugen-audit uit. Dit is een nieuwe vorm van risicoanalyse die ik voorstel. Het omvat: het in kaart brengen van de trainingsdata, het identificeren van sterke correlaties tussen velden, en het testen of het model die correlaties reproduceert.
-
Documenteer de resultaten in je DPIA. Als je een DPIA hebt voor je AI-systeem, voeg dan een sectie toe over relational privacy leakage. De Autoriteit Persoonsgegevens zal dit waarderen, want het toont aan dat je verder kijkt dan de standaard checklists.
-
Overweeg technische mitigaties. Dit kan variëren van output-filtering tot het fine-tunen van het model met gecensureerde data. Mijn testen tonen aan dat simpele filtering niet voldoende is, maar het is beter dan niets.
De bredere les: AI-governance is geen papieren exercitie
Dit onderzoek laat zien dat AI-governance niet alleen gaat over documentatie en processen. Het gaat over het begrijpen van wat het model daadwerkelijk doet met de data die het heeft gezien. Een DPIA die alleen kijkt naar de input-output relatie van het systeem, mist de latente dimensie van het modelgeheugen.
De Nederlandse overheid heeft een voortrekkersrol in AI-governance, met BIO2, NIS2 en de implementatie van de AI Act. Maar dit onderzoek toont aan dat de huidige methodologie een blinde vlek heeft. We kijken naar de pijplijn, niet naar het model zelf.
Ik verwacht dat dit onderwerp de komende maanden meer aandacht krijgt, zowel in de onderzoeksliteratuur als in de praktijk. De vraag is niet of er meer van dit soort lekkages worden gevonden, maar wanneer. En of de publieke sector voorbereid is.
Wil je weten of jouw AI-systemen onder de AI Act vallen en welke risicoanalyses je moet uitvoeren? Gebruik deze AI Act Self-Check, 5 minuten, direct uitslag. En voor een bredere blik op AI-governance in de publieke sector, lees NIS2 en AI: de overlap die niemand wil zien.
De bron van dit artikel is beschikbaar op arXiv: abstract en PDF.
AI & Security Intelligence
Wekelijkse nieuwsbrief met AI updates, security alerts en compliance inzichten, direct in uw inbox.
Security & AI Operating Model
Advisory met executiekracht
Van BIO2 en NIS2 tot EU AI Act, embedded in uw operating model, niet als extern project. Maandelijks opzegbaar, met assessments als bewijsvoering.