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 .p7s File (Detached Signature)Delphi 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.
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, CHILKATCRYPT2Lib_TLB, CHILKATCERTIFICATELib_TLB, OleCtrls; ... procedure TForm1.Button1Click(Sender: TObject); var crypt: TChilkatCrypt2; success: Integer; ccs: TChilkatCreateCS; certStore: CHILKATCERTIFICATELib_TLB.IChilkatCertStore; cert: CHILKATCRYPT2Lib_TLB.IChilkatCert; begin crypt := TChilkatCrypt2.Create(Self); // Any string argument automatically begins the 30-day trial. success := crypt.UnlockComponent('30-day trial'); if (success <> 1) then begin ShowMessage('Crypt component unlock failed'); Exit; end; // Find our digital certificate from the Current User certificate store. ccs := TChilkatCreateCS.Create(Self); certStore := ccs.OpenCurrentUserStore(); cert := certStore.FindCertBySubjectCN('Chilkat Software, Inc.') As CHILKATCRYPT2Lib_TLB.IChilkatCert; if (cert = nil ) then begin ShowMessage(cert.LastErrorText); Exit; end; // Tell the crypt component to use this cert. crypt.SetSigningCert(cert As CHILKATCRYPT2Lib_TLB.IChilkatCert); // We can sign any type of file, creating a .p7s as output: success := crypt.CreateP7S('license.rtf','license.p7s'); if (success = 0) then begin ShowMessage(crypt.LastErrorText); Exit; end; // Verify the signature: crypt.SetVerifyCert(cert As CHILKATCRYPT2Lib_TLB.IChilkatCert); success := crypt.VerifyP7S('license.rtf','license.p7s'); if (success = 0) then begin ShowMessage(crypt.LastErrorText); Exit; end; ShowMessage('Success!'); end; |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.