Delen via


Cryptografiefuncties

Cryptografiefuncties worden als volgt gecategoriseerd op basis van gebruik:

CryptXML-functies

De cryptografische XML-functies bieden een API voor het maken en vertegenwoordigen van digitale handtekeningen met behulp van xml-opgemaakte gegevens. Zie de specificatie XML-Signature Syntaxis en Verwerking op https://go.microsoft.com/fwlink/p/?linkid=139649voor meer informatie over xml-opgemaakte handtekeningen.

Functie Beschrijving
A_SHAFinal Berekent de laatste hash van de gegevens die zijn ingevoerd door de md5Update-functie.
A_SHAInit Hiermee wordt de hashing van een gegevensstroom gestart.
A_SHAUpdate Hiermee voegt u gegevens toe aan een opgegeven hash-object.
CryptXmlCreateReference Hiermee maakt u een verwijzing naar een XML-handtekening.
CryptXmlAddObject- Hiermee voegt u het element Object toe aan de handtekening in de documentcontext die is geopend voor codering.
CryptXmlClose- Hiermee sluit u een cryptografische XML-objectgreep.
CryptXmlDigestReference Wordt gebruikt door een toepassing om de opgeloste verwijzing te verteren. Met deze functie worden transformaties toegepast voordat de samenvatting wordt bijgewerkt.
CryptXmlDllCloseDigest- Hiermee wordt de CRYPT_XML_DIGEST vrijgemaakt die is toegewezen door de functie CryptXmlDllCreateDigest.
CryptXmlDllCreateDigest Hiermee maakt u een digest-object voor de opgegeven methode.
CryptXmlDllCreateKey Parseert het KeyValue element en maakt een Cryptografie-API: BNG BCrypt-sleutelhandgreep (Next Generation) BCrypt om een handtekening te verifiëren.
CryptXmlDllDigestData- Hiermee worden gegevens in de samenvatting opgenomen.
CryptXmlDllEncodeAlgorithm Codeert SignatureMethod- of DigestMethod-elementen voor flexibele algoritmen met standaardparameters.
CryptXmlDllEncodeKeyValue Codeert een element KeyValue.
CryptXmlDllFinalizeDigest Haalt de digest-waarde op.
CryptXmlDllGetAlgorithmInfo Decodeert het XML-algoritme en retourneert informatie over het algoritme.
CryptXmlDllGetInterface Hiermee wordt een aanwijzer opgehaald naar de cryptografische extensiefuncties voor het opgegeven algoritme.
CryptXmlDllSignData- Ondertekent gegevens.
CryptXmlDllVerifySignature- Controleert een handtekening.
CryptXmlEncode- Codeert handtekeninggegevens met behulp van de opgegeven callback-functie voor XML Writer.
CryptXmlGetAlgorithmInfo Decodeert de CRYPT_XML_ALGORITHM structuur en retourneert informatie over het algoritme.
CryptXmlGetDocContext- Retourneert de documentcontext die is opgegeven door de opgegeven ingang.
CryptXmlGetReference Retourneert het verwijzingselement dat is opgegeven door de opgegeven ingang.
CryptXmlGetSignature- Retourneert een XML Signature element.
CryptXmlGetStatus Retourneert een CRYPT_XML_STATUS structuur die statusinformatie bevat over het object dat is opgegeven door de opgegeven ingang.
CryptXmlGetTransforms- Retourneert informatie over de standaardtransformatieketenengine.
CryptXmlImportPublicKey Hiermee importeert u de openbare sleutel die is opgegeven door de opgegeven ingang.
CryptXmlOpenToEncode- Hiermee opent u een digitale XML-handtekening om te coderen en retourneert u een ingang van het geopende Signature-element. De ingang bevat een documentcontext met één CRYPT_XML_SIGNATURE structuur en blijft open totdat de functie CryptXmlClose wordt aangeroepen.
CryptXmlOpenToDecode- Hiermee opent u een digitale XML-handtekening om de greep van de documentcontext te decoderen en te retourneren waarmee een CRYPT_XML_SIGNATURE structuur wordt ingekapseld. De documentcontext kan een of meer elementen van handtekening bevatten.
CryptXmlSetHMACSecret- Hiermee stelt u het HMAC-geheim in de ingang in voordat u de CryptXmlSign- of functie CryptXmlVerify aanroept.
CryptXmlSign- Hiermee maakt u een cryptografische handtekening van een SignedInfo element.
CryptXmlVerifySignature- Voert een cryptografische handtekeningvalidatie uit van een SignedInfo element.
PFN_CRYPT_XML_WRITE_CALLBACK Hiermee maakt u een transformatie voor een opgegeven gegevensprovider.
PFN_CRYPT_XML_CREATE_TRANSFORM Schrijft cryptografische XML-gegevens.
PFN_CRYPT_XML_DATA_PROVIDER_READ Leest cryptografische XML-gegevens.
PFN_CRYPT_XML_DATA_PROVIDER_CLOSE Hiermee wordt de cryptografische XML-gegevensprovider uitgebracht.
PFN_CRYPT_XML_ENUM_ALG_INFO Opsomming van vooraf gedefinieerde en geregistreerde CRYPT_XML_ALGORITHM_INFO vermeldingen.

 

Ondertekenfuncties

Biedt functies voor het ondertekenen en tijdstempelgegevens.

Functie Beschrijving
SignerFreeSignerContext Hiermee wordt een SIGNER_CONTEXT structuur vrijgemaakt die is toegewezen door een eerdere aanroep naar de functie SignerSignEx.
SignError- Roept de functie GetLastError aan en converteert de retourcode naar een HRESULT-.
SignerSign- Ondertekent het opgegeven bestand.
SignerSignEx- Ondertekent het opgegeven bestand en retourneert een aanwijzer naar de ondertekende gegevens.
SignerSignEx2- Ondertekent en tijdstempels het opgegeven bestand, waardoor meerdere geneste handtekeningen zijn toegestaan.
SignerTimeStamp Tijdstempels voor het opgegeven onderwerp. Deze functie ondersteunt authenticode-tijdstempels. Als u X.509 RFC 3161-tijdstempels (Public Key Infrastructure) wilt uitvoeren, gebruikt u de functie SignerTimeStampEx2.
SignerTimeStampEx Tijdstempels voor het opgegeven onderwerp en retourneert desgewenst een aanwijzer naar een SIGNER_CONTEXT structuur die een aanwijzer bevat naar een BLOB-. Deze functie ondersteunt authenticode-tijdstempels. Als u X.509 RFC 3161-tijdstempels (Public Key Infrastructure) wilt uitvoeren, gebruikt u de functie SignerTimeStampEx2.
SignerTimeStampEx2 Tijdstempels voor het opgegeven onderwerp en retourneert desgewenst een aanwijzer naar een SIGNER_CONTEXT structuur die een aanwijzer bevat naar een BLOB-. Deze functie kan worden gebruikt voor het uitvoeren van X.509 Public Key Infrastructure, RFC 3161-compatibele tijdstempels.
SignerTimeStampEx3 Tijdstempels voor het opgegeven onderwerp en ondersteunen het instellen van tijdstempels op meerdere handtekeningen.

 

Basiscryptografiefuncties

Basiscryptografiefuncties bieden de meest flexibele middelen voor het ontwikkelen van cryptografietoepassingen. Alle communicatie met een cryptografische serviceprovider (CSP) vindt plaats via deze functies.

Een CSP is een onafhankelijke module die alle cryptografische bewerkingen uitvoert. Er is ten minste één CSP vereist voor elke toepassing die gebruikmaakt van cryptografische functies. Een enkele toepassing kan af en toe meer dan één CSP gebruiken.

Als er meer dan één CSP wordt gebruikt, kan de CSP worden opgegeven in de cryptografische cryptografische functie-aanroepen van CryptoAPI. Eén CSP, de Microsoft Base Cryptographic Provider, wordt gebundeld met de CryptoAPI-. Deze CSP wordt gebruikt als een standaardprovider door veel van de CryptoAPI-functies als er geen andere CSP is opgegeven.

Elke CSP biedt een andere implementatie van de cryptografische ondersteuning die wordt geboden aan CryptoAPI. Sommige bieden sterkere cryptografische algoritmen; andere bevatten hardwareonderdelen, zoals smartcards. Daarnaast kunnen sommige CSP's af en toe rechtstreeks communiceren met gebruikers, bijvoorbeeld wanneer digitale handtekeningen worden uitgevoerd met behulp van de persoonlijke sleutel van de gebruiker handtekening.

Basiscryptografiefuncties bevinden zich in de volgende brede groepen:

  • Functies van serviceprovider
  • Functies voor sleutelgeneratie en Exchange
  • Functies voor objectcodering en -decodering
  • Functies voor gegevensversleuteling en -ontsleuteling
  • Hash- en digitale handtekeningfuncties

Functies van serviceprovider

Toepassingen gebruiken de volgende servicefuncties om verbinding te maken met een cryptografische serviceprovider (CSP).

Functie Beschrijving
CryptAcquireContext Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee verkrijgt u een ingang voor de sleutelcontainer van de huidige gebruiker binnen een bepaalde CSP.
CryptContextAddRef- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee wordt het verwijzingsaantal verhoogd op een HCRYPTPROV--ingang.
CryptEnumProviders Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Inventariseert de providers op een computer.
CryptEnumProviderTypes Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Inventariseert de typen providers die op de computer worden ondersteund.
CryptGetDefaultProvider Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Bepaalt de standaard-CSP voor de huidige gebruiker of voor de computer voor een opgegeven providertype.
CryptGetProvParam- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Haalt de parameters op die de bewerkingen van een CSP bepalen.
CryptInstallDefaultContext Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Installeert een eerder verkregen HCRYPTPROV context die als standaardcontext moet worden gebruikt.
CryptReleaseContext Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee wordt de handle uitgebracht die is verkregen door de functie CryptAcquireContext.
CryptSetProvider en CryptSetProviderEx- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee geeft u de standaard-CSP van de gebruiker voor een bepaald CSP-type.
CryptSetProvParam- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee geeft u kenmerken van een CSP.
CryptUninstallDefaultContext Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee verwijdert u een standaardcontext die eerder is geïnstalleerd door CryptInstallDefaultContext.
FreeCryptProvFromCertEx- Hiermee wordt de ingang vrijgegeven aan een cryptografische serviceprovider (CSP) of aan een Cryptografie-API: CNG-sleutel (Next Generation).

 

Functies voor sleutelgeneratie en Exchange

Sleutelgeneratie- en uitwisselingsfuncties sleutels uitwisselen met andere gebruikers en cryptografische sleutelsmaken, configureren en vernietigen.

Functie Beschrijving
CryptDeriveKey- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee maakt u een sleutel die is afgeleid van een wachtwoord.
CryptDestroyKey Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Vernietigt een sleutel.
CryptDuplicateKey Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee maakt u een exacte kopie van een sleutel, inclusief de status van de sleutel.
CryptExportKey Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee wordt een sleutel van de CSP overgedragen naar een blob--sleutel in de geheugenruimte van de toepassing.
CryptGenKey- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee maakt u een willekeurige sleutel.
CryptGenRandom- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Genereert willekeurige gegevens.
CryptGetKeyParam- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Haalt de parameters van een sleutel op.
CryptGetUserKey Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee haalt u een ingang op voor de sleuteluitwisseling of handtekeningsleutel.
CryptImportKey Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee wordt een sleutel van een blob- overgedragen naar een CSP.
CryptSetKeyParam- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee geeft u de parameters van een sleutel.

 

Functies voor objectcodering en -decodering

Dit zijn gegeneraliseerde coderings- en decoderingsfuncties. Ze worden gebruikt voor het coderen en decoderen van certificaten, certificaatintrekkingslijsten (CRL's), certificaataanvragenen certificaatextensies.

Functie Beschrijving
CryptDecodeObject Decodeert een structuur van het type lpszStructType.
CryptDecodeObjectEx- Decodeert een structuur van het type lpszStructType. CryptDecodeObjectEx ondersteunt de optie voor geheugentoewijzing met één wachtwoord.
CryptEncodeObject- Codeert een structuur van het type lpszStructType.
CryptEncodeObjectEx- Codeert een structuur van het type lpszStructType. CryptEncodeObjectEx ondersteunt de optie voor geheugentoewijzing met één wachtwoord.

 

Functies voor gegevensversleuteling en -ontsleuteling

De volgende functies ondersteunen versleutelings- en ontsleutelingsbewerkingen. CryptEncrypt en CryptDecrypt vereisen een cryptografische sleutel voordat deze wordt aangeroepen. Dit wordt gedaan met behulp van de CryptGenKey, CryptDeriveKeyof functie CryptImportKey. Het versleutelingsalgoritmen wordt opgegeven wanneer de sleutel wordt gemaakt. CryptSetKeyParam- kunt aanvullende versleutelingsparameters instellen.

Functie Beschrijving
CryptDecrypt- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Ontsleutelt een sectie van coderingstekst met behulp van de opgegeven versleutelingssleutel.
CryptEncrypt Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee wordt een sectie van plaintext- versleuteld met behulp van de opgegeven versleutelingssleutel.
CryptProtectData- Hiermee wordt versleuteling uitgevoerd op de gegevens in een DATA_BLOB structuur.
CryptProtectMemory- Hiermee versleutelt u het geheugen om gevoelige informatie te beveiligen.
CryptUnprotectData- Voert een ontsleutelings- en integriteitscontrole uit van de gegevens in een DATA_BLOB.
CryptUnprotectMemory- Ontsleutelt het geheugen dat is versleuteld met CryptProtectMemory-.

 

Hash- en digitale handtekeningfuncties

Deze functies berekenen hashes van gegevens en maken en verifiëren ook digitale handtekeningen. Hashes worden ook wel berichtsamenvatten genoemd.

Functie Beschrijving
CryptCreateHash- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee maakt u een leeg hash-object.
CryptDestroyHash- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Vernietigt een hash-object.
CryptDuplicateHash- Een hash-object dupliceren.
CryptGetHashParam- Hiermee haalt u een hash-objectparameter op.
CryptHashData- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hashes een blok met gegevens en voegt deze toe aan het opgegeven hash-object.
CryptHashSessionKey Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hashes een sessiesleutel en voegt deze toe aan het opgegeven hash-object.
CryptSetHashParam- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee stelt u een hash-objectparameter in.
CryptSignHash- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Ondertekent het opgegeven hash-object.
CryptUIWizDigitalSign Hiermee wordt een wizard weergegeven waarmee een document of een BLOB-digitaal wordt ondertekend.
CryptUIWizFreeDigitalSignContext- Brengt een aanwijzer naar een CRYPTUI_WIZ_DIGITAL_SIGN_CONTEXT structuur.
CryptVerifySignature- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee wordt een digitale handtekening geverifieerd, op basis van een ingang voor het hash-object.
PFNCFILTERPROC- Hiermee filtert u de certificaten die worden weergegeven in de wizard digitale handtekening die wordt weergegeven door de functie CryptUIWizDigitalSign.

 

Functies voor certificaat- en certificaatarchief

Certificaat- en certificaatarchieffuncties beheren het gebruik, de opslag en het ophalen van certificaten, certificaatintrekkingslijsten (CRL's) en certificaatvertrouwenslijsten (CCL's). Deze functies zijn onderverdeeld in de volgende groepen:

  • Functies voor certificaatarchief
  • Onderhoudsfuncties voor certificaat- en certificaatarchief
  • Certificaatfuncties
  • Functies van certificaatintrekkingslijst
  • Functies voor vertrouwenslijst met certificaten
  • Uitgebreide eigenschapsfuncties
  • MakeCert-functies

Functies voor certificaatarchief

Een gebruikerssite kan in de loop van de tijd veel certificaten verzamelen. Een site heeft doorgaans certificaten voor de gebruiker van de site, evenals andere certificaten die die personen en entiteiten beschrijven met wie de gebruiker communiceert. Voor elke entiteit kan er meer dan één certificaat zijn. Voor elk afzonderlijk certificaat moet er een keten zijn van het verifiëren van certificaten die een trail naar een vertrouwd basiscertificaat bieden. certificaatarchieven en de bijbehorende functies bieden functionaliteit voor het opslaan, ophalen, inventariseren, verifiëren en gebruiken van de gegevens die zijn opgeslagen in de certificaten.

Functie Beschrijving
CertAddStoreToCollection- Voegt een certificaatarchief op hetzelfde niveau toe aan een certificaatarchief voor verzamelingen.
CertCloseStore- Hiermee sluit u een certificaatarchiefgreep.
CertControlStore- Hiermee kan een toepassing worden gewaarschuwd wanneer er een verschil is tussen de inhoud van een archief in de cache en de inhoud van het archief dat wordt bewaard in de opslag. Het biedt ook desynchronisatie van het in de cache opgeslagen archief, indien nodig, en biedt een middel om wijzigingen door te voeren die zijn aangebracht in het cachearchief om permanente opslag te behouden.
CertDuplicateStore- Hiermee wordt een winkelgreep gedupliceerd door het aantal verwijzingte verhogen.
CertEnumPhysicalStore- Inventariseert de fysieke winkels voor een opgegeven systeemarchief.
CertEnumSystemStore- Inventariseert alle beschikbare systeemarchieven.
CertEnumSystemStoreLocation- Inventariseert alle locaties met een beschikbaar systeemarchief.
CertGetStoreProperty- Hiermee haalt u een winkeleigenschap op.
CertOpenStore- Hiermee opent u een certificaatarchief met een opgegeven archiefprovidertype.
CertOpenSystemStore- Hiermee opent u een systeemcertificaatarchief op basis van een subsysteemprotocol.
CertRegisterPhysicalStore- Hiermee voegt u een fysiek archief toe aan een registersysteemarchiefverzameling.
CertRegisterSystemStore- Registreert een systeemarchief.
CertRemoveStoreFromCollection Hiermee verwijdert u een certificaatarchief op hetzelfde niveau uit een verzamelingsarchief.
CertSaveStore- Slaat het certificaatarchief op.
CertSetStoreProperty- Hiermee stelt u een winkeleigenschap in.
CertUnregisterPhysicalStore Hiermee verwijdert u een fysiek archief uit een opgegeven systeemarchiefverzameling.
CertUnregisterSystemStore- Registratie van een opgegeven systeemarchief ongedaan maken.
CryptUIWizExport Geeft een wizard weer die een certificaat, certificaatvertrouwenslijst (CTL), certificaatintrekkingslijst (CRL) of certificaatarchief exporteert.
CryptUIWizImport- Geeft een wizard weer waarmee een certificaat, certificaatvertrouwenslijst (CTL), certificaatintrekkingslijst (CRL) of certificaatarchief wordt geïmporteerd.

 

Onderhoudsfuncties voor certificaat- en certificaatarchief

CryptoAPI biedt een set algemene functies voor certificaat- en certificaatarchiefonderhoud.

Functie Beschrijving
CertAddSerializedElementToStore- Hiermee voegt u het geserialiseerde certificaat of CRL-element toe aan het archief.
CertCreateContext- Hiermee maakt u de opgegeven context op basis van de gecodeerde bytes. De nieuwe context wordt niet in een winkel geplaatst.
CertEnumSubjectInSortedCTL- Inventariseert de TrustedSubjects in een gesorteerde CTL-context.
CertFindSubjectInCTL- Hiermee zoekt u het opgegeven onderwerp in een CTL.
CertFindSubjectInSortedCTL- Hiermee zoekt u het opgegeven onderwerp in een gesorteerde CTL.
OpenPersonalTrustDBDialog en OpenPersonalTrustDBDialogEx Hiermee wordt het dialoogvenster Certificaten weergegeven.

 

Certificaatfuncties

De meeste functies van Certificate hebben gerelateerde functies voor CRL's en CCL's. Zie Functies voor certificaatintrekkingslijsten en functies voor certificaatvertrouwenslijsten voor meer informatie over gerelateerde CRL- en CTL-functies.

Functie Beschrijving
CertAddCertificateContextToStore- Hiermee voegt u een certificaatcontext toe aan het certificaatarchief.
CertAddCertificateLinkToStore- Hiermee voegt u een koppeling in een certificaatarchief toe aan een certificaatcontext in een ander archief.
CertAddEncodedCertificateToStore- Converteert het gecodeerde certificaat naar een certificaatcontext en voegt vervolgens de context toe aan het certificaatarchief.
CertAddRefServerOcspResponse- Hiermee wordt het aantal verwijzingen voor een HCERT_SERVER_OCSP_RESPONSE-ingang verhoogd.
CertAddRefServerOcspResponseContext Hiermee wordt het aantal verwijzingen voor een CERT_SERVER_OCSP_RESPONSE_CONTEXT structuur verhoogd.
CertCloseServerOcspResponse- Hiermee sluit u een online certificaatstatusprotocol (OCSP)-serverantwoordingshandgreep.
CertCreateCertificateContext Hiermee maakt u een certificaatcontext op basis van een gecodeerd certificaat. De gemaakte context wordt niet in een certificaatarchief geplaatst.
CertCreateSelfSignCertificate Hiermee maakt u een zelfondertekend certificaat.
CertDeleteCertificateFromStore- Hiermee verwijdert u een certificaat uit het certificaatarchief.
CertDuplicateCertificateContext- Hiermee wordt een certificaatcontext gedupliceerd door het verwijzingsaantalte verhogen.
CertEnumCertificatesInStore- Inventariseert de certificaatcontexten in het certificaatarchief.
CertFindCertificateInStore- Hiermee vindt u de eerste of volgende certificaatcontext in het certificaatarchief dat voldoet aan een zoekcriterium.
CertFreeCertificateContext- Er wordt een certificaatcontext vrijgemaakt.
CertGetIssuerCertificateFromStore- Hiermee haalt u een certificaatcontext op uit het certificaatarchief voor de eerste of volgende uitgever van het opgegeven onderwerpcertificaat.
CertGetServerOcspResponseContext Haalt een niet-blokkerende, tijd geldige online certificaatstatusprotocol antwoordcontext (OCSP) voor de opgegeven ingang op.
CertGetSubjectCertificateFromStore- Haalt het certificaatarchief op in de context van het onderwerpcertificaat, die uniek wordt geïdentificeerd door de verlener en het serienummer.
CertGetValidUsages Retourneert een matrix met gebruiksgegevens die bestaan uit het snijpunt van het geldige gebruik voor alle certificaten in een matrix met certificaten.
CertOpenServerOcspResponse- Hiermee opent u een ingang naar een online certificaatstatusprotocol (OCSP) dat is gekoppeld aan een servercertificaatketen.
CertRetrieveLogoOrBiometricInfo Voert een URL-ophalen van logo- of biometrische gegevens uit die zijn opgegeven in de szOID_LOGOTYPE_EXT of szOID_BIOMETRIC_EXT certificaatextensie.
CertSelectCertificate Geeft een dialoogvenster weer waarmee de gebruiker certificaten kan selecteren uit een set certificaten die voldoen aan een bepaalde criteria.
CertSelectCertificateChains Hiermee worden certificaatketens opgehaald op basis van opgegeven selectiecriteria.
CertSelectionGetSerializedBlob- Een helperfunctie die wordt gebruikt voor het ophalen van een geserialiseerd certificaat BLOB- uit een CERT_SELECTUI_INPUT structuur.
CertSerializeCertificateStoreElement Serialiseert het gecodeerde certificaat van een certificaatcontext en een gecodeerde weergave van de eigenschappen.
CertVerifySubjectCertificateContext Voert de ingeschakelde verificatiecontroles uit op het onderwerpcertificaat met behulp van de verlener.
CryptUIDlgCertMgr- Hiermee wordt een dialoogvenster weergegeven waarmee de gebruiker certificaten kan beheren.
CryptUIDlgSelectCertificate Hiermee wordt een dialoogvenster weergegeven waarmee een gebruiker een certificaat kan selecteren.
CryptUIDlgSelectCertificateFromStore- Hiermee wordt een dialoogvenster weergegeven waarin het selecteren van een certificaat uit een opgegeven archief is toegestaan.
CryptUIDlgViewCertificate Hiermee wordt een dialoogvenster weergegeven waarin een opgegeven certificaat wordt weergegeven.
CryptUIDlgViewContext Geeft een certificaat, CRL of CTL weer.
CryptUIDlgViewSignerInfo Geeft een dialoogvenster weer met de ondertekenaargegevens voor een ondertekend bericht.
GetFriendlyNameOfCert- Haalt de weergavenaam voor een certificaat op.
RKeyCloseKeyService Hiermee sluit u een sleutelservicehandgreep.
RKeyOpenKeyService Hiermee opent u een sleutelservicehandgreep op een externe computer.
RKeyPFXInstall Hiermee installeert u een certificaat op een externe computer.

 

Functies van certificaatintrekkingslijst

Deze functies beheren de opslag en het ophalen van certificaatintrekkingslijsten (CRL's).

Functie Beschrijving
CertAddCRLContextToStore- Hiermee voegt u een CRL-context toe aan het certificaatarchief.
CertAddCRLLinkToStore- Hiermee voegt u een koppeling in een winkel toe aan een CRL-context in een andere winkel.
CertAddEncodedCRLToStore- Converteert de gecodeerde CRL naar een CRL-context en voegt vervolgens de context toe aan het certificaatarchief.
CertCreateCRLContext Hiermee maakt u een CRL-context op basis van een gecodeerde CRL. De gemaakte context wordt niet in een certificaatarchief geplaatst.
CertDeleteCRLFromStore- Hiermee verwijdert u een CRL uit het certificaatarchief.
CertDuplicateCRLContext- Hiermee wordt een CRL-context gedupliceerd door het verwijzingsaantalte verhogen.
CertEnumCRLsInStore- Inventariseert de CRL-contexten in een winkel.
CertFindCertificateInCRL- Zoekt in de certificaatintrekkingslijst (CRL) voor het opgegeven certificaat.
CertFindCRLInStore- Hiermee zoekt u de eerste of volgende CRL-context in het certificaatarchief die overeenkomt met een specifiek criterium.
CertFreeCRLContext- Er wordt een CRL-context vrijgemaakt.
CertGetCRLFromStore- Hiermee haalt u de eerste of volgende CRL-context op uit het certificaatarchief voor het opgegeven certificaat voor verleners.
CertSerializeCRLStoreElement Serialiseert de gecodeerde CRL-context van de CRL en de eigenschappen ervan.

 

Functies voor vertrouwenslijst met certificaten

Deze functies beheren de opslag en het ophalen van certificaatvertrouwenslijsten (CCL's).

Functie Beschrijving
CertAddCTLContextToStore- Hiermee voegt u een CTL-context toe aan het certificaatarchief.
CertAddCTLLinkToStore- Hiermee voegt u een koppeling in een winkel toe aan een CRL-context in een andere winkel.
CertAddEncodedCTLToStore- Converteert de gecodeerde CTL naar een CTL-context en voegt vervolgens de context toe aan het certificaatarchief.
CertCreateCTLContext Hiermee maakt u een CTL-context op basis van een gecodeerde certificaatvertrouwenslijst. De gemaakte context wordt niet in een certificaatarchief geplaatst.
CertDeleteCTLFromStore- Hiermee verwijdert u een CTL uit het certificaatarchief.
CertDuplicateCTLContext- Hiermee wordt een CTL-context gedupliceerd door het aantal verwijzingen te verhogen.
CertEnumCTLsInStore- Inventariseert de CTL-contexten in het certificaatarchief.
CertFindCTLInStore- Zoekt de eerste of volgende CTL-context in het certificaatarchief die overeenkomt met een specifiek criterium.
CertFreeCTLContext- Er wordt een CTL-context vrijgemaakt.
CertModifyCertificatesToTrust Hiermee wijzigt u de set certificaten in een CTL voor een bepaald doel.
CertSerializeCTLStoreElement Serialiseert de gecodeerde CTL-context van de CTL en de eigenschappen ervan.

 

Uitgebreide eigenschapsfuncties

De volgende functies werken met uitgebreide eigenschappen van certificaten, CRL's en CRL's.

Functie Beschrijving
CertEnumCertificateContextProperties- Inventariseert de eigenschappen voor de opgegeven certificaatcontext.
CertEnumCRLContextProperties- Inventariseert de eigenschappen voor de opgegeven CRL-context.
CertEnumCTLContextProperties- Inventariseert de eigenschappen voor de opgegeven CTL-context.
CertGetCertificateContextProperty- Haalt certificaateigenschappen op.
CertGetCRLContextProperty- Hiermee worden CRL-eigenschappen opgehaald.
CertGetCTLContextProperty- Hiermee worden CTL-eigenschappen opgehaald.
CertSetCertificateContextProperty- Hiermee stelt u certificaateigenschappen in.
CertSetCRLContextProperty- Hiermee stelt u CRL-eigenschappen in.
CertSetCTLContextProperty- Hiermee stelt u CTL-eigenschappen in.

 

MakeCert-functies

De volgende functies ondersteunen het hulpprogramma MakeCert.

Functie Beschrijving
FreeCryptProvFromCert- Hiermee wordt de ingang vrijgegeven aan een cryptografische serviceprovider (CSP) en wordt eventueel de tijdelijke container verwijderd die is gemaakt door de functie GetCryptProvFromCert.
GetCryptProvFromCert Hiermee haalt u een ingang op voor een CSP en een sleutelspecificatie voor een certificaatcontext.
PvkFreeCryptProv- Hiermee wordt de ingang vrijgegeven aan een CSP en wordt eventueel de tijdelijke container verwijderd die is gemaakt door de functie PvkGetCryptProv.
PvkGetCryptProv- Hiermee haalt u een ingang op voor een CSP op basis van een persoonlijke sleutel bestandsnaam of een sleutelcontainernaam.
PvkPrivateKeyAcquireContextFromMemory Hiermee maakt u een tijdelijke container in de CSP en laadt u een persoonlijke sleutel uit het geheugen in de container.
PvkPrivateKeySave- Slaat een persoonlijke sleutel en de bijbehorende openbare sleutel op in een opgegeven bestand.
SignError- Roept GetLastError- aan en converteert de retourcode naar een HRESULT-.

 

Functies voor certificaatverificatie

Certificaten worden geverifieerd met CTL's of certificaatketens. Er zijn functies beschikbaar voor beide:

  • Verificatiefuncties met CTL's
  • Verificatiefuncties voor certificaatketens

Verificatiefuncties met CTL's

Deze functies maken gebruik van CTL's in het verificatieproces. Aanvullende functies voor het werken met CTL's vindt u in functies voor certificaatvertrouwenslijsten en uitgebreide eigenschappenfuncties.

De volgende functies gebruiken CTL's rechtstreeks voor verificatie.

Functie Beschrijving
CertVerifyCTLUsage Controleert het gebruik van een CTL.
CryptMsgEncodeAndSignCTL- Codeert en ondertekent een CTL als een bericht.
CryptMsgGetAndVerifySigner- Hiermee haalt u een CTL op uit een bericht en controleert u deze.
CryptMsgSignCTL- Hiermee wordt een bericht ondertekend dat een CTL bevat.

 

Verificatiefuncties voor certificaatketens

Certificaatketens zijn gebouwd om vertrouwensinformatie over afzonderlijke certificaten te bieden.

Functienaam Beschrijving
CertCreateCertificateChainEngine- Hiermee maakt u een nieuwe, niet-standaardketenengine voor een toepassing.
CertCreateCTLEntryFromCertificateContextProperties Hiermee maakt u een CTL-vermelding waarvan de kenmerken de eigenschappen van de certificaatcontext zijn.
CertDuplicateCertificateChain Hiermee wordt een certificaatketen gedupliceerd door het verwijzingsaantal van de keten te verhogen en een aanwijzer naar de keten te retourneren.
CertFindChainInStore- Hiermee vindt u de eerste of volgende context van de certificaatketen in een archief.
CertFreeCertificateChain Hiermee wordt een certificaatketen vrijgemaakt door het aantal referentiegegevens te verminderen.
CertFreeCertificateChainEngine Frees a nondefault certificate chain engine.
CertFreeCertificateChainList Hiermee wordt de matrix met aanwijzers vrijgemaakt om contexten te koppelen.
CertGetCertificateChain Bouwt een ketencontext vanaf een eindcertificaat en gaat zo mogelijk terug naar een vertrouwd basiscertificaat.
CertIsValidCRLForCertificate Controleert een CRL- om te bepalen of het een specifiek certificaat bevat als dat certificaat is ingetrokken.
CertSetCertificateContextPropertiesFromCTLEntry- Hiermee stelt u eigenschappen in voor de certificaatcontext met behulp van de kenmerken in de CTL-vermelding.
CertVerifyCertificateChainPolicy- Controleert een certificaatketen om de geldigheid ervan te controleren, met inbegrip van de naleving van eventuele opgegeven geldigheidsbeleidscriteria.

 

Berichtfuncties

CryptoAPI berichtfuncties bestaan uit twee groepen functies: berichtfuncties op laag niveau en vereenvoudigde berichtfuncties.

Berichtenfuncties op laag niveau maken en werken rechtstreeks met PKCS #7-berichten. Deze functies coderen PKCS #7-gegevens voor verzending en decoderen PKCS #7-gegevens die zijn ontvangen. Ze ontsleutelen en verifiëren ook de handtekeningen van ontvangen berichten. Zie Berichten op laag niveauvoor een overzicht van de PKCS #7-standaardberichten en berichten op laag niveau.

Vereenvoudigde berichtfuncties bevinden zich op een hoger niveau en verpakken verschillende berichtfuncties op laag niveau en certificaatfuncties in één functie die een specifieke taak op een specifieke manier uitvoeren. Deze functies verminderen het aantal functie-aanroepen dat nodig is om een taak uit te voeren, waardoor cryptoAPI-gebruik wordt vereenvoudigd. Zie Vereenvoudigde berichtenvoor een overzicht van vereenvoudigde berichten.

  • Berichtenfuncties op laag niveau
  • Vereenvoudigde berichtfuncties

Berichtenfuncties op laag niveau

Berichtenfuncties op laag niveau bieden de functionaliteit die nodig is voor het coderen van gegevens voor verzending en het decoderen van PKCS #7-berichten die zijn ontvangen. Functionaliteit wordt ook geboden om de handtekeningen van ontvangen berichten te ontsleutelen en te verifiëren. Het gebruik van deze berichtenfuncties op laag niveau wordt in de meeste toepassingen niet aanbevolen. Voor de meeste toepassingen is het gebruik van Vereenvoudigde berichtfuncties, die verschillende berichtfuncties op laag niveau verpakken in één functie-aanroep, de voorkeur.

Functie Beschrijving
CryptMsgCalculateEncodedLength- Berekent de lengte van een gecodeerd cryptografisch bericht.
CryptMsgClose- Hiermee sluit u een ingang van een cryptografisch bericht.
CryptMsgControl- Voert een speciale besturingsfunctie uit na de laatste CryptMsgUpdate van een gecodeerd of gedecodeerd cryptografisch bericht.
CryptMsgCountersign- Een reeds bestaande handtekening in een bericht ondertekenen.
CryptMsgCountersignEncoded Hiermee wordt een reeds bestaande handtekening (gecodeerde SignerInfo, zoals gedefinieerd door PKCS #7) tellers toegevoegd.
CryptMsgDuplicate Hiermee wordt een cryptografische berichtgreep gedupliceerd door het aantal verwijzingte verhogen. Het aantal verwijzingen houdt de levensduur van het bericht bij.
CryptMsgGetParam- Haalt een parameter op na het coderen of decoderen van een cryptografisch bericht.
CryptMsgOpenToDecode- Hiermee opent u een cryptografisch bericht voor decodering.
CryptMsgOpenToEncode- Hiermee opent u een cryptografisch bericht voor codering.
CryptMsgUpdate- Hiermee werkt u de inhoud van een cryptografisch bericht bij.
CryptMsgVerifyCountersignatureEncoded- Hiermee wordt een aantekening in termen van de structuur SignerInfo (zoals gedefinieerd door PKCS #7).
CryptMsgVerifyCountersignatureEncodedEx- Controleert of de parameter pbSignerInfoCounterSignature de versleutelde hash- van het veld encryptedDigest van de parameterstructuur van pbSignerInfo bevat.

 

Vereenvoudigde berichtfuncties

vereenvoudigde berichtfuncties berichtfuncties op laag niveau verpakken in één functie om een opgegeven taak uit te voeren.

Functie Beschrijving
CryptDecodeMessage- Ontsleutelt een cryptografisch bericht.
CryptDecryptAndVerifyMessageSignature- Ontsleutelt het opgegeven bericht en verifieert de ondertekenaar.
CryptDecryptMessage- Ontsleutelt het opgegeven bericht.
CryptEncryptMessage Hiermee versleutelt u het bericht voor de geadresseerde of geadresseerden.
CryptGetMessageCertificates Retourneert het certificaatarchief met de certificaten van het bericht en CRL's.
CryptGetMessageSignerCount- Retourneert het aantal ondertekenaars in het ondertekende bericht.
CryptHashMessage- Hiermee maakt u een hash van het bericht.
CryptSignAndEncryptMessage Ondertekent het bericht en versleutelt het vervolgens voor de geadresseerde of geadresseerden.
CryptSignMessageWithKey- Ondertekent een bericht met behulp van de persoonlijke sleutel van een CSP die is opgegeven in de parameters voor de functie.
CryptSignMessage- Ondertekent het bericht.
CryptVerifyDetachedMessageHash- Hiermee wordt een hash-bericht geverifieerd dat een losgekoppelde hash bevat.
CryptVerifyDetachedMessageSignature- Hiermee wordt een ondertekend bericht geverifieerd dat een losgekoppelde handtekening of handtekeningen bevat.
CryptVerifyMessageHash- Hiermee wordt een gehasht bericht geverifieerd.
CryptVerifyMessageSignature- Hiermee wordt een ondertekend bericht geverifieerd.
CryptVerifyMessageSignatureWithKey Verifieert de handtekening van een ondertekend bericht met behulp van opgegeven openbare-sleutelgegevens.

 

Hulpfuncties

De hulpfuncties zijn als volgt gegroepeerd:

  • Functies voor gegevensbeheer
  • Functies voor gegevensconversie
  • Verbeterde functies voor sleutelgebruik
  • Functies voor sleutel-id's
  • OID-ondersteuningsfuncties
  • Functies voor het ophalen van externe objecten
  • PFX-functies

Functies voor gegevensbeheer

De volgende CryptoAPI-functies beheren gegevens en certificaten.

Functie Beschrijving
CertCompareCertificate Vergelijkt twee certificaten om te bepalen of ze identiek zijn.
CertCompareCertificateName Vergelijkt twee certificaatnamen om te bepalen of ze identiek zijn.
CertCompareIntegerBlob- Vergelijkt twee gehele getallen BLOBs.
CertComparePublicKeyInfo Vergelijkt twee openbare sleutels om te bepalen of ze identiek zijn.
CertFindAttribute- Hiermee wordt het eerste kenmerk gevonden dat wordt geïdentificeerd door de object-id (OID).
CertFindExtension- Hiermee wordt de eerste extensie gevonden die is geïdentificeerd door de OID.
CertFindRDNAttr- Hiermee vindt u het eerste RDN- kenmerk dat is geïdentificeerd door de OID in de naamlijst van de Relatieve DN-namen.
CertGetIntendedKeyUsage- Hiermee verkrijgt u het beoogde sleutelgebruik van bytes van het certificaat.
CertGetPublicKeyLength- Hiermee verkrijgt u de bitlengte van de openbare/persoonlijke sleutel van de blob-openbare sleutel.
CertIsRDNAttrsInCertificateName Vergelijkt de kenmerken in de certificaatnaam met de opgegeven CERT_RDN om te bepalen of alle kenmerken daar zijn opgenomen.
CertIsStrongHashToSign- Bepaalt of het opgegeven hash-algoritme en de openbare sleutel in het handtekeningcertificaat kunnen worden gebruikt om sterke ondertekening uit te voeren.
CertVerifyCRLRevocation Controleert of het certificaat niet op de certificaatintrekkingslijst (CRL) staat.
CertVerifyCRLTimeValidity Controleert de geldigheidsduur van een CRL.
CertVerifyRevocation Controleert of het certificaat van het onderwerp zich niet op de CRL bevindt.
CertVerifyTimeValidity- Controleert de geldigheidsduur van een certificaat.
CertVerifyValidityNesting- Controleert of de geldigheidsduur van het onderwerp binnen de geldigheidsduur van de uitgever wordt genest.
CryptExportPCS8- Deze functie wordt vervangen door de functie CryptExportPKCS8Ex.
CryptExportPKCS8Ex Hiermee exporteert u de persoonlijke sleutel in PKCS #8-indeling.
CryptExportPublicKeyInfo- Hiermee exporteert u de informatie over de openbare sleutel die is gekoppeld aan de bijbehorende persoonlijke sleutel van de provider.
CryptExportPublicKeyInfoEx- Hiermee exporteert u de informatie over de openbare sleutel die is gekoppeld aan de bijbehorende persoonlijke sleutel van de provider. Deze functie verschilt van CryptExportPublicKeyInfo omdat de gebruiker het algoritme voor de openbare sleutel kan opgeven, waardoor de standaardwaarde van de CSP wordt overschreven.
CryptExportPublicKeyInfoFromBCryptKeyHandle Hiermee exporteert u de openbare-sleutelgegevens die zijn gekoppeld aan de bijbehorende persoonlijke sleutel van een provider.
CryptFindCertificateKeyProvInfo Inventariseert de cryptografische providers en de bijbehorende sleutelcontainers om de persoonlijke sleutel te vinden die overeenkomt met de openbare sleutel van een certificaat.
CryptFindLocalizedName Hiermee zoekt u de gelokaliseerde naam voor een opgegeven naam, bijvoorbeeld de gelokaliseerde naam voor de winkelnaam van het hoofdsysteem.
CryptHashCertificate Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hashes de gecodeerde inhoud.
CryptHashCertificate2 Hashes a block of data by using a Cryptography API: Next Generation (CNG) hash provider.
CryptHashPublicKeyInfo Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Berekent de hash van de gecodeerde informatie over de openbare sleutel.
CryptHashToBeSigned- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Berekent de hash van de 'te ondertekenen' gegevens in de gecodeerde ondertekende inhoud (CERT_SIGNED_CONTENT_INFO).
CryptImportPKCS8- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee importeert u de persoonlijke sleutel in PKCS #8-indeling naar een cryptografische serviceprovider (CSP).
CryptImportPublicKeyInfo Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Converteert en importeert openbare-sleutelgegevens naar de provider en retourneert een ingang van de openbare sleutel.
CryptImportPublicKeyInfoEx- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Converteert en importeert de informatie van de openbare sleutel in de provider en retourneert een ingang van de openbare sleutel. Aanvullende parameters (boven de parameters die zijn opgegeven door CryptImportPublicKeyInfo) die kunnen worden gebruikt om de standaardinstellingen te overschrijven, worden verstrekt ter aanvulling op CERT_PUBLIC_KEY_INFO.
CryptImportPublicKeyInfoEx2 Hiermee importeert u een openbare sleutel in een CNG-asymmetrische provider.
CryptMemAlloc- Wijst geheugen toe voor een buffer. Dit geheugen wordt gebruikt door alle Crypt32.lib-functies die toegewezen buffers retourneren.
CryptMemFree- Hiermee wordt geheugen vrijgemaakt dat is toegewezen door CryptMemAlloc of CryptMemRealloc.
CryptMemRealloc- Er wordt geheugen vrijgemaakt dat momenteel is toegewezen voor een buffer en er wordt geheugen toegewezen voor een nieuwe buffer.
CryptQueryObject Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee wordt informatie opgehaald over de inhoud van een BLOB of een bestand.
CryptSignAndEncodeCertificate Codeert de "te ondertekenen" informatie, ondertekent deze gecodeerde informatie en codeert de resulterende ondertekende, gecodeerde informatie.
CryptSignCertificate- Ondertekent de 'te ondertekenen' informatie in de gecodeerde, ondertekende inhoud.
CryptSIPAddProvider- Hiermee voegt u een SIP (Subject Interface Package) toe.
CryptSIPCreateIndirectData- Hiermee wordt een SIP_INDIRECT_DATA-structuur geretourneerd die een hash- van de opgegeven SIP_SUBJECTINFO-structuur, het digest-algoritme en een coderingskenmerk bevat. De hash kan worden gebruikt als een indirecte verwijzing naar de gegevens.
CryptSIPGetCaps- Haalt de mogelijkheden van een SIP op.
CryptSIPGetSignedDataMsg- Haalt een Authenticode-handtekening op uit het bestand.
CryptSIPLoad- Laadt de dynamische koppelingsbibliotheek waarmee een onderwerpinterfacepakket wordt geïmplementeerd en wijst de juiste bibliotheekexportfuncties toe aan een SIP_DISPATCH_INFO structuur.
CryptSIPPutSignedDataMsg- Slaat een Authenticode-handtekening op in het doelbestand.
CryptSIPRemoveProvider Hiermee verwijdert u een SIP die is toegevoegd door een eerdere aanroep naar de CryptSIPAddProvider functie.
CryptSIPRemoveSignedDataMsg- Hiermee verwijdert u een opgegeven Authenticode-handtekening.
CryptSIPRetrieveSubjectGuid Hiermee wordt een GUID opgehaald op basis van de headergegevens in een opgegeven bestand.
CryptSIPRetrieveSubjectGuidForCatalogFile Haalt de onderwerp-GUID op die is gekoppeld aan het opgegeven bestand.
CryptSIPVerifyIndirectData- Valideert de indirecte gehashte gegevens op basis van het opgegeven onderwerp.
CryptUpdateProtectedState- Hiermee worden de hoofdsleutels van de huidige gebruiker gemigreerd nadat de beveiligings-id (SID) van de gebruiker is gewijzigd.
CryptVerifyCertificateSignature Controleert de handtekening van een onderwerpcertificaat of een CRL- met behulp van de openbare-sleutelgegevens.
CryptVerifyCertificateSignatureEx- Een uitgebreide versie van CryptVerifyCertificateSignature.
GetEncSChannel- Slaat de versleutelde Schannel DLL-inhoud op in het geheugen.
pCryptSIPGetCaps- Geïmplementeerd door een SIP voor rapportmogelijkheden.

 

Functies voor gegevensconversie

De volgende CryptoAPI-functies converteren certificaatstructuurleden naar verschillende formulieren.

Functie Beschrijving
CertAlgIdToOID- Converteert een CryptoAPI-algoritme-id (ALG_ID) naar een Abstract Syntax Notation One (ASN.1) object-id tekenreeks (OID).
CertGetNameString- Hiermee verkrijgt u de onderwerp- of verlenernaam van een certificaat en converteert u deze naar een tekenreeks met null-beëindiging.
CertNameToStr- Converteert een certificaatnaam BLOB- naar een tekenreeks die nul is beëindigd.
CertOIDToAlgId Converteert de tekenreeks asn.1-object-id naar de CSP-algoritme-id.
CertRDNValueToStr- Converteert een naamwaarde naar een door null beëindigde tekenreeks.
CertStrToName- Converteert een door null beëindigde X.500 tekenreeks naar een gecodeerde certificaatnaam.
CryptBinaryToString- Converteert een binaire reeks naar een opgemaakte tekenreeks.
CryptFormatObject Hiermee worden gecodeerde gegevens opgemaakt en wordt een Unicode-tekenreeks geretourneerd.
CryptStringToBinary- Converteert een opgemaakte tekenreeks naar een binaire reeks.

 

Verbeterde functies voor sleutelgebruik

De volgende functies hebben betrekking op de extensie uitgebreid sleutelgebruik (EKU) en de uitgebreide EKU-eigenschap van certificaten. De EKU-extensie en uitgebreide eigenschap opgeven en beperken het geldige gebruik van een certificaat. De extensies maken deel uit van het certificaat zelf. Ze worden ingesteld door de uitgever van het certificaat en zijn alleen-lezen. Uitgebreide eigenschappen van certificaten zijn waarden die zijn gekoppeld aan een certificaat dat kan worden ingesteld in een toepassing.

Functie Beschrijving
CertAddEnhancedKeyUsageIdentifier Hiermee voegt u een gebruiks-id toe aan de EKU-eigenschap van een certificaat.
CertGetEnhancedKeyUsage- Verkrijgt, van een certificaat, informatie over de EKU-extensie of -eigenschap.
CertRemoveEnhancedKeyUsageIdentifier Hiermee verwijdert u de gebruiks-id uit de uitgebreide EKU-eigenschap van een certificaat.
CertSetEnhancedKeyUsage- Hiermee stelt u de EKU-eigenschap voor een certificaat in.

 

Functies voor sleutel-id's

Met sleutel-id-functies kan de gebruiker een sleutel-id of de eigenschappen ervan maken, instellen, ophalen of vinden.

Een sleutel-id is de unieke id van een openbaar/persoonlijk sleutelpaar. Dit kan elke unieke id zijn, maar is meestal de SHA1-hash van 20 bytes van een gecodeerde CERT_PUBLIC_KEY_INFO structuur. Een sleutel-id kan worden verkregen via de CERT_KEY_IDENTIFIER_PROP_ID van het certificaat. Met de sleutel-id kan dat sleutelpaar berichten versleutelen of ontsleutelen zonder het certificaat te gebruiken.

Sleutel-id's zijn niet gekoppeld aan CRL's of CTL's.

Een sleutel-id kan dezelfde eigenschappen hebben als een certificaatcontext. Zie CertCreateContextvoor meer informatie.

Functie Beschrijving
CryptCreateKeyIdentifierFromCSP- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee maakt u een sleutel-id van de blob-openbare sleutel van een CSP.
CryptEnumKeyIdentifierProperties Inventariseert sleutel-id's en de bijbehorende eigenschappen.
CryptGetKeyIdentifierProperty- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Haalt een specifieke eigenschap op van een opgegeven sleutel-id.
CryptSetKeyIdentifierProperty- Belangrijk:
Deze API is afgeschaft. Nieuwe en bestaande software moeten beginnen met het gebruik van Api's van de volgende generatie cryptografie. Microsoft kan deze API in toekomstige releases verwijderen.
Hiermee stelt u een eigenschap van een opgegeven sleutel-id in.

 

OID-ondersteuningsfuncties

Deze functies bieden ondersteuning voor object-id (OID). Met deze functies worden typespecifieke functies geïnstalleerd, geregistreerd en verzonden naar OID en codering.

De volgende CryptoAPI-functies gebruiken deze OID-ondersteuningsfuncties:

Zie Uitbreiding van CryptoAPI-functionaliteitvoor een overzicht van dit proces.

De volgende functies werken met OID's.

Functie Beschrijving
CryptEnumOIDFunction Inventariseert de geregistreerde OID-functies die zijn geïdentificeerd door hun coderingstype, functienaam en OID.
CryptEnumOIDInfo Inventariseert de geregistreerde OID-gegevens die zijn geïdentificeerd door hun groep en roept pfnEnumOIDInfo- aan voor overeenkomsten.
CryptFindOIDInfo- Gebruikt de opgegeven sleutel en groep om OID-informatie te vinden.
CryptFreeOIDFunctionAddress Publiceert het aantal ingangen dat is verhoogd en geretourneerd door CryptGetOIDFunctionAddress of CryptGetDefaultOIDFunctionAddress.
CryptGetDefaultOIDDllList Haalt de lijst met geregistreerde standaard-DLL-vermeldingen voor de opgegeven functieset en coderingstype op.
CryptGetDefaultOIDFunctionAddress Hiermee verkrijgt u de eerste of volgende geïnstalleerde standaardfunctie of laadt u het DLL-bestand dat de standaardfunctie bevat.
CryptGetOIDFunctionAddress- Hiermee wordt in de lijst met geïnstalleerde functies gezocht naar een coderingstype en OID-overeenkomst. Als daar geen overeenkomst wordt gevonden, wordt in het register gezocht naar een overeenkomst.
CryptGetOIDFunctionValue Haalt de waarde voor het opgegeven coderingstype, de functienaam, de OID en de waardenaam op.
CryptInitOIDFunctionSet Initialiseert en retourneert een ingang van de OID-functieset die wordt geïdentificeerd door de opgegeven functienaam.
CryptInstallOIDFunctionAddress Hiermee wordt een set aanroepbare OID-functieadressen geïnstalleerd.
CryptRegisterDefaultOIDFunction Registreert de DLL die de standaardfunctie bevat die moet worden aangeroepen voor het opgegeven coderingstype en de naam van de functie.
CryptRegisterOIDFunction Registreert de DLL die de functie bevat die moet worden aangeroepen voor het opgegeven coderingstype, de functienaam en de OID.
CryptRegisterOIDInfo Registreert de OID-informatie die is opgegeven in de CRYPT_OID_INFO-structuur, waardoor deze wordt bewaard in het register.
CryptSetOIDFunctionValue Hiermee stelt u de waarde in voor het opgegeven coderingstype, de functienaam, de OID en de waardenaam.
CryptUnregisterDefaultOIDFunction Hiermee verwijdert u de registratie voor de DLL die de standaardfunctie bevat die moet worden aangeroepen voor het opgegeven coderingstype en de naam van de functie.
CryptUnregisterOIDFunction Hiermee verwijdert u de registratie voor de DLL die de functie bevat die moet worden aangeroepen voor het opgegeven coderingstype, de functienaam en de OID.
CryptUnregisterOIDInfo Hiermee verwijdert u de registratie voor de opgegeven OID-gegevens.

 

Functies voor het ophalen van externe objecten

Met de volgende functies kan de gebruiker een PKI-object (Public Key Infrastructure) ophalen, de URL van een certificaat, CTL of CRL verkrijgen of een URL ophalen uit een object.

Functie Beschrijving
CryptGetObjectUrl- Hiermee verkrijgt u de URL van het externe object van een certificaat, CTL of CRL.
CryptRetrieveObjectByUrl- Haalt het PKI-object op van een locatie die is opgegeven door een URL.

 

PFX-functies

De volgende functies bieden ondersteuning voor pfx-indeling (Personal Information Exchange) BLOBs.

Functie Beschrijving
PFXExportCertStore- Exporteert vanuit het certificaatarchief waarnaar wordt verwezen het certificaatarchief de certificaten en, indien beschikbaar, de bijbehorende persoonlijke sleutels.
PFXExportCertStoreEx- Exporteert de certificaten uit het certificaatarchief waarnaar wordt verwezen en, indien beschikbaar, de bijbehorende persoonlijke sleutels.
PFXImportCertStore- Hiermee importeert u een PFX-BLOB en retourneert u de ingang van een archief met certificaten en eventuele bijbehorende persoonlijke sleutels.
PFXPFXBlob- Probeert de buitenste laag van een BLOB te decoderen als een PFX-pakket.
PFXVerifyPassword- Probeert de buitenste laag van een BLOB te decoderen als een PFX-pakket en om het te ontsleutelen met het opgegeven wachtwoord.

 

Functies voor back-up en herstel van Certificate Services

Certificate Services bevat functies voor het maken van back-ups en het herstellen van de Certificate Services-database. Deze functies voor back-up en herstel van Certificate Services zijn opgenomen in Certadm.dll. In tegenstelling tot de andere API-elementen die zijn gekoppeld aan Certificate Services, worden deze functies niet ingekapseld in een object dat kan worden gebruikt om klassemethoden aan te roepen. In plaats daarvan worden de BACK-up- en herstel-API's aangeroepen door eerst de Certadm.dll bibliotheek in het geheugen te laden door LoadLibrary- aan te roepen en vervolgens het adres van de functies te bepalen door GetProcAddress-aan te roepen. Wanneer u klaar bent met het aanroepen van de functies voor back-up en herstel van Certificate Services, roept u FreeLibrary- aan om Certadm.dll resources uit het geheugen vrij te maken.

Notitie

Back-up- en herstelfuncties van Certadm.dll maken geen back-up of herstel van de persoonlijke sleutels van de Certificate Service. Zie Back-ups maken van de persoonlijke sleutel van Certificate Services en het herstellen van de persoonlijke sleutel van Certificate Servicesvoor meer informatie over het maken van een back-up van de persoonlijke sleutels van Certificate Services.

Als u de back-up- en herstelfuncties wilt aanroepen, moet u bevoegdhedenhebben. Zie De bevoegdheden voor back-up en herstel instellenvoor meer informatie.

 

Notitie

Als CoInitializeEx eerder werd aangeroepen in dezelfde thread die werd gebruikt om de Certificate Services-back-up- en herstel-API's aan te roepen, moet de COINIT_APARTMENTTHREADED vlag zijn doorgegeven aan CoInitializeEx. Als u dezelfde thread gebruikt, kunt u de Certificate Services-back-up en -herstel-API niet aanroepen als de thread eerder de COINIT_MULTITHREADED vlag heeft doorgegeven in een aanroep naar CoInitializeEx.

 

De Backup-API's van Certificate Services worden gedefinieerd in Certbcli.h. Wanneer u echter uw programma maakt, gebruikt u Certsrv.h als het include-bestand.

De volgende API's worden geëxporteerd door Certadm.dll.

Functie Beschrijving
CertSrvBackupClose- Hiermee sluit u een geopend bestand.
CertSrvBackupEnd- Hiermee wordt een back-upsessie beëindigd.
CertSrvBackupFree- Hiermee wordt een buffer vrijgemaakt die is toegewezen door de back-up- en herstel-API's.
CertSrvBackupGetBackupLogs Retourneert een lijst met logboekbestanden waarvan een back-up moet worden gemaakt.
CertSrvBackupGetDatabaseNames Retourneert een lijst met databasebestanden waarvan een back-up moet worden gemaakt.
CertSrvBackupGetDynamicFileList Haalt de lijst met dynamische bestandsnamen van Certificate Services op waarvan een back-up moet worden gemaakt voor de opgegeven back-upcontext.
CertSrvBackupOpenFile Hiermee opent u een bestand ter voorbereiding op het maken van een back-up.
CertSrvBackupPrepare- Bereidt de database voor op de onlineback-up.
CertSrvBackupRead- Leest de inhoud van een geopend bestand.
CertSrvBackupTruncateLogs Kapt de logboekbestanden af.
CertSrvIsServerOnline Bepaalt of een Certificate Services-server online is (actief uitgevoerd).
CertSrvRestoreEnd Hiermee wordt een herstelsessie beëindigd.
CertSrvRestoreGetDatabaseLocations Hiermee worden databaselocaties opgehaald (gebruikt voor back-up- en herstelscenario's).
CertSrvRestorePrepare Hiermee start u een herstelsessie.
CertSrvRestoreRegister Registreert een herstelbewerking.
CertSrvRestoreRegisterComplete Hiermee wordt een eerder geregistreerde herstelbewerking voltooid.
CertSrvRestoreRegisterThroughFile Registreert een herstelbewerking.
CertSrvServerControl Hiermee wordt een besturingsopdracht verzonden naar het Certificate Services-exemplaar.

 

Callback-functies

De callback-functies in deze sectie worden gebruikt voor het registreren of installeren van toepassingsgedefinieerde certificaatarchief providers en om gerelateerde functionaliteit te bieden via callback-functies. Callback-functies worden geïmplementeerd door een toepassing en worden aangeroepen door CryptoAPI--functies. Met callback-functies kan de toepassing de manier beheren waarop CryptoAPI-functies gegevens manipuleren.

Callback, functie Gebruiken
CertChainFindByIssuerCallback- Een door de toepassing gedefinieerde callback-functie waarmee de toepassing certificaten kan filteren die mogelijk worden toegevoegd aan de certificaatketen.
CertDllOpenStoreProv- Hiermee definieert u de open functie van de winkelprovider.
CertEnumPhysicalStoreCallback- Callback-functie die wordt gebruikt door de CertEnumPhysicalStore functie om informatie op te maken en weer te geven in elke gevonden fysieke opslag.
CertEnumSystemStoreCallback- Callback-functie die wordt gebruikt door de CertEnumSystemStore functie om informatie op te maken en weer te geven in elk fysiek archief dat is gevonden.
CertEnumSystemStoreLocationCallback- Callback-functie die wordt gebruikt door de CertEnumSystemStoreLocation functie om informatie op te maken en weer te geven over elke gevonden fysieke opslag.
CertStoreProvCloseCallback- Bepaalt wat er gebeurt wanneer het referentieaantal van een open winkel nul wordt.
CertStoreProvControl- Hiermee kan een toepassing worden gewaarschuwd wanneer er een verschil is tussen de inhoud van een in de cache opgeslagen opslag en de inhoud van dat archief omdat deze wordt bewaard in de opslag.
CertStoreProvDeleteCertCallback- Bepaalt welke acties moeten worden uitgevoerd voordat een certificaat uit een certificaatarchief wordt verwijderd.
CertStoreProvDeleteCRLCallback- Bepaalt welke acties moeten worden uitgevoerd voordat een certificaatintrekkingslijst (CRL) uit een certificaatarchief wordt verwijderd.
CertStoreProvDeleteCTL- Bepaalt of een CTL kan worden verwijderd.
CertStoreProvFindCert Hiermee vindt u het eerste of volgende certificaat in een archief dat voldoet aan de opgegeven criteria.
CertStoreProvFindCRL- Hiermee zoekt u de eerste of volgende CRL in een winkel die voldoet aan de opgegeven criteria.
CertStoreProvFindCTL- Zoekt de eerste of volgende CTL in een winkel die voldoet aan de opgegeven criteria.
CertStoreProvFreeFindCert Er wordt een eerder gevonden certificaatcontext vrijgemaakt.
CertStoreProvFreeFindCRL- Er wordt een eerder gevonden CRL-context vrijgemaakt.
CertStoreProvFreeFindCTL- Er wordt een eerder gevonden CTL-context vrijgemaakt.
CertStoreProvGetCertProperty- Hiermee haalt u een opgegeven eigenschap van een certificaat op.
CertStoreProvGetCRLProperty- Hiermee haalt u een opgegeven eigenschap van een CRL op.
CertStoreProvGetCTLProperty- Hiermee haalt u een opgegeven eigenschap van een CTL op.
CertStoreProvReadCertCallback- Momenteel niet gebruikt, maar mogelijk geëxporteerd naar toekomstige CSP's.
CertStoreProvReadCRLCallback- Momenteel niet gebruikt, maar mogelijk geëxporteerd naar toekomstige CSP's.
CertStoreProvReadCTL- Lees de kopie van de CTL-context van de provider en maak, als deze bestaat, een nieuwe CTL-context.
CertStoreProvSetCertPropertyCallback- Bepaalt welke acties moeten worden uitgevoerd vóór een aanroep van CertSetCertificateContextProperty of CertGetCertificateContextProperty.
CertStoreProvSetCRLPropertyCallback- Bepaalt welke acties moeten worden uitgevoerd vóór een aanroep van CertSetCRLContextProperty of CertGetCRLContextProperty.
CertStoreProvSetCTLProperty- Bepaalt of een eigenschap kan worden ingesteld op een CTL.
CertStoreProvWriteCertCallback- Bepaalt welke acties moeten worden uitgevoerd voordat u een certificaat toevoegt aan een archief.
CertStoreProvWriteCRLCallback Bepaalt welke acties moeten worden uitgevoerd voordat u een CRL toevoegt aan een winkel.
CertStoreProvWriteCTL- Bepaalt of een CTL kan worden toegevoegd aan de store.
CRYPT_ENUM_KEYID_PROP Callback-functie die wordt gebruikt door de functie CryptEnumKeyIdentifierProperties.
CRYPT_ENUM_OID_FUNCTION Callback-functie die wordt gebruikt door de CryptEnumOIDFunction functie.
CRYPT_ENUM_OID_INFO Callback-functie die wordt gebruikt door de functie CryptEnumOIDInfo.
CryptGetSignerCertificateCallback- De callback-functie die wordt gebruikt met de CRYPT_VERIFY_MESSAGE_PARA structuur om het certificaat van een bericht ondertekenaar op te halen en te verifiëren.
PCRYPT_DECRYPT_PRIVATE_KEY_FUNC Callback-functie die wordt gebruikt door de functie CryptImportPKCS8.
PCRYPT_ENCRYPT_PRIVATE_KEY_FUNC Callback-functie die wordt gebruikt bij het maken van de CRYPT_ENCRYPTED_PRIVATE_KEY_INFO structuur.
PCRYPT_RESOLVE_HCRYPTPROV_FUNC Callback-functie die wordt gebruikt door de functie CryptImportPKCS8.
PFN_CDF_PARSE_ERROR_CALLBACK Een door de gebruiker gedefinieerde functie die wordt aangeroepen voor fouten in de catalogusdefinitiefunctie tijdens het parseren van een catalogusdefinitiebestand (CDF).
PFN_CERT_CREATE_CONTEXT_SORT_FUNC Wordt aangeroepen voor elke gesorteerde contextvermelding wanneer er een context wordt gemaakt.
PFN_CMSG_CNG_IMPORT_CONTENT_ENCRYPT_KEY Een geïnstalleerde CNG-object-id (OID) voor het importeren van een al ontsleutelde inhoudsversleutelingssleutel (CEK).
PFN_CMSG_CNG_IMPORT_KEY_AGREE Hiermee importeert u een versleutelingssleutel voor inhoud voor een sleutel die geadresseerde van een bericht met enveloppen ontvangt.
PFN_CMSG_CNG_IMPORT_KEY_TRANS Een CNG OID installeerbare functie voor het importeren en ontsleutelen van een sleutel-transport-ontvanger, versleuteld, inhoud versleuteling sleutel (CEK).
PFN_CMSG_EXPORT_KEY_AGREE Hiermee versleutelt en exporteert u de versleutelingssleutel voor inhoud voor de ontvanger van een sleutelovereenkomst van een bericht in een envelop.
PFN_CMSG_EXPORT_KEY_TRANS Hiermee versleutelt en exporteert u de versleutelingssleutel voor inhoud voor een belangrijke transportontvanger van een bericht in een envelop.
PFN_CMSG_EXPORT_MAIL_LIST Hiermee versleutelt en exporteert u de versleutelingssleutel voor inhoud voor een geadresseerde van een adressenlijst van een bericht in een envelop.
PFN_CMSG_GEN_CONTENT_ENCRYPT_KEY Hiermee genereert u de symmetrische sleutel die wordt gebruikt voor het versleutelen van inhoud voor een bericht in een envelop.
PFN_CMSG_IMPORT_KEY_AGREE Hiermee importeert u een versleutelingssleutel voor inhoud voor een sleutel die geadresseerde van een bericht met enveloppen ontvangt.
PFN_CMSG_IMPORT_KEY_TRANS Hiermee importeert u een versleutelingssleutel voor inhoud voor een sleutel die geadresseerde van een bericht met enveloppen ontvangt.
PFN_CMSG_IMPORT_MAIL_LIST Hiermee importeert u een versleutelingssleutel voor inhoud voor een sleutel die geadresseerde van een bericht met enveloppen ontvangt.
PFN_CRYPT_EXPORT_PUBLIC_KEY_INFO_EX2_FUNC Aangeroepen door CryptExportPublicKeyInfoEx om een blob met een openbare sleutel te exporteren en te coderen.
PFN_CRYPT_EXTRACT_ENCODED_SIGNATURE_PARAMETERS_FUNC Aangeroepen om de hash-algoritme-id en eventueel de handtekeningparameters te decoderen en te retourneren.
PFN_CRYPT_SIGN_AND_ENCODE_HASH_FUNC Aangeroepen om een berekende hash te ondertekenen en te coderen.
PFN_CRYPT_VERIFY_ENCODED_SIGNATURE_FUNC Aangeroepen om een gecodeerde handtekening te ontsleutelen en deze te vergelijken met een berekende hash.
PFN_IMPORT_PUBLIC_KEY_INFO_EX2_FUNC Aangeroepen door CryptImportPublicKeyInfoEx2 om het algoritme voor openbare sleutel te decoderen id, de algoritmeprovider te laden en het sleutelpaarte importeren.
PFNCCERTDISPLAYPROC- Een door de gebruiker gedefinieerde callback-functie waarmee de aanroeper van de CryptUIDlgSelectCertificate functie de weergave van certificaten verwerkt die de gebruiker selecteert om weer te geven.
PFNCMFILTERPROC- Filtert elk certificaat om te bepalen of het wordt weergegeven in het dialoogvenster voor certificaatselectie dat wordt weergegeven door de functie CertSelectCertificate.
PFNCMHOOKPROC- Aangeroepen voordat berichten worden verwerkt door het dialoogvenster certificaatselectie dat is geproduceerd door de functie CertSelectCertificate.

 

Catalogusdefinitiefuncties

Deze functies worden gebruikt om een catalogus te maken. Al deze functies worden aangeroepen door MakeCat-.

Functie Beschrijving
CryptCATCDFClose- Hiermee sluit u een catalogusdefinitiebestand en wordt het geheugen voor de bijbehorende CRYPTCATCDF structuur vrijgemaakt.
CryptCATCDFEnumAttributesWithCDFTag- Inventariseert de kenmerken van lidbestanden in de sectie CatalogFiles van een CDF.
CryptCATCDFEnumCatAttributes- Inventariseert kenmerken op catalogusniveau in de sectie CatalogHeader van een CDF.
CryptCATCDFEnumMembersByCDFTagEx- Inventariseert de afzonderlijke bestandsleden in de sectie CatalogFiles van een CDF.
CryptCATCDFOpen Hiermee opent u een bestaand CDF voor het lezen en initialiseren van een CRYPTCATCDF structuur.

 

Catalogusfuncties

Deze functies worden gebruikt om een catalogus te beheren.

Functie Beschrijving
CryptCATAdminAcquireContext Hiermee verkrijgt u een ingang voor een catalogusbeheerdercontext. Deze ingang kan worden gebruikt door volgende aanroepen naar de CryptCATAdminAddCatalog, CryptCATAdminEnumCatalogFromHash-en functies CryptCATAdminRemoveCatalog.
CryptCATAdminAcquireContext2 Hiermee verkrijgt u een ingang voor een catalogusbeheerderscontext voor een bepaald hash-algoritme en hashbeleid.
CryptCATAdminAddCatalog Hiermee voegt u een catalogus toe aan de catalogusdatabase.
CryptCATAdminCalcHashFromFileHandle- Berekent de hash voor een bestand.
CryptCATAdminCalcHashFromFileHandle2 Berekent de hash voor een bestand met behulp van het opgegeven algoritme.
CryptCATAdminEnumCatalogFromHash- Inventariseert de catalogi die een opgegeven hash bevatten.
CryptCATAdminReleaseCatalogContext Publiceert een ingang naar een cataloguscontext die eerder is geretourneerd door de CryptCATAdminAddCatalog functie.
CryptCATAdminReleaseContext Releases van de handle die eerder is toegewezen door de CryptCATAdminAcquireContext functie.
CryptCATAdminRemoveCatalog Hiermee verwijdert u een catalogusbestand en verwijdert u de vermelding van die catalogus uit de Windows-catalogusdatabase.
CryptCATAdminResolveCatalogPath Haalt het volledig gekwalificeerde pad van de opgegeven catalogus op.
CryptCATCatalogInfoFromContext Hiermee haalt u catalogusgegevens op uit een opgegeven cataloguscontext.
CryptCATClose- Hiermee sluit u een catalogusgreep die eerder is geopend door de functie CryptCATOpen.
CryptCATEnumerateAttr- Inventariseert de kenmerken die zijn gekoppeld aan een lid van een catalogus.
CryptCATEnumerateCatAttr- Opsomming van de kenmerken die zijn gekoppeld aan een catalogus.
CryptCATEnumerateMember- Inventariseert de leden van een catalogus.
CryptCATGetAttrInfo Hiermee wordt informatie opgehaald over een kenmerk van een lid van een catalogus.
CryptCATGetMemberInfo- Hiermee haalt u lidgegevens op uit de PKCS #7 van de catalogus. Naast het ophalen van de lidgegevens voor een opgegeven referentietag, wordt met deze functie een lidcontext geopend.
CryptCATOpen Hiermee opent u een catalogus en retourneert u een contextgreep naar de geopende catalogus.
IsCatalogFile Hiermee wordt een Booleaanse waarde opgehaald die aangeeft of het opgegeven bestand een catalogusbestand is.

 

WinTrust-functies

De volgende functies worden gebruikt om verschillende vertrouwensbewerkingen uit te voeren.

Functie Beschrijving
WintrustAddActionID Voegt een vertrouwensprovideractie toe aan het systeem van de gebruiker.
WintrustGetRegPolicyFlags- Hiermee worden beleidsvlagmen opgehaald voor een beleidsprovider.
WintrustAddDefaultForUsage- Hiermee geeft u de standaardgebruiks-id en callback-informatie voor een provider op
WintrustGetDefaultForUsage- Haalt de standaardgebruiks-id en callback-informatie op.
WintrustLoadFunctionPointers Laadt functieinvoerpunten voor een opgegeven actie-GUID.
WintrustRemoveActionID Hiermee verwijdert u een actie die is toegevoegd door de WintrustAddActionID functie.
WintrustSetDefaultIncludePEPageHashes Hiermee stelt u de standaardinstelling in waarmee wordt bepaald of pagina-hashes worden opgenomen bij het maken van indirect SIP-gegevens (Subject Interface Package) voor draagbare uitvoerbare bestanden.
WintrustSetRegPolicyFlags Hiermee stelt u beleidsvlagmen in voor een beleidsprovider.
WinVerifyTrust- Voert een verificatieactie voor vertrouwen uit op een opgegeven object.
WinVerifyTrustEx- Voert een verificatieactie voor vertrouwen uit op een opgegeven object en brengt een aanwijzer naar een WINTRUST_DATA structuur.
WTHelperCertCheckValidSignature Controleert of een handtekening geldig is.
WTHelperCertFindIssuerCertificate Hiermee vindt u een certificaatverlener uit de opgegeven certificaatarchieven die overeenkomen met het opgegeven onderwerpcertificaat.
WTHelperCertIsSelfSigned- Controleert of een certificaat zelfondertekend is.
WTHelperGetFileHash- Controleert de handtekening van een ondertekend bestand en verkrijgt de hash-waarde en algoritme-id voor het bestand.
WTHelperGetProvCertFromChain- Haalt een vertrouwensprovidercertificaat op uit de certificaatketen.
WTHelperGetProvPrivateDataFromChain Ontvangt een CRYPT_PROVIDER_PRIVDATA structuur van de keten met behulp van de provider-id.
WTHelperGetProvSignerFromChain- Hiermee haalt u een ondertekenaar of ondertekenaar op basis van de index op uit de keten.
WTHelperProvDataFromStateData Haalt informatie over de vertrouwensprovider op uit een opgegeven ingang.

 

Functies van objectzoeker

De volgende callback-functies kunnen worden geïmplementeerd door een aangepaste provider die is bedoeld om te worden aangeroepen door het beveiligingspakket Secure Channel (Schannel) om certificaten op te halen.

Functie Beschrijving
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FLUSH Hiermee geeft u op dat een object is gewijzigd.
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_GET Hiermee haalt u een object op.
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_RELEASE Hiermee wordt de provider uitgebracht.
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_PASSWORD Hiermee wordt het wachtwoord vrijgegeven dat wordt gebruikt voor het versleutelen van een PFX-bytematrix.
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE Hiermee wordt het object vrijgegeven dat door de provider wordt geretourneerd.
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_FREE_IDENTIFIER Geheugen vrijgeeft voor een object-id.
PFN_CRYPT_OBJECT_LOCATOR_PROVIDER_INITIALIZE Initialiseert de provider.