Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Create PFX from PEM (Certificate and Private Key Files)Create a PFX file from a pair of PEM files (the certificate PEM and private key PEM). uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CHILKATCERTIFICATELib_TLB, OleCtrls; ... procedure TForm1.Button1Click(Sender: TObject); var success: Integer; cert: TChilkatCert; privkey: CHILKATCERTIFICATELib_TLB.IPrivateKey; bMachineKeyset: Integer; bForSigning: Integer; keyCont: TKeyContainer; bIncludeCertsInChain: Integer; begin cert := TChilkatCert.Create(Self); success := cert.LoadFromFile('chilkat_cert.pem'); if (success <> 1) then begin ShowMessage(cert.LastErrorText); Exit; end; privkey := TprivateKey.Create(Self).ControlInterface; success := privkey.LoadPemFile('chilkat_pkey.pem'); if (success <> 1) then begin ShowMessage(privkey.LastErrorText); Exit; end; // Link the cert to the private key. // Use the current logged-on user's protected key store: bMachineKeyset := 0; // If the private key is to be used for creating signatures, // set bForSigning = 1. If the private key is to be // used for decrypting, set bForSigning = 0 bForSigning := 1; // Select an arbitrary key container name that is unique // to your application. Make sure it exists: keyCont := TKeyContainer.Create(Self); // The CreateContainer method will create the key container // if it does not already exist, otherwise it will open it. // (The key container is in the Windows protected store.) success := keyCont.CreateContainer('myApp',bMachineKeyset); if (success <> 1) then begin ShowMessage(keyCont.LastErrorText); Exit; end; success := cert.LinkPrivateKey('myApp',bMachineKeyset,bForSigning); if (success <> 1) then begin ShowMessage(cert.LastErrorText); Exit; end; // Now export to a PFX: bIncludeCertsInChain := 0; success := cert.ExportToPfxFile('chilkat2.pfx','myPassword',bIncludeCertsInChain); if (success <> 1) then begin ShowMessage(cert.LastErrorText); Exit; end; ShowMessage('PFX created!'); end; |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.