Eine Smartcard ist ein sicherer Mikrocontroller, der typischerweise zum Generieren, Speichern und Betreiben von kryptografischen Schlüsseln verwendet wird. Die Smartcard-Authentifizierung stellt Benutzern Smartcard-Geräte zum Zwecke der Authentifizierung zur Verfügung. Benutzer verbinden ihre Smartcard mit einem Hostcomputer. Software auf dem Host-Computer interagiert mit dem Schlüsselmaterial und anderen Geheimnissen, die auf der Smartcard gespeichert sind, um den Benutzer zu authentifizieren.
Damit die Smartcard funktioniert, muss ein Benutzer sie mit einer Benutzer-PIN entsperren.
Smartcards gelten als eine sehr starke Form der Authentifizierung, da kryptografische Schlüssel und andere auf der Karte gespeicherte Geheimnisse sowohl physisch als auch logisch sehr gut geschützt sind und daher extrem schwer zu stehlen sind.
Die zusätzliche Sicherheit durch die Smartcard geht zu Lasten der Benutzererfahrung, da Smartcards vom Benutzer physisch mitgeführt und jedes Mal, wenn er sich damit authentifizieren möchte, in den Hostcomputer eingesetzt werden müssen. Benutzer sind auch auf Host-Geräte beschränkt, auf denen die Kartenschnittstellensoftware installiert ist.
Smartcards sind auch teuer in der Verwaltung, da sie eine Softwareinstallation auf dem Hostcomputer und eine physische Verteilung an die Benutzer erfordern.