CreateSelfSignedCertificateA

安全與簽章

描述

結尾的 A 表示 ANSI(char)DLL 進入點,ActiveX/COM 介面僅公開 Unicode 形式。其行為與 CreateSelfSignedCertificate 相同,字串引數會依據目前的 SetAnsiMode 字碼頁進行解譯

建立帶 SHA-256 簽章的自簽 RSA 憑證,並連同私密金鑰匯出到有密碼保護的 PFX 檔案。產生的 PFX 可直接搭配 SignFile、SetSignProcessPFXFromFile 等其他以 PFX 為基礎的簽署進入點,不必先向外部機構取得憑證就能開發與測試簽署流程

憑證產生在暫時的金鑰容器裡,匯出後該容器即被刪除,只有 PFX 檔案保留金鑰材料。自簽憑證適合測試與內部文件:除非使用者明確安裝,PDF 檢視器會把它們標記為不受信任

語法

Delphi

Function DLCreateSelfSignedCertificateA(InstanceID: Integer; SubjectName, PFXFileName, PFXPassword: PAnsiChar; ValidDays, KeyBits: Integer): Integer;

DLL

int DLCreateSelfSignedCertificateA(int InstanceID, const char * SubjectName, const char * PFXFileName, const char * PFXPassword, int ValidDays, int KeyBits);

參數

SubjectNameX.500 字串形式的憑證主體,例如 "CN=Alice Signer, O=Example Corp". 不含 "=" 的裸名稱會自動加上 "CN=" 字首。
PFXFileName要寫出的 PFX(PKCS#12)檔案路徑。
PFXPassword保護匯出 PFX 檔案的密碼。
ValidDays自今天起算的有效天數;小於 1 的值預設為 365。
KeyBitsRSA 金鑰長度(位元);超出 1024..16384 的值以 2048 為預設。

傳回值

0無法建立憑證(主體或檔名為空,或 Windows CryptoAPI 失敗)
1Success