我正在進行一個項目,我需要數字簽名以確認身份(讀取智能卡,a3)。 但是,關鍵是我目前沒有卡或讀卡器。有沒有人知道一種方式,我可以「虛擬化」一張卡片,就像插入普通卡片一樣,使用我提供的密碼? 非常感謝您模擬數字簽名的智能卡
(該解決方案必須在Windows 7上運行)
我正在進行一個項目,我需要數字簽名以確認身份(讀取智能卡,a3)。 但是,關鍵是我目前沒有卡或讀卡器。有沒有人知道一種方式,我可以「虛擬化」一張卡片,就像插入普通卡片一樣,使用我提供的密碼? 非常感謝您模擬數字簽名的智能卡
(該解決方案必須在Windows 7上運行)
智能卡通常實現由製造商PKCS#11驅動程序提供商,該驅動程序安裝在操作系統上或預裝。該驅動程序允許您直接使用該卡或集成在Windows Keystore中
您需要閱讀智能卡技術規格以瞭解哪些操作模式可用。
如果你打算使用一個PKCS#11 PKCS#11兼容的智能卡,我已經找到了軟件模擬器像SoftHSM(我從來沒有測試)
SoftHSM是加密儲存的實現通過PKCS#11接口訪問 。您可以使用它來探索沒有硬件安全模塊的PKCS#11 。
該smartcart也可以通過Windows證書存儲集成。在這個caso中使用硬件或軟件證書是隱藏的。一個常見的解決方法是使用任何軟件證書,以模擬標識或數字簽名(我經常這樣做),而你得到讀者
Windows證書存儲區可以使用java.security.KeyStore中
KeyStore ks = KeyStore.getInstance("Windows-MY");
// Note: When a security manager is installed,
// the following call requires SecurityPermission
// "authProvider.SunMSCAPI".
ks.load(null, null);
訪問
在此之後,密鑰庫以通常的方式使用
也許http://frankmorgner.github.io/vsmartcard/virtualsmartcard/README.html? –
你會在哪個基礎上發明另一方試圖驗證的身份? – guidot
智能卡將通過Windows證書密鑰庫使用?你使用哪種編程語言?網絡/地方? – pedrofb