Ik werk al tientallen jaren met bedrijfssoftware en de invoering ervan. Maar ik ben geen programmeur, en ik was niet van plan om een beveiligingsproduct te bouwen.
Het begon met een video. Begin 2025, een paar weken nadat OpenAI zijn videomodel Sora voor het publiek beschikbaar had gemaakt, keek ik naar clips van mensen die nooit hadden bestaan, en ik kon ze niet onderscheiden van echte beelden. Mijn eerste gedachte was: binnenkort kun je niemand meer vertrouwen die je online tegenkomt. Niet het gezicht in het videogesprek, niet de stem aan de telefoon.
Die gedachte werd de kern van Trusted Codes. Wat er een product van maakte in plaats van een idee, waren twee oplichtingszaken in mijn eigen omgeving. Ze bewezen dat het gevaar echt was, en ze lieten me zien dat het veel verder reikte dan online vergaderingen.
Twee zaken, één patroon
De eerste trof het bedrijf van mijn vrouw. Een vervalste zakelijke e-mail leidde tot een betaling van bijna € 100.000 aan criminelen. Het geld was weg en kwam nooit terug. In de statistieken heet dit business email compromise. Voor de betrokkenen is het een schok die niet ophoudt wanneer de boeken zijn afgesloten.
De tweede was op een andere manier erger. Een moeder met wie we bevriend zijn, werd gebeld door haar dochter. Het was onmiskenbaar de stem van haar dochter: ze had een ongeluk gehad en had geld nodig. De moeder stond klaar om te betalen. Ze aarzelde om één reden: het bedrag was ongewoon hoog voor een ongeluk. Die kleine twijfel redde het geld.
De dochter had nooit gebeld. Haar stem was gekloond uit video's die ze op Instagram had gezet. De moeder was er dagen van ondersteboven. Ze had haar eigen kind gehoord, en ze kon niet geloven dat het hele gesprek verzonnen was.
Beide gevallen hebben dezelfde zwakke plek. De e-mail zag er echt uit, en de stem klonk juist. Geen van beide bewees wie er aan de andere kant zat. En geen van beide speelde zich af in een videogesprek: het ene kwam per e-mail, het andere per telefoon. Een controle die alleen in online vergaderingen werkt, had hier niemand beschermd.
Vóór AI bestond dit probleem niet
Fraude is oud. Nieuw is de prijs. Tot een paar jaar geleden kon een crimineel het niet kopen: de stem van een bepaald persoon zo goed nadoen dat zelfs diens moeder erin trapt. Vandaag volstaan een korte opname en een commercieel programma. Hetzelfde geldt voor videogesprekken: in 2024 maakte een medewerker van het ingenieursbureau Arup in Hongkong ongeveer 25 miljoen dollar over na een videovergadering waarin alle andere deelnemers, de CFO inbegrepen, deepfakes waren.
Dit is dus een probleem dat AI heeft veroorzaakt. De voor de hand liggende reactie is het met nog meer AI te bestrijden: detectiesoftware die meeluistert en inschat of een stem synthetisch is. Ik begrijp het idee, maar ik vertrouw het niet. Een detector geeft een waarschijnlijkheid, en hij concurreert met generatoren die elke maand beter worden. Elke verbetering van de detector is trainingsmateriaal voor de volgende generator. En mensen doen het niet beter: in een studie die in 2023 in PLOS ONE verscheen, herkenden luisteraars synthetische spraak slechts in 73 procent van de gevallen, en training hielp nauwelijks.
Codewoorden zijn ouder dan computers
Het antwoord dat ik vond, is oud. Legers gebruiken wachtwoorden zolang er schildwachten bestaan. Op D-Day in 1944 herkenden geallieerde parachutisten in Normandië elkaar in het donker aan een vraag en een tegenwoord: de een riep ‘Flash’, de ander antwoordde ‘Thunder’. Om dezelfde reden spreken veel gezinnen een codewoord af voor noodgevallen.
Een codewoord werkt omdat het niet afhangt van hoe iets eruitziet of klinkt. Het hangt af van wat de ander weet. Een gekloonde stem kan alles zeggen, behalve het woord dat hij nooit te horen kreeg.
Het familiecodewoord heeft wel zwakke plekken. Het verandert nooit, dus zodra het is afgeluisterd of in een chat is opgeschreven, is het verbrand. Niemand denkt eraan een nieuw af te spreken. En het dekt alleen de familie, niet de collega die om een overboeking vraagt of de leverancier met nieuwe bankgegevens.
Wat Trusted Codes doet
Trusted Codes behoudt het principe en neemt die zwakke plekken weg. Twee mensen, of een team, maken één keer verbinding. Daarna toont elk van hun telefoons dezelfde drie woorden, en die woorden wisselen op een vast interval. Vraagt een telefoontje, bericht of e-mail om iets ongewoons, dan vraag je: ‘Wat is onze code?’ Kloppen de woorden, dan is het de persoon met wie je verbonden bent. Kloppen ze niet, dan hang je op.
Waar het om gaat, is hoe de woorden ontstaan. In die stap zit geen AI. Een gedeeld geheim en de huidige tijd gaan in een standaard, openbaar gedocumenteerd algoritme (TOTP, hetzelfde dat authenticator-apps gebruiken), en er komen drie woorden uit. De uitkomst is deterministisch: hetzelfde geheim en dezelfde tijd geven altijd dezelfde woorden, op elk toestel. Er wordt niets ingeschat, niets is waarschijnlijk of onwaarschijnlijk. De woorden kloppen, of ze kloppen niet.
Dat is een bewuste keuze. Een controle tegen AI-fraude mag niet afhangen van een model dat de aanvaller kan bestuderen, nabootsen of met betere training kan verslaan. Ze moet afhangen van een geheim dat de aanvaller niet heeft.
Gebouwd met AI, door iemand die geen code schrijft
Nu het deel dat misschien tegenstrijdig klinkt. Ik heb Trusted Codes met AI gebouwd.
Toen ik besloot iets tegen deze oplichting te doen, had ik een concept kunnen schrijven en een ontwikkelteam kunnen zoeken. In plaats daarvan leerde ik werken met een AI-codeeragent, Claude Code, en die gebruik ik in elke fase van het product, niet alleen om code te schrijven.
We beginnen bij de strategie: welke oplichting met welk soort controle te stoppen is, en waaraan een oplossing daarvoor moet voldoen. Dan het ontwerp: wat een gebruiker ziet, hoe een uitnodiging werkt, wat er gebeurt als een telefoon kwijtraakt. Dan de implementatie, dan het testen, dan verificatie en documentatie. Een groot deel van het werk bestaat uit het aanvallen van ons eigen product. Ik vraag de AI in te breken in de code die hij zelf schreef, de zwakke plek te vinden voordat een crimineel dat doet, en elke beveiligingsclaim tegen de code te bewijzen voordat we die openbaar maken.
Het resultaat is complete bedrijfssoftware: mobiele apps, een desktop-app, een server, portalen voor bedrijven en beheerders. Elke regel ervan is door AI geschreven. Elke beslissing over wat de software moet doen, en wat ze nooit mag doen, is genomen door iemand die weet hoe bedrijfssoftware wordt ingekocht, uitgerold en beheerd, en die had gezien wat deze oplichting met mensen doet.
Ik zie geen tegenstrijdigheid. AI is gereedschap. Criminelen gebruiken het om stemmen na te maken. Ik gebruik het om iets te bouwen dat nagemaakte stemmen nutteloos maakt. Het verschil is de plek waar het wordt ingezet: AI schreef de software, maar op het moment van de waarheid, wanneer je moet weten of de persoon aan de telefoon echt is, komt er geen AI aan te pas. (De app heeft wel een assistent die je helpt de weg te vinden. Die speelt bij de controle geen rol.)
Wat dit voor jou betekent
Je hebt Trusted Codes niet nodig om te beginnen. Spreek vandaag een codewoord af met je familie. Vertel je ouders dat een telefoontje van jou waarin je om geld vraagt, met jouw stem, geen bewijs is dat jij het bent.
Heb je een bedrijf, kijk dan hoe een betaalverzoek wordt bevestigd. Luidt het antwoord ‘de e-mail kwam van het juiste adres’ of ‘de stem klonk als die van de CEO’, dan is dat dezelfde zwakke plek die het bedrijf van mijn vrouw bijna € 100.000 kostte. Trusted Codes maakt het codewoord geschikt voor een bedrijf: het wisselt vanzelf, het werkt aan de telefoon, in videogesprekken en in chats, en met een Business-abonnement kunnen beheerders zien wie wie heeft geverifieerd, en wanneer.
Bronnen
- Deepfake-videovergadering bij Arup, Hongkong, 2024: AI Incident Database, incident 634
- Mai, K. T. et al., "Warning: Humans cannot reliably detect speech deepfakes", PLOS ONE, 2 augustus 2023: journals.plos.org
- TOTP: RFC 6238