我可以使用PKCS#11或CryptoAPI從智能卡內的密鑰容器中獲取公鑰/私鑰對嗎?我可以從智能卡中的密鑰容器獲取公鑰/私鑰對嗎?
回答
我並不是這方面的專家,但我認爲智能卡的重點在於您無法提取私鑰。您將數據發送到卡上,並讓它在自己的處理器上執行加密操作。
這取決於。 CryptoAPI(以及智能卡的CSP)和PKCS#11都允許您擁有可導出的密鑰對。但通常使用非可導出的私鑰來充分發揮智能卡的優勢。
所以,如果你正在編寫一個應用程序,它將成爲你的選擇。否則其他人已經爲你做出了這樣的選擇;-)
*公共*鍵可讀。您還可以查找公鑰的證書。 –
非常確定你可以在pkcs#11中擁有不可導出的公鑰和證書(即使我無法猜測它們可以用於什麼;-)但自從關於** keypairs的問題**之後,私鑰* *決定因素 – poupou
PKCS#11中的CKA_EXTRACTABLE 2.20僅適用於私鑰和祕密密鑰,如規範中所述(因爲PKCS#11非常鬆散,當然可以濫用該規範...)。人們可以擁有私人證書和公共密鑰(需要先登錄才能閱讀),但實際的密鑰/證書值在此之後仍然可讀。 但是,在完整的關鍵對的情況下,這並不重要.. –
- 1. 從證書獲取公鑰/私鑰
- 2. 如何從cacert.pem獲取公鑰/私鑰
- 3. 提取從OpenSSL的密鑰文件的公鑰和私鑰
- 4. 如何從密鑰庫中讀取私鑰和公鑰密鑰庫
- 5. 公鑰和私鑰API密鑰
- 6. 私鑰/公鑰
- 7. 從EVP_PKEY密鑰對提取公鑰?
- 8. 從私鑰中提取公鑰C#
- 9. 從公鑰中提取私鑰openssl
- 10. c#RSA從私鑰中提取公鑰
- 11. 導入公私密鑰對
- 12. PHP的OpenSSL功能可以使用帶有公鑰/私鑰的AES密碼嗎?
- 13. 私鑰加密公鑰加密
- 14. 可以使用JSBN/Forge生成RSA私鑰/公鑰對嗎?
- 15. PyCrypto:解密只用文件中的公鑰(無私鑰+公鑰)
- 16. Javascript ECDSA獲取私鑰和公鑰?
- 17. 獲取X509Certificate2私鑰和公鑰
- 18. 如何從公鑰/私鑰對的USB令牌獲取CKA_ID?
- 19. 我失去了我的公鑰。我可以從私鑰恢復它嗎?
- 20. 帶私鑰/公鑰的EPub加密
- 21. 與公鑰/私鑰
- 22. 智能卡非對稱密鑰生成
- 23. 使用初始密鑰生成公鑰/私鑰對
- 24. 將公鑰私鑰對導入密鑰庫
- 25. 從密鑰庫獲得私鑰
- 26. C#公鑰驗證Perl私鑰並用作AES密鑰?可能和/或可行?
- 27. 使用RSA公鑰加密DSA私鑰
- 28. 如何從密鑰中的公鑰獲取密碼
- 29. 從ssh中的公鑰生成私鑰
- 30. 從私鑰和公鑰創建密鑰庫
因爲在CryptoAPI中可以使用CryptExportKey函數導出密鑰(如果密鑰標記爲可導出的)。 – KyleM
Upvoted,因爲即使這是「可能」導出密鑰如果標記爲可導出。該卡的目的是在內部完成加密算法並允許公鑰導出,但私鑰始終保持不可導出(至少90%,因爲這是卡的整個點)。 – LeoPucciBr