SetSignProcessCNGKey
Sauga ir parašai
Aprašymas
Prideda pavadintąjį NCrypt privatųjį raktą ir jo DER koduotą X.509 sertifikatą prie PDF pasirašymo proceso
Raktas atveriamas tiesiogiai iš pageidaujamojo rakto saugojimo tiekėjo, įgalindamas TPM paremtąsias, aparatinės kortelės, debesies KSP ir kitas tik CNG pasirašymo tapatybes, neeksportuojant privataus rakto
Sintaksė
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);
Parametrai
| SignProcessID | Reikšmė, grąžinama NewSignProcessFrom* funkcijos |
|---|---|
| CertificateDER | Pilnasis DER koduotas privatausjį raktą atitinkantis RSA arba ECDSA X.509 sertifikatas |
| ProviderName | Windows rakto saugojimo tiekėjo pavadinimas arba tuščioji eilutė Microsoft Software Key Storage Provider |
| KeyName | Tiekėjo suprantamas pastovusis rakto pavadinimas |
| UseMachineKey | True arba nenulinė reikšmė, kad raktas būtų atvertas iš mašinos apimties |
| AllowUI | True arba nenulinė reikšmė, kad tiekėjas leistų PIN, sutikimo arba debesies patvirtinimo naudotojo sąsajas |
Grąžinamos reikšmės
| 1 | Tapatybės konfigūracija pridėta prie proceso |
|---|---|
| 0 | Proceso ID, sertifikatas arba rakto pavadinimas buvo netinkami |
Pastabos
Raktas atveriamas, kai pasirašymo procesas vykdomas, o privataus rakto baitai neįeina į bibliotekos atmintį
Kai AllowUI yra false, NCRYPT_SILENT_FLAG taikomas rakto atvėrimui ir pasirašymui
CertificateDER, kol jis priimamas, todėl ta paties algoritmo, bet nesutampantis raktas atmetamas. ActiveX priima baitų masyvo variantą, o DLL naudoja aiškųjį sertifikato ilgį, todėl įterptieji nuliniai baitai išlaikomi
Taip pat žiūrėkite
SetSignProcessCNGKeyFromFile, SetSignProcessCNGKeyByHandle, SetSignProcessPrivateKeyUI