Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(AutoIt) Convert Let's Encrypt PEM Files to a PFXDemonstrates how to convert the .pem files provided by Let's Encrypt to a single PFX.
; This example assumes the Chilkat API to have been previously unlocked. ; See Global Unlock Sample for sample code. ; Let's Encrypt provides four .pem files ; 1. fullchain.pem ; 2. privkey.pem ; 3. cert.pem ; 4. chain.pem ; The cert.pem and chain.pem are redundant. ; The fullchain.pem is composed of the cert.pem and chain.pem. ; To convert the PEM's to a single .pfx, we don't need the redundant data. ; The privkey.pem and fullchain.pem provide the required data. ; We can ignore cert.pem and chain.pem (because those certs are already found in fullchain.pem). ; We need a single .pem file that contains both the private key, the cert, ; and the certs in the chain of authentication. ; Let's combine priveky.pem and fullchain.pem into a single .pem $oSbPem = ObjCreate("Chilkat.StringBuilder") Local $bSuccess = $oSbPem.LoadFile("qa_data/pem/lets_encrypt/privkey.pem","utf-8") If ($bSuccess = False) Then ConsoleWrite("Failed to load privkey.pem" & @CRLF) Exit EndIf ; To be safe, append a blank line.. $oSbPem.AppendLine("",False) $oSbFullChainPem = ObjCreate("Chilkat.StringBuilder") $bSuccess = $oSbFullChainPem.LoadFile("qa_data/pem/lets_encrypt/fullchain.pem","utf-8") If ($bSuccess = False) Then ConsoleWrite("Failed to load fullchain.pem" & @CRLF) Exit EndIf ; Append the full cert chain PEM to the private key PEM. $oSbPem.AppendSb($oSbFullChainPem) ; Load the combined PEM into a Chilkat PFX object. $oPfx = ObjCreate("Chilkat.Pfx") $bSuccess = $oPfx.LoadPem($oSbPem.GetAsString(),"no password required") If ($bSuccess = False) Then ConsoleWrite($oPfx.LastErrorText & @CRLF) Exit EndIf ; Write the PFX w/ a password. Local $sPfxPassword = "secret" $bSuccess = $oPfx.ToFile($sPfxPassword,"qa_output/sample.pfx") If ($bSuccess = False) Then ConsoleWrite($oPfx.LastErrorText & @CRLF) Exit EndIf ConsoleWrite("Success!" & @CRLF) |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.