I tried to submit a patch for GnuPG that would enable it to use "proprietary" PKCS#11 smart-cards instead of "open" OpenPGP smart-cards. Line of though being, users may already have S/MIME generated keys on their smart-cards, so why not use the same keys with PGP too? In the end, a key is just a number.
The request was refused [1] with ridiculous arguments [1] about PKCS#11 not being "needed in free software world".
After that, I started playing with S/MIME and found out it was much more user-friendly than GPG. (After the initial setup.)
It was not about proprietary smartcards but about the proprietary driver software required to use those smartcards.
If the vendors would open the specs of their smartcards it would be easy to write a driver. Some did and we support them in GnuPG. Most of them don't and we may even assume they want to hide their little secrets in their drivers. It is all the same as with all the proprietary hardware drivers. Look at decades of LKML for similar discussions.
Sorry, I don't buy this. PKCS#11 is a standard, wide-spread, user-space API for accessing cryptographic tokens, just like POSIX is a standard API to access operating system services. I guess it's about the time to write a "driver" for each supported OS instead of relying on libc, because the user's installation cannot be trusted?
The request was refused [1] with ridiculous arguments [1] about PKCS#11 not being "needed in free software world".
After that, I started playing with S/MIME and found out it was much more user-friendly than GPG. (After the initial setup.)
[1] Here you can find links to relevant threads: http://zvrba.net/software/gpg_pkcs11.html