我在java中動態加載pkcs11安全提供程序,只要在運行應用程序之前插入智能卡讀卡器,它就會工作。任何人都可以告訴我如何在應用程序運行時檢測智能卡hotplug?其實我需要java中的pcsc_scan之類的東西。環境是Ubuntu 9.10和java 1.6.0_20。 在此先感謝Java - 如何檢測智能卡hotplug
3
A
回答
1
PKCS#11未定義主動通知應用程序有關設備插入/刪除的標準方法。你可以做的最好的辦法是運行一個線程,每秒檢查一次插槽的數量和狀態。
1
您可以將javax.smartcardio.*
API與PKCS#11一起使用嗎?
的CardTerminal
類有isCardPresent()
,waitForCardPresent(timeout)
,並waitForCardAbsent(timeout)
方法可以在一個單獨的線程中用於輪詢卡插入事件。
相關問題
- 1. Java智能卡 - 讀Scosta智能卡
- 2. 檢測智能卡登錄或NPLogonNotify()Windows7
- 3. PCSC檢測多個智能卡
- 4. 用Java訪問智能卡
- 5. Linux上的智能卡讀卡器檢測
- 6. 如何使用智能卡
- 7. 如何檢測linux中的智能卡插入或刪除事件
- 8. 如何使用java卡將數據寫入智能卡?與例
- 9. Java卡:如何裝入SIM小到真正的智能卡?
- 10. 檢測智能電視
- 11. 智能色彩檢測
- 12. 讀取智能卡
- 13. 如何區分智能卡讀卡器錯誤和智能卡錯誤
- 14. 智能卡查詢
- 15. 智能卡開發
- 16. 如何檢測智能手錶何時斷開/未註冊智能擴展API
- 17. 無法檢測到連接的智能卡
- 18. 如何讓NGINX/Django在CAC /智能卡被移除時檢測到?
- 19. 智能卡和Android
- 20. 正在檢索智能卡ID
- 21. 支持智能卡的Java項目
- 22. Java智能卡身份驗證PKI
- 23. Java和非接觸式智能卡
- 24. Java智能卡HttpClient身份驗證
- 25. 智能卡在Java中的Kerberos
- 26. java智能卡I/O安全通道
- 27. Java卡功能獲取智能卡GUID/UUID?
- 28. 簡單的智能手機檢測
- 29. 如何在沒有卡片的情況下向智能卡讀卡器(而不是智能卡)發送命令?
- 30. 安全智能卡
是的,我這樣做了......我看起來像這樣 p11 = PKCS11.getInstance(「/ usr/local/lib/libsiecap11.so」,「C_GetFunctionList」,null,false); long [] slots = p11.C_GetSlotList(true); 而我遇到了同樣的問題。好消息是我可以看到每當一張卡被移除時,但是在應用程序運行時仍然沒有改變插槽的數量。 例如 - 如果我把一個智能卡讀卡器放入一個USB插槽並運行我的應用程序,插槽的數量將爲1.儘管我放置了另一個智能卡讀卡器(應用程序仍在運行),插槽的數量仍然爲1. – user428539 2010-08-24 07:51:39
數字的插槽通常是相同的,但它們的狀態將會改變。將兩個讀卡器(它們是否屬於同一供應商?)不改變插槽數量的事實可能是PKCS#11驅動程序的缺陷。在這種情況下,您需要檢查驅動程序供應商。 – 2010-08-24 08:27:02
是的,這兩張卡來自同一供應商(製造商ID:Siemens AG(C)...型號:CardOS V4.3B(C))... 因此,如果我沒有提前插入智能卡即可啓動應用程序 - C_GetSlotList()將始終返回0. 例如,PC/SC設備掃描程序(pcsc_scan)工作正常,只要我在計算機中插入或拔出smarcard即可檢測到。 – user428539 2010-08-24 08:55:10