Vingerafdrukauthenticatie is een methode van biometrische identificatie die het unieke papillaire patroon op de vingertoppen gebruikt om de identiteit van een gebruiker te verifiëren. De technologie is een veiligheidsstandaard geworden voor mobiele apparaten: van budget Android-smartphones tot vlaggenschipmodellen van Samsung en Google Pixel. Volgens Counterpoint Research (2025) is meer dan 85% van de in 2025 uitgebrachte smartphones uitgerust met een ingebouwde vingerafdrukscanner.
Belangrijkste punten
Vingerafdrukauthenticatie is een methode van biometrische identificatie die het unieke papillaire patroon op het oppervlak van de vinger analyseert om de identiteit van de gebruiker te verifiëren. Elke persoon heeft een individueel patroon van richels en dalen dat zich vormt in de 12e week van de intra-uteriene ontwikkeling en gedurende het hele leven onveranderd blijft, behalve bij fysieke verwondingen.
De vingerafdruk is een van de drie soorten biometrische kenmerken die als de meest betrouwbare worden beschouwd voor automatische identificatie, samen met de iris van het oog en het netvliespatroon. Papillaire lijnen vormen karakteristieke kenmerken — minutiae: uiteinden, vertakkingen, punten en kruisingen. De uniciteit van een vingerafdruk wordt bepaald door de locatie en het type van 40–100 minutiae op het scanoppervlak, wat een wiskundige kans op overeenkomst geeft van 1 op 64 miljard voor twee verschillende personen.
De eerste geautomatiseerde vingerafdrukidentificatiesystemen (AFIS) verschenen in de jaren 1970 voor wetshandhavingsinstanties. Massale implementatie in consumentenapparaten begon in 2013 met de iPhone 5S en Touch ID. Tegenwoordig worden vingerafdrukscanners geïnstalleerd in smartphones, laptops, tablets, deursloten en betaalterminals.
Ongeacht het type sensor bestaat het vingerafdrukauthenticatieproces uit drie fasen: beeldvastlegging, verwerking en extractie van kenmerken, vergelijking met het referentiesjabloon. Elke fase kan zowel op OS-niveau als op Trusted Execution Environment-niveau worden uitgevoerd, afhankelijk van de implementatie.
De sensor legt het fysieke patroon van de vinger vast. Capacitieve matrices lezen het verschil in elektrische potentiaal tussen richels (die de matrix raken) en dalen (die niet raken). Optische scanners verlichten de vinger met LED-verlichting en leggen het gereflecteerde licht vast via een CMOS-sensor. Ultrasone sensoren zenden een geluidsgolf uit en analyseren de echo die wordt gereflecteerd door verschillende huidlagen — dit geeft een driedimensionaal beeld dat bestand is tegen vervuiling op het vingeroppervlak.
Het vastgelegde beeld ondergaat filtering: ruisverwijdering, contrastnormalisatie en binarisatie (omzetting naar zwart-wit). Het algoritme extraheert de richels van papillaire lijnen, skeletoniseert ze (verdunt tot 1 pixel breedte) en vindt minutiae — eindpunten en vertakkingspunten van lijnen. Elke minutie wordt beschreven door coördinaten (x, y), richtingshoek en type. Het wiskundige sjabloon van 2–10 KB bevat geen originele afbeelding en maakt het niet mogelijk de vingerafdruk te reconstrueren.
Het tijdens het scannen verkregen sjabloon wordt vergeleken met het referentiesjabloon dat tijdens de registratie is opgeslagen. Het algoritme berekent het aantal overeenkomende minutiae. Voor succesvolle verificatie is een overeenkomst van minstens 12–15 minutiae vereist (instelbaar door de fabrikant). Als het aantal overeenkomende punten de drempel overschrijdt, wordt de authenticatie als succesvol beschouwd. In mobiele apparaten wordt de drempel zo ingesteld dat FAR niet hoger is dan 0.001% met FRR rond 2%.
In moderne mobiele apparaten worden drie hoofdtypen vingerafdrukscanners gebruikt, die verschillen in leestechnologie, nauwkeurigheid en productiekosten. De keuze van het type hangt af van de prijsklasse van het apparaat en de veiligheidseisen.
| Scannertype | Werkingsprincipe | FAR | Voorbeeld apparaten |
|---|---|---|---|
| Capacitief | Condensatormatrix die het verschil in capaciteit tussen richels en dalen uitleest | 0.001% | iPhone (Touch ID), Samsung Galaxy S9, Google Pixel 3 |
| Optisch | LED-verlichting + CMOS-sensor; vastleggen van gereflecteerd licht van het vingeroppervlak | 0.01% | Xiaomi Redmi, Realme, budget Android-smartphones |
| Ultrasoon | Piëzo-elektrische zender + ontvanger; 3D-reconstructie via echosignaal | 0.0005% | Samsung Galaxy S10+, Galaxy S21 Ultra, in-display scanners |
In 2025–2026 winnen in-display scanners, die direct onder het OLED-scherm zijn ingebouwd, aan populariteit. Ze kunnen zowel optisch (budgetsegment) als ultrasoon (premiumsegment) zijn. Voordeel — geen aparte knop of zone op de behuizing, waardoor een randloos display mogelijk is. Nadeel van optische in-display scanners — kwetsbaarheid voor fel zonlicht dat de CMOS-matrix overbelicht door de pixels van het scherm.
Vingerafdrukauthenticatie en gezichtsherkenning zijn de twee dominante biometrische technologieën in mobiele apparaten. Elk heeft sterke en zwakke punten die de keuze in specifieke gebruiksscenario's beïnvloeden.
Voor de ontwikkelaar van mobiele apps is het belangrijk dat BiometricPrompt op Android en LocalAuthentication op iOS het sensortype abstraheren. Op oudere Android-apparaten (API < 28) is echter mogelijk alleen FingerprintManager beschikbaar — in dat geval moet de app het sensortype expliciet controleren en een alternatieve authenticatiemethode bieden.
Vóór Android 9 (API 28) was de enige manier om een vingerafdrukscanner te integreren de klasse FingerprintManager, toegevoegd in API 23. Vanaf Android 9 raadt Google aan om BiometricPrompt te gebruiken, die het werken met alle soorten biometrische sensoren verenigt. Voor apparaten met API 23–27 kan de ontwikkelaar echter nog steeds FingerprintManager nodig hebben.
class FingerprintAuthHelper(
private val context: Context
) {
private val manager =
context.getSystemService(Context.FINGERPRINT_SERVICE)
as FingerprintManager?
fun isFingerprintAvailable(): Boolean {
return manager?.isHardwareDetected() == true
&& manager?.hasEnrolledFingerprints() == true
}
fun authenticate(callback: FingerprintManager.AuthenticationCallback) {
if (isFingerprintAvailable()) {
manager?.authenticate(
null,
CancellationSignal(),
0,
callback,
null
)
}
}
}
// Gebruik:
val helper = FingerprintAuthHelper(context)
helper.authenticate(object : FingerprintManager.AuthenticationCallback() {
override fun onAuthenticationSucceeded(
result: FingerprintManager.AuthenticationResult
) {
// Vingerafdruk herkend — toegang verleend
binding.showContent()
}
override fun onAuthenticationFailed() {
binding.showError("Vingerafdruk niet herkend")
}
})
De getoonde code demonstreert de volledige authenticatiecyclus via FingerprintManager voor oudere Android-apparaten. Het is belangrijk op te merken dat FingerprintManager standaard geen TEE gebruikt — het authenticatieresultaat wordt teruggegeven aan de gebruikersruimte, wat het minder veilig maakt dan BiometricPrompt met de BIOMETRIC_STRONG-vlag. Voor nieuwe projecten moet altijd BiometricPrompt worden gebruikt, en FingerprintManager alleen voor achterwaartse compatibiliteit met API 23–27.
Bij migratie van FingerprintManager naar BiometricPrompt moet rekening worden gehouden met de verandering van het veiligheidsmodel: BiometricPrompt garandeert dat alle biometrische bewerkingen worden uitgevoerd in TEE (Trusted Execution Environment). Het authenticatieresultaat, ondertekend met een cryptografische sleutel binnen de TEE, kan niet worden vervalst vanuit gebruikerscode. De AndroidX Biometric-bibliotheek biedt ook de interface BiometricPrompt.AuthenticationResult.getCryptoObject() voor het koppelen van biometrische authenticatie aan cryptografische bewerkingen — sleutelversleuteling en gegevensondertekening.
Bescherming tegen vervalsing van vingerafdrukken is een van de belangrijkste taken van scannerfabrikanten. Moderne sensoren gebruiken een combinatie van hardware- en algoritmische methoden voor het detecteren van levende vingers (liveness detection) en het blokkeren van namaaksels. Elke methode heeft zijn beperkingen, maar samen maken ze vervalsing economisch onaantrekkelijk voor massa-aanvallen.
De belangrijkste beschermingsmethoden zijn: huiddiepteanalyse (ultrasone scanners bepalen de dikte van de opperhuid aan de hand van de retourtijd van het echosignaal), spectrale analyse van de huid (optische scanners beoordelen de reflectiecoëfficiënt van de huid bij verschillende golflengten — siliconen en gelatine hebben een ander spectrum), pulsatiedetectie (microtrillingen van de bloedstroom in de haarvaten van de vinger) en potentiometrische controle (levende huid heeft een bepaalde elektrische impedantie die verschilt van synthetische materialen).
De norm ISO/IEC 30107-3:2023 definieert niveaus van weerstand van biometrische systemen tegen presentatie-aanvallen (presentation attack detection, PAD). Voor financiële toepassingen wordt niveau 2 (PAD Level 2) aanbevolen, dat automatische detectie vereist van ten minste 95% van aanvallen met namaaksels met een FAR van niet meer dan 0.01%. De ultrasone scanners van Samsung en Qualcomm 3D Sonic Sensor voldoen aan de eisen van PAD Level 2, terwijl budget optische scanners meestal geen certificering boven Level 1 halen.
Veelgestelde vragen
Een capacitieve scanner leest de vingerafdruk via het verschil in elektrische potentiaal tussen richels en dalen van de huid — werkt alleen met een droge en schone vinger. Een ultrasone scanner zendt een geluidsgolf uit en bouwt een driedimensionale kaart op basis van de gereflecteerde echo — hij dringt door vervuiling, water en zelfs dunne handschoenen heen, wat een hogere nauwkeurigheid biedt.
Ultrasone scanners worden als de meest betrouwbare beschouwd vanwege de driedimensionale scanning en FAR van 0.0005%. Ze zijn bestand tegen natte vingers, siliconen namaaksels en vervuiling. Capacitieve scanners zijn minder nauwkeurig (FAR 0.001%), maar sneller en goedkoper. Optische scanners zijn het minst betrouwbaar (FAR tot 0.01%) en kunnen worden misleid door een kwaliteitsafdruk van een vingerafdruk op transparante folie.
Ja, maar met beperkingen. De regelgevers PSD2 en PCI DSS vereisen multifactorauthenticatie: de vingerafdruk is slechts één factor (wat u bent). Voor autorisatie van een betaling is ook een tweede factor nodig — een pincode of eenmalig wachtwoord (wat u weet). In Apple Pay wordt de vingerafdruk gebruikt om transacties te ondertekenen via de Secure Enclave — dit voldoet aan de vereisten voor sterke klantauthenticatie (SCA).
Bij snijwonden, brandwonden of vervelling van de huid kan de vingerafdruk tijdelijk niet worden herkend. In dat geval vraagt het apparaat om een pincode of wachtwoord als alternatieve authenticatiemethode. Na het genezen van de huid wordt aanbevolen de oude vingerafdruk in de instellingen te verwijderen en een nieuwe te registreren. Op Android-apparaten kunnen ook meerdere vingers worden geregistreerd voor redundantie.
Ja — moderne apparaten slaan niet de afbeelding van de vingerafdruk op, maar een wiskundig sjabloon in een hardwarematig geïsoleerd gebied (TEE of Secure Enclave). Het sjabloon is versleuteld met een sleutel die in de chip is ingebouwd en niet toegankelijk voor lezen vanuit het besturingssysteem of applicaties. Op Android 9+ garandeert BiometricPrompt dat alle biometrische bewerkingen in de TEE worden uitgevoerd met cryptografische ondertekening van het resultaat.
Samenvatting
We ontwikkelen een mobiele applicatie turnkey
IT Sectr creëert sinds 2017 iOS- en Android-applicaties voor startups en bedrijven. We adviseren u en stellen de beste oplossing voor.
Lees ook