Chilkat
HOME
Android™
ASP
Visual Basic
VB.NET
C#
iOS (IPhone)
Objective-C
C++
C
MFC
Delphi
FoxPro
Java
Perl
PHP Extension
PHP ActiveX
Python
PowerShell
Ruby
SQL Server
VBScript
|
Sign a File to Create a .p7m File (using a PFX)Visual FoxPro example to sign a file creating a .p7m file as output. The .p7m contains the signed contents of the original file. It can be verified and restored by calling VerifyP7M.
LOCAL loCrypt LOCAL lnSuccess LOCAL lcSigningCertSubject LOCAL lcPfxFilename LOCAL lcPfxPassword LOCAL loCertStore LOCAL loCert LOCAL lcInFile LOCAL lcOutFile loCrypt = CreateObject('Chilkat.Crypt2') * Any string argument automatically begins the 30-day trial. lnSuccess = loCrypt.UnlockComponent("30-day trial") IF (lnSuccess <> 1) THEN ? loCrypt.LastErrorText QUIT ENDIF * Use a digital certificate and private key from a PFX file (.pfx or .p12). lcSigningCertSubject = "Acme Inc" lcPfxFilename = "/Users/chilkat/testData/pfx/acme.pfx" lcPfxPassword = "test123" loCertStore = CreateObject('Chilkat.CertStore') lnSuccess = loCertStore.LoadPfxFile(lcPfxFilename,lcPfxPassword) IF (lnSuccess <> 1) THEN ? loCertStore.LastErrorText QUIT ENDIF loCert = loCertStore.FindCertBySubjectCN(lcSigningCertSubject) IF (loCert = NULL ) THEN ? "Failed to find certificate by subject common name." QUIT ENDIF * Tell the crypt component to use this cert. loCrypt.SetSigningCert(loCert) * We can sign any type of file, creating a .p7m as output: lcInFile = "/Users/chilkat/testData/pdf/sample.pdf" lcOutFile = "/Users/chilkat/testData/p7m/sample.pdf.p7m" lnSuccess = loCrypt.CreateP7M(lcInFile,lcOutFile) IF (lnSuccess = 0) THEN ? loCrypt.LastErrorText RELEASE loCert QUIT ENDIF * Verify and restore the original file: loCrypt.SetVerifyCert(loCert) lcInFile = lcOutFile lcOutFile = "/Users/chilkat/testData/pdf/restored.pdf" lnSuccess = loCrypt.VerifyP7M(lcInFile,lcOutFile) IF (lnSuccess = 0) THEN ? loCrypt.LastErrorText RELEASE loCert QUIT ENDIF RELEASE loCert =MESSAGEBOX("Success!") |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.
Mail Component · .NET Email Component · ASP Mail Component · XML Parser