Sample code for 30+ languages & platforms
AutoIt

Convert PEM to JKS (Java KeyStore)

See more PEM Examples

Converts a PEM containing private key(s) and certificates into a JKS (Java KeyStore) formatted file.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

; This example requires the Chilkat API to have been previously unlocked.
; See Global Unlock Sample for sample code.

$oPem = ObjCreate("Chilkat.Pem")

; Load the PEM from a file.
; If the PEM is encrypted, provide a password.  Otherwise pass an empty string for the password.
Local $sPassword = "myPassword"
$bSuccess = $oPem.LoadPemFile("../myPemFiles/myPem.pem",$sPassword)
If ($bSuccess = False) Then
    ConsoleWrite($oPem.LastErrorText & @CRLF)
    Exit
EndIf

; Note: If the app already has the PEM pre-loaded in a string variable, then load it 
; by calling LoadPem instead.  
Local $sPemContent = "... the PEM contents ..."
$bSuccess = $oPem.LoadPem($sPemContent,$sPassword)
; Check for success as before..

; Convert to a JavaKeyStore object.
; The alias, if a non-empty string, will be applied to the 1st private key or 
; certificate.  All other keys and/or certificates will be assigned an auto-generated
; alias.
Local $sAlias = "anything_I_want_here"

; This is the passord that will be required to access the created JKS.
Local $sJksPassword = "myJksSecret"
$oJks = ObjCreate("Chilkat.JavaKeyStore")
$bSuccess = $oPem.ToJksObj($sAlias,$sJksPassword,$oJks)
If ($bSuccess = False) Then
    ConsoleWrite($oPem.LastErrorText & @CRLF)
    Exit
EndIf

; Save the JKS to a file.  The password passed here is used for the keyed hash of the
; entire JKS file.  This may be different (if desired) than the password for individual private keys
; contained within the JKS.  
$bSuccess = $oJks.ToFile($sJksPassword,"../myJksFiles/myJks.jks")
If ($bSuccess = False) Then
    ConsoleWrite($oJks.LastErrorText & @CRLF)
    Exit
EndIf