Win32 API:ICertificatePolicies 接口(Certenroll.h)
ICertificatePolicies 接口是 Win32 API 中的一部分,包含在 Certenroll.h 头文件中。这个接口通常与证书操作相关,用于处理证书策略。证书策略是一组规则,用于确定证书的使用和信任。以下是 ICertificatePolicies 接口的一些基本信息:interface ICertificatePolicies : IDispatch{public: virtual HRESULT STDMETHODCALLTYPE Initialize( /* [in] */ BSTR strPolicy) = 0; virtual HRESULT STDMETHODCALLTYPE get_Policy( /* [retval][out] */ BSTR *pstrPolicy) = 0; virtual HRESULT STDMETHODCALLTYPE put_Policy( /* [in] */ BSTR strPolicy) = 0; virtual HRES...
Win32 API:IBinaryConverter 接口(Certenroll.h)
Win32 API 中的 IBinaryConverter 接口通常与证书和证书请求相关的编码和解码操作有关。这个接口通常用于将二进制数据转换为其他格式,或将其他格式的数据转换为二进制数据。在 Certenroll.h 头文件中,IBinaryConverter 接口定义了一组方法,用于处理这些转换操作。以下是 IBinaryConverter 接口的一些可能的方法:interface IBinaryConverter : IDispatch{public: virtual HRESULT STDMETHODCALLTYPE RawBytesToBinary( /* [in] */ __RPC__in const BSTR rawData, /* [out] */ __RPC__out VARIANT *binaryData) = 0; virtual HRESULT STDMETHODCALLTYPE BinaryToRawBytes( /* [in] */ VARIANT binaryData, /* [out] ...
Win32 API:IAlternativeNames 接口(Certenroll.h)
Win32 API 中的 IAlternativeNames 接口位于 Certenroll.h 头文件中,用于在证书请求或证书中存储替代名称(Alternative Names)。替代名称通常用于指定与主题不同的标识信息,如 Subject Alternative Name (SAN) 扩展。以下是关于 IAlternativeNames 接口的一些基本信息:1. 接口定义:MIDL_INTERFACE("7b84965c-ea82-4713-ba4c-c65db267e384")IAlternativeNames : public IDispatch{public: virtual /* [helpstring][id] */ HRESULT STDMETHODCALLTYPE Initialize( /* [in] */ EncodingType Encoding) = 0; virtual /* [helpstring][id][propget] */ HRESULT STDMETHODCALLTYPE get_Count...
Win32 API:IAlternativeName 接口(Certenroll.h)
IAlternativeName 接口在 Windows 操作系统的 CertEnroll.h 头文件中定义,用于表示证书请求或证书中的备用名称(Alternative Name)。以下是该接口的定义:interface IAlternativeName : IDispatch{ HRESULT InitializeEncode( CAPICOM_ENCODING_TYPE EncodingType, VARIANT const & varData); HRESULT InitializeDecode( CAPICOM_ENCODING_TYPE EncodingType, VARIANT const & varData); HRESULT GetNameCount( CAPICOM_NAME_TYPE NameType, long * pVal); HRESULT GetName( CAPICOM_NAME_TYPE NameType, ...
Win32 API:X509RequestType 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509RequestType 枚举用于指定证书请求的类型。以下是该枚举的定义:typedef enum X509RequestType { XCN_CERT_REQUEST_TYPE_PKCS10 = 0, XCN_CERT_REQUEST_TYPE_KEYGEN = 1, XCN_CERT_REQUEST_TYPE_CMC = 2, XCN_CERT_REQUEST_TYPE_PKCS7 = 3} X509RequestType;这个枚举包含了四个成员:1. XCN_CERT_REQUEST_TYPE_PKCS10:表示使用 PKCS#10 格式的证书请求。2. XCN_CERT_REQUEST_TYPE_KEYGEN:表示使用密钥生成的方式进行证书请求。3. XCN_CERT_REQUEST_TYPE_CMC:表示使用 CMC (Certificate Management over CMS) 格式的证书请求。4. XCN_CERT_REQUEST_TYPE_PKCS7:表示使用 PKCS...
Win32 API:X509RequestInheritOptions 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509RequestInheritOptions 枚举用于指定证书请求继承选项。以下是该枚举的定义:typedef enum X509RequestInheritOptions { XCN_CERT_REQUEST_INHERIT_DEFAULT_SMART_CARD = 0, XCN_CERT_REQUEST_INHERIT_ALL = 0xFFFFFFFF} X509RequestInheritOptions;这个枚举包含了两个成员:1. XCN_CERT_REQUEST_INHERIT_DEFAULT_SMART_CARD:默认的智能卡继承选项。2. XCN_CERT_REQUEST_INHERIT_ALL:继承所有选项。这些选项用于在处理证书请求相关的操作时,指定证书请求的继承行为。特别是在使用智能卡进行证书请求时,可以使用这些选项来指定继承的行为。
Win32 API:X509ProviderType 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509ProviderType 枚举用于指定证书提供者的类型。以下是该枚举的定义:typedef enum X509ProviderType { XCN_PROV_NONE = 0, XCN_PROV_RSA_FULL = 1, XCN_PROV_RSA_SIG = 2, XCN_PROV_DSS = 3, XCN_PROV_FORTEZZA = 4, XCN_PROV_MS_EXCHANGE = 5, XCN_PROV_SSL = 6, XCN_PROV_RSA_SCHANNEL = 12, XCN_PROV_DSS_DH = 13, XCN_PROV_EC_ECDSA_SIG = 14, XCN_PROV_EC_ECNRA_SIG = 15, XCN_PROV_EC_ECDSA_FULL = 16, XCN_PROV_EC_ECNRA_FULL = 17, XCN_PROV_DH_SCHANNEL = 18, XCN_PRO...
Win32 API:X509PrivateKeyVerify 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509PrivateKeyVerify 枚举用于指定私钥的验证标志。以下是该枚举的定义:typedef enum X509PrivateKeyVerify { XCN_NCRYPT_SIGNATURE_OPERATION = 1, XCN_NCRYPT_HASH_OPERATION = 2} X509PrivateKeyVerify;这个枚举包含了两个成员:1. XCN_NCRYPT_SIGNATURE_OPERATION:表示进行签名操作的验证。2. XCN_NCRYPT_HASH_OPERATION:表示进行哈希操作的验证。这些标志用于在处理私钥相关的操作时,指定验证的类型。私钥可以用于进行数字签名或哈希计算,这取决于其具体的用途。这些标志用于指定验证的类型,以确保私钥在特定操作中使用的正确性。
Win32 API:X509PrivateKeyUsageFlags 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509PrivateKeyUsageFlags 枚举用于指定私钥的用途标志。以下是该枚举的定义:typedef enum X509PrivateKeyUsageFlags { XCN_NCRYPT_ALLOW_USAGES_NONE = 0, XCN_NCRYPT_ALLOW_DECRYPT_FLAG = 0x1, XCN_NCRYPT_ALLOW_SIGNING_FLAG = 0x2, XCN_NCRYPT_ALLOW_KEY_AGREEMENT_FLAG = 0x4, XCN_NCRYPT_ALLOW_ALL_USAGES = 0xFFFFFFFF} X509PrivateKeyUsageFlags;这个枚举包含了一些标志,用于指定私钥的用途。以下是这些标志的含义:1. XCN_NCRYPT_ALLOW_USAGES_NONE:无特殊标志,表示不允许任何用途。2. XCN_NCRYPT_ALLOW_DECRYPT_FLAG:允许使用私钥进行解密操作。3. XCN_NCRYPT_ALL...
Win32 API:X509PrivateKeyProtection 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509PrivateKeyProtection 枚举用于指定私钥的保护级别。以下是该枚举的定义:typedef enum X509PrivateKeyProtection { XCN_NCRYPT_UI_NO_PROTECTION_FLAG = 0, XCN_NCRYPT_UI_PROTECT_KEY_FLAG = 0x1, XCN_NCRYPT_UI_FORCE_HIGH_PROTECTION_FLAG = 0x2} X509PrivateKeyProtection;这个枚举包含了一些标志,用于指定私钥的保护级别。以下是这些标志的含义:1. XCN_NCRYPT_UI_NO_PROTECTION_FLAG:无保护,即不要求用户输入密码或其他信息。2. XCN_NCRYPT_UI_PROTECT_KEY_FLAG:保护私钥,可能需要用户输入密码或其他信息来保护私钥。3. XCN_NCRYPT_UI_FORCE_HIGH_PROTECTION_FLAG:强制使用高级别的保护,通常意味着更强的密码要求或...
Win32 API:X509PrivateKeyExportFlags 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509PrivateKeyExportFlags 枚举用于指定导出私钥的标志。以下是该枚举的定义:typedef enum X509PrivateKeyExportFlags { XCN_NCRYPT_ALLOW_EXPORT_NONE = 0, XCN_NCRYPT_ALLOW_EXPORT_FLAG = 0x1, XCN_NCRYPT_ALLOW_PLAINTEXT_EXPORT_FLAG = 0x2, XCN_NCRYPT_ALLOW_ARCHIVING_FLAG = 0x4, XCN_NCRYPT_EXPORT_POLICY_FLAG = 0x8, XCN_NCRYPT_ALLOW_PLAINTEXT_ARCHIVING_FLAG = 0x20, XCN_NCRYPT_ALLOW_SIMULTANEOUS_EXPORT_FLAG = 0x40} X509PrivateKeyExportFlags;这个枚举包含了一些标志,用于指定导出私钥时的行为。以下是这些标志的含义:...
Win32 API:X509KeyUsageFlags 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509KeyUsageFlags 枚举用于指定密钥用法的标志。以下是该枚举的定义:typedef enum X509KeyUsageFlags { XCN_CERT_KEY_USAGE_UNKNOWN = 0, XCN_CERT_DIGITAL_SIGNATURE_KEY_USAGE = 0x80, XCN_CERT_NON_REPUDIATION_KEY_USAGE = 0x40, XCN_CERT_KEY_ENCIPHERMENT_KEY_USAGE = 0x20, XCN_CERT_DATA_ENCIPHERMENT_KEY_USAGE = 0x10, XCN_CERT_KEY_AGREEMENT_KEY_USAGE = 0x8, XCN_CERT_KEY_CERT_SIGN_KEY_USAGE = 0x4, XCN_CERT_OFFLINE_CRL_SIGN_KEY_USAGE = 0x2, XCN_CERT_CRL_SIGN_KEY_USAGE = 0x...
Win32 API:X509KeySpec 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509KeySpec 枚举用于指定密钥对的类型。以下是该枚举的定义:typedef enum X509KeySpec { XCN_AT_NONE = 0, XCN_AT_KEYEXCHANGE = 1, XCN_AT_SIGNATURE = 2, XCN_AT_END_ENTITY = 2, XCN_AT_KEYSIZE = 0xFFFFFFF0, XCN_AT_SIGNATURE_HASH_CNG_ALGORITHM = 0xFFFFFFFE, XCN_AT_KEYEXCHANGE_HASH_CNG_ALGORITHM = 0xFFFFFFFD, XCN_AT_UNKNOWN = 0xFFFFFFFC} X509KeySpec;这个枚举包含了一些成员,用于指定密钥对的类型。以下是这些成员的含义:1. XCN_AT_NONE:表示没有特定的密钥对类型。2. XCN_AT_KEYEXCHANGE:表示密钥对用于密钥交换。3. XCN_AT_SIGNATURE:表示密钥对用...
Win32 API:X509EnrollmentPolicyLoadOption 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509EnrollmentPolicyLoadOption 枚举用于指定证书策略的加载选项。以下是该枚举的定义:typedef enum X509EnrollmentPolicyLoadOption { X509EnrollmentPolicyLoadOptionNone = 0, X509EnrollmentPolicyLoadOptionReload = 0x1, X509EnrollmentPolicyLoadOptionAcquireForced = 0x2, X509EnrollmentPolicyLoadOptionPromptUser = 0x4, X509EnrollmentPolicyLoadOptionDefaultUserProfile = 0x8} X509EnrollmentPolicyLoadOption;这个枚举包含了一些标志,用于指定证书策略的加载选项。以下是这些标志的含义:1. X509EnrollmentPolicyLoadOptionNone:表示无...
Win32 API:X509EnrollmentPolicyExportFlags 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509EnrollmentPolicyExportFlags 枚举用于指定证书策略的导出标志。以下是该枚举的定义:typedef enum X509EnrollmentPolicyExportFlags { X509EnrollmentPolicyExport_None = 0, X509EnrollmentPolicyExport_NoUserInterface = 0x1, X509EnrollmentPolicyExport_AutoEnroll = 0x2, X509EnrollmentPolicyExport_DefaultUserProfile = 0x4, X509EnrollmentPolicyExport_All = 0xFFFFFFFF} X509EnrollmentPolicyExportFlags;这个枚举包含了一些标志,用于指定证书策略的导出属性。以下是这些标志的含义:1. X509EnrollmentPolicyExport_None:表示无特殊标志。2. X...
Win32 API:X509CertificateTemplateSubjectNameFlag 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509CertificateTemplateSubjectNameFlag 枚举用于指定证书模板的主题名称标志。以下是该枚举的定义:typedef enum X509CertificateTemplateSubjectNameFlag { CertificateTemplateSubjectNameNone = 0, CertificateTemplateSubjectNameIndirectFlag = 0x1, CertificateTemplateSubjectNameReplaceFlag = 0x2} X509CertificateTemplateSubjectNameFlag;这个枚举包含了一些标志,用于指定证书模板的主题名称相关的属性。以下是这些标志的含义:1. CertificateTemplateSubjectNameNone:表示无特殊标志。2. CertificateTemplateSubjectNameIndirectFlag:表示使用间接主题名称。3. Certificat...
Win32 API:X509CertificateTemplatePrivateKeyFlag 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509CertificateTemplatePrivateKeyFlag 枚举用于指定证书模板的私钥标志。以下是该枚举的定义:typedef enum X509CertificateTemplatePrivateKeyFlag { CertificateTemplatePrivateKeyNone = 0, CertificateTemplateReuseKeyFlag = 0x1, CertificateTemplateEnrollOnBehalfFlag = 0x2, CertificateTemplatePrivateKeyArchiveFlag = 0x4, CertificateTemplateSuppressDefaultsFlag = 0x8, CertificateTemplatePersistOverArchivalFlag = 0x10} X509CertificateTemplatePrivateKeyFlag;这个枚举包含了一些标志,用于指定证书模板的私钥相...
Win32 API:X509CertificateTemplateGeneralFlag 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509CertificateTemplateGeneralFlag 枚举用于指定证书模板的一般标志。以下是该枚举的定义:typedef enum X509CertificateTemplateGeneralFlag { CertificateTemplateNone = 0, CertificateTemplateCriticalFlag = 0x1} X509CertificateTemplateGeneralFlag;这个枚举包含了两个成员:1. CertificateTemplateNone:表示无特殊标志。2. CertificateTemplateCriticalFlag:表示证书模板标志为关键标志。CertificateTemplateCriticalFlag 标志用于指定证书模板是否是关键的。如果设置了这个标志,那么该证书模板将被视为关键模板。关键模板通常用于强制要求证书请求者(subject)遵循模板中定义的规则。这些标志用于在证书模板相关的操作中指定一些特定的属性或设置。
Win32 API:X509CertificateTemplateEnrollmentFlag 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509CertificateTemplateEnrollmentFlag 枚举用于指定证书模板的申请标志。以下是该枚举的定义:typedef enum X509CertificateTemplateEnrollmentFlag { CertificateIncludeSymmetricAlgorithms = 0x0001, CertificateEnrollSupersede = 0x0002, CertificateTemplateV1 = 0x0004, CertificateUseAlternateSignatureAlgorithm = 0x0008, CertificateEnableMySqlReplication = 0x0010, CertificateUseCNGKey = 0x0020} X509CertificateTemplateEnrollmentFlag;这个枚举包含了一些标志,用于指定证书模板的一些申请行为。以下是这些标志的含义:1. Certifi...
Win32 API:X509CertificateEnrollmentContext 枚举(Certenroll.h)
在 Windows 操作系统的 CertEnroll.h 头文件中,X509CertificateEnrollmentContext 枚举用于指定证书的申请上下文。以下是该枚举的定义:typedef enum X509CertificateEnrollmentContext { ContextUser = 1, ContextMachine = 2, ContextAdministratorForceMachine = 3} X509CertificateEnrollmentContext;这个枚举包含了以下几个成员:1. ContextUser:表示证书申请上下文为用户上下文。证书将与当前用户关联。2. ContextMachine:表示证书申请上下文为计算机上下文。证书将与计算机关联。3. ContextAdministratorForceMachine:表示管理员强制的计算机上下文。通常,这个选项被管理员用于确保证书与计算机关联,即使是在用户上下文中发起的请求。这些上下文用于指定证书请求的关联范围,即证书是与用户还是与计算机关联的。