当前位置: 首页 > 知识库问答 >
问题:

不使用PIN读取智能卡信息?

杜嘉木
2023-03-14

我有一个Java应用程序,可以从智能卡读取证书,并使用它们登录用户。该应用还可以使用其他登录方法(用户名和密码)跟踪失败的登录尝试。

我想知道是否有可能在没有引脚的情况下从智能卡中读取用户信息?我想将失败的pin条目标记为失败的登录尝试,但是因为我需要pin从证书中读取别名,所以我无法知道哪个用户正在尝试登录。有没有读取这些信息没有引脚在Java?

我根据这个线程的建议尝试加载KeyStore对象:从PKCS11智能卡获取没有PIN/密码的证书,但运气不佳。我甚至不知道这是否可能。

我可以在不输入pin的情况下从我的ActivClient代理中看到某些信息,但不知道Java是否能够以某种方式检索到这些信息。以下是我加载密钥库的方式:

KeyStore keyTest = KeyStore.getInstance("PKCS11",pkcs11Provider);
keyTest.load(null,null);

尽管我没有指定回调处理程序,但上面仍然要求输入pin。pkcs11Provider是包含ActivClient dll的cfg。通常,我使用pin回调处理程序加载密钥库。

共有1个答案

白侯林
2023-03-14

经过一些调查,这在很大程度上取决于您使用的卡的类型和您使用的PKCS11库。没有一个答案适用于所有人。

 类似资料:
  • 我使用ACR122U-A9读取智能卡,通过以下APDU,我可以获取UID和ATS: 使用NXP TagInfo应用程序(android),我可以看到一个包含我所需数据的十六进制表。使用什么APDU命令可以检索这些数据? 六边形表如下所示: [0000]中是我想要检索的数据。

  • 摘要:在PKCS11和OpenSC上使用JCA时,在提取证书时会请求PIN。 我有一个应用程序需要使用智能卡签名。智能卡由OpenSC支持,所以我使用Java内置的pkcs11包装提供程序来使用它。出于功能原因,我需要在不需要PIN的情况下获得卡中的证书。如果用户最终签名,那么当然需要PIN。 我明白了,我可以在命令行中完成,而无需提供PIN: 到目前为止,一切顺利。 Oracle的文档清楚地说,

  • 问题内容: 我有一个IC接触式读卡器和SLE5528智能卡。想知道如何真正开始使用这些物品。 正在读取读取器,插入智能卡后看不到任何影响。 我还从http://www.openscdp.org/安装了opensmart的智能卡外壳 但是我不能用它来读任何读卡器。我想知道它是否有兼容性问题。 请我知道我可能不恰当地提出了这个问题,但是请那里的任何人帮助我。 任何相关的链接或有用的信息都可以帮助我入门

  • 我正试图从智能卡读取证书, 这是我从http://www.developer.com/java/other/article.php/3587361/Java-Applet-for-Signing-with-a-Smart-Card.htm我将在applet中执行这段代码,问题是每个用户都必须向我指出他们的本地pkcs11。。。dll,使用java samrtcard api是否可以避免加载此dll

  • 我有一个面向服务的webapp,它使用IIS 8.5和通过智能卡的客户端证书身份验证。静态服务的前端通过AJAX调用多个服务。带有证书的智能卡受PIN保护。当使用Chrome、Firefox等浏览器时,PIN提示只会出现一次,似乎会被缓存以供后续使用。 但是,我们需要将webapp嵌入Windows 10。NET桌面应用程序。webapp可以工作,但是用户需要不断地输入他们的PIN,每个服务一次,

  • 问题内容: 因此,最近我一直在使用具有一些信息的智能卡,而我想要在此处实现的目标是使用智能卡读取器通过任何Android智能手机从这些智能卡中获取此数据。我一直在使用HID OMNIKEY 3021 USB 智能卡读取器来读取这些卡(而且我知道此读取器可通过Windows应用程序与这些卡配合使用,因为我已经对此进行了亲自测试) 现在,Android提供了USB主机,只要Android智能手机支持它