Partager via


EncodingType, énumération (certenroll.h)

L’énumération EncodingType spécifie le type d’encodage appliqué à un tableau d’octets à des fins d’affichage.

Syntaxe

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
} ;

Constantes

 
XCN_CRYPT_STRING_BASE64HEADER
Valeur : 0
La chaîne est encodée en base64 avec des en-têtes de certificat de début et de fin. Base64 est un schéma d’encodage utilisé pour transmettre des données binaires. Les données à encoder sont examinées trois octets à la fois. Toutes les six bits de la mémoire tampon 24 bits sont utilisés comme index dans une chaîne de texte. Les chaînes utilisées varient selon le type de données encodé. La chaîne suivante est couramment utilisée pour l’encodage mime (Multipurpose Internet Mail Extensions).


syntax<br>ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/<br>

L’exemple suivant montre un certificat encodé en base64 et inclut les en-têtes de début et de fin.


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
Valeur : 0x1
La chaîne est encodée en base64 sans en-têtes de certificat de début et de fin.
XCN_CRYPT_STRING_BINARY
Valeur : 0x2
La chaîne est une séquence binaire pure. Elle n’est pas encodée.
XCN_CRYPT_STRING_BASE64REQUESTHEADER
Valeur : 0x3
La chaîne est encodée en base64 avec des en-têtes de demande de certificat de début et de fin. Ceci est illustré dans l’exemple suivant.


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
Valeur : 0x4
La chaîne est encodée hexadécimale. Chaque 4 bits de nibble de la chaîne est représenté sous la forme d’un nombre compris entre zéro et neuf ou une lettre entre A et F (ou a et f). Ceci est illustré dans l’exemple suivant.


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
Valeur : 0x5
La chaîne est encodée hexadécimale et les caractères ASCII correspondants sont affichés. Ceci est illustré dans l’exemple suivant.


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
Valeur : 0x6
La chaîne est encodée en base64. Les valeurs d’énumération sont essayées dans l’ordre suivant :


  1. XCN_CRYPT_STRING_BASE64HEADER

  2. XCN_CRYPT_STRING_BASE64

XCN_CRYPT_STRING_ANY
Valeur : 0x7
Les valeurs d’énumération sont essayées dans l’ordre suivant :


  1. XCN_CRYPT_STRING_BASE64_ANY

  2. XCN_CRYPT_STRING_BINARY


La valeur XCN_CRYPT_STRING_BINARY réussit toujours.
XCN_CRYPT_STRING_HEX_ANY
Valeur : 0x8
Les valeurs d’énumération sont essayées dans l’ordre suivant :


  1. XCN_CRYPT_STRING_HEXADDR

  2. XCN_CRYPT_STRING_HEXASCIIADDR

  3. XCN_CRYPT_STRING_HEXASCII

  4. XCN_CRYPT_STRING_HEX

XCN_CRYPT_STRING_BASE64X509CRLHEADER
Valeur : 0x9
La chaîne est encodée en base64 avec des en-têtes X.509liste de révocation de certificats (CRL). Ceci est illustré dans l’exemple suivant.


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
Valeur : 0xa
La chaîne est encodée hexadécimale et affichée en tant qu’adresse hexadécimale. Ceci est illustré dans l’exemple suivant.


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
Valeur : 0xb
La chaîne est encodée hexadécimale et affichée sous forme d’adresse hexadécimale, ainsi que les caractères ASCII correspondants. Ceci est illustré dans l’exemple suivant.


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
Valeur : 0xc
La chaîne est encodée hexadécimale et affichée sans ponctuation. XCN_CRYPT_STRING_HEXRAW est disponible uniquement avec Windows Vista.


syntax<br>3a20636572746c69625c6c6461702e6370702832313331293a206c6461706572...<br>
XCN_CRYPT_STRING_BASE64URI
Valeur : 0xd
XCN_CRYPT_STRING_ENCODEMASK
Valeur : 0xff
XCN_CRYPT_STRING_CHAIN
Valeur : 0x100
XCN_CRYPT_STRING_TEXT
Valeur : 0x200
XCN_CRYPT_STRING_PERCENTESCAPE
Valeur : 0x8000000
XCN_CRYPT_STRING_HASHDATA
Valeur : 0x10000000
XCN_CRYPT_STRING_STRICT
Valeur : 0x20000000
XCN_CRYPT_STRING_NOCRLF
Valeur : 0x40000000
Supprime le retour chariot et les caractères de contrôle de flux de ligne de la chaîne encodée.
XCN_CRYPT_STRING_NOCR
Valeur : 0x80000000
Supprime le caractère de contrôle de retour chariot de la chaîne encodée.

Exigences

Exigence Valeur
client minimum pris en charge Windows Vista [applications de bureau uniquement]
serveur minimum pris en charge Windows Server 2008 [applications de bureau uniquement]
d’en-tête certenroll.h

Voir aussi

énumérations CertEnroll

interfaces CertEnroll