ID.nl logo
Zekerheid & gemak

Hoe werkt machine learning precies?

Software die uit zichzelf kan leren, daar kijken we niet meer van op. Denk aan spraakherkenning die ons telkens beter begrijpt, of een slimme thermostaat die na een tijdje weet wanneer we dagelijks van ons werk komen en dan de verwarming al op tijd wat hoger zet. Maar hoe werkt machine learning precies?

We spreken van machinelearning als een programma in staat is om zonder menselijke inbreng te leren hoe het een specifieke taak kan uitvoeren en beter wordt in die taak hoe meer ervaring het heeft. Er is dus geen mens die een algoritme programmeert om die taak uit te voeren; de mens programmeert een algoritme dat uit zichzelf leert om de taak uit te voeren.

Hoe programmeer je zo’n algoritme om te leren? Kort door de bocht bestaat dat leren eruit dat het algoritme zoveel mogelijk informatie uit een verzameling gegevens haalt en zo een signaal van ‘ruis’ kan onderscheiden in die gegevens. Zo zijn in spraakherkenningstechnologie de gegevens een geluidsopname, terwijl de informatie de uitgesproken woorden zijn. Al de rest van de geluidsopname is ruis.

In de praktijk trainen we de software op een trainingset, een verzameling gegevens die een goede voorstelling vormen van de gegevens die de software zal tegenkomen. Nadat de software op die manier getraind is, kan ze ook onbekende gegevens aan. Wel moet de taak altijd duidelijk afgelijnd zijn. Software die spraak herkent, kun je niet integraal inzetten om muziek te herkennen en al zeker niet om gezichten te herkennen.

Neuraal netwerk

Neurale netwerken (‘artificial neural networks’) vormen een belangrijke aanpak in machinelearning. Ze bootsen de werking van de hersenen na, die een biologisch neuraal netwerk vormen: een kluwen van ontzettend veel verbindingen tussen neuronen (hersencellen). Een kunstmatig neuraal netwerk bestaat meestal uit meerdere lagen: een invoerlaag van neuronen die de invoer van een probleem voorstellen, een uitvoerlaag van neuronen die de oplossing van het probleem voorstellen, en één of meer tussenliggende lagen die berekeningen uitvoeren.

Bij een fully connected neural network krijgt elk neuron invoer van alle neuronen in de laag ervoor en geeft het zijn uitvoer aan alle neuronen in de laag erna. Bij een convolutioneel neuraal netwerk is een neuron niet afhankelijk van alle neuronen in de vorige laag. Een neuraal netwerk programmeer je niet door expliciet aan te geven hoe het een probleem moet oplossen; je ‘traint’ het door het vele voorbeelden van een probleem te geven, waardoor het uit zichzelf de taak leert.

Deep learning

Vooral deeplearning maakt de laatste jaren furore in de wereld van machinelearning. Bij deeplearning gebruikt het algoritme een groot aantal lagen tussen input en output. De invoerlaag verwerkt de input en stuurt die door naar de volgende laag, die zijn input verwerkt en naar de volgende laag doorstuurt, enzovoort, tot er aan het einde de output uitkomt. Dit grote aantal lagen maakt complexe transformaties mogelijk.

Een prominente gebruiker van deeplearning is Google DeepMind. In 2014 nam Google de start-up DeepMind uit Cambridge over. Begin 2016 kwam het in het nieuws met de overwinning van AlphaGo op de menselijke kampioen in het bordspel go. En het systeem van DeepMind blinkt uit in het spelen van games zoals Space Invaders en Pac Man.

Google DeepMind combineert deeplearning op een convolutioneel neuraal netwerk met het zogenoemde Q-learning om spelletjes te leren spelen zonder dat het hoeft te weten wat de goede zet is: het algoritme krijgt alleen informatie over ‘winst’ of ‘verlies’. Google DeepMind noemt hun techniek deep reinforcement learning.

Google heeft het geld voor de mensen en de computers om op grote schaal machine learning te ontwikkelen

-

Wat heeft Google DeepMind dat anderen niet hebben? “Vooral geld,” zegt Sander Bohte, onderzoeker bij het Amsterdamse CWI (Centrum voor Wiskunde & Informatica). “Wanneer je een industrieel onderzoekslabo hebt waar een paar honderd briljante mensen werken, verkrijg je de resultaten van Google DeepMind. Google heeft het geld om de beste mensen ter wereld aan te nemen en ze hebben geld voor krachtige computerclusters. Zij kunnen dus op een heel andere schaal werken dan universiteiten.”

Facebook, Microsoft, Apple...

Google is niet de enige die geld investeert in machinelearning. Facebook heeft een Applied Machine Learning-team dat spam herkent, foto’s automatisch tagt en nog heel wat andere slimme taken uitvoert op het sociale netwerk.

In 2015 kocht Microsoft het bedrijf Equivio, dat patronen in grote hoeveelheden e-mails en documenten doorspit. En Apple nam in 2016 de vooraanstaande onderzoeker Ruslan Salakhutdinov aan als hoofd van zijn AI Research team. Ook Amazon, Twitter en Baidu zijn bezig met machinelearning. En dan is er nog IBM, dat met zijn supercomputer Watson belangrijke toepassingen ontwikkelt.

De kunstmatige neurale netwerken die een belangrijke rol spelen in machinelearning zijn losjes geïnspireerd op de neuronen in onze hersenen. Maar ze werken helemaal niet zo efficiënt, zegt Sander Bohte: “Onze hersenen verbruiken zo’n 25 W energie. Een neuraal netwerk op een pc verbruikt al snel 300 W. Dat kunnen we niet in een drone implementeren, want die verbruikt dan te veel energie om lang in de lucht te blijven op zijn batterijlading."

"En als we een neuraal netwerk ter grootte van de hersenen zouden maken, zou dat 5 MW verbruiken. Onze kunstmatige neurale netwerken zijn dus aanzienlijk minder efficiënt dan hun biologische evenknieën.”

De grote uitdaging is dus om dat verschil te verkleinen. Dat kunnen we volgens Sander Bohte bereiken als we ons nog meer laten inspireren op biologische neurale netwerken: “Neuronen in onze hersenen communiceren met pulsen. Gemiddeld sturen ze één puls per seconde. Maar neuronen zijn niet continu actief. Soms doen ze een seconde niets en soms vuren ze tien keer op een seconde.”

Spiking neural networks

Sander Bohte doet onderzoek naar spiking neural networks, die net zoals biologische neuronen geen energie gebruiken wanneer er niets gebeurt. “We hopen zo neurale netwerken toch een factor 100 energie-efficiënter te maken,” zegt hij. IBM gebruikt dezelfde aanpak in zijn TrueNorth-processor, die met een miljoen neuronen maar 70 mW verbruikt.

Spiking neurale netwerken hebben volgens Sander Bohte nog een ander voordeel: ze zijn compatibel met biologische neuronen omdat ze dezelfde taal spreken. “We kunnen een spiking neuraal netwerk in principe rechtstreeks op ons brein aansluiten. Zo werk ik nu samen met het Leids Universitair Medisch Centrum om cochleaire implantaten te verbeteren. "

"Ik verwacht dat neuroprotheses met spiking neurale netwerken binnen vijf jaar mogelijk zijn. En ik verwacht ook veel van het Amerikaanse DARPA, dat veel geld steekt in projecten binnen het BRAIN Initiative met als doel om 1 miljoen gelijktijdige ‘aansluitingen’ met de hersenen te maken.”

Onbetrouwbare resultaten

Een nadeel van neurale netwerken is dat ze een soort ‘black box’ vormen: wanneer ze een resultaat geven, weet je niet hoe ze tot dat resultaat komen. In sommige domeinen is dat helemaal geen wenselijke eigenschap. Stel dat we software ontwikkelen om een arts te helpen bij het nemen van juiste beslissingen. Als de software een diagnose stelt, maar de arts helemaal niet weet waarop die diagnose gebaseerd is, kan hij daarop niet vertrouwen. Een verkeerde beslissing kan immers een grote impact hebben.

“In zulke domeinen werk je daarom liever met predictieve modellen die voor de expert te begrijpen zijn,” zegt Gilles Vandewiele, doctoraatsstudent aan het Internet Technology and Data Science Lab (IDLab) van de Universiteit Gent – imec. Gilles Vandewiele werkt daarom met decision support systemen.

Wanneer neurale netwerken een resultaat geven, weet je niet hoe ze daartoe zijn gekomen

-

“Dat vereist vaak meer menselijke inbreng dan een neuraal netwerk, omdat we zelf aan feature extraction (het verminderen van de hoeveelheid middelen die nodig zijn om een grote set van gegevens te beschrijven – red.) doen, terwijl dat bij deeplearning automatisch gebeurt. Maar het resultaat is dan wel een begrijpelijk model dat vaak sneller getraind kan worden dan zijn tegenpool, omdat we dan geen miljoenen parameters meer moeten leren.”

Naast de medische sector zijn ook de financiële en juridische sectoren geïnteresseerd in deze aanpak, omdat experts in die domeinen een uitleg moeten kunnen geven bij hun beslissingen. “De nauwkeurigheid ligt bij deeplearning wel nog hoger. Bij de keuze tussen deeplearning- en decision support-systemen maak je altijd de afweging tussen nauwkeurigheid en begrijpelijkheid van het model.”

Ook IBM Watson is op deze aanpak gebaseerd. De DeepQA-software die het hart uitmaakt van Watson kan allerlei gestructureerde en ongestructureerde gegevens combineren en zijn beslissingen uitleggen. IBM heeft Watson dan ook al in meerdere ziekenhuizen ingezet en waagt zich met het systeem ook aan weersvoorspellingen.

Lees verder op de volgende pagina.

Vandewiele wijst ook op Kaggle, een online platform dat programmeerwedstrijden in data science-problemen organiseert. “Op Kaggle vind je heel veel state-of-the-art oplossingen voor machinelearning-problemen. Voor problemen die niet over afbeeldingen, video’s of geluid gaan, is de meest prominente tactiek om hoge classificaties te halen het trainen van heel veel verschillende modellen op basis van geëxtraheerde features en dan de voorspellingen van die modellen gebruiken als nieuwe features voor een finaal model.

Een van de meest voorkomende algoritmes daarvoor is eXtreme Gradient Boosting (XGBoost), een algoritme gebaseerd op beslissingsbomen.” In 2015 en 2016 haalden doctoraatsstudenten van de Universiteit Gent de eerste respectievelijk tweede plaats in de Data Science Bowl van Kaggle.

Bayesiaans netwerk

Nog een andere aanpak in machinelearning vormen de Bayesiaanse netwerken. Een Bayesiaans netwerk is een probabilistisch grafisch model dat de conditionele afhankelijkheden van willekeurige variabelen voorstelt. Zo kun je de relaties tussen ziektes en symptomen voorstellen. Bij het voorkomen van bepaalde symptomen, kun je dan berekenen wat de kans is op allerlei ziektes.

“Voor een Bayesiaans netwerk moet je ontzettend sterke aannames maken over de wereld,” zegt Peter Grünwald van het Amsterdamse CWI. “Je moet aangeven hoe groot de kans is op alle mogelijke toestanden van de wereld, je prior beliefs. Voor complexere problemen gaat dat al snel over een kansverdeling van miljoenen getallen. Het is conceptueel niet zo eenvoudig om je dan voor te stellen waar je nu eigenlijk mee bezig bent.”

Peter Grünwald is daarom voorstander van een informatietheoretische aanpak. “Eigenlijk is dat een veralgemening van de Bayesiaanse methode, maar de interpretatie ervan is helemaal anders, in termen van datacompressie. De kern bestaat uit het minimum description length (MDL) principle. Dit principe zegt dat de beste hypothese voor een bepaalde verzameling gegevens degene is die leidt tot de beste compressie van deze gegevens.”

Als je ruwe data zoals x- en y-coördinaten letterlijk zou opschrijven zonder enige compressie, zouden die veel ruimte innemen. Maar als er een patroon tussen x en y bestaat, bijvoorbeeld y is een functie van x, dan kun je die gegevens kleiner opschrijven. Je schrijft dan de functie op en daarna de x-coördinaten. Die tweede manier comprimeert de gegevens beter dan de eerste en is dus een betere hypothese.

Machine learning en robots

We denken bij machinelearning doorgaans aan ‘virtuele’ oplossingen zoals slimme assistenten en vertaalprogramma’s, maar we zien ook meer en meer oplossingen in robotica, die een effect in de echte wereld hebben. “Het is een hele uitdaging om robots te leren bewegen en ze zo adaptief mogelijk te maken in menselijke situaties,” zegt Francis wyffels, die hiernaar onderzoek doet aan het IDLab van de Universiteit Gent.

Vooral in kleinere bedrijven is die aanpak interessant. Terwijl grotere productiebedrijven vaak grotendeels geautomatiseerde fabrieken hebben met robots die zonder enige menselijke inbreng hun werk doen, gaat het bij mkb’s vaak anders: de robots krijgen steeds wisselende taken en voeren die in nauwe samenwerking met mensen uit. Dat vereist heel wat meer intelligentie én aanpassingsvermogen.

Het is een hele uitdaging om robots te leren bewegen en ze zo adaptief mogelijk te maken in menselijke situaties

-

Om intelligentere robots mogelijk te maken, is ook heel wat fundamenteel onderzoek nodig. Zo bekijken onderzoekers hoe ze de werking van robots meer door biologische processen kunnen laten inspireren. “In onze ruggengraat zitten de Central Pattern Generators (CPG’s), neurale netwerken die de spieren aansturen. Voor motorische controle op hoog niveau zijn de hersenen natuurlijk nog nodig, maar de CPG’s werken op een lager niveau. De controle gebeurt dus door neurale netwerken op verschillende niveaus,” legt Francis wyffels uit.

“We kunnen dan ook allerlei basisbewegingen doen zonder dat onze hersenen dat moeten aansturen. Robots werken daarentegen doorgaans met één centraal programma dat alles aanstuurt. Wat als je nu de bewegingen van een robot ook hiërarchisch laat aansturen, met onafhankelijk werkende motorneuronen zoals in onze ruggengraat? Dit onderzoek staat wel nog in zijn kinderschoenen, maar het is een veelbelovende aanpak.”

Binnen enkele jaren zouden we ons domoticasysteem volgens Francis wyffels niet meer via een aanraakscherm aan de muur of via onze tablet aansturen, maar we zouden ermee op een natuurlijke manier communiceren via een soort kunstmatige huiscoach.

“Zo’n sociale robot waarmee je spreekt kan de aversie van veel mensen voor technische systemen overwinnen. Veel mensen zijn bang voor een domoticasysteem omdat ze in de war raken door al die knopjes en instellingen. Dat is allemaal veel te abstract voor hen. We hebben alle bouwblokken om een sociale interactie met ons domoticasysteem te ontwikkelen: goede spraakherkenning, beeldverwerking, kennis over human-robot interaction enzovoort. De ontwikkelingen zullen hier dus niet zo heel lang op zich laten wachten.”

De toekomst

De vooruitgang in machinelearning zal niet alleen in ons dagelijks leven gevolgen hebben, maar ook breder in onze maatschappij. Vaak hoor je het doemscenario dat we allemaal onze banen gaan verliezen aan computers. Artsen, journalisten, juristen, ... volgens de doemdenkers is hun baan binnen afzienbare tijd bijna volledig te automatiseren. Onderzoeksbureau Forrester voorspelt dat in 2021 al zes procent van de banen in de VS door robots zijn overgenomen.

Toch is het toekomstbeeld niet zo negatief voor onze baanvooruitzichten als vaak wordt voorgesteld. In zijn rapport ‘Preparing for the Future of Artificial Intelligence’ van eind 2016 schetste de Obama-administratie in één van zijn laatste publicaties dat we onze banen kunnen behouden als we mens en machine laten samenwerken om elkaars zwakheden te compenseren.

Zo vermeldt het rapport een studie waarbij afbeeldingen van cellen van lymfeknopen door een computer of door een dokter beoordeeld werden om te bepalen of het om kanker ging. De computer maakte 7,5 procent fouten, de menselijke patholoog 3,5 procent fouten. Maar als de patholoog werd bijgestaan door een computer, werd het foutpercentage van de gecombineerde aanpak gereduceerd tot 0,5 procent.

De grootste uitdaging in het domein is volgens Francis wyffels dat we te weinig mensen hebben die onderzoek doen naar machinelearning. Dat is volgens hem ook een gevolg van het gebrek aan interesse in wetenschappen en technologie bij de jeugd, in het bijzonder de informaticawetenschappen. Het sterotypische beeld van de asociale computernerd is nog altijd niet uitgeroeid.

“Hier ligt een grote taak voor de overheden en scholen: zij moeten onze jeugd voldoende laten kennismaken met informaticawetenschappen en hen leren om met de snelle veranderingen in de toekomst om te gaan. Er zijn gelukkig heel wat scholen die al op eigen houtje initiatieven invoeren om hun leerlingen warm te maken voor informaticawetenschappen.” Om leerkrachten daarbij te helpen, richtte Francis wyffels de vzw Dwengo op en heeft hij didactisch materiaal op de website program-uurtje verzameld.

▼ Volgende artikel
Slimmer overstappen zorgverzekering 2026: pak dubbel voordeel met CashbackXL
© ID.nl
Zekerheid & gemak

Slimmer overstappen zorgverzekering 2026: pak dubbel voordeel met CashbackXL

Naar verwachting stappen dit jaar weer ruim 1,2 miljoen mensen over van zorgverzekering. Verstandig, maar het kan nóg slimmer. Wie overstapt via CashbackXL profiteert namelijk dubbel: je bespaart op de premie én ontvangt cashback-punten die je kunt inwisselen voor keiharde euro's.

We zitten midden in het overstapseizoen. Tot en met 31 december heb je de tijd om je huidige zorgverzekering op te zeggen en een nieuwe te kiezen. De ontevredenheid over de hoge premies is voor velen de belangrijkste reden om te wisselen. Daarnaast kiezen steeds meer mensen voor een minder uitgebreide aanvullende verzekering om de kosten te drukken. Er valt vaak honderden euro's per jaar te besparen door simpelweg te vergelijken. Maar waarom zou je genoegen nemen met alléén een lagere premie?

Punten scoren (en cashen!)

Als je via CashbackXL overstapt, ontvang je voor elke nieuw afgesloten zorgverzekering bij de grote vergelijkers Poliswijzer.nl, Zorgkiezer en Overstappen.nl 2.750 punten. Deze punten zijn geld waard: 1 punt staat gelijk aan € 0,01. Dit betekent dat je per overstap € 27,50 extra voordeel pakt.
Of je nu kiest voor a.s.r., VGZ Bewuzt, OHRA, Zilveren Kruis Ziezo of een van de vele andere verzekeraars uit de lijst: als je via de juiste vergelijker overstapt, pak je die bonus mee. In onderstaand overzicht zie je bij welke vergelijker je moet zijn voor een specifieke verzekeraar.

💡Slimme tip: zo krijg je meerdere cashbacks op één adres

Stappen jij en je partner allebei over? Let dan even goed op. Normaal gesproken geldt de regel: één cashback per vergelijker, per adres/gezin. Maar daar is een slimme oplossing voor. Wil je voor meerdere gezinsleden een cashback ontvangen? Sluit de verzekeringen dan af bij verschillende vergelijkers.

Voorbeeld: Jij sluit je nieuwe verzekering af via Poliswijzer.nl (2.750 punten) en je partner sluit af via Overstappen.nl (ook 2.750 punten). Zo ontvang je op hetzelfde adres twee keer de cashback!

Belangrijk om te weten: geduld wordt beloond

Overstappen doe je vóór 1 januari, maar de controle duurt even. Zorgverzekeraars keuren de aanvragen namelijk pas definitief in april 2026. Het duurt dus even voordat de punten in je account op 'goedgekeurd' staan, maar dat is het wachten waard.

Voorwaarden puntenactie zorgverzekering 2026

Wil je in aanmerking komen voor deze actie, lees dan onderstaande voorwaarden even aandachtig door:

• Je moet 18 jaar of ouder zijn.
• Het moet gaan om een nieuwe verzekering (als je verlengt bij je huidige verzekeraar (ook al sluit je een andersoortige verzekering af) dan geldt dat hier niet als overstappen.
• Alle genoemde cashbacks gelden altijd voor elk eigen risico.

Zo werkt de zorgverzekerings-cashback

Wil jij 2026 financieel goed beginnen? Volg dan deze stappen voor de perfecte tracking:

1. Maak een account aan op CashbackXL.
2. Klik bovenaan in de blauwe balk op Zorgverzekering 2026.
3. Bekijk in het overzicht welke verzekeraar via welke vergelijker (Poliswijzer, Zorgkiezer of Overstappen) beschikbaar is.
4. Klik op de link en start de vergelijking. Let op: accepteer alle cookies op de site van de vergelijker en zet je adblocker uit. Dit is noodzakelijk om de punten te kunnen registreren.
5. Sluit de verzekering af.
6. Je aankoop wordt geregistreerd en na goedkeuring in april 2026 kun je jouw punten verzilveren in euro's.

Waarom je CashbackXL kunt vertrouwen

CashbackXL is de grootste cashback-site van Nederland. De site registreert 97 procent van alle aankopen succesvol en scoort op Kiyoh een klantwaardering van een 9,0. Je ontvangt je uitbetaling maandelijks (of wanneer jij wilt, zonder minimumbedrag), krijgt de hoogste cashback-percentages en kunt terecht bij een toegankelijke klantenservice.

▼ Volgende artikel
Dit wil je weten over tweestapsverificatie, óók zonder je smartphone
© Looker_Studio - stock.adobe.com
Huis

Dit wil je weten over tweestapsverificatie, óók zonder je smartphone

Je inloggegevens alleen met een wachtwoord beveiligen is vragen om problemen. Steeds meer diensten en apps bieden daarom tweefactorauthenticatie (2FA) aan, of ze verplichten dit zelfs. Naast een wachtwoord heb je dan een tweede factor nodig. Vaak gebruik je hiervoor je smartphone, maar wat doe je als je (tijdelijk) geen telefoon hebt?

Dit artikel in het kort

Tweestapsverificatie (2FA) beschermt je accounts beter dan alleen een wachtwoord. Vaak gebruik je hiervoor je smartphone, maar dat hoeft niet. In dit artikel lees je hoe je ook zonder telefoon veilig kunt inloggen. Zo ontdek je hoe desktop-authenticators zoals Proton of KeePassXC werken, hoe je een hardwaresleutel zoals een YubiKey instelt, en hoe je back-upcodes aanmaakt voor noodgevallen. Ook wordt uitgelegd wat een digitale en fysieke token precies doen en hoe toegangssleutels (passkeys) een alternatief vormen voor klassieke wachtwoorden.

Wachtwoorden kun je vergeten, of ze worden gehackt. Daarom is het niet handig om de toegang tot een dienst of app alleen met een wachtwoord te beveiligen. Voor meer veiligheid voeg je daar een tweede authenticatiemethode aan toe. We hebben het over het aanmelden via 2FA (tweefactorauthenticatie oftewel tweestapsverificatie).

Bij 2FA heb je naast iets wat je weet, meestal een wachtwoord, ook iets wat je 'hebt' of 'bent' nodig om in te loggen. Zo'n tweede factor is vaak een unieke, eenmalige code via een authenticator-app op je smartphone. Het kan ook een sms-code, pushmelding, hardwaresleutel of een biometrische beveiliging zijn. Zo kan een aanvaller met je wachtwoord niet binnendringen, want hij heeft ook die tweede factor nodig. Een geraden of gelekt wachtwoord is dus niet meer voldoende, wat de veiligheid verhoogt.

Smartphone

Veel 2FA-oplossingen werken via een smartphone, bijvoorbeeld met de authenticator-app van Authy, Google of Microsoft, of via sms-berichten naar je telefoon. Dit is handig, maar er zijn ook nadelen. Je hebt altijd je telefoon nodig en bij een lege batterij, verlies of diefstal kom je mogelijk niet bij je accounts. Ook al je je in een gebied zonder mobiel bereik bevindt, is het lastig of onmogelijk om een sms te ontvangen.

2FA via sms is bovendien kwetsbaar voor praktijken als sim-swapping. Hierbij zet een aanvaller jouw telefoonnummer om naar een eigen simkaart om zo sms-codes te ontvangen. Je smartphone kan ook besmet raken (via phishing) met malware. Ook daarmee kan een aanvaller andere 2FA-codes onderscheppen.

Het kan ook zijn dat je geen smartphone voor je werk hebt en dat je je privételefoon liever niet gebruikt voor werkgerelateerde 2FA-authenticaties. Je kunt er natuurlijk ook nog bewust voor kiezen om geen eigen smartphone te hebben.

Gelukkig bestaan er veilige alternatieven om je ook zonder smartphone via 2FA aan te kunnen melden, zoals de rest van dit artikel duidelijk maakt.

Lees ook: Waarom je beter geen sms voor tweestapsverificatie kunt gebruiken

Een eenmalige code via een (mobiele) authenticator-app is een van de populairste 2FA-verificatiemethoden.

Desktop-authenticator

Veel mensen gebruiken als tweede factor een eenmalige code via een authenticator-app. Daarvoor bestaan verschillende gratis mobiele apps, maar je kunt ook je desktop of laptop inzetten. Je hoeft geen virtuele Android-omgeving op te zetten met een tool als BlueStacks om zo bijvoorbeeld de mobiele Android-authenticator van Google of Microsoft te kunnen draaien. Installeer gewoon de desktopversies, zoals het Zwitserse Proton of het Zweedse Yubico.

We vertellen je in het kort hoe je hiermee bij Google aanmeldt. De procedure bij andere diensten en apps gaat op een vergelijkbare manier. Surf naar https://myaccount.google.com en open Beveiliging. Kies Tweestapsverificatie en zorg dat deze is ingeschakeld. Klik bij tweede stap op Authenticator en daarna op Authenticator instellen. Er verschijnt een QR-code, maar voor je desktop-app klik je op Kun je de code niet scannen. Je krijgt nu de nodige gegevens om de geheime sleutel (zie kader Werking digitale token) handmatig in te voeren.

Als je dit in je authenticator-app hebt ingesteld (zie de alineaProton Authenticator), klik je op Volgende en voer je de code in die de app genereert. Je kunt nu definitief tweestapsverificatie bij Google aanzetten. Bij de volgende aanmeldingen voer je nu voortaan naast je wachtwoord ook de gevraagde code in.

De tweestapsverificatie bij Google is geactiveerd, met (voorlopig alleen) een authenticatorcode als tweede factor.

Proton Authenticator

We nemen Proton Authenticator voor Windows als voorbeeld (ook beschikbaar voor macOS en Linux). De installatie bedraagt slechts enkele muisklikken. Start daarna de app start op en klik op Create new code. Vul bij Title bijvoorbeeld Google account in en plak de sleutel van 32 tekens in het veld Secret.

Bij Issuer kun je Google opgeven. Via Advanced options pas je eventueel instellingen aan als de dienst specifieke eisen heeft voor het aantal cijfers (standaard 6), tijdsinterval (standaard 30 seconden), algoritme (standaard SHA1) of type (standaard TOTP, maar kies STEAM voor het Steam-gameplatform van Valve). Klik op Save code om de code toe te voegen.

Via het tandwielpictogram kun je onder meer je codes back-uppen, exporteren, importeren en ook synchroniseren tussen apparaten via een gratis Proton-account. Na het aanmaken verschijnt de code in het hoofdvenster, met een geanimeerd pictogram dat de resterende geldigheidsduur toont. Je hoeft deze code nu maar bij de juiste dienst in te vullen als tweede factor, naast je wachtwoord.

Via Proton Authenticator voeg je een TOTP-code toe aan Googles 2FA-verificatieproces.

Werking digitale token

De meeste mensen gebruiken een digitaal token als tweede factor, zoals een pushmelding of een eenmalige cijfercode. Dit laatste wordt ook wel TOTP genoemd (Time-based One-Time Password) en werkt als volgt.

Bij het instellen van 2FA genereert de dienst een unieke geheime sleutel. Deze wordt één keer met je authenticator-app gedeeld via een QR-code of handmatige invoer. Zowel de server van de dienst als je authenticator-app gebruiken deze sleutel samen met het actuele tijdstip om met dezelfde wiskundige formule een code van meestal 6 cijfers te berekenen. Zo'n code blijft standaard dertig seconden geldig. Zodra je deze code invoert, vergelijkt de server deze met zijn eigen berekening. Is er een match, dan weet de server dat jij de juiste geheime sleutel hebt en dat de code actueel is, waarna je kunt inloggen.

©TvD | ID.nl

De achterliggende werking van een TOTP-systeem.

TOTP-wachtwoordmanager

Wachtwoorden zijn vooralsnog niet verdwenen (zie ook kader Zonder wachtwoord) en daarom is een wachtwoordmanager aan te raden. Zo hoef je al je wachtwoorden niet zelf te onthouden, voorkom je dat je ze achteloos noteert en vermijd je te veel dezelfde of simpele varianten.

Enkele wachtwoordmanagers ondersteunen ook TOTP-codes voor 2FA, zodat je geen aparte authenticator-app nodig hebt. Gratis opties voor Windows-desktop zijn onder meer Bitwarden en KeePassXC.

We nemen KeePassXC als voorbeeld, dat ook voor macOS en Linux beschikbaar is. Je installeert de tool met enkele muisklikken. Bij de eerste start klik je op Database aanmaken, voer je een naam en eventueel een omschrijving in. Klik daarna op Doorgaan. Laat de instellingen gerust ongewijzigd en klik op Doorgaan. Geef een sterk hoofdwachtwoord in (twee keer) en bevestig met Gereed. Kies een locatie voor de database en klik op Opslaan.

Voer in het hoofdvenster de accountgegevens in, zoals Titel, Gebruikersnaam, Wachtwoord en URL, en bevestig met OK. Het item wordt toegevoegd. Klik er met de rechtermuisknop op, kies TOTP / TOTP instellen en vul de Geheime sleutel in. Pas via Aangepaste instellingen eventueel de parameters aan en bevestig met OK. Om de TOTP-code te zien, kies je TOTP / TOTP (QR code) weergeven in het contextmenu.

Je kunt ook de KeePassXC-browserextensie downloaden en installeren om je online wachtwoorden en TOTP-codes automatisch in de browser in te vullen.

Ook wachtwoordbeheerder KeePassXC kan TOTP-codes genereren.

Hardwaresleutel

In plaats van een digitale sleutel kun je ook een fysieke hardwaresleutel gebruiken als tweede factor. Zo'n sleutel is extra veilig omdat deze via internet niet kan worden gekopieerd of gestolen. Ook phishers maken nauwelijks kans, want de sleutel is gekoppeld aan de originele website-url van de dienst. Zelfs als iemand je sleutel heeft, blijft je wachtwoord nodig en vaak ook een pincode of biometrie om de sleutel te gebruiken. Bij verlies rest meestal alleen een alternatieve tweede factor, zoals een TOTP-code of back-upcodes (zie hieronder), tenzij je een reservesleutel hebt.

We nemen als voorbeeld een YubiKey 5 NFC USB-A van Yubico (circa 60 euro). Dit kan ook een ander merk of type zijn, zoals Feitian, Nitrokey of SoloKeys. Ga in Windows 11 naar Instellingen, kies Accounts / Aanmeldingsopties en selecteer Beveiligingssleutel / Beheren. Plaats de sleutel in de pc en activeer deze. Klik op Toevoegen bij Pincode voor beveiligingssleutel. Je kunt ook de Yubico Authenticator downloaden die ook beschikbaar is voor macOS en Linux. Ga door met installeren en start als administrator op. Open nu Passkeys, klik op Set PIN, voer tweemaal een pincode in en klik op Save.

We nemen opnieuw Google als voorbeeld, waar je inmiddels tweestapsverificatie hebt ingeschakeld. Op de webpagina van je Google-account open je Beveiliging en klik je op Toegangssleutels en beveiligingssleutels. Kies + Toegangssleutel maken, klik op Ander apparaat gebruiken, selecteer Beveiligingssleutel en klik op Volgende en daarna op OK (twee keer). Voer de pincode van de sleutel in, bevestig met OK en activeer de sleutel. Deze is nu bruikbaar als tweede factor.

Bij Google maak je eenvoudig een toegangssleutel aan.

Werking fysieke token

Je kunt als tweede factor ook een fysieke token gebruiken. Bij banken kan dit een klein kastje zijn dat codes genereert, maar het kan ook een hardwaresleutel zijn zoals een YubiKey. Zo'n sleutel koppel je aan je computer via usb of bij smartphones via bluetooth of NFC. Dit werkt als volgt.


Je koppelt de sleutel één keer aan je account, waarbij een uniek cryptografische sleutelpaar wordt aangemaakt. De publieke sleutel gaat naar de server van de dienst, terwijl de privésleutel veilig in het hardwaretoken blijft en deze nooit verlaat. Na het invoeren van je wachtwoord vraagt de server aan de sleutel om een unieke digitale handtekening te maken voor die specifieke aanmelding.

Jij bevestigt de aanvraag, bijvoorbeeld door het token te activeren. Vervolgens stuurt de sleutel de handtekening naar de server, die controleert of deze overeenkomt met de eerder opgeslagen publieke sleutel. Bij een match weet de server dat jij de echte sleutel bezit en kun je inloggen.

Onder meer Yubico heeft diverse hardwaretokens (YubiKey) in het aanbod.

Back-upcodes

We hebben nu al twee methoden om ons via een desktop-pc of laptop bij 2FA aan te melden: digitale TOTP-codes en een hardwaresleutel. Heb je ook een toegangssleutel, bijvoorbeeld gekoppeld aan je Windows Hello-inlogmethode, dan zijn het er zelfs drie opties. Al is dit eigenlijk geen klassieke 2FA maar een methode zonder wachtwoord (zie kader Zonder wachtwoord).

De meeste diensten die 2FA ondersteunen, bieden ook back-upcodes aan, hoewel deze eigenlijk bedoeld zijn als noodingreep. We raden je in elk geval aan deze te genereren of te downloaden en offline te bewaren, bijvoorbeeld in een kluis of andere water- en brandveilige plek. Laat ze zeker niet rondslingeren en deel ze nooit digitaal.

Voor je Google-account bijvoorbeeld werkt dit als volgt. Meld je opnieuw aan op je accountpagina, open Beveiliging, scrol naar beneden en klik op Back-upcodes en daarna op Back-upcodes genereren. Google maakt direct tien codes aan die je kunt downloaden en/of afdrukken. Dit is meestal voldoende om problematische aanmeldingen op te lossen. Je kunt op elk moment weer tien nieuwe codes aanmaken, waarmee de vorige tien codes automatisch ongeldig worden.

Google genereert tien back-upcodes die je goed dient te bewaren voor het geval er iets misgaat.

Zonder wachtwoord

2FA combineert dus iets dat je 'weet' (wachtwoord) met iets wat je 'hebt' (zoals een code of sleutel) of 'bent' (biometrie). Er komt ook steeds meer concurrentie van een oplossing zonder wachtwoord via zogeheten toegangssleutels (passkeys). Dit systeem is enkel gebaseerd op iets wat je 'hebt' (een hardwarematige of softwarematige sleutel), vaak gecombineerd met een vorm van biometrie.

Je hebt hierbij dus geen wachtwoord meer nodig. Je kunt direct inloggen met zo'n sleutel, meestal na een geslaagde vingerafdruk, gezichtsherkenning of pincode. Onderliggend werkt dit via de FIDO2-standaard met het hardwareprotocol CTAP2 en het webprotocol WebAuthn.

Op www.passkeys.io/ vind je een demonstratie en een lijst van enkele tientallen sites en apps die toegangssleutels als volledig wachtwoordalternatief ondersteunen. Nog meer diensten staan op https://passkeys.directory, een door de community beheerde lijst. De aanduiding MFA (Multi Factor Authenticatie) betekent hier dat toegangssleutels ook inzetbaar zijn als extra beveiligingslaag naast andere inlogmethodes. Zo kun je onder meer bij Google via een toegangssleutel, zoals een pincode, inloggen, zonder zelfs je wachtwoord te hoeven intikken.

Passkeys-directory: ook Google ondersteunt volop toegangssleutels.

Offline dingen veilig bewaren?

Haal een kluis in huis!