【发布时间】:2025-11-25 08:10:02
【问题描述】:
我必须在 Utimaco HSM 模拟器上使用 AES-256 密钥生成 HMAC(SHA256) 签名。为此,我使用 PKCS#11 库“Pkcs11Interop”(C#)。 我的源代码函数:
public static byte[] GetSignatureHmacSha256(IObjectHandle secretKeyHandle, byte[] message)
{
ICkMacGeneralParams macParams = Settings.Factories.MechanismParamsFactory.CreateCkMacGeneralParams(32);
IMechanism mechanism = session.Factories.MechanismFactory.Create(CKM.CKM_SHA256_HMAC_GENERAL, macParams);
byte[] signature = session.Sign(mechanism, secretKeyHandle, message);
return signature;
}
我收到此错误消息。有人可以帮我做错什么吗?
“方法 C_SignInit 返回 CKR_MECHANISM_INVALID”
Utimaco 日志:“机制 CKM_SHA256_HMAC_GENERAL 不适合密钥 t。”
【问题讨论】:
标签: c# pkcs#11 pkcs11interop