NTSTATUS BCryptImportKey(
BCRYPT_ALG_HANDLE hAlgorithm,
BCRYPT_KEY_HANDLE hImportKey,
LPCWSTR pszBlobType,
BCRYPT_KEY_HANDLE *phKey,
PUCHAR pbKeyObject,
ULONG cbKeyObject,
PUCHAR pbInput,
ULONG cbInput,
ULONG dwFlags
);
参数说明:
- hAlgorithm: 密钥的算法句柄。
- hImportKey: 密钥的句柄,用于导入密钥的句柄。
- pszBlobType: 指定输入数据的格式,通常是 BLOB 类型,如 BCRYPT_OPAQUE_KEY_BLOB。
- phKey: 指向导入密钥的句柄的指针。
- pbKeyObject: 用于存储密钥对象的缓冲区(可选,可以为 NULL)。
- cbKeyObject: pbKeyObject 缓冲区的大小(以字节为单位)。
- pbInput: 包含要导入的密钥数据的缓冲区。
- cbInput: pbInput 缓冲区的大小(以字节为单位)。
- dwFlags: 控制导入密钥的标志,通常可以设置为零。
函数的返回值是 NTSTATUS 类型,成功时返回 STATUS_SUCCESS。
BCryptImportKey 用于从二进制数据中导入一个密钥。导入密钥的格式由 pszBlobType 参数指定,可以是不同的 BLOB 类型,如密钥 BLOB 或者私钥 BLOB。导入密钥后,可以通过返回的 phKey 密钥句柄来使用该密钥进行加密、解密等操作。
如果 pbKeyObject 不为 NULL,则该缓冲区用于存储密钥对象。如果为 NULL,系统将自动为密钥对象分配内存。
总体而言,BCryptImportKey 是用于导入密钥的 CNG 函数。
转载请注明出处:http://www.zyzy.cn/article/detail/24002/Win32 API/Bcrypt.h/BCryptImportKey