Une carte à puce est un microcontrôleur sécurisé qui est généralement utilisé pour générer, stocker et exploiter des clés cryptographiques. L’authentification par carte à puce fournit aux utilisateurs des périphériques de carte à puce à des fins d’authentification. Les utilisateurs connectent leur carte à puce à un ordinateur hôte. Le logiciel de l’ordinateur hôte interagit avec le matériel des clés et d’autres secrets stockés sur la carte à puce pour authentifier l’utilisateur.
Pour que la carte à puce fonctionne, un utilisateur doit la déverrouiller avec un code PIN.
Les cartes à puce sont considérées comme une forme d’authentification très forte car les clés cryptographiques et autres secrets stockés sur la carte sont très bien protégés physiquement et logiquement, et sont donc extrêmement difficiles à voler.
La sécurité supplémentaire apportée par la carte à puce se fait au détriment de l’expérience utilisateur, car les cartes à puce doivent être transportées physiquement par l’utilisateur et insérées dans l’ordinateur hôte chaque fois qu’il souhaite s’authentifier avec lui. Les utilisateurs sont également limités aux périphériques hôtes sur lesquels le logiciel d’interface de carte est installé.
Les cartes à puce sont également coûteuses à administrer, car elles nécessitent une installation logicielle sur l’ordinateur hôte et une distribution physique aux utilisateurs.