This article focuses on the steps required to successfully start using your smart card on ChromeOS on your personal, unmanaged device. If you are an admin and wish to deploy smart cards on managed devices across your organization, then please refer to Deploy smart cards on ChromeOS.
Before you begin
- ChromeOS supports only a limited set of smart card scenarios:
- TLS authentication using a smart card connector and middleware.
- Personal Computer Smart Card (PC/SC) driven use cases using a smart card connector and apps such as Citrix.
- Limited SSH support. For details, see Using smart cards and hardware tokens with Secure Shell.
- ChromeOS does not support:
- Other cryptographic operations based on smart cards, for example sign mail within office 365, read encrypted mails and Java applications.
- Smart cards in Android on ChromeOS.
Step 1: Install the Smart Card Connector app
The Smart Card Connector app provides Chromebooks with PC/SC support. This PC/SC API can then be used by other applications such as smart card middleware and Citrix to provide functionality on top e.g. browser integration and virtual session redirection. You can install the app by going to the entry on the Chrome Web Store and clicking Add to Chrome.
Step 2: Install a smart card middleware app
In addition to the connector, you need to install the proper middleware app that can communicate with smart cards and offer client certificates that can authenticate you to HTTPS websites. Google has partnered with Drivelock to bring support for a wide range of cards and profiles, including PIV and CAC, onto ChromeOS. You can install the app by going to the entry on the Chrome Web Store and clicking on Install.
Note: The connector app offers a public API that middleware apps other than Drivelock can also use. You can install other middleware vendors like CACKey directly from the Chrome Web Store.
Step 3: Install all necessary root and intermediate certificates
Depending on the sites you are trying to access, you might need to install trust roots and intermediaries onto your Chromebook. Once those certificates are identified, you can install them by navigating to the chrome://certificate-manager URL and then going to Authorities > Import… Once you select a file, Chrome will ask you to configure trust settings for a certain root. Check all boxes that apply and then press OK.
Note: Installing a root certificate on a device is a very privacy and security sensitive operation. Make sure you only install trust roots you obtained and verified from sources you trust.
Note: For US Department of Defense users, most websites require users to install several trust roots and intermediaries. These are available as official downloads from IASE Tools > Trust Store > PKI CA Certificate Bundles: PKCS#7 > For DoD PKI Only bundle. Once you download that bundle on ChromeOS, go to the Files app, double click to mount the zip and then drag and drop the contents of the mounted zip into the downloads folder. Then follow the import instructions in Step 3 for the following two files, checking all boxes when configuring trust
Certificates_PKCS7_v5.0u1_DoD_DoDRootCA2_withCAs_FirefoxChromeOS.der.p7b
Certificates_PKCS7_v5.0u1_DoD_DoDRootCA3_withCAs_FirefoxChromeOS.der.p7b
Step 4: Allow middleware to communicate with the Smart Card Connector
Apps like Citrix and Drivelock will need to contact the Smart Card Connector to communicate with your cards and readers. As cards and readers contain sensitive user information, the connector app will show users a permission dialog before granting access to any app. If you see a permission dialog prompted by a third party app you trust, click on ALLOW to move on.
You are now ready to use your smart card. Navigate to HTTPS websites and Chrome will prompt you to use certificates it has detected off your card to authenticate you into your remote systems.
Additional information
Supported smart card readers
The following readers meet Google's requirements. This list is created from the files of the "CCID Free Software driver" open-source project. For details, see copyrights and licensing.
Access IS ePassport Reader
Access IS NFC Smart Module
ACS ACR 38U-CCID
ACS ACR101 ICC Reader
ACS ACR1251 Dual Reader
ACS ACR1252 Dual Reader
ACS ACR1252 Reader
ACS ACR1255U-J1
ACS ACR33 ICC Reader
ACS ACR3901U ICC Reader
ACS ACR39U ICC Reader
ACS APG8201 PINhandy 1
ACS APG8201 USB Reader
ACS CryptoMate (T2)
ACS CryptoMate64
ActivIdentity Activkey_Sim
ActivIdentity USB Reader V3
AK910 CKey
AK910 IDONE
Aktiv Co., ProgramPark Rutoken Magistra
Aktiv PINPad Ex
Aktiv PINPad In
Aktiv Rutoken ECP
Aktiv Rutoken lite
Aktiv Rutoken PINPad 2
Aladdin R.D. JaCarta
Aladdin R.D. JaCarta Flash
Aladdin R.D. JaCarta LT
Aladdin R.D. JaCarta U2F (JC602)
Aladdin R.D. JaCartaReader
Aladdin R.D. JC-WebPass (JC600)
Aladdin R.D. JCR-770
Alcor Link AK9563
Alcor Micro AU9520
Alcor Micro AU9522
Alcor Micro AU9560
ANCUD CCID USB Reader & RNG
appidkey GmbH ID100L-USB-SC-Reader
appidkey GmbH ID50 -USB
appidkey GmbH ID60-USB
ASK-RFID CPL108
Athena ASE IIIe
Athena ASEDrive IIIe Combo Bio PIV
Athena ASEDrive IIIe KB
Athena ASEDrive IIIe KB Bio PIV
Athena IDProtect Key v2
ATMEL AT90SCR050
ATMEL AT90SCR100
ATMEL AT91SC192192CT-USB ICCD reader
ATMEL AT91SO CCID Smart Card Reader
ATMEL AT98SC032CT-USB
ATMEL VaultIC420 Smart Object
ATMEL VaultIC440
AvestUA AvestKey
Avtor SC Reader 371
Avtor SecureToken
Axalto Reflex USB v3
BIFIT ANGARA
BIFIT iBank2Key
BIFIT iToken
BIFIT USB-Token iBank2key
Bit4id CKey4
Bit4id cryptokey
Bit4id Digital DNA Key
Bit4id Digital-DNA Key
Bit4id Digital-DNA Key BT
Bit4id iAM
Bit4id miniLector
Bit4id miniLector AIR EVO
Bit4id miniLector Blue
Bit4id miniLector-s
Bit4id TokenME EVO v2
Bit4id tokenME FIPS v3
Bluink Ltd. Bluink CCID
BLUTRONICS BLUDRIVE II CCID
Broadcom Corp 58200
Broadcom Corp 5880
C3PO KBR36
C3PO LTC31 v2
C3PO LTC32
C3PO LTC36
C3PO TLTC2USB
CASTLES EZCCID Smart Card Reader
CCB eSafeLD
Certgate GmbH AirID 2 USB
Certgate GmbH ONEKEY ID 2 USB
charismathics plug'n'crypt CCID token
Cherry GmbH SmartBoard XX1X
Cherry GmbH SmartBoard XX33
Cherry GmbH SmartBoard XX44
Cherry GmbH SmartTerminal ST-1275
Cherry GmbH SmartTerminal ST-2xxx
Cherry GmbH SmartTerminal XX1X
Cherry GmbH SmartTerminal XX44
Cherry KC 1000 SC
Cherry KC 1000 SC Z
Cherry KC 1000 SC/DI
Cherry KC 1000 SC/DI Z
Cherry Smart Card Reader USB
Cherry Smartcard Keyboard G87-1xx44
Cherry SmartTerminal XX44
Cherry TC 1300
Chicony HP Skylab USB Smartcard Keyboard
Chicony HP USB Smartcard CCID Keyboard JP
Chicony HP USB Smartcard CCID Keyboard KR
Chicony USB Smart Card Keyboard
COVADIS ALYA
COVADIS Auriga
COVADIS VEGA-ALPHA
DC.Ltd DC4 5CCID READER
Dell Dell Smart Card Reader Keyboard
Dell keyboard SK-3106
DUALi DE-620 Combi
DUALi DRAGON NFC READER
eID_R6 001 X8
Elatec TWN4 SmartCard NFC
Elatec TWN4/B1.06/CPF3.05/S1SC1.32/P (Beta 3)
ESMART Token GOST
Eutron Card Reader
Eutron CryptoIdentity CCID
Eutron Digipass 860
Eutron Smart Pocket
Feitian 502-CL
FEITIAN bR301
Feitian bR301
Feitian bR500
Feitian eJAVA Token
Feitian ePass2003
FEITIAN iR301
Feitian R502
Feitian Technologies FT SCR310
Feitian VR504 VHBR Contactless & Contact Card Reader
Free Software Initiative of Japan Gnuk
FT CCID
FT CCID KB
FT ePass2003Auto
FT U2F CCID
FT U2F CCID KB
Fujitsu Keyboard KB100 SCR
Fujitsu Keyboard KB100 SCR eSIG
Fujitsu Siemens Computers SmartCard Keyboard USB 2A
Fujitsu Siemens Computers SmartCard USB 2A
Fujitsu Smartcard Reader D323
FujitsuTechnologySolutions GmbH Keyboard KB SCR2
FujitsuTechnologySolutions GmbH SmartCase KB SCR eSIG
GEMALTO CT1100
Gemalto EZIO CB+
Gemalto Ezio Shield
Gemalto Ezio Shield Branch Reader
Gemalto Ezio Shield Secure Channel
Gemalto Gem e-Seal Pro USB Token
Gemalto GemCore SIM Pro Smart Card Reader
Gemalto GemPC Express
Gemalto Gemplus USB SmartCard Reader 433-Swap
Gemalto Hybrid Smartcard Reader
Gemalto IDBridge K3000
Gemalto PC Twin Reader
Gemalto PDT
Gemalto Prox Dual USB PC Link Reader
Gemalto Prox SU USB PC LinkReader
Gemalto SA .NET Dual
Gemalto Smart Enterprise Guardian Secure USB Device
Gemalto USB GemPCPinpad SmartCard Reader
Gemalto USB Shell Token V2
Gemplus GemCore POS Pro Smart Card Reader
Generic MultiCard Device
Generic USB Smart Card Reader
Generic USB2.0-CRW
Genesys Logic CCID Card Reader
Genesys Logic Combo Card Reader
German Privacy Foundation Crypto Stick v1.2
Giesecke & Devrient GmbH Star Sign Card Token 350 (ICCD)
Giesecke & Devrient GmbH Star Sign Card Token 550 (ICCD)
Giesecke & Devrient GmbH StarSign Crypto USB Token
Giesecke & Devrient GmbH StarSign CUT S
GIS Ltd SmartMouse USB
GoldKey Security PIV Token
HDZB uKeyCI800-K18
Hewlett Packard HP USB Smartcard CCID Keyboard
Hewlett Packard MFP Smart Card Reader
Hewlett-Packard HP lt4112 Gobi 4G Module
HID Global Crescendo Key
HID Global OMNIKEY 3x21 Smart Card Reader
HID Global OMNIKEY 5022 Smart Card Reader
HID Global OMNIKEY 5023 Smart Card Reader
HID Global OMNIKEY 5027CK CCID CONFIG IF
HID Global OMNIKEY 5122 Dual
HID Global OMNIKEY 5122 Smartcard Reader
HID Global OMNIKEY 5422 Smartcard Reader
HID Global OMNIKEY 6121 Smart Card Reader
HID Global veriCLASS Reader
HID OMNIKEY 5025-CL
HID OMNIKEY 5127 CK
HID OMNIKEY 5326 DFR
HID OMNIKEY 5427 CK
Hitachi, Ltd. Hitachi Biometric Reader
Hitachi, Ltd. Hitachi Portable Biometric Reader
id3 Semiconductors CL1356A_HID
id3 Semiconductors CL1356T
Identiv @MAXX ID-1 Smart Card Reader
Identiv @MAXX Light2 token
Identiv CLOUD 2980 F Smart Card Reader
Identiv Identiv uTrust 4701 F Dual Interface Reader
Identiv SCR3500 A Contact Reader
Identiv SCR3500 B Contact Reader
Identiv SCR3500 C Contact Reader
Identiv SCR35xx USB Smart Card Reader
Identiv uTrust 2900 R Smart Card Reader
Identiv uTrust 2910 R Smart Card Reader
Identiv uTrust 2910 R Taglio SC Reader
Identiv uTrust 3512 SAM slot Token
Identiv uTrust 3522 embd SE RFID Token
Identiv uTrust 3700 F CL Reader
Identiv uTrust 3701 F CL Reader
Identive CLOUD 2700 F Smart Card Reader
Identive CLOUD 2700 R Smart Card Reader
Identive Identive CLOUD 4000 F DTC
Identive Identive CLOUD 4500 F Dual Interface Reader
Identive Identive CLOUD 4510 F Contactless + SAM Reader
Identive SCT3522CC token
Identive Technologies Multi-ISO HF Reader - USB
IID AT90S064 CCID READER
IIT E.Key Almaz-1C
IIT E.Key Crystal-1
InfoCert WirelessKey
InfoThink IT-102MU Reader
InfoThink IT-500U Reader
INGENICO Leo
Ingenico WITEO USB Smart Card Reader
Inside Secure AT90SCR050
Inside Secure AT90SCR100
Inside Secure AT90SCR200
INSIDE Secure VaultIC 405 Smart Object
Inside Secure VaultIC 420 Smart Object
Inside Secure VaultIC 440 Smart Object
INSIDE Secure VaultIC 441 Smart Object
Inside Secure VaultIC 460 Smart Object
IonIDe Smartcard Reader
KACST HSID Reader
KACST HSID Reader Dual Storage
KACST HSID Reader Single Storage
Kapsch TrafficCom USB SAM reader
KeyXentic Inc. KX906 Smart Card Reader
Kingtrust Multi-Reader
KOBIL EMV CAP - SecOVID Reader III
KOBIL KAAN Advanced
KOBIL KAAN Base
KOBIL KAAN SIM III
KOBIL Systems IDToken
KOBIL Systems mIDentity 4smart
KOBIL Systems mIDentity 4smart AES
KOBIL Systems mIDentity fullsize
KOBIL Systems mIDentity fullsize AES
KOBIL Systems mIDentity visual
KOBIL Systems Smart Token
KRONEGGER Micro Core Platform
KRONEGGER NFC blue Reader Platform
Ledger Nano S
Lenovo Integrated Smart Card Reader
Lenovo Lenovo USB Smartcard Keyboard
Liteon HP SC Keyboard - Apollo (Liteon)
Liteon HP SC Keyboard - Apollo JP (Liteon)
Liteon HP SC Keyboard - Apollo KR (Liteon)
Macally NFC CCID eNetPad
mCore SCard-Reader
Microchip SEC1110
Microchip SEC1210
MK Technology KeyPass S1
Morpho MSO1350 Fingerprint Sensor & SmartCard Reader
Morpho MSO350/MSO351 Fingerprint Sensor & SmartCard Reader
MSI StarReader SMART
Mulann PVT
MYSMART MySMART PAD V2.0
Neowave Weneo
Nitrokey Nitrokey HSM
Nitrokey Nitrokey Pro
Nitrokey Nitrokey Start
Nitrokey Nitrokey Storage
NTT Communications Corp. SCR3310-NTTCom USB SmartCard Reader
NXP Pegoda 2 N
NXP PN7462AU CCID
NXP PR533
OBERTHUR TECHNOLOGIES ID-ONE TOKEN SLIM v2
OCS ID-One Cosmo Card USB Smart Chip Device
OMNIKEY 5421
OMNIKEY 6321 CLi USB
OMNIKEY AG 3121 USB
OMNIKEY AG 6121 USB mobile
OMNIKEY AG CardMan 3121
OMNIKEY AG CardMan 3621
OMNIKEY AG CardMan 3821
OMNIKEY AG CardMan 5121
OMNIKEY AG CardMan 5125
OMNIKEY AG CardMan 6121
OMNIKEY AG Smart Card Reader
OMNIKEY CardMan 1021
OMNIKEY CardMan 4321
OMNIKEY CardMan 5321
Panasonic Panasonic USB Smart Card Reader 7A-Smart
Philips Semiconductors JCOP41V221
Philips Semiconductors SmartMX Sample
PIVKey T800
Planeta RC700-NFC CCID
Precise Biometrics Sense MC
Raritan D2CIM-DVUSB VM/CCID
Regula RFID Reader
REINER SCT cyberJack go
REINER SCT cyberJack one
REINER SCT cyberJack RFID basis
REINER SCT tanJack Bluetooth
Rocketek RT-SCR1
Route1 MobiKEY Fusion3
SafeNet eToken 5100
SafeNet eToken 5300
SafeNet eToken 7300
SafeTech SafeTouch
SAFETRUST SABRE SCR
SchlumbergerSema SchlumbergerSema Cyberflex Access
SCM Microsystems Inc. HP USB Smartcard Reader
SCM Microsystems Inc. SCL010 Contactless Reader
SCM Microsystems Inc. SCL01x Contactless Reader
SCM Microsystems Inc. SCR 331
SCM Microsystems Inc. SCR 331-DI
SCM Microsystems Inc. SCR 3310
SCM Microsystems Inc. SCR 3311
SCM Microsystems Inc. SCR 335
SCM Microsystems Inc. SCR 355
SCM Microsystems Inc. SCR331-DI USB Smart Card Reader
SCM Microsystems Inc. SCR3310 USB Smart Card Reader
SCM Microsystems Inc. SCR3320 - Smart Card Reader
SCM Microsystems Inc. SCR3340 - ExpressCard54 Smart Card Reader
SCM Microsystems Inc. SCR33x USB Smart Card Reader
SCM Microsystems Inc. SDI010 Smart Card Reader
SCM Microsystems Inc. SDI011 Contactless Reader
SCM Microsystems Inc. SPR 532
Secure Device Solutions DOMINO-Key TWIN
SecuTech SecuTech Token
Sitecom Sitecom USB simcard reader MD-010
Softforum Co., Ltd XecureHSM
SPECINFOSYSTEMS DIAMOND token
SpringCard CrazyWriter
SpringCard CSB6 Basic
SpringCard CSB6 Secure
SpringCard CSB6 Ultimate
SpringCard EasyFinger Standard
SpringCard EasyFinger Ultimate
SpringCard H512 Series
SpringCard H663 Series
SpringCard NFC'Roll
SpringCard Prox'N'Roll
Spyrus Inc PocketVault P-3X
Spyrus Inc Rosetta USB
Spyrus Inc WorkSafe Pro
SYNNIX STD200
Teridian Semiconductors TSC12xxFV.09
THURSBY SOFTWARE TSS-PK1
TianYu CCID Key TianYu CCID SmartKey
Tianyu Smart Card Reader
Todos Argos Mini II
Todos CX00
ubisys 13.56MHz RFID (CCID)
udea MILKO V1.
Unicept GmbH AirID USB
Unicept GmbH AirID USB Dongle
Validy TokenA sl vt
VASCO DIGIPASS 870
VASCO DIGIPASS 875
VASCO DIGIPASS 920
VASCO DIGIPASS KEY 101
VASCO DIGIPASS KEY 200
VASCO DIGIPASS KEY 202
VASCO DIGIPASS KEY 860
VASCO DP855
VASCO DP865
VASCO DP905v1.1
Verisign Secure Storage Token
Verisign Secure Token
VMware Virtual USB CCID
WatchCNPC USB CCID Key
Watchdata USB Key
Watchdata W5181
Winbond CCID SmartCard Controller
XIRING Leo v2
XIRING MyLeo
XIRING XI-SIGN USB V2
Yubico YubiKey CCID
Yubico YubiKey FIDO+CCID
Yubico Yubikey NEO CCID
Yubico Yubikey NEO OTP+CCID
Yubico Yubikey NEO OTP+U2F+CCID
Yubico Yubikey NEO U2F+CCID
Yubico YubiKey OTP+CCID
Yubico YubiKey OTP+FIDO+CCID
Chrome not matching certificate on card
This is most likely an issue with configuration of root and intermediary certificates. Please ensure that you have followed the instructions to set those properly. If this issue keeps happening, it is probably best to file a bug report with more information.
Chrome keeps connection open after card is removed
If a user removes their card, Chrome will not end their session with that server. This is working as intended (and is the default behavior on Chrome on other platforms as well). Chrome will only try to authenticate again when challenged by the server; this is a security setting determined by your administrator. If you are testing and need to force reauthentication with the server, try using an Incognito window, which will not use the previous session and will not be retained in subsequent requests.
No UI feedback on wrong PIN
If users enter a wrong PIN, Drivelock does not offer any direct feedback in the dialog. The user will need to navigate to the site to be asked for the PIN again.
Certificates provided are not filtered
All certificates are provided to the system regardless of their type e.g. certificates for email signature are also shown in the drop-down dialog. You need to be aware of what certificate is needed for a certain website so you can choose it from the dropdown. This may mean experimenting to pick the first, second, or even third apparently-identical certificate from your card when authenticating to some sites. The order remains stable across attempts so this is something that only needs to be done once.
Is your card reader supported?
- Check the list of supported readers here: CCID list.
- Test your smart card reader:
- Sign in to a ChromeOS device.
- Install a Smart Card Connector app.
- Install a CSSI Smart Card Middleware app.
- Plug in the smart card reader.
- The CSSI app should show the following status:
- Reader ready
- Please insert a smart card into your reader
- If your reader is not supported, consider using a compatible reader, such as a Yubikey instead.
Is your smart card type or Yubikey supported?
- Test your smart card or Yubikey:
- Sign in to a ChromeOS device.
- Install a Smart Card Connector app.
- Install a CSSI Smart Card Middleware app.
- Insert your Yubikey into the USB slot or your smart card into the reader.
- The CSSI app should show the following status:
- Ready
- Reader and smart card ready for requests
- If your smart card is not yet supported, contact support.
Note: For Yubikeys, make sure Yubikey slot 9a / authentication is used.
Is your smart card certificate readable and supported?
- Test your smart card or Yubikey:
- Sign in to a ChromeOS device.
- Install a Smart Card Connector app.
- Install a CSSI Smart Card Middleware app.
- Insert your Yubikey into the USB slot or your smart card into the reader. The reader and smart card are ready for requests.
- Press the Test button in the CSSI app.
- The CSSI app should show the following status:
- Signing successful
- A signing operation has been successfully performed
Note: If your smart card is not readable but is supported, check your smart card configuration.
If you run into problems during deployment, you can submit a bug report on the issue. Bug reports must contain:
-
A description of the issue and instructions to reproduce it, preferably including a screencast.
-
The website you are trying to connect to. File separate bug reports for separate websites.
-
System, card, and reader Information.
-
ChromeOS version
-
Type of smart card reader
-
Smart card information—smart card vendor, type, and profile
-
-
Smart Card Connector logs. The screen for the Smart Card Connector has a link at the bottom that allows the user to export the logs. This copies all logs onto the clipboard. Use any text editing app to save those logs and add to the bug report.
-
Middleware app logs. Each middleware app has its own method to extract logs. For example, in the DriveLock app, logs can be extracted from the developer console.
-
Go to chrome://extensions.
-
On the top-right corner, select Developer mode.
-
Scroll to the DriveLock extension and select background page.
-
At the top, select Console.
-
Right click anywhere in the list and select Save as… to export the logs.
-
-
Network logs. Some issues might be related to the way Chrome is handling client connections. On devices with Chrome 85 or later, you can export logs into a zipped .tgz file. For details, read How to collect Chrome device logs.
Note: Because logs can be very verbose, try restricting your log capture to only the scenario that’s causing an issue. For example, don't perform a Google search while you are capturing logs.
When you have completed the bug report, contact support.
Send feedback
If you choose to give us feedback, such as suggestions to improve features, we can act on your feedback.
To send feedback, fill out this ChromeOS smart card feedback form.