bcrypt.h 标头

安全和标识使用此标头。 有关详细信息,请参阅:

bcrypt.h 包含以下编程接口:

函数

 
BCRYPT_INIT_AUTH_MODE_INFO

初始化BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO结构,以便在调用 BCryptEncrypt 和 BCryptDecrypt 函数时使用。
BCryptAddContextFunction

将加密函数添加到现有 CNG 上下文支持的函数列表中。
BCryptCloseAlgorithmProvider

关闭算法提供程序。
BCryptConfigureContext

设置现有 CNG 上下文的配置信息。
BCryptConfigureContextFunction

设置现有 CNG 上下文的加密函数的配置信息。
BCryptCreateContext

创建新的 CNG 配置上下文。
BCryptCreateHash

调用 以 (MAC) 对象创建哈希或消息身份验证代码。
BCryptCreateMultiHash

BCryptCreateMultiHash 函数创建允许并行计算多个哈希操作的多哈希状态。
BCryptDecrypt

解密数据块。
BCryptDeleteContext

删除现有的 CNG 配置上下文。
BCryptDeriveKey

从机密协议值派生密钥。 (BCryptDeriveKey)
BCryptDeriveKeyCapi

从哈希值派生键。
BCryptDeriveKeyPBKDF2

使用 RFC 2898 定义的 PBKDF2 密钥派生算法从哈希值派生密钥。
BCryptDestroyHash

销毁 mac) 对象 (哈希或消息身份验证代码。
BCryptDestroyKey

销毁密钥。
BCryptDestroySecret

销毁使用 BCryptSecretAgreement 函数创建的机密协议句柄。
BCryptDuplicateHash

复制 MAC) 对象 (现有哈希或消息身份验证代码。
BCryptDuplicateKey

创建对称密钥的副本。
BCryptEncrypt

加密数据块。 (BCryptEncrypt)
BCryptEnumAlgorithms

获取已注册算法标识符的列表。
BCryptEnumContextFunctionProviders

获取指定配置表中上下文的加密函数的提供程序。
BCryptEnumContextFunctions

获取指定配置表中上下文的加密函数。
BCryptEnumContexts

获取指定配置表中上下文的标识符。
BCryptEnumProviders

获取支持指定算法的所有 CNG 提供程序。
BCryptEnumRegisteredProviders

检索有关已注册的提供程序的信息。
BCryptExportKey

将密钥导出到内存 BLOB,该密钥可以保留供以后使用。
BCryptFinalizeKeyPair

完成公钥/私钥对。
BCryptFinishHash

检索从之前调用 BCryptHashData 中累积的数据 (MAC) 值的哈希或消息身份验证代码。
BCryptFreeBuffer

用于释放由其中一个 CNG 函数分配的内存。
BCryptGenerateKeyPair

创建空公钥/私钥对。
BCryptGenerateSymmetricKey

从提供的密钥创建一个密钥对象,以便与对称密钥加密算法一起使用。
BCryptGenRandom

生成随机数。
BCryptGetFipsAlgorithmMode

确定是否启用联邦信息处理标准 (FIPS) 合规性。
BCryptGetProperty

检索 CNG 对象的命名属性的值。
BCryptHash

执行单个哈希计算。 这是一个方便函数,用于包装对 BCryptCreateHash、BCryptHashData、BCryptFinishHash 和 BCryptDestroyHash 的调用。
BCryptHashData

对数据缓冲区 (MAC) 执行单向哈希或消息身份验证代码。
BCryptImportKey

从密钥 BLOB 导入对称密钥。
BCryptImportKeyPair

从密钥 BLOB 导入公钥/私钥对。
BCryptKeyDerivation

派生密钥,而无需机密协议。
BCryptOpenAlgorithmProvider

加载并初始化 CNG 提供程序。
BCryptProcessMultiOperations

BCryptProcessMultiOperations 函数处理多对象状态上的一系列操作。
BCryptQueryContextConfiguration

检索指定 CNG 上下文的当前配置。
BCryptQueryContextFunctionConfiguration

获取现有 CNG 上下文的加密函数配置信息。
BCryptQueryContextFunctionProperty

获取现有 CNG 上下文中加密函数的命名属性的值。
BCryptQueryProviderRegistration

检索有关 CNG 提供程序的信息。
BCryptRegisterConfigChangeNotify

创建用户模式 CNG 配置更改事件处理程序。
BCryptRegisterConfigChangeNotify

描述 BCryptRegisterConfigChangeNotify (PRKEVENT) 函数如何创建内核模式 CNG 配置更改事件处理程序。
BCryptRemoveContextFunction

从现有 CNG 上下文支持的函数列表中删除加密函数。
BCryptResolveProviders

获取满足指定条件的所有提供程序的集合。
BCryptSecretAgreement

从私钥和公钥创建机密协议值。 (BCryptSecretAgreement)
BCryptSetContextFunctionProperty

设置现有 CNG 上下文中加密函数的命名属性的值。
BCryptSetProperty

设置 CNG 对象的命名属性的值。
BCryptSignHash

创建哈希值的签名。 (BCryptSignHash)
BCryptUnregisterConfigChangeNotify

删除使用 BCryptRegisterConfigChangeNotify (HANDLE*) 函数创建的用户模式 CNG 配置更改事件处理程序。
BCryptUnregisterConfigChangeNotify

删除使用 BCryptRegisterConfigChangeNotify (HANDLE*) 函数创建的用户模式 CNG 配置更改事件处理程序。
BCryptVerifySignature

验证指定的签名是否与指定的哈希匹配。 (BCryptVerifySignature)

结构

 
BCRYPT_ALGORITHM_IDENTIFIER

与 BCryptEnumAlgorithms 函数一起使用,以包含加密算法标识符。
BCRYPT_AUTHENTICATED_CIPHER_MODE_INFO

与 BCryptEncrypt 和 BCryptDecrypt 函数一起使用,以包含与经过身份验证的密码模式相关的其他信息。
BCRYPT_DH_KEY_BLOB

用作内存中 Diffie-Hellman 公钥或私钥 BLOB 的标头。
BCRYPT_DH_PARAMETER_HEADER

用于包含 Diffie-Hellman 键的参数标头信息。
BCRYPT_DSA_KEY_BLOB

用作数字签名算法的标头, (DSA) 内存中的公钥或私钥 BLOB。 (BCRYPT_DSA_KEY_BLOB)
BCRYPT_DSA_KEY_BLOB_V2

用作数字签名算法的标头, (DSA) 内存中的公钥或私钥 BLOB。 (BCRYPT_DSA_KEY_BLOB_V2)
BCRYPT_DSA_PARAMETER_HEADER

用于包含数字签名算法的参数标头信息 (DSA) 密钥。
BCRYPT_DSA_PARAMETER_HEADER_V2

包含数字签名算法的参数标头信息 (DSA) 密钥。
BCRYPT_ECCKEY_BLOB

用作内存中椭圆曲线公钥或私钥 BLOB 的标头。
BCRYPT_INTERFACE_VERSION

包含 CNG 提供程序的编程接口的版本信息。
BCRYPT_KEY_BLOB

是所有 CNG 键 BLOB 的基结构。
BCRYPT_KEY_DATA_BLOB_HEADER

用于包含有关密钥数据 BLOB 的信息。
BCRYPT_KEY_LENGTHS_STRUCT

定义提供程序支持的密钥大小范围。
BCRYPT_MULTI_HASH_OPERATION

BCRYPT_MULTI_HASH_OPERATION 结构定义多哈希运算中的单个操作。
BCRYPT_MULTI_OBJECT_LENGTH_STRUCT

BCRYPT_MULTI_OBJECT_LENGTH_STRUCT 结构包含用于确定 BCryptCreateMultiHash 函数的 pbHashObject 缓冲区大小的信息。
BCRYPT_OAEP_PADDING_INFO

用于提供最佳非对称加密填充 (OAEP) 方案的选项。
BCRYPT_OID

包含有关 DER 编码对象标识符 (OID) 的信息。
BCRYPT_OID_LIST

用于包含BCRYPT_OID结构的集合。 将此结构与 BCRYPT_HASH_OID_LIST 属性一起使用,可检索已使用 可辨别编码规则 (DER) 编码的 OID) (哈希对象标识符的列表。
BCRYPT_PKCS1_PADDING_INFO

用于提供 PKCS 的选项
BCRYPT_PROVIDER_NAME

包含 CNG 提供程序的名称。
BCRYPT_PSS_PADDING_INFO

用于提供概率签名方案 (PSS) 填充方案的选项。
BCRYPT_RSAKEY_BLOB

用作内存中 RSA 公钥或私钥 BLOB 的标头。
BCryptBuffer

描述 BCryptBuffer 结构如何表示泛型加密 API:下一代 (CNG) 缓冲区。
BCryptBufferDesc

描述 BCryptBufferDesc 结构如何包含一组通用加密 API:下一代 (CNG) 缓冲区。
CRYPT_CONTEXT_CONFIG

包含 CNG 上下文的配置信息。
CRYPT_CONTEXT_FUNCTION_CONFIG

包含 CNG 上下文的加密函数的配置信息。
CRYPT_CONTEXT_FUNCTION_PROVIDERS

包含 CNG 配置上下文的一组加密函数提供程序。
CRYPT_CONTEXT_FUNCTIONS

包含 CNG 配置上下文的一组加密函数。
CRYPT_CONTEXTS

包含一组 CNG 配置上下文标识符。
CRYPT_IMAGE_REF

包含有关 CNG 提供程序模块的信息。
CRYPT_IMAGE_REG

包含有关 CNG 提供程序的图像注册信息。
CRYPT_INTERFACE_REG

用于包含有关 CNG 提供程序支持的接口类型的信息。
CRYPT_PROPERTY_REF

包含有关 CNG 上下文属性的信息。
CRYPT_PROVIDER_REF

包含有关提供程序支持的加密接口的信息。
CRYPT_PROVIDER_REFS

包含提供程序引用的集合。
CRYPT_PROVIDER_REG

用于包含 CNG 提供程序的注册信息。
CRYPT_PROVIDERS

包含有关已注册的 CNG 提供程序的信息。

枚举

 
BCRYPT_HASH_OPERATION_TYPE

BCRYPT_HASH_OPERATION_TYPE枚举指定哈希操作类型。
BCRYPT_MULTI_OPERATION_TYPE

BCRYPT_MULTI_OPERATION_TYPE枚举指定传递给 BCryptProcessMultiOperations 函数的多操作的类型。
DSAFIPSVERSION_ENUM

包含 FIPS 版本信息。
HASHALGORITHM_ENUM

指定签名和哈希算法。