Sample code for 30+ languages & platforms
B4X

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

B4X
Dim success As Boolean = False

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

Dim jks As ChilkatJavaKeyStore
jks.Initialize

Dim pfx As ChilkatPfx
pfx.Initialize

'  Combines several PKCS12's into a single JKS.
'  Simply load each, add it to the keystore, and then 
'  save at the very end.

Dim alias As String
Dim pfxPassword As String
Dim jksPassword As String = "jksSecret"

'  Add the 1st PFX...
pfxPassword = "secret1"
success = pfx.LoadPfxFile("/someDir/file1.p12", pfxPassword)
If success <> True Then
    Log(pfx.LastErrorText)
    Return
End If


alias = "alias1"
success = jks.AddPfx(pfx, alias, jksPassword)
If success <> True Then
    Log(jks.LastErrorText)
    Return
End If


'  Add the 2nd PFX...
pfxPassword = "secret2"
success = pfx.LoadPfxFile("/someDir/file2.p12", pfxPassword)
If success <> True Then
    Log(pfx.LastErrorText)
    Return
End If


alias = "alias2"
success = jks.AddPfx(pfx, alias, jksPassword)
If success <> True Then
    Log(jks.LastErrorText)
    Return
End If


'  We can continue adding as many PFX's as desired...

'  Write the Java keystore to a file:
success = jks.ToFile(jksPassword, "/jksFiles/my.jks")
If success <> True Then
    Log(jks.LastErrorText)
Else
    Log("Successfully combined multiple PKCS12's into a single JKS")
End If