Xojo Plugin
Xojo Plugin
Sign a File to Create a .p7s (Detached Signature)
See more Encryption Examples
_LANGUAGE_ example to create a detached signature file (.p7s) for any type file. The signature can be verified by calling VerifyP7S and passing the original filename and the .p7s filename.Chilkat Xojo Plugin Downloads
Dim success As Boolean
success = False
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
Dim crypt As New Chilkat.Crypt2
// Use a digital certificate and private key from a PFX file (.pfx or .p12).
Dim signingCertSubject As String
signingCertSubject = "Acme Inc"
Dim pfxFilename As String
pfxFilename = "/Users/chilkat/testData/pfx/acme.pfx"
Dim pfxPassword As String
pfxPassword = "test123"
Dim certStore As New Chilkat.CertStore
success = certStore.LoadPfxFile(pfxFilename,pfxPassword)
If (success <> True) Then
System.DebugLog(certStore.LastErrorText)
Return
End If
Dim jsonCN As New Chilkat.JsonObject
success = jsonCN.UpdateString("CN",signingCertSubject)
Dim cert As New Chilkat.Cert
success = certStore.FindCert(jsonCN,cert)
If (success = False) Then
System.DebugLog("Failed to find certificate by subject common name.")
Return
End If
// Tell the crypt component to use this cert.
success = crypt.SetSigningCert(cert)
// We can sign any type of file, creating a .p7s as output:
Dim inFile As String
inFile = "/Users/chilkat/testData/pdf/sample.pdf"
Dim sigFile As String
sigFile = "/Users/chilkat/testData/p7s/sample.p7s"
success = crypt.CreateP7S(inFile,sigFile)
If (success = False) Then
System.DebugLog(crypt.LastErrorText)
Return
End If
success = crypt.VerifyP7S(inFile,sigFile)
If (success = False) Then
System.DebugLog(crypt.LastErrorText)
Return
End If
System.DebugLog("Success!")