PowerBuilder
PowerBuilder
Combine Multiple PKCS12's into a Single Java KeyStore
See more Java KeyStore (JKS) Examples
Combines multiple PKCS12's into a single Java KeyStore (JKS) file. To combine multiple PKCS12 files into a single JKS, simply load each PKCS12 into a PFX object, add it to the Java keystore object via the AddPfx method, and then finally write the Java keystore at the very end.Chilkat PowerBuilder Downloads
integer li_rc
integer li_Success
oleobject loo_Jks
oleobject loo_Pfx
string ls_Alias
string ls_PfxPassword
string ls_JksPassword
li_Success = 0
// This requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
loo_Jks = create oleobject
li_rc = loo_Jks.ConnectToNewObject("Chilkat.JavaKeyStore")
if li_rc < 0 then
destroy loo_Jks
MessageBox("Error","Connecting to COM object failed")
return
end if
loo_Pfx = create oleobject
li_rc = loo_Pfx.ConnectToNewObject("Chilkat.Pfx")
// Combines several PKCS12's into a single JKS.
// Simply load each, add it to the keystore, and then
// save at the very end.
ls_JksPassword = "jksSecret"
// Add the 1st PFX...
ls_PfxPassword = "secret1"
li_Success = loo_Pfx.LoadPfxFile("/someDir/file1.p12",ls_PfxPassword)
if li_Success <> 1 then
Write-Debug loo_Pfx.LastErrorText
destroy loo_Jks
destroy loo_Pfx
return
end if
ls_Alias = "alias1"
li_Success = loo_Jks.AddPfx(loo_Pfx,ls_Alias,ls_JksPassword)
if li_Success <> 1 then
Write-Debug loo_Jks.LastErrorText
destroy loo_Jks
destroy loo_Pfx
return
end if
// Add the 2nd PFX...
ls_PfxPassword = "secret2"
li_Success = loo_Pfx.LoadPfxFile("/someDir/file2.p12",ls_PfxPassword)
if li_Success <> 1 then
Write-Debug loo_Pfx.LastErrorText
destroy loo_Jks
destroy loo_Pfx
return
end if
ls_Alias = "alias2"
li_Success = loo_Jks.AddPfx(loo_Pfx,ls_Alias,ls_JksPassword)
if li_Success <> 1 then
Write-Debug loo_Jks.LastErrorText
destroy loo_Jks
destroy loo_Pfx
return
end if
// We can continue adding as many PFX's as desired...
// Write the Java keystore to a file:
li_Success = loo_Jks.ToFile(ls_JksPassword,"/jksFiles/my.jks")
if li_Success <> 1 then
Write-Debug loo_Jks.LastErrorText
else
Write-Debug "Successfully combined multiple PKCS12's into a single JKS"
end if
destroy loo_Jks
destroy loo_Pfx