Sample code for 30+ languages & platforms
B4X Requires Chilkat v11.0.0+

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 B4X Downloads

B4X
Dim success As Boolean = False

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

Dim pem As ChilkatPem
pem.Initialize

'  Load the PEM from a file.
'  If the PEM is encrypted, provide a password.  Otherwise pass an empty string for the password.
Dim password As String = "myPassword"
success = pem.LoadPemFile("../myPemFiles/myPem.pem", password)
If success = False Then
    Log(pem.LastErrorText)
    Return
End If


'  Note: If the app already has the PEM pre-loaded in a string variable, then load it 
'  by calling LoadPem instead.  
Dim pemContent As String = "... the PEM contents ..."
success = pem.LoadPem(pemContent, password)
'  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.
Dim alias As String = "anything_I_want_here"

'  This is the passord that will be required to access the created JKS.
Dim jksPassword As String = "myJksSecret"
Dim jks As ChilkatJavaKeyStore
jks.Initialize
success = pem.ToJksObj(alias, jksPassword, jks)
If success = False Then
    Log(pem.LastErrorText)
    Return
End If


'  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.  
success = jks.ToFile(jksPassword, "../myJksFiles/myJks.jks")
If success = False Then
    Log(jks.LastErrorText)
    Return
End If