B4X Requires Chilkat v10.1.2+
B4X
Create PKCS7 Signed File (.p7m)
See more Encryption Examples
Demonstrates how to sign a file to create a .p7m that contains both the file contents and the signature.Chilkat B4X Downloads
Dim success As Boolean = False
' This example requires the Chilkat API to have been previously unlocked.
' See Global Unlock Sample for sample code.
Dim crypt As ChilkatCrypt2
crypt.Initialize("crypt")
Dim certStore As ChilkatCertStore
certStore.Initialize
' Load a PFX file into a certificate store object.
success = certStore.LoadPfxFile("myPfx.pfx", "pfxPassword")
If success <> True Then
Log(certStore.LastErrorText)
Return
End If
' Get the certificate by subject common name.
' This should be the cert within the PFX that also
' has a private key (also stored within the PFX).
Dim jsonCN As ChilkatJsonObject
jsonCN.Initialize
jsonCN.UpdateString("CN", "myCert")
Dim cert As ChilkatCert
cert.Initialize("cert")
success = certStore.FindCert(jsonCN, cert)
If success = False Then
Log(certStore.LastErrorText)
Return
End If
' Tell the crypt object to use the certificate for signing:
success = crypt.SetSigningCert(cert)
' Sign a file, producing a .p7m as output.
' The input file is unchanged, the test.p7m contains the
' contents of the input file and the signature.
Dim inFile As String = "test.txt"
Dim outFile As String = "testp7m"
success = crypt.CreateP7M(inFile, outFile)
If success <> True Then
Log(crypt.LastErrorText)
Return
End If
Log("Success!")