- Card manufacture
- Key handling
- Enrolment
- Card lifecycle
- Certificate lifecycle
- Identity synchronisation
You could buy a stack of white-labelled cards, of it you're the DoD you'd roll your own. That's shopping for silicon wafers, contact plate assemblies, mag stripes, holograms, RFID blanks, plastic card blanks, and card stack.
Regardless of DoD or not, you've got to manage secure key transfer (keys created at bureau, exported using GIS TX3 and multiple smartcards, sent to client via multiple motorcycles, key reassembled and imported into HSM).
Enrolment is a hefty process. Apply for smart card. Personalise physical card (typically photo and name), provision (link card to user), give card to user, mail PIN to user (out of band), and then activate card.
That's just card manufacture and provisioning. Doesn't cover provisioning and de-provisioning software and hardware, card lifecycle (suspend when lost, disable if stolen or not found or employment terminated, and so on).
Then there's CA integration, (often multiple) directory integration, and hardware integration.
The point of all this is that security can be easy, but it comes with a big fat price tag and some very specialised skill.
Even the DoD doesn't roll it's own cards and foundry stuff: they're standard Gemalto (and a few other provider) cards. You can order blanks yourself, I believe.
It's also a black art - VERY very few people seem to know how to 'boostrap' the system (enable PKI for a domain or web server, get new certs issued, etc.) even within the over-archign framework.
That said,my point still stands: millions of people (literally) use PKI for client SSL certs daily.
Signed / validated keys (used for major sites in some browsers) also help this somewhat.
Not that SSL/TLS isn't a huge mess.
It's one thing to _issue_ a cert. It's another to _approve_ that issued cert.
If you're blindly accepting certs, you've got other issues.
You missed the part where you drive several hours to the closest military base and wait in line several hours(think DMV and TSA all rolled into one).
One example is secmaker.com, but I don't know if they operate outside .se yet.
Good luck to them if they want to install a different browser (non-IE) or do anything non-standard... if they even are allowed to do so.
--
Last time I checked DoD systems are configured to automatically log you out of your session upon removal of your CAC.
And if you pull the card out, you can't access anything anymore that requires it (and on a Windows domain that DOESNT lock / terminate the session, you'll be able to access things until your kerberos ticket expires or you need to get to something you don't have a ticket for).
Needless to say, the smart cards stayed in the users' PCs even when they weren't at their desks.