Konstanten für CryptEncodeObject und CryptDecodeObject
Die Funktionen CryptEncodeObject, CryptEncodeObjectEx, CryptSignAndEncodeCertificate, CryptDecodeObjectund CryptDecodeObjectEx sind verallgemeinerte Codierungs- und Decodierungsfunktionen, die abstrakte Syntax notation One (ASN.1) codierte Zertifikate, Zertifikatsperrlisten (Certificate Revocation Lists, CRLs), Zertifikatvertrauenslisten (CTLs) und Zertifikatanforderungen codieren und decodieren können.
In der folgenden Tabelle sind die vordefinierten Konstanten, Erweiterungen und Attribute aufgeführt, die mit Codierungs- und Decodierungsvorgängen verwendet werden, sowie die Datenstruktur, auf die der pvStructInfo-Parameter zeigt.
Hinweis
Einige vordefinierte Konstanten und OID-Zeichenfolgen haben die gleiche Bedeutung. Wenn sie dies tun, kann beides als lpszStuctType-Parameter verwendet werden.
| Konstante/Wert | BESCHREIBUNG |
|---|---|
|
Der parameter pvStructInfo ist ein Zeiger auf eine CMC ADD ATTRIBUTES _ _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CMC ADD EXTENSIONS _ _ _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CRYPT _ ALGORITHM _ IDENTIFIER-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT ALT NAME _ _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ NAME _ VALUE-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine INFO-Struktur von CERT POLICY _ _ QUALIFIER. _ |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine INFO-Struktur von CERT POLICY _ _ CONSTRAINTS. _ |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT POLICY _ _ MAPPINGS _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CRYPT _ ATTRIBUTE-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT AUTHORITY INFO _ _ _ ACCESS-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT AUTHORITY INFO _ _ _ ACCESS-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT AUTHORITY INFO _ _ _ ACCESS-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT AUTHORITY INFO _ _ _ ACCESS-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT AUTHORITY KEY ID _ _ _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ AUTHORITY KEY _ _ ID2 _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT AUTHORITY KEY ID _ _ _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ AUTHORITY KEY _ _ ID2 _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine INFO-Struktur von CERT _ BASIC _ CONSTRAINTS. _ Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine INFO-Struktur von CERT _ BASIC _ CONSTRAINTS. _ Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT BASIC _ _ CONSTRAINTS2 _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT BASIC _ _ CONSTRAINTS2 _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT BIOMETRIC EXT _ _ _ INFO-Struktur. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT BIOMETRIC EXT _ _ _ INFO-Struktur. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT BIT _ _ BLOB-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ SIGNED CONTENT _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CRL _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ EXTENSIONS-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ PAIR-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT POLICIES _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT POLICIES _ _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ REQUEST _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT TEMPLATE _ _ EXT-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT TEMPLATE _ _ EXT-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine FILETIME-Variable. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT CONTENT _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT CONTENT INFO SEQUENCE _ OF _ _ _ _ ANY-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine _ CRL DIST _ POINTS _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRL _ DIST POINTS _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine int-Variable. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine ganze Zahl, die den aufzählten Wert enthält. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine ganze Zahl, die den aufzählten Wert enthält. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine int-Variable. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CROSS _ CERT _ DIST POINTS _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CROSS _ CERT _ DIST POINTS _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine Diffie-Hellman Version 3 Public Key BLOBs- oder DSS Version 3 Public Key BLOBs-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CTL _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CMC DATA _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine int-Variable. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ DSS _ PARAMETERS-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ UINT _ BLOB-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf ein Array von 40 Bytes. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf einen LPSTR der Objektbezeichnerpunktdarstellung. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ ECC _ SIGNATURE-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ ECC PRIVATE KEY _ _ _ INFO-Struktur. Windows Server 2003, Windows XP, Windows 2000 und Windows Vista: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT ALGORITHM _ _ IDENTIFIER-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ ENHKEY _ USAGE- oder CTL _ USAGE-Struktur. (Diese Strukturen sind identisch, aber unter verschiedenen Namen bekannt.) |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ ENHKEY _ USAGE- oder CTL _ USAGE-Struktur. (Diese Strukturen sind identisch, aber unter verschiedenen Namen bekannt.) |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT ENROLLMENT NAME VALUE _ _ _ _ PAIR-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine ganze Zahl, die den aufzählten Wert enthält. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ EXTENSIONS-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRL _ DIST POINTS _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine ganze Zahl mit Vorzeichen von 32 Bits oder weniger. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT ALT NAME _ _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT ALT NAME _ _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRL _ ISSUING _ DIST _ POINT-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRL _ ISSUING _ DIST _ POINT-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT KEY _ _ ATTRIBUTES _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT KEY _ _ ATTRIBUTES _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT BIT _ _ BLOB-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT BIT _ _ BLOB-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT KEY USAGE RESTRICTION _ _ _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT KEY USAGE RESTRICTION _ _ _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ KEYGEN REQUEST _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ LOGOTYPE EXT _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT _ LOGOTYPE EXT _ _ INFO-Struktur. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ _ INTEGER-BLOB-Struktur. Das BLOB befindet sich in Little-Endian-Reihenfolge. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ UINT _ BLOB-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT NAME _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ NAME _ CONSTRAINTS _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ NAME _ CONSTRAINTS _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ NAME _ VALUE-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT ALT NAME _ _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf einen LPSTR der Objektbezeichner-Punktdarstellung. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT DATA _ _ BLOB-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ DSS _ PARAMETERS-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine INFO-Struktur von CERT POLICY _ _ CONSTRAINTS. _ |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine INFO-Struktur von CERT POLICY _ _ CONSTRAINTS. _ |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT POLICY _ _ MAPPINGS _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT POLICY _ _ MAPPINGS _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT PUBLIC KEY _ _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ RC2 _ CBC _ PARAMETERS-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CMC _ RESPONSE _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf ein BCRYPT _ _ RSAKEY-BLOB unmittelbar gefolgt vom Exponenten und den Modulusbytes. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine private BCRYPT _ RSAKEY _ BLOB-Struktur. Windows Server 2003, Windows XP, Windows 2000 und Windows Vista: Dieser Wert wird nicht unterstützt. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine FILETIME-Variable. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ SMIME _ CAPABILITIES-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT RSA _ _ SSA _ PSS _ PARAMETERS-Struktur. Einzelheiten finden Sie unter "Hinweise". Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT RSA _ _ SSA _ PSS _ PARAMETERS-Struktur. Einzelheiten finden Sie unter "Hinweise". Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ RSAES _ OAEP _ PARAMETERS-Struktur. Einzelheiten finden Sie unter "Hinweise". Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CRYPT _ ECC CMS SHARED _ _ _ INFO-Struktur. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ RSAES _ OAEP _ PARAMETERS-Struktur. Einzelheiten finden Sie unter "Hinweise". Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CRYPT _ SEQUENCE OF _ _ ANY-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CMSG _ SIGNER _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CMSG _ CMS _ SIGNER _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT _ SMIME _ CAPABILITIES-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CMC STATUS _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT ALT NAME _ _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT ALT NAME _ _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT DATA _ _ BLOB-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT TIME STAMP REQUEST _ _ _ _ INFO-Struktur. |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ NAME _ VALUE-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CERT NAME _ _ INFO-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine CERT _ NAME _ VALUE-Struktur. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine FILETIME-Variable. Einzelheiten finden Sie unter "Hinweise". |
|
Der pvStructInfo-Parameter ist ein Zeiger auf eine OCSP _ SIGNED REQUEST _ _ INFO-Variable. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine OCSP REQUEST _ _ INFO-Variable. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine OCSP RESPONSE _ _ INFO-Variable. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine OCSP BASIC SIGNED RESPONSE _ _ _ _ INFO-Variable. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine OCSP BASIC RESPONSE _ _ _ INFO-Variable. Windows Server 2003 und Windows XP: Dieser Wert wird nicht unterstützt. |
|
Der parameter pvStructInfo ist ein Zeiger auf ein BLOB mit einem privaten RSA-Schlüssel. Weitere Informationen finden Sie unter Diffie-Hellman Version 3 Private Key BLOBs und DSS Version 3 Private Key BLOBs. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT PRIVATE KEY _ _ _ INFO-Struktur. |
|
Der parameter pvStructInfo ist ein Zeiger auf eine CRYPT ENCRYPTED PRIVATE KEY _ _ _ _ INFO-Struktur. |
Bemerkungen
Die folgende Tabelle enthält weitere Details zu bestimmten lpszStructType-Werten.
| Wert | BESCHREIBUNG |
|---|---|
| X509_ALTERNATE_NAMEszOID_ISSUER_ALT_NAME szOID_SUBJECT_ALT_NAME |
Vor der Codierung werden die LPWSTR-Namensoptionen in IA5-Zeichenfolgen konvertiert. Wenn die Zeichenfolge eine ungültige IA5-Zeichenfolge enthält, gibt GetLastError CRYPT_E_INVALID_IA5_STRING zurück, und *codiert wird mit dem Fehlerspeicherort des ungültigen Zeichens aktualisiert. Fehlerpositionsindizes werden in *codiert wie folgt zurückgegeben: Bit 0 ist das am wenigsten signifikante Bit von DWORD. Die VALUE_INDEX des Fehlers befindet sich in bits 0 bis 15. Dies ist der Unicode-Zeichenindex. Die ENTRY_INDEX des Fehlers befindet sich in bits 16 bis 23. Makros GET_CERT_ALT_NAME_VALUE_ERR_INDEX(X) und GET_CERT_ALT_NAME_ENTRY_ERR_INDEX(X) werden definiert, um ein einfaches Lesen der Bitmapfelder für VALUE_INDEX und ENTRY_INDEX aus dem DWORD zu ermöglichen, das sie enthält: Die szOID_SUBJECT_ALT_NAME wurde durch die -szOID_SUBJECT_ALT_NAME2. Letzteres wird von neuen Zertifikatservern implementieren. |
| X509_AUTHORITY_INFO_ACCESS szOID_AUTHORITY_INFO_ACCESS szOID_AUTHORITY_KEY_IDENTIFIER2 X509_AUTHORITY_KEY_ID2 |
Wenn eine Codierungsfunktion CRYPT_E_INVALID_IA5_STRING GetLastErrorzurückgibt, besteht die in *codierte Fehlerposition aus: ENTRY_INDEX – 8 Bits << 16 VALUE_INDEX – 16 Bits (Unicode-Zeichenindex) Fehlerpositionsindizes werden in *codiert wie folgt zurückgegeben: Bit 0 ist das am wenigsten signifikante Bit von DWORD. Die VALUE_INDEX des Fehlers befindet sich in bits 0 bis 15. Dies ist der Unicode-Zeichenindex. Die ENTRY_INDEX des Fehlers befindet sich in bits 16 bis 23. Makros GET_CERT_ALT_NAME_VALUE_ERR_INDEX(X) und GET_CERT_ALT_NAME_ENTRY_ERR_INDEX(X) werden definiert, um das einfache Lesen der Bitmapfelder für VALUE_INDEX und ENTRY_INDEX aus dem DWORD zu ermöglichen, das sie enthält. |
| X509_AUTHORITY_KEY_IDszOID_AUTHORITY_KEY_IDENTIFIER |
Die X509_AUTHORITY_KEY_ID wurde durch die -X509_AUTHORITY_KEY_ID2. Letzteres wird von neuen Zertifikatservern implementieren. |
| X509_BASIC_CONSTRAINTSszOID_BASIC_CONSTRAINTS |
Die X509_BASIC_CONSTRAINTS wurde durch die -X509_BASIC_CONSTRAINTS2. Letzteres wird von neuen Zertifikatservern implementieren. |
| X509_CERT | Die CERT_SIGNED_CONTENT_INFO-Struktur enthält den codierten Inhalt, der signiert werden soll, seine Signatur und den Signaturalgorithmus. Das ToBeSigned-Member ist eine codierte CERT_INFO-, CRL_INFO-, CERT_REQUEST_INFO- oder CERT_KEYGEN_REQUEST_INFO-Ausgabe eines vorherigen Aufrufs von CryptEncodeObject für einen der folgenden lpszStructType-Werte:
|
| szOID_CERT_EXTENSIONS | Kann für einen der Attributtypen in einer Zertifikatanforderung verwendet werden. |
| X509_CHOICE_OF_TIME | Wenn X509_ASN_ENCODING Zeit nach 1950 und vor 2050 liegt, wird die UTC-Zeit mit einem zweistelligen Jahr codiert. Andernfalls ist es generalisierte Zeit, die mit einem vierstelligen Jahr codiert ist. Das Datum ist genau auf Sekunden. |
| PKCS_CONTENT_INFO | Für X509_ASN_ENCODING, codiert als PKCS #7 ContentInfo-Struktur. Die CRYPT_DER_BLOB verweist auf den bereits codierten ANY-Inhalt. |
| PKCS_CONTENT_INFO_SEQUENCE_OF_ANY | Für X509_ASN_ENCODING, codiert als eine PKCS #7 ContentInfo-Struktur, die eine Sequenz von ANY umschließt. Der Wert des contentType-Mitglieds ist pszObjId,während das Inhaltsfeld die folgende Struktur hat: SequenceOfAny ::= SEQUENCE OF ANY Die CRYPT_DER_BLOB verweist auf den bereits codierten ANY-Inhalt. |
| X509_CRL_DIST_POINTSszOID_CRL_DIST_POINTS |
Wenn die Codierungsfunktion fehlschlägt und GetLastError CRYPT_E_INVALID_IA5_STRING zurücksendet, wird *codiert mit der Fehlerposition des ungültigen Zeichens aktualisiert: CRL_ISSUER_BIT – 1 Bit << 31 (0 für FullName, 1 für CRLIssuer) POINT_INDEX – 7 Bits << 24 ENTRY_INDEX – 8 Bit << 16 VALUE_INDEX – 16 Bits (Unicode-Zeichenindex) Fehlerpositionsindizes werden in *codiert wie folgt zurückgegeben: Bit 0 ist das am wenigsten signifikante Bit von DWORD. Die VALUE_INDEX des Fehlers befindet sich in bits 0 bis 15. Dies ist der Unicode-Zeichenindex. Die ENTRY_INDEX des Fehlers befindet sich in bits 16 bis 23. Makros GET_CERT_ALT_NAME_VALUE_ERR_INDEX(X) und GET_CERT_ALT_NAME_ENTRY_ERR_INDEX(X) werden definiert, um das einfache Lesen der Bitmapfelder für VALUE_INDEX und ENTRY_INDEX aus dem DWORD zu ermöglichen, das sie enthält. |
| szOID_CRL_NUMBER | Wird nur mit Basiszertifikatsperrlisten (CRLs) verwendet. Dies ist eine monoton steigende Sequenznummer für jede Zertifikatsperrliste, die von einer Zertifizierungsstelle ausgestellt wird. |
| X509_CRL_REASON_CODEszOID_CRL_REASON_CODE X509_ENUMERATED |
Die ganze Zahl kann auf einen der folgenden Aufzählwerte festgelegt werden.
|
| szOID_CRL_VIRTUAL_BASE | Wird nur mit Delta-CRLs verwendet. Sie enthält die Basis-CRL-Nummer der entsprechenden Basis-Zertifikatsperrliste. |
| X509_CROSS_CERT_DIST_POINTSszOID_CROSS_CERT_DIST_POINTS |
Für CRYPT_E_INVALID_IA5_STRING wird der Fehlerspeicherort in *codiert von CryptEncodeObject(X509_CRL_DIST_POINTS) Zurückgegeben. Fehlerspeicherort besteht aus:
|
| RSA_CSP_PUBLICKEYBLOB | Die CryptExportKey-Funktion gibt den obigen pvStructInfo-Wert für einen dwBlobType von PUBLICKEYBLOB aus. Die CryptImportKey-Funktion erwartet beim Importieren eines öffentlichen Schlüssels den obigen pvStructInfo-Wert. Wenn dwCertEncodingType X509_ASN_ENCODING ist, wird der RSA_CSP_PUBLICKEYBLOB als PKCS #1 RSAPublicKey codiert, der aus einer SEQUENCE einer modulus INTEGER-Eigenschaft und einer publicExponent INTEGER-Eigenschaft besteht. Der Modulus wird als ganze Zahl ohne Vorzeichen codiert. Für die Decodierungsfunktionen verweist pvStructInfo auf ein BLOB mit öffentlichem Schlüssel, unmittelbar gefolgt von RSAPUBKEY und den Modulusbytes. (Informationen zu BLOBs mit öffentlichem Schlüssel finden Sie unter CRYPT_INTEGER_BLOB.) Der CryptExportKey gibt den pvStructInfo-Wert für einen dwBlobType von PUBLICKEYBLOB aus. Die CryptImportKey-Funktion erwartet den pvStructInfo-Wert beim Importieren eines öffentlichen Schlüssels. Wenn dwCertEncodingType X509_ASN_ENCODING ist, wird der RSA_CSP_PUBLICKEYBLOB als PKCS #1 RSAPublicKey codiert, der aus einer SEQUENCE einer modulus INTEGER-Eigenschaft und einer publicExponent INTEGER-Eigenschaft besteht. Wenn der Modulus bei der Decodierung als ganze Zahl ohne Vorzeichen mit einem führenden 0-Byte codiert wurde, wird das 0-Byte vor der Konvertierung in die CSP-Modulusbytes entfernt. Da die PKCS -Struktur immer auf CALG_RSA_KEYX. |
| szOID_DELTA_CRL_INDICATOR | Wird nur mit Delta-CRLs verwendet. Dies ist als kritisch gekennzeichnet und enthält die Mindestanzahl der Basis-Zertifikatsperrlisten, die mit einer Delta-Zertifikatsperrliste verwendet werden kann. |
| X509_DSS_SIGNATURE | Die Bytes werden als Ausgabe vom CryptSignHash des DSS-CSP geordnet, wobei die unteren 20 Bytes der R-Wert und die höheren 20 Bytes der S-Wert sind. Die R- und S-Werte werden als ganze Zahlen ohne Vorzeichen behandelt und als Sequenz von ihnen codiert. |
| X509_ECC_SIGNATURE | Verwendet die gleiche Codierungs- und Decodierungsfunktion wie X509_DH_PARAMETERS. Die CERT_ECC_SIGNATURE-Struktur ist mit der CERT_DH_PARAMETERS-Struktur identisch, mit Ausnahme der Namen der Felder. |
| X509_ENUMERATED | Wird beim Codieren beliebiger Enumerationen verwendet, z. B. X509_CRL_REASON_CODE. |
| szOID_FRESHEST_CRL | Wird nur mit Basis-CRLs verwendet. Dies ist identisch mit einer CDP-Erweiterung mit URLs zum Abrufen der Delta-Zertifikatsperrliste. |
| X509_ISSUING_DIST_POINTszOID_ISSUING_DIST_POINT |
Für CRYPT_E_INVALID_IA5_STRING wird der Fehlerspeicherort in *codiert von CryptEncodeObject(X509_ISSUING_DIST_POINT) Zurückgegeben. Fehlerspeicherort besteht aus:
|
| X509_KEY_USAGEszOID_KEY_USAGE |
Die bit-Definitionen, die für das IntendedKeyUsage-Member der CERT_KEY_ATTRIBUTES_INFO-Struktur verwendet werden. |
| X509_KEYGEN_REQUEST_TO_BE_SIGNED | Für die Decodierungsfunktionen ist der pbEncoded-Member die Ausgabe einer der Codierungsfunktionen, die den X509_CERT lpszStructType verwendet. Diese Ausgabe enthält die " zu signierten " Daten sowie deren Signatur. Für die Codierungsfunktionen ist der pbEncoded-Member der " , der nur " signierte Daten sein soll. |
| X509_MULTI_BYTE_UINT | Vor der Codierung wird ein 0x00 eingefügt. Nach der Decodierung wird die führende 0x00 entfernt. |
| X509_NAME | Wird zum Decodieren/Codieren der Aussteller- und Betreff-Member in einer CERT_INFO verwendet. |
| X509_NAME_CONSTRAINTSszOID_NAME_CONSTRAINTS |
Für CRYPT_E_INVALID_IA5_STRING wird der Fehlerspeicherort in *codiert durch CryptEncodeObject(X509_NAME_CONSTRAINTS) Error location (Fehlerspeicherort) zurückgegeben:
|
| X509_UNICODE_ANY_STRING X509_UNICODE_NAME_VALUE |
Für die Codierungsfunktionen zeigt der pbData-Member der -Struktur, auf die zeigt, auf die Unicode-Zeichenfolge. Wenn der cbData-Member 0 (null) ist, hat die Unicode-Zeichenfolge ein beendendes NULL-Zeichen. Andernfalls ist cbData die Unicode-Zeichenfolgen-Byteanzahl. Die Byteanzahl ist doppelt so viele Zeichen. Wenn die Unicode-Zeichenfolge ein Zeichen enthält, das für den angegebenen dwValueTypeungültig ist, wird *codiert mit dem Unicode-Zeichenindex des ersten ungültigen Zeichens aktualisiert. GetLastError gibt Zurück: CRYPT_E_INVALID_NUMERIC_STRING CRYPT_E_INVALID_PRINTABLE_STRING CRYPT_E_INVALID_IA5_STRING Die Unicode-Zeichenfolge wird konvertiert, bevor sie gemäß dem angegebenen dwValueType codiert wird. Wenn dwValueType auf 0 festgelegt ist, gibt GetLastError E_INVALIDARG. Wenn dwValueType keine Zeichenfolge angibt, gibt CryptEncodeObject FALSE zurück, und GetLastError gibt CRYPT_E_NOT_CHAR_STRING. Für die Decodierungsfunktionen zeigt der pbData-Member auf eine mit NULL endende Unicode-Zeichenfolge, und der cbData-Member enthält die Byteanzahl der Unicode-Zeichenfolge ohne das beendende NULL-Zeichen. dwValueType enthält den Typ, mit dem das Objekt codiert wurde. Sie ist nicht gezwungen, CERT_RDN_UNICODE_STRING. Der codierte Wert wird gemäß dwValueType in die Unicode-Zeichenfolge konvertiert. Wenn das codierte Objekt nicht einer der Zeichenfolgentypen ist, gibt die Decodierungsfunktion FALSE zurück, und GetLastError gibt CRYPT_E_NOT_CHAR_STRING. Decodieren Sie Zeichenfolgen, die keine Zeichen sind, mithilfe eines lpszStructType-X509_ANY_STRING. |
| szOID_NEXT_UPDATE_LOCATION | Wird mit Zertifikatvertrauenslisten (Certificate Trust Lists, CTLs) verwendet, um den Speicherort für die letzte, zeit gültige CTL zu erhalten. In der Regel wird in der CERT_ALT_NAME_INFO eine URL verwendet, die den Speicherort angibt. |
| X509_OCTET_STRING | Die -Struktur enthält eine Bytesequenz. Sie wird mit einigen Verschlüsselungsalgorithmen verwendet, die einen Initialisierungsvektor in Form einer Oktettzeichenfolge erfordern. |
| CNG_RSA_PUBLIC_KEY_BLOB | Die entsprechende pvStructInfo zeigt auf eine BCRYPT_RSAKEY_BLOB unmittelbar gefolgt vom Exponenten und den Modulusbytes. Sowohl der Exponent als auch der Modulus haben das Big-Endian-Format. Die Privaten Schlüsselfelder, die aus cbPrime1 und cbPrime2 bestehen, werden auf 0 (null) festgelegt. Wenn der dwCertEncodingType-Parameter X509_ASN_ENCODINGentspricht, wird die CNG_RSA_PUBLIC_KEY_BLOB als öffentlicher PKCS #1 RSA-Schlüssel codiert, der aus einer Sequenz eines Modulus und einer publicExponent besteht. |
| PKCS_RSA_SSA_PSS_PARAMETERSszOID_RSA_SSA_PSS |
Verwenden Sie für die Codierung die folgenden Standardwerte, wenn CRYPT_RSA_SSA_PSS_PARAMETERS Strukturfelder auf NULL oder null festgelegt sind.
|
| PKCS_RSAES_OAEP_PARAMETERSszOID_RSAES_OAEP |
Verwenden Sie für die Codierung die folgenden Standardwerte, wenn CRYPT_RSAES_OAEP_PARAMETERS Strukturfelder auf NULL oder null festgelegt sind.
|
| X509_SEQUENCE_OF_ANY | Der CRYPT_DER_BLOBauf den bereits codierten ANY-Inhalt. |
| PKCS_SMIME_CAPABILITIESszOID_RSA_SMIMECapabilities |
Diese lpszStructType-Werte funktionieren für Codierungsfunktionen unterschiedlich. Aufgrund der S/MIME-Spezifikationen (Secure/Multipurpose Internet Mail Extensions) werden die codierten Parameter ausgelassen und nicht als NULL (05 00) codiert, wenn Parameters.cbData null ist. |
| szOID_SUBJECT_KEY_IDENTIFIER | Die CRYPT_INTEGER_BLOB-Struktur enthält eine Oktettzeichenfolge, eine beliebige Bytefolge. |
| X509_UNICODE_NAME | Bei Decodierungsfunktionen sind die RDN-Attributwerte (Relative Distinguished Name) Unicode-Zeichenfolgen, mit Ausnahme der dwValueType-Wertevon CERT_RDN_ENCODED_BLOB oder CERT_RDN_OCTET_STRING. Diese dwValueType-Wertesind identisch mit für X509_NAME. Diese Werte werden nicht in Unicode konvertiert. Der pbData-Member des RDN-Attributwerts verweist auf eine mit NULLbeendete Unicode-Zeichenfolge. Das cbData-Element des RDN-Attributwerts enthält die Byteanzahl der Unicode-Zeichenfolge ohne das beendende NULL-Zeichen. Der dwValueType-Member des RDN-Attributwerts enthält den im codierten Objekt verwendeten Typ. Sie ist nicht gezwungen, CERT_RDN_UNICODE_STRING. Der codierte Wert wird gemäß dwValueType in die Unicode-Zeichenfolge konvertiert. Für die Codierungsfunktionen sind die RDN-Attributwerte Unicode-Zeichenfolgen, mit Ausnahme der dwValueType-Wertevon CERT_RDN_ENCODED_BLOB oder CERT_RDN_OCTET_STRING. Diese dwValueType-Wertesind identisch mit für eine X509_NAME. Es wird nicht erwartet, dass es sich bei diesen Werten um Unicode handelt. Für die verbleibenden dwValueType-Zeichenfolgenverweist der pbData-Member des RDN-Attributwerts (Relative Distinguished Name) auf die Unicode-Zeichenfolge. Wenn der cbData-Member des RDN-Attributwerts 0 (null) ist, hat die Unicode-Zeichenfolge ein beendendes NULL-Zeichen. Andernfalls ist das cbData-Element des RDN-Attributwerts die Unicode-Zeichenfolgen-Byteanzahl. Die Byteanzahl ist doppelt so hoch wie die Zeichenanzahl und schließt das beendende NULL-Zeichen aus. Wenn der dwValueType-Member des RDN-Attributwerts CERT_RDN_ANY_TYPE ist, wird pszObjId verwendet, um einen zulässigen dwValueType zu finden. Wenn die Unicode-Zeichenfolge ein Zeichen enthält, das für den gefundenen oder angegebenen dwValueTypenicht gültig ist, wird *unicodeEncoded mit dem Fehlerspeicherort des ungültigen Zeichens aktualisiert. Für ein ungültiges Zeichen gibt GetLastError Dies zurück: CRYPT_E_INVALID_NUMERIC_STRING CRYPT_E_INVALID_PRINTABLE_STRING CRYPT_E_INVALID_IA5_STRING Die Unicode-Zeichenfolge wird konvertiert, bevor sie gemäß dem angegebenen dwValueType oder dem dwValueType des Objektbezeichners codiert wird. Die Fehlerpositionsindizes der Codierungsfunktionen werden wie folgt in *codiert zurückgegeben: Die VALUE_INDEX des Fehlers befindet sich in bits 0 bis 15. Die ATTR_INDEX Fehlers befindet sich in bits 16 bis 21. Die RDN_INDEX Fehlers befindet sich in bits 22 bis 31. Bit 0 ist das am wenigsten signifikante Bit von DWORD. Die GET_CERT_UNICODE_RDN_ERR_INDEX(X), GET_CERT_UNICODE_ATTR_ERR_INDEX(X) und GET_CERT_UNICODE_VALUE_ERR_INDEX(X) definierten Makros ermöglichen das einfache Lesen der Bitmapfelder für VALUE_INDEX, ATTR_INDEX und RDN_INDEX aus dem DWORD, das sie enthält. |
| PKCS_UTC_TIMEszOID_RSA_signingTime |
Für X509_ASN_ENCODING die UTC-Zeit, die genau in Sekunden codiert ist und ein zweistelliges Jahr verwendet. |
Requirements (Anforderungen)
| Anforderung | Wert |
|---|---|
| Unterstützte Mindestversion (Client) |
Windows [XP-Desktop-Apps | UWP-Apps] |
| Unterstützte Mindestversion (Server) |
Windows UWP-Apps für Server [ 2003-Desktop-Apps |] |
| Header |
|