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
(Delphi) Create .p7s Signature with HSM / SmartcardDelphi example showing how to create a .p7s Signature with HSM / Smartcard
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.LastErrorText); Exit; end; // Find our digital certificate from the Current User certificate store. // Note: There are several other ways to load your certificate // into a Chilkat cert object. You may load directly from a .cer file, // PEM file, pfx, etc. 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 detached signature as output: success := crypt.CreateP7S('test.xml','test.p7s'); if (success = 0) then begin ShowMessage(crypt.LastErrorText); Exit; end; ShowMessage(crypt.LastErrorText); // Verify the signature... crypt.SetVerifyCert(cert As CHILKATCRYPT2Lib_TLB.IChilkatCert); success := crypt.VerifyP7S('test.xml','test.p7s'); if (success = 0) then begin ShowMessage(crypt.LastErrorText); Exit; end; ShowMessage('Success!'); end; |
© 2000-2010 Chilkat Software, Inc. All Rights Reserved.