bCryptBuffer 结构 (bcrypt.h)
表示通用加密 API:下一代 (CNG) 缓冲区。
注意
此结构也别名为 NCryptBuffer。
语法
typedef struct _BCryptBuffer {
ULONG cbBuffer;
ULONG BufferType;
PVOID pvBuffer;
} BCryptBuffer, *PBCryptBuffer;
成员
cbBuffer
缓冲区的大小(以字节为单位)。
BufferType
此结构表示的缓冲区的类型。 这可以是以下值之一。
值 | 含义 |
---|---|
KDF_HASH_ALGORITHM 0 | 缓冲区是一个密钥派生函数, (KDF) 参数,其中包含标识哈希算法的以 null 结尾的 Unicode 字符串。 这可以是 CNG 算法标识符中的标准哈希 算法标识符 之一,也可以是另一个已注册哈希算法的标识符。 此结构的 cbBuffer 成员指定的大小必须包含终止 NULL 字符。 |
KDF_SECRET_PREPEND 1 | 缓冲区是一个 KDF 参数,其中包含要添加到哈希函数输入的消息开头的值。 |
KDF_SECRET_APPEND 2 | 缓冲区是一个 KDF 参数,其中包含要添加到哈希函数输入的消息末尾的值。 |
KDF_HMAC_KEY 3 | 缓冲区是包含 HMAC 键的纯文本值的 KDF 参数。 |
KDF_TLS_PRF_LABEL 4 | 缓冲区是一个 KDF 参数,其中包含一个 ANSI 字符串,该字符串包含 传输层安全性 (TLS) 伪随机函数 (PRF) 标签。 |
KDF_TLS_PRF_SEED 5 | 缓冲区是包含 PRF 种子值的 KDF 参数。 种子长度必须为 64 字节。 |
KDF_SECRET_HANDLE 6 | 缓冲区是包含机密协议句柄的 KDF 参数。 pvBuffer 成员包含BCRYPT_SECRET_HANDLE值,并且不是指针。 |
KDF_TLS_PRF_PROTOCOL 7 | 缓冲区是一个 KDF 参数,其中包含一个 DWORD 值,该值标识将使用 PRF 算法的 SSL/TLS 协议版本。 |
KDF_ALGORITHMID 8 | 缓冲区是一个 KDF 参数,其中包含要用作 SP 800-56A KDF 的 OtherInfo 参数的 AlgorithmID 子字段的字节数组。 |
KDF_PARTYUINFO 9 | 缓冲区是一个 KDF 参数,其中包含要用作 SP 800-56A KDF 的 OtherInfo 参数的 PartyUInfo 子字段的字节数组。 |
KDF_PARTYVINFO 10 | 缓冲区是一个 KDF 参数,其中包含要用作 SP 800-56A KDF 的 OtherInfo 参数的 PartyVInfo 子字段的字节数组。 |
KDF_SUPPPUBINFO 11 | 缓冲区是一个 KDF 参数,其中包含要用作 SP 800-56A KDF 的 OtherInfo 参数的 SuppPubInfo 子字段的字节数组。 |
KDF_SUPPPRIVINFO 12 | 缓冲区是一个 KDF 参数,其中包含要用作 SP 800-56A KDF 的 OtherInfo 参数的 SuppPrivInfo 子字段的字节数组。 |
KDF_LABEL 13 | 有关详细信息 ,请参阅 BCryptKeyDerivation 函数 。 |
KDF_CONTEXT 14 | 有关详细信息 ,请参阅 BCryptKeyDerivation 函数 。 |
KDF_SALT 15 | 有关详细信息 ,请参阅 BCryptKeyDerivation 函数 。 |
KDF_ITERATION_COUNT 16 | 有关详细信息 ,请参阅 BCryptKeyDerivation 函数 。 |
pvBuffer
BufferType 成员定义的 32 位值。
要求
要求 | 值 |
---|---|
Header | bcrypt.h |