SetSignProcessCNGKey
Sigurnost i potpisi
Opis
Attaches a named NCrypt private key and its DER-encoded X.509 certificate to a PDF signing process
Ključ se otvara izravno iz zatraženog pružatelja pohrane ključeva, omogućujući TPM-podržane, hardversko-token, cloud KSP i druge samo-CNG potpisne identitete bez izvoza privatnog ključa
Sintaksa
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);
Parametri
| SignProcessID | Value returned by a NewSignProcessFrom* function |
|---|---|
| CertificateDER | Potpun DER kodirani RSA ili ECDSA X.509 certifikat koji odgovara privatnom ključu |
| ProviderName | Windows key storage provider name, or an empty string for Microsoft Software Key Storage Provider |
| KeyName | Trajni naziv ključa koji pružatelj razumije |
| UseMachineKey | True ili različito od nule za otvaranje ključa iz opsega računala |
| AllowUI | True ili različito od nule za dopuštanje PIN, privola ili cloud-odobrenje korisničkih sučelja od pružatelja |
Povratne vrijednosti
| 1 | Konfiguracija identiteta pridružena je procesu |
|---|---|
| 0 | ID procesa, certifikat ili naziv ključa bili su nevaljani |
Napomene
Ključ se otvara kada se proces potpisivanja izvršava, i nijedan bajt privatnog ključa ne ulazi u memoriju biblioteke
Kada je AllowUI false, NCRYPT_SILENT_FLAG primjenjuje se na otvaranje ključa i potpisivanje
Generirani CMS potpis provjerava se prema CertificateDER prije prihvaćanja, pa se isti algoritam s neodgovarajućim ključem odbija
ActiveX prihvaća varijantu niza bajtova, a DLL upotrebljava izričitu duljinu certifikata pa se ugrađeni nul-bajtovi zadržavaju
Vidi također
SetSignProcessCNGKeyFromFile, SetSignProcessCNGKeyByHandle, SetSignProcessPrivateKeyUI