Viele PKI-Anwendungen erlauben den Einsatz von Smartcards. Smartcards sind kreditkartenähnliche Chipkarten, die für kryptografische Operationen (Cryptographic Service Provider) wie z.B. die Erzeugung asymmetrischer Schlüssel ausgerichtet sind. Zusätzlich besitzen sie einen Speicher, in dem die privaten Schlüssel, sowie die Zertifikate einer Entität sicher abgelegt werden können. In der Regel werden Smartcards nach einer Identitätsprüfung personalisiert für bestimmte Nutzer ausgestellt und mit einer PIN versehen, die nur der Benutzer selbst kennt. Die Verwendung von Smartcards hat folgende Vorteile:
- Sicherheit: Ein Angreifer müsste in Besitz der Karte kommen und die PIN ausspähen, um die Smartcard einsetzen zu können. Social Engineering Angriffe sind schwieriger, da eine personalisierte Smarcard kaum aus der Hand des Besitzers gegeben wird. Auch Brute Force Angriffe auf Passwörter gestalten sich – durch die deutlich höhere Schlüssellänge im Vergleich zu Standardpasswörtern – als schwierig.
- Portabilität: Zertifikate und Schlüssel werden portabel. Der Nutzer kann seine Karte an einen beliebigen Rechner mit Smartcardleser einstecken und auf eigene Schlüssel und Zertifikate zugreifen bzw. damit neue Schlüssel generieren, um Zertifikate anzufordern und zwar unabhängig davon ob er Zugriff auf die Daten seines Benutzerprofils hat.
- Flexibilität: Smartcards können im Gegensatz zu One-Time Password Token mehrere Schlüssel und Zertifikate für verschiedene Zwecke speichern und sind daher deutlich flexibler einsetzbar.
Statt Smartcards gibt es auch sogenannte USB Tokens mit ähnlichen Eigenschaften. Sie haben den Vorteil, dass kein Kartenleser für deren Einsatz nötig ist, dafür sind sie etwas weniger robust und benötigen einen freigeschalteten USB Port, der sie für Hochsicherheitsumgebungen weniger attraktiv macht.
Ein häufiger Einsatzzweck einer Smartcard ist z.B. die sogenannte 2-Faktor Authentifizierung (Besitz: Karte + Geheimnis: PIN) beim Windows Logon.
Folgende weitere Einsatzszenarien für Smartcards sind:
- Benutzerauthentifizierung bei VPN-Zugriff (EAP-TLS, PEAP-TLS)
- Benutzerauthentifizierung bei WPA/WPA2 Enterprise W-LAN (EAP-TLS/PEAP-TLS)
- TLS Benutzerauthentifizierung über Smartcards für Websites
- EFS Dateiverschlüsselung (möglich ab Windows Vista / Server 2008)
- Signieren und Verschlüsseln von E-Mails mit S/MIME
- Code Signing mittels Smartcards