Java - 如何检测智能卡热插拔

时间:2010-08-23 16:34:51

标签: java security

我在java中动态加载pkcs11安全提供程序,只要在运行应用程序之前插入了智能卡读卡器,它就可以正常工作。有谁能告诉我如何在应用程序运行时检测智能卡热插拔?其实我在java中需要像pcsc_scan这样的东西。环境是Ubuntu 9.10 with java 1.6.0_20。 提前致谢

2 个答案:

答案 0 :(得分:2)

您可以将javax.smartcardio.* API与PKCS#11结合使用吗?

CardTerminal类包含isCardPresent()waitForCardPresent(timeout)waitForCardAbsent(timeout)方法,可以在单独的线程中用于轮询卡插入事件。

答案 1 :(得分:1)

PKCS#11没有定义主动通知应用程序有关设备插入/删除的标准方法。你能做的最好的事情就是运行一个线程,它会每秒检查一次槽的数量及其状态。