簡體   English   中英

Sun PKCS#11包裝器如何調試CKR_TEMPLATE_INCONSISTENT

[英]Sun PKCS#11 Wrapper how to debug CKR_TEMPLATE_INCONSISTENT

有什么方法可以調試導致Sun PKCS#11包裝異常的原因:

sun.security.pkcs11.wrapper.PKCS11Exception: CKR_TEMPLATE_INCONSISTENT

我想知道PKCS#11對象的哪個屬性不一致並進行修復。

准確查找缺少或提供不正確的屬性是非常棘手的。 解決此問題的唯一方法是反復試驗。 由於此異常是由令牌拋出的,因此不會被記錄下來,這使得解決起來非常困難。

我建議首先更好地了解您正在處理的令牌類型。 這將使您更好地了解期望的對象模板類型。

例如,如果令牌僅允許您創建sensitive密鑰,則如果將屬性值設置為false ,則令牌會抱怨。 因此,您必須嘗試組合屬性,並查看其是否成功創建了對象。

您可以做的另一件事是,如果令牌隨附其自己的sdk或工具,它們可以與令牌交互並創建對象,使用其sdk / tool創建測試對象,然后使用PKCS#11接口提取對象並查看其具有的模板。 您可以將其用作基本模板。

如果不是,則可以嘗試以最小的模板開始創建具有所需值的對象,例如:

  • ID(一些隨機值)
  • 標簽(別名)
  • 令牌(真推薦)
  • 敏感(真推薦)
  • 算法/機制(CKM_RSA_PKCS_KEY_PAIR_GEN / CKM_AES_KEY_GEN)
  • 密鑰類型(CKK_RSA / CKK_AES)
  • 值長度(可選)
  • 類(可選)

您可以使用pkcs11日志記錄包裝器。 例如: https : //github.com/Pkcs11Interop/pkcs11-logger

您將需要一些環境變量:

  • PKCS11_LOGGER_LIBRARY_PATH->實際pkcs11庫的路徑
  • PKCS11_LOGGER_LOG_FILE_PATH->日志文件的路徑
  • PKCS11_LOGGER_FLAGS->標志(看看pkcs11-logger README.md

文件)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM