SetSignProcessCNGKey
Güvenlik ve imzalar
Açıklama
Adlandırılmış bir NCrypt özel anahtarını ve onun DER kodlu X.509 sertifikasını bir PDF imzalama işlemine ekler
Anahtar, istenen anahtar depolama sağlayıcısından doğrudan açılarak özel anahtarı dışa aktarmadan TPM destekli, donanım belirteçli, bulut KSP ve yalnızca CNG kullanan diğer imzalama kimliklerini etkinleştirir
Sözdizimi
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);
Parametreler
| SignProcessID | Bir NewSignProcessFrom* işlevi tarafından döndürülen değer |
|---|---|
| CertificateDER | Özel anahtara karşılık gelen eksiksiz DER kodlu RSA veya ECDSA X.509 sertifikası |
| ProviderName | Windows anahtar depolama sağlayıcısı adı veya Microsoft Software Key Storage Provider için boş dize |
| KeyName | Sağlayıcının anladığı kalıcı anahtar adı |
| UseMachineKey | Anahtarı makine kapsamından açmak için True veya sıfır dışında bir değer |
| AllowUI | Sağlayıcıdan PIN, onay veya bulut onayı kullanıcı arabirimlerine izin vermek için True veya sıfırdan farklı değer |
Dönüş değerleri
| 1 | Kimlik yapılandırması işleme eklendi |
|---|---|
| 0 | İşlem kimliği, sertifika veya anahtar adı geçersizdi |
Açıklamalar
Anahtar, imzalama süreci çalıştığında açılır ve hiçbir özel anahtar baytı kütüphane belleğine girmez
AllowUI false olduğunda anahtar açma ve imzalama işlemlerine NCRYPT_SILENT_FLAG uygulanır
Oluşturulan CMS imzası kabul edilmeden önce CertificateDER değerine göre doğrulanır; böylece aynı algoritmayı kullanan ancak eşleşmeyen anahtar reddedilir
ActiveX bayt dizisi çeşidini kabul eder ve DLL açık sertifika uzunluğu kullanır; böylece gömülü sıfır baytları korunur
Ayrıca bkz
SetSignProcessCNGKeyFromFile, SetSignProcessCNGKeyByHandle, SetSignProcessPrivateKeyUI