SetSignProcessCNGKey

Säkerhet och signaturer

Beskrivning

Fogar en namngiven NCrypt-privatnyckel och dess DER-kodade X.509-certifikat till en PDF-signeringsprocess

Nyckeln öppnas direkt från den begärda key storage-providern, vilket möjliggör TPM-backade, hårdvarutoken-, moln-KSP- och andra CNG-only signeringsidentiteter utan att exportera den privata nyckeln

Syntax

Delphi

Function TPDFlib.SetSignProcessCNGKey(SignProcessID: Integer; Const CertificateDER: AnsiString; Const ProviderName, KeyName: WideString; UseMachineKey, AllowUI: Boolean): Integer;

ActiveX

Function PDFlib::SetSignProcessCNGKey(SignProcessID As Long, CertificateDER As Variant, ProviderName As String, KeyName As String, UseMachineKey As Long, AllowUI As Long) As Long

DLL

int DLSetSignProcessCNGKey(int InstanceID, int SignProcessID, const char* CertificateDER, int CertificateLength, const wchar_t* ProviderName, const wchar_t* KeyName, int UseMachineKey, int AllowUI);

Parametrar

SignProcessIDVärde som returneras av en NewSignProcessFrom*-funktion
CertificateDERFullständigt DER-kodat RSA- eller ECDSA X.509-certifikat som motsvarar den privata nyckeln
ProviderNameWindows key storage-providernamn, eller en tom sträng för Microsoft Software Key Storage Provider
KeyNameBeständigt nyckelnamn som providern förstår
UseMachineKeyTrue eller skilt från noll för att öppna nyckeln från datoromfånget
AllowUITrue eller skilt från noll för att tillåta PIN-, samtyckes- eller molngodkännande-gränssnitt från providern

Returvärden

1Identitetskonfigurationen fogades till processen
0Process-id, certifikat eller nyckelnamn var ogiltigt

Anmärkningar

Nyckeln öppnas när signeringsprocessen exekveras, och inga privatnyckelbyte når biblioteksminnet

När AllowUI är false tillämpas NCRYPT_SILENT_FLAG på nyckelöppning och signeringDen genererade CMS-signaturen verifieras mot

CertificateDER innan den godtas, så en nyckel med samma algoritm men fel matchning avvisas

ActiveX tar emot en byte-array-variant, och DLL:en använder en explicit certifikatlängd så att inbäddade nollbyte bevaras

Se även

SetSignProcessCNGKeyFromFile, SetSignProcessCNGKeyByHandle, SetSignProcessPrivateKeyUI