I applaud the author's idea, but let me share some of my experiences (both good and bad) since the DoD uses smart cards every day for a myriad of things including: document signing, document encryption, computer logins, website logins, biometric information storage, medical information storage, and probably a few more that I am forgetting.

1. You should choose a long PIN. In the DoD there is a feature on the smartcard that locks the card after three consecutive incorrect PIN entries (no time limit). Obviously this is a good security measure. When DoD personnel have locked out their smartcard they go to the computer help desk where there is a trusted agent like a (properly trained) young enlisted troop who has a high privilege key that can unlock your smartcard. You do not have a worldwide network of locations where you can get your card unlocked, so you cannot implement the "three tries and you're dead" feature. Therefore, make your PIN as long as practically possible to prevent someone who stole your card from being able to brute-force the PIN and get your keys.

2. You might want to make a duplicate card and store it in a safe location. You WILL eventually lose the card you are carrying around with you, and when you do, it essentially means the loss of all your encrypted data. While the second set of keys lying around is a vulnerability, it might be an acceptable one to hedge against the loss of your data. Having a duplicate card might also allow you to implement the feature where the smartcard locks after a number of unsuccessful PIN entries.

3. Do NOT use USB drives as an alternative token because you don't want to shell out for a smartcard. USB drives introduce known vulnerabilities and they are prohibited DoD-wide on ALL of their networks (including all our classified nets). If the lowly USB drive has the power to make the DoD shake in its boots, you shouldn't be using one when you need security.

4. Smartcards are cool in an enterprise setup for signing documents and stuff, but make sure you aren't triple locking your door and then leaving your window open. If you decrypt an email and view the cleartext with a text editor, make sure you are not beaming that back to your attacker because they compromised your machine in another way.

5. Related to #4 above, the most secure systems are standalone systems that NEVER connect to a network. Instead of shelling out for some smartcards and readers, buy a Raspberry Pi, and generate your keys on it- and your private key will never leave this machine. Use write-once media to get your public key on a networked computer (this should be the ONLY time you transfer data off of your standalone system). Whenever you need to decrypt something, use more write-once media to get the encrypted data onto your standalone RasPi, and decrypt it and view it. If you want to be super paranoid, maintain an 18" air gap between your standalone RasPi and any networked computer. This is the proper way to wear your tinfoil hat. Plus, the RasPi is cheaper than a smartcard setup, and invulnerable to keyloggers and pretty much any other attack because data exfiltration is impossible when you never connect it to the network and you never send data off of it.