以下是该函数的基本语法和说明:
NTSTATUS BCryptVerifySignature(
BCRYPT_KEY_HANDLE hKey,
VOID *pPaddingInfo,
PUCHAR pbHash,
ULONG cbHash,
PUCHAR pbSignature,
ULONG cbSignature,
ULONG dwFlags
);
参数说明:
- hKey:用于验证签名的密钥的句柄。
- pPaddingInfo:一个指向填充信息结构的指针,可以为 NULL。
- pbHash:指向用于签名的哈希值的缓冲区的指针。
- cbHash:哈希值的大小,以字节为单位。
- pbSignature:指向要验证的签名的缓冲区的指针。
- cbSignature:签名数据的大小,以字节为单位。
- dwFlags:标志位,可以为零或以下之一:
- BCRYPT_PAD_PKCS1:使用 PKCS #1 填充。
- BCRYPT_PAD_PSS:使用 Probabilistic Signature Scheme (PSS) 填充。
函数返回一个 NTSTATUS 类型的值,指示函数是否成功执行。如果验证成功,函数返回 STATUS_SUCCESS。
请注意,hKey 必须是一个公钥。签名的算法和填充方式与密钥的算法和填充方式相对应。
如果验证成功,表示签名有效,否则表示签名无效。调用方需要确保提供正确的密钥和签名数据。
转载请注明出处:http://www.zyzy.cn/article/detail/24011/Win32 API/Bcrypt.h/BCryptVerifySignature