SetSignProcessCNGKey
Tietoturva ja allekirjoitukset
Kuvaus
Liittää nimetyn NCrypt-yksityisen avaimen ja sen DER-koodatun X.509-varmenteen PDF-allekirjoitusprosessiin
Avain avataan suoraan pyydetyltä avaintallennustarjoajalta, mikä mahdollistaa TPM-pohjaiset, laitetunnistepohjaiset, pilvi-KSP- ja muut vain-CNG-allekirjoitusidentiteetit viemättä yksityistä avainta
Syntaksi
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);
Parametrit
| SignProcessID | Value returned by a NewSignProcessFrom* function |
|---|---|
| CertificateDER | Täydellinen DER-koodattu RSA- tai ECDSA X.509-varmenne, joka vastaa yksityistä avainta |
| ProviderName | Windows key storage provider name, or an empty string for Microsoft Software Key Storage Provider |
| KeyName | Tarjoajan ymmärtämä pysyvä avainnimi |
| UseMachineKey | Tosi tai ei-nolla avataksesi avaimen koneen laajuudelta |
| AllowUI | Tosi tai ei-nolla salliaksesi PIN-, suostumus- tai pilvihyväksyntäkäyttöliittymät tarjoajalta |
Paluuarvot
| 1 | Identiteetin määritys liitettiin prosessiin |
|---|---|
| 0 | Prosessitunnus, varmenne tai avainnimi oli virheellinen |
Huomautukset
Avain avataan, kun allekirjoitusprosessi suoritetaan, eikä yksityisen avaimen tavuja pääse kirjaston muistiin
When AllowUI is false, NCRYPT_SILENT_FLAG is applied to key opening and signingThe generated CMS signature is verified against
CertificateDER ennen kuin se hyväksytään, joten saman algoritmin mutta väärä avain hylätäänActiveX hyväksyy tavutaulukkovariantin, ja DLL käyttää eksplisiittistä varmenteen pituutta, jolloin upotetut nollatavut säilyvät
Katso myös
SetSignProcessCNGKeyFromFile, SetSignProcessCNGKeyByHandle, SetSignProcessPrivateKeyUI