EncodingType 枚举 (certenroll.h)

EncodingType 枚举指定应用于字节数组的编码类型以供显示。

语法

typedef enum EncodingType {
  XCN_CRYPT_STRING_BASE64HEADER = 0,
  XCN_CRYPT_STRING_BASE64 = 0x1,
  XCN_CRYPT_STRING_BINARY = 0x2,
  XCN_CRYPT_STRING_BASE64REQUESTHEADER = 0x3,
  XCN_CRYPT_STRING_HEX = 0x4,
  XCN_CRYPT_STRING_HEXASCII = 0x5,
  XCN_CRYPT_STRING_BASE64_ANY = 0x6,
  XCN_CRYPT_STRING_ANY = 0x7,
  XCN_CRYPT_STRING_HEX_ANY = 0x8,
  XCN_CRYPT_STRING_BASE64X509CRLHEADER = 0x9,
  XCN_CRYPT_STRING_HEXADDR = 0xa,
  XCN_CRYPT_STRING_HEXASCIIADDR = 0xb,
  XCN_CRYPT_STRING_HEXRAW = 0xc,
  XCN_CRYPT_STRING_BASE64URI = 0xd,
  XCN_CRYPT_STRING_ENCODEMASK = 0xff,
  XCN_CRYPT_STRING_CHAIN = 0x100,
  XCN_CRYPT_STRING_TEXT = 0x200,
  XCN_CRYPT_STRING_PERCENTESCAPE = 0x8000000,
  XCN_CRYPT_STRING_HASHDATA = 0x10000000,
  XCN_CRYPT_STRING_STRICT = 0x20000000,
  XCN_CRYPT_STRING_NOCRLF = 0x40000000,
  XCN_CRYPT_STRING_NOCR = 0x80000000
} ;

常数

 
XCN_CRYPT_STRING_BASE64HEADER
值:0
字符串使用开头和结束证书标头进行 base64 编码。 Base64 是用于传输二进制数据的编码方案。 要编码的数据一次检查三个字节。 24 位缓冲区中的每个 6 位用作文本字符串中的索引。 使用的字符串因编码的数据类型而异。 以下字符串通常用于多用途 Internet 邮件扩展 (MIME) 电子邮件 base64 编码。


syntax<br>ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/<br>

下面的示例演示了 base64 编码的证书,并包括开头和结束标头。


syntax<br>-----BEGIN CERTIFICATE-----<br>MIIBqDCCARECAQAwaTELMAkGA1UEBhMCVVMxDjAMBgNVBAgTBVRleGFzMRMwEQYD<br>VQQHEwpMYXNDb2xpbmFzMRIwEAYDVQQKEwlNaWNyb3NvZnQxDjAMBgNVBAsTBUl0<br>ZWFtMREwDwYDVQQDFAhOVFZPT0RPTzCBnjANBgkqhkiG9w0BAQEFAAOBjAAwgYgC<br>gYBxmmAWKbLJHg5TuVyjgzWW0JsY5Shaqd7BDWtqhzy4HfRTW22f31rlm8NeSXHn<br>EhLiwsGgNzWHJ8no1QIYzAgpDR79oqxvgrY4WS3PXT7OLwIDAQABoAAwDQYJKoZI<br>hvcNAQEEBQADgYEAVcyI4jtnnV6kMiByiq4Xg99yL0U7bIpEwAf3MIZHS7wuNqfY<br>acfhbRj6VFHT8ObprKGPmqXJvwrBmPrEuCs4Ik6PidAAeEfoaa3naIbM73tTvKN+<br>WD30lAfGBr8SZixLep4pMIN/wO0eu6f30cBuoPtDnDulNT8AuQHjkJIc8Qc=<br>-----END CERTIFICATE----- <br>
XCN_CRYPT_STRING_BASE64
值:0x1
字符串是 base64 编码的,不带开始和结束证书标头。
XCN_CRYPT_STRING_BINARY
值:0x2
字符串是纯二进制序列。 它未编码。
XCN_CRYPT_STRING_BASE64REQUESTHEADER
值:0x3
字符串是 base64 编码的,其开头和结束证书请求标头。 以下示例中显示了这一点。


syntax<br>-----BEGIN NEW CERTIFICATE REQUEST-----<br>MIIDBjCCAm8CAQAwcTERMA8GA1UEAxMIcXV1eC5jb20xDzANBgNVBAsTBkJyYWlu<br>czEWMBQGA1UEChMNRGV2ZWxvcE1lbnRvcjERMA8GA1UEBxMIVG9ycmFuY2UxEzAR<br>BgNVBAgTCkNhbGlmb3JuaWExCzAJBgNVBAYTAlVTMIGfMA0GCSqGSIb3DQEBAQUA<br>A4GNADCBiQKBgQDFUxFtzr170yxptKuGI1590Sta5z2dVElLfjAn+q4T1uZE3DiH<br>HXNRHW1eS9W2aeMZhRnYRi5U8eOdG3RUO4YXy4B1sqfy5I0qjjySA89ghVd/6JcA<br>K1nhGJL9FPJ6XKVUNLez7NpSCFlYs5foyTqyxDkHzTnQwRwkkwQ9dlbnfwIDAQAB<br>oIIBUzAaBgorBgEEAYI3DQIDMQwWCjUuMC4yMTk1LjIwNQYKKwYBBAGCNwIBDjEn<br>MCUwDgYDVR0PAQH/BAQDAgTwMBMGA1UdJQQMMAoGCCsGAQUFBwMBMIH9BgorBgEE<br>AYI3DQICMYHuMIHrAgEBHloATQBpAGMAcgBvAHMAbwBmAHQAIABSAFMAQQAgAFMA<br>QwBoAGEAbgBuAGUAbAAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIA<br>bwB2AGkAZABlAHIDgYkAXxNuAz6gcBaZUdef8WQ2PAroKMW8sprcKv7QD2encz6/<br>Wct9DZ5CkGynLGy0f+Lff7ViSDJqxYWaJ68ddqgXyAqIilF63kivPTiC6yxLaNX6<br>5v3cnKFx4UrUrGXZtub7M7/NuxSipOW0Vv7yCHganypxDyRzp6IhulEnL4APEH4A<br>AAAAAAAAADANBgkqhkiG9w0BAQUFAAOBgQBljJb1ZhWOwOLfzfHbC3yxGkXDy9w3<br>NA7uhQOvgntnqmSmdHP9nsM3DnxwaHb3EVxMKbAuLsSRDAE1KGqeamvQ3uFjuuL0<br>5q4nKhX25LyGFDSc6h1OHcv+0ugZ/9klsiViSeEGpMwllUf057o7q1Vls4HN22vM<br>wkcejcttDjo3Kw==<br>-----END NEW CERTIFICATE REQUEST-----<br>
XCN_CRYPT_STRING_HEX
值:0x4
字符串经过十六进制编码。 字符串的每个 4 位小数表示为介于零和 9 之间的数字,或 A 和 F 之间的字母(或 a 和 f)。 以下示例中显示了这一点。


syntax<br>3a 20 63 65 72 74 6c 69 62 5c 6c 64 61 70 2e 63<br>70 70 28 32 31 33 31 29 3a 20 6c 64 61 70 65 72<br>...<br>
XCN_CRYPT_STRING_HEXASCII
值:0x5
字符串经过十六进制编码,并显示相应的 ASCII 字符。 以下示例中显示了这一点。


syntax<br>3a 20 63 65 72 74 6c 69 62 5c 6c 64 61 70 2e 63 : certlib\ldap.c<br>70 70 28 32 31 33 31 29 3a 20 6c 64 61 70 65 72 pp(2131): ldaper<br>...<br>
XCN_CRYPT_STRING_BASE64_ANY
值:0x6
字符串是 base64 编码的。 枚举值按以下顺序尝试:


  1. XCN_CRYPT_STRING_BASE64HEADER

  2. XCN_CRYPT_STRING_BASE64

XCN_CRYPT_STRING_ANY
值:0x7
枚举值按以下顺序尝试:


  1. XCN_CRYPT_STRING_BASE64_ANY

  2. XCN_CRYPT_STRING_BINARY


XCN_CRYPT_STRING_BINARY 值始终成功。
XCN_CRYPT_STRING_HEX_ANY
值:0x8
枚举值按以下顺序尝试:


  1. XCN_CRYPT_STRING_HEXADDR

  2. XCN_CRYPT_STRING_HEXASCIIADDR

  3. XCN_CRYPT_STRING_HEXASCII

  4. XCN_CRYPT_STRING_HEX

XCN_CRYPT_STRING_BASE64X509CRLHEADER
值:0x9
该字符串是 base64 编码,开头和结束 X.509证书吊销列表 (CRL) 标头。 以下示例中显示了这一点。


syntax<br>-----BEGIN X509 CRL-----<br>MIIDBjCCAm8CAQAwcTERMA8GA1UEAxMIcXV1eC5jb20xDzANBgNVBAsTBkJyYWlu<br>czEWMBQGA1UEChMNRGV2ZWxvcE1lbnRvcjERMA8GA1UEBxMIVG9ycmFuY2UxEzAR<br>BgNVBAgTCkNhbGlmb3JuaWExCzAJBgNVBAYTAlVTMIGfMA0GCSqGSIb3DQEBAQUA<br>A4GNADCBiQKBgQDFUxFtzr170yxptKuGI1590Sta5z2dVElLfjAn+q4T1uZE3DiH<br>HXNRHW1eS9W2aeMZhRnYRi5U8eOdG3RUO4YXy4B1sqfy5I0qjjySA89ghVd/6JcA<br>K1nhGJL9FPJ6XKVUNLez7NpSCFlYs5foyTqyxDkHzTnQwRwkkwQ9dlbnfwIDAQAB<br>oIIBUzAaBgorBgEEAYI3DQIDMQwWCjUuMC4yMTk1LjIwNQYKKwYBBAGCNwIBDjEn<br>MCUwDgYDVR0PAQH/BAQDAgTwMBMGA1UdJQQMMAoGCCsGAQUFBwMBMIH9BgorBgEE<br>AYI3DQICMYHuMIHrAgEBHloATQBpAGMAcgBvAHMAbwBmAHQAIABSAFMAQQAgAFMA<br>QwBoAGEAbgBuAGUAbAAgAEMAcgB5AHAAdABvAGcAcgBhAHAAaABpAGMAIABQAHIA<br>bwB2AGkAZABlAHIDgYkAXxNuAz6gcBaZUdef8WQ2PAroKMW8sprcKv7QD2encz6/<br>Wct9DZ5CkGynLGy0f+Lff7ViSDJqxYWaJ68ddqgXyAqIilF63kivPTiC6yxLaNX6<br>5v3cnKFx4UrUrGXZtub7M7/NuxSipOW0Vv7yCHganypxDyRzp6IhulEnL4APEH4A<br>AAAAAAAAADANBgkqhkiG9w0BAQUFAAOBgQBljJb1ZhWOwOLfzfHbC3yxGkXDy9w3<br>NA7uhQOvgntnqmSmdHP9nsM3DnxwaHb3EVxMKbAuLsSRDAE1KGqeamvQ3uFjuuL0<br>5q4nKhX25LyGFDSc6h1OHcv+0ugZ/9klsiViSeEGpMwllUf057o7q1Vls4HN22vM<br>wkcejcttDjo3Kw==<br>-----END X509 CRL-----<br>
XCN_CRYPT_STRING_HEXADDR
值:0xa
字符串经过十六进制编码并显示为十六进制地址。 以下示例中显示了这一点。


syntax<br>0000 3a 20 63 65 72 74 6c 69 62 5c 6c 64 61 70 2e 63<br>0010 70 70 28 32 31 33 31 29 3a 20 6c 64 61 70 65 72<br>...<br>
XCN_CRYPT_STRING_HEXASCIIADDR
值:0xb
字符串经过十六进制编码,并显示为十六进制地址以及相应的 ASCII 字符。 以下示例中显示了这一点。


syntax<br>0000 3a 20 63 65 72 74 6c 69 62 5c 6c 64 61 70 2e 63 : certlib\ldap.c<br>0010 70 70 28 32 31 33 31 29 3a 20 6c 64 61 70 65 72 pp(2131): ldaper<br>...<br>
XCN_CRYPT_STRING_HEXRAW
值:0xc
字符串经过十六进制编码,且不带标点符号显示。 XCN_CRYPT_STRING_HEXRAW 仅适用于 Windows Vista。


syntax<br>3a20636572746c69625c6c6461702e6370702832313331293a206c6461706572...<br>
XCN_CRYPT_STRING_BASE64URI
值:0xd
XCN_CRYPT_STRING_ENCODEMASK
值:0xff
XCN_CRYPT_STRING_CHAIN
值:0x100
XCN_CRYPT_STRING_TEXT
值:0x200
XCN_CRYPT_STRING_PERCENTESCAPE
值:0x8000000
XCN_CRYPT_STRING_HASHDATA
值:0x10000000
XCN_CRYPT_STRING_STRICT
值:0x20000000
XCN_CRYPT_STRING_NOCRLF
值:0x40000000
从编码字符串中删除回车符和换行符控制字符。
XCN_CRYPT_STRING_NOCR
值:0x80000000
从编码字符串中删除回车控制字符。

要求

要求 价值
最低支持的客户端 Windows Vista [仅限桌面应用]
支持的最低服务器 Windows Server 2008 [仅限桌面应用]
标头 certenroll.h

另请参阅

CertEnroll 枚举

CertEnroll 接口