So it turns out the story is less grim: you can buy a blank JavaCard [0] and use GlobalPlatformPro [1] to load arbitrary applets. You can load gpgapplet, isoApplet, MuscleApplet, or any other JavaCard crypto software you like. This will be then be compatible with client-side software like OpenSC [2], at which point you get generic PKCS#11 or GPG functionality from it.<p>You can get FIPS 140-2 Level 3 cards for, like, $11.<p>Apparently there is some difficulty in correctly unlocking the card for applet loading,<p>[0] <a href="https:&#x2F;&#x2F;github.com&#x2F;martinpaljak&#x2F;GlobalPlatformPro&#x2F;tree&#x2F;master&#x2F;docs&#x2F;JavaCardBuyersGuide" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;martinpaljak&#x2F;GlobalPlatformPro&#x2F;tree&#x2F;maste...</a>
[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;martinpaljak&#x2F;GlobalPlatformPro" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;martinpaljak&#x2F;GlobalPlatformPro</a><p>I&#x27;ll let you know how it goes :).