L'authentification par empreinte digitale est une méthode d'identification biométrique qui utilise le motif papillaire unique au bout des doigts pour vérifier l'identité de l'utilisateur. La technologie est devenue une norme de sécurité pour les appareils mobiles : des smartphones Android économiques aux modèles phares de Samsung et Google Pixel. Selon Counterpoint Research (2025), plus de 85% des smartphones sortis en 2025 sont équipés d'un lecteur d'empreintes intégré.
Points Clés
L'authentification par empreinte digitale est une méthode d'identification biométrique qui analyse le motif papillaire unique sur la surface du doigt pour vérifier l'identité de l'utilisateur. Chaque personne possède un motif individuel de crêtes et de sillons qui se forme à la 12e semaine de développement prénatal et reste inchangé toute la vie, sauf en cas de lésions physiques.
L'empreinte digitale est l'une des trois caractéristiques biométriques reconnues comme les plus fiables pour l'identification automatique, avec l'iris de l'œil et le motif de la rétine. Les lignes papillaires forment des caractéristiques distinctives — des minuties : terminaisons, bifurcations, points et croisements. L'unicité d'une empreinte digitale est déterminée par l'emplacement et le type de 40 à 100 minuties dans la zone de balayage, ce qui donne une probabilité mathématique de correspondance de 1 sur 64 milliards pour deux personnes différentes.
Les premiers systèmes automatisés d'identification d'empreintes digitales (AFIS) sont apparus dans les années 1970 pour les forces de l'ordre. L'adoption massive dans les appareils grand public a commencé en 2013 avec l'iPhone 5S et Touch ID. Aujourd'hui, les lecteurs d'empreintes sont installés dans les smartphones, ordinateurs portables, tablettes, serrures de portes et terminaux de paiement.
Quel que soit le type de capteur, le processus d'authentification par empreinte digitale comprend trois étapes : capture d'image, traitement et extraction de caractéristiques, et comparaison avec un modèle de référence. Chaque étape peut être effectuée au niveau du système d'exploitation ou au niveau de l'environnement d'exécution de confiance (TEE), selon l'implémentation.
Le capteur capture le motif physique du doigt. Les matrices capacitives lisent la différence de potentiel électrique entre les crêtes (touchant la matrice) et les sillons (ne touchant pas). Les scanners optiques éclairent le doigt avec une lumière LED et capturent la lumière réfléchie via un capteur CMOS. Les capteurs ultrasoniques émettent une onde sonore et analysent l'écho réfléchi par différentes profondeurs de la peau — cela fournit une image tridimensionnelle résistante aux contaminants sur la surface du doigt.
L'image capturée subit un filtrage : suppression du bruit, normalisation du contraste et binarisation (conversion en noir et blanc). L'algorithme identifie les lignes de crêtes papillaires, les squelettise (réduit à 1 pixel de largeur) et trouve les minuties — points de terminaison et de bifurcation des lignes. Chaque minutie est décrite par des coordonnées (x, y), un angle de direction et un type. Le modèle mathématique fait 2 à 10 Ko, ne contient pas l'image originale et ne permet pas de reconstruire l'empreinte digitale.
Le modèle obtenu lors du balayage est comparé au modèle de référence enregistré lors de l'inscription. L'algorithme calcule le nombre de minuties correspondantes. Une vérification réussie nécessite une correspondance d'au moins 12 à 15 minuties (ajustable par le fabricant). Si le nombre de points correspondants dépasse le seuil, l'authentification est considérée comme réussie. Dans les appareils mobiles, le seuil est défini pour que le FAR ne dépasse pas 0,001% avec un FRR d'environ 2%.
Les appareils mobiles modernes utilisent trois principaux types de lecteurs d'empreintes digitales, différant par la technologie de lecture, la précision et le coût de production. Le choix du type dépend du segment de prix de l'appareil et des exigences de sécurité.
| Type de lecteur | Principe de fonctionnement | FAR | Exemples d'appareils |
|---|---|---|---|
| Capacitif | Matrice de condensateurs lisant la différence de capacité entre crêtes et sillons | 0,001% | iPhone (Touch ID), Samsung Galaxy S9, Google Pixel 3 |
| Optique | Éclairage LED + capteur CMOS ; capture la lumière réfléchie par la surface du doigt | 0,01% | Xiaomi Redmi, Realme, smartphones Android économiques |
| Ultrasonique | Émetteur piézoélectrique + récepteur ; reconstruction 3D à partir du signal d'écho | 0,0005% | Samsung Galaxy S10+, Galaxy S21 Ultra, lecteurs sous l'écran |
En 2025–2026, les lecteurs sous l'écran (in-display) intégrés directement sous l'écran OLED gagnent en popularité. Ils peuvent être optiques (segment économique) ou ultrasoniques (segment premium). L'avantage est l'absence de bouton ou de zone séparée sur le boîtier, permettant un écran sans bordure. L'inconvénient des lecteurs optiques sous l'écran est la vulnérabilité à la lumière solaire intense qui sature le capteur CMOS à travers les pixels de l'écran.
L'authentification par empreinte digitale et la reconnaissance faciale sont les deux technologies biométriques dominantes dans les appareils mobiles. Chacune a des forces et des faiblesses qui influencent le choix pour des cas d'utilisation spécifiques.
Pour les développeurs d'applications mobiles, il est important de noter que BiometricPrompt sur Android et LocalAuthentication sur iOS abstraient le type de capteur. Cependant, sur les anciens appareils Android (API < 28), seul FingerprintManager peut être disponible — dans ce cas, l'application doit vérifier explicitement le type de capteur et proposer une méthode d'authentification alternative.
Avant Android 9 (API 28), la seule façon d'intégrer le lecteur d'empreintes était la classe FingerprintManager, ajoutée dans l'API 23. À partir d'Android 9, Google recommande d'utiliser BiometricPrompt, qui unifie le travail avec tous les types de capteurs biométriques. Cependant, pour les appareils avec API 23–27, les développeurs peuvent encore avoir besoin de FingerprintManager.
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
)
}
}
}
// Utilisation :
val helper = FingerprintAuthHelper(context)
helper.authenticate(object : FingerprintManager.AuthenticationCallback() {
override fun onAuthenticationSucceeded(
result: FingerprintManager.AuthenticationResult
) {
// Empreinte reconnue — accès accordé
binding.showContent()
}
override fun onAuthenticationFailed() {
binding.showError("Empreinte non reconnue")
}
})
Le code ci-dessus montre le cycle complet d'authentification avec FingerprintManager pour les anciens appareils Android. Il est important de noter que FingerprintManager n'utilise pas TEE par défaut — le résultat d'authentification est retourné dans l'espace utilisateur, ce qui le rend moins sécurisé que BiometricPrompt avec le flag BIOMETRIC_STRONG. Pour les nouveaux projets, BiometricPrompt doit toujours être utilisé, et FingerprintManager ne doit être utilisé que pour la rétrocompatibilité avec API 23–27.
Lors de la migration de FingerprintManager vers BiometricPrompt, tenez compte du changement dans le modèle de sécurité : BiometricPrompt garantit que toutes les opérations biométriques sont effectuées dans le TEE (Environnement d'Exécution de Confiance). Le résultat d'authentification, signé par une clé cryptographique à l'intérieur du TEE, ne peut pas être falsifié à partir du code de l'espace utilisateur. La bibliothèque AndroidX Biometric fournit en outre l'interface BiometricPrompt.AuthenticationResult.getCryptoObject() pour lier l'authentification biométrique à des opérations cryptographiques — chiffrement de clés et signature de données.
La protection contre la falsification des empreintes digitales est l'un des principaux défis pour les fabricants de lecteurs. Les capteurs modernes utilisent une combinaison de méthodes matérielles et algorithmiques pour la détection du vivant (liveness detection) et le blocage des répliques. Chaque méthode a ses limites, mais ensemble elles rendent la falsification économiquement non viable pour les attaques de masse.
Les principales méthodes de protection incluent : l'analyse de la profondeur de la peau (les lecteurs ultrasoniques déterminent l'épaisseur de l'épiderme par le temps de retour de l'écho), l'analyse spectrale de la peau (les lecteurs optiques évaluent le coefficient de réflexion de la peau à différentes longueurs d'onde — le silicone et la gélatine ont des spectres différents), la détection du pouls (micro-vibrations du flux sanguin dans les capillaires du doigt), et la vérification potentiométrique (la peau vivante a une impédance électrique spécifique qui diffère des matériaux synthétiques).
La norme ISO/IEC 30107-3:2023 définit les niveaux de résistance des systèmes biométriques aux attaques par présentation (détection d'attaques par présentation, PAD). Pour les applications financières, le niveau 2 (PAD Level 2) est recommandé, exigeant la détection automatique d'au moins 95% des attaques utilisant des répliques avec un FAR ne dépassant pas 0,01%. Les lecteurs ultrasoniques Samsung et Qualcomm 3D Sonic Sensor répondent aux exigences de PAD Level 2, tandis que les lecteurs optiques économiques ne dépassent généralement pas la certification Level 1.
Questions Fréquentes
Un lecteur capacitif lit l'empreinte par la différence de potentiel électrique entre les crêtes et les sillons de la peau — il fonctionne uniquement avec un doigt sec et propre. Un lecteur ultrasonique émet une onde sonore et construit une carte tridimensionnelle à partir de l'écho réfléchi — il pénètre les contaminants, l'eau et même les gants fins, offrant une précision supérieure.
Les lecteurs ultrasoniques sont considérés comme les plus fiables en raison du balayage tridimensionnel et d'un FAR de 0,0005%. Ils résistent aux doigts mouillés, aux répliques en silicone et aux contaminants. Les lecteurs capacitifs sont moins précis (FAR 0,001%) mais plus rapides et moins chers. Les lecteurs optiques sont les moins fiables (FAR jusqu'à 0,01%) et peuvent être trompés par une impression de haute qualité d'une empreinte sur un film transparent.
Oui, mais avec des limitations. Les régulateurs PSD2 et PCI DSS exigent une authentification multi-facteurs : l'empreinte digitale n'est qu'un facteur (ce que vous êtes). Pour autoriser un paiement, un second facteur est également nécessaire — un code PIN ou un mot de passe à usage unique (ce que vous savez). Dans Apple Pay, l'empreinte digitale est utilisée pour signer la transaction via le Secure Enclave — cela répond aux exigences de l'Authentification Forte du Client (SCA).
En cas de coupures, brûlures ou desquamation de la peau, l'empreinte digitale peut temporairement ne pas être reconnue. Dans ce cas, l'appareil demande un code PIN ou mot de passe comme méthode d'authentification de secours. Après la cicatrisation de la peau, il est recommandé de supprimer l'ancienne empreinte dans les paramètres et d'en enregistrer une nouvelle. Sur les appareils Android, plusieurs doigts peuvent également être enregistrés pour la sauvegarde.
Oui — les appareils modernes ne stockent pas l'image de l'empreinte, mais un modèle mathématique dans une zone isolée matériellement (TEE ou Secure Enclave). Le modèle est chiffré avec une clé intégrée dans la puce et est inaccessible depuis le système d'exploitation ou les applications. Sous Android 9+, BiometricPrompt garantit que toutes les opérations biométriques sont effectuées dans le TEE avec une signature cryptographique du résultat.
Résumé
Nous développerons une application mobile clé en main
IT Sectr crée des applications iOS et Android pour les startups et les entreprises depuis 2017. Nous vous conseillerons et vous proposerons la meilleure solution.