有人能告诉我一种只存储DoD CAC卡用户名的方法吗?我不需要做任何身份验证,只需将卡中的名称存储为变量即可。我认为读卡的机器不会有任何网络连接。在这一点上,我是语言/操作系统不可知的。
谢谢。
发布于 2014-06-13 12:26:14
所以我会回答Windows和Java的问题。
枚举终端,如果有卡,(假设只有当前的CAC卡):
cc.transmit(new CommandAPDU(CMD_SELECT_APPLET_CAC_CACV2_PKI_IDENTITY_KEY));
cc.transmit(new CommandAPDU(CMD_SELECT_EF_CACV2_PKI_IDENTITY_KEY));
List<byte[]>[] res = TLVContainer.getTagAndValues(cc);
x509cert = X509CACHelper.fromBytes(res[0x71].get(0)[0],res[0x70].get(0));您可以在NIST6887中查找select小程序和select EF命令,RID、AID、OID可以在cac.mil的文档中找到。
https://stackoverflow.com/questions/21579559
复制相似问题