我必须在 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。”