Sample code for 30+ languages & platforms
PowerBuilder

Convert PKCS12 / PFX to Java Keystore (JKS)

See more PFX/P12 Examples

Loads a PKCS12 / PFX file and saves it to a Java keystore (JKS) file.

Chilkat PowerBuilder Downloads

PowerBuilder
integer li_rc
integer li_Success
oleobject loo_Pfx
string ls_JksPassword
string ls_Alias
oleobject loo_Jks

li_Success = 0

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

loo_Pfx = create oleobject
li_rc = loo_Pfx.ConnectToNewObject("Chilkat.Pfx")
if li_rc < 0 then
    destroy loo_Pfx
    MessageBox("Error","Connecting to COM object failed")
    return
end if

// Load the PKCS12 from a file
li_Success = loo_Pfx.LoadPfxFile("/someDir/my.p12","myPfxPassword")
if li_Success = 0 then
    Write-Debug loo_Pfx.LastErrorText
    destroy loo_Pfx
    return
end if

ls_JksPassword = "myJksPassword"
ls_Alias = "firstPrivateKeyAlias"

loo_Jks = create oleobject
li_rc = loo_Jks.ConnectToNewObject("Chilkat.JavaKeyStore")

// Convert to a Java keystore object.
// The jksPassword is the password to be used for the JKS private key entries. 
// It may be the same as the PFX password, but can also be different if desired.
li_Success = loo_Pfx.ToJksObj(ls_Alias,ls_JksPassword,loo_Jks)
if li_Success = 0 then
    Write-Debug loo_Pfx.LastErrorText
    destroy loo_Pfx
    destroy loo_Jks
    return
end if

// Save the Java keystore to a file.
li_Success = loo_Jks.ToFile(ls_JksPassword,"/myKeystores/my.jks")
if li_Success <> 1 then
    Write-Debug loo_Jks.LastErrorText
    destroy loo_Jks
    destroy loo_Pfx
    destroy loo_Jks
    return
end if

Write-Debug "Successfully converted PFX to JKS."


destroy loo_Pfx
destroy loo_Jks