Chilkat HOME ASP Visual Basic VB.NET C# Visual C++ C MFC Delphi FoxPro Java Perl PHP Python Ruby SQL Server VBScript
|
Create .p7s Signature with HSM / SmartcardVB.NET example showing how to use a CSP (Cryptographic Service Provider) for a smart card / HSM (Hardware Security Module) to create a .p7s (PKCS7) output file. This example uses the NCipher HSM CSP.
Dim crypt As New Chilkat.Crypt2() ' Any string argument automatically begins the 30-day trial. Dim success As Boolean success = crypt.UnlockComponent("30-day trial") If (success <> true) Then MsgBox("Crypt component unlock failed") Exit Sub End If ' 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. Dim ccs As New Chilkat.CreateCS() Dim certStore As Chilkat.CertStore certStore = ccs.OpenCurrentUserStore() Dim cert As Chilkat.Cert cert = certStore.FindCertBySubjectCN("Chilkat Software, Inc.") If (cert Is Nothing ) Then MsgBox(cert.LastErrorText) Exit Sub End If ' Tell the crypt component to use this cert. crypt.SetSigningCert(cert) ' To use an HSM or smartcard, create a CSP object, ' set the service provider, and then tell the Chilkat Crypt ' component to use the CSP: ' This example uses the NCipher HSM. The ' provider names must be specied exactly. ' The NCipher provider names are: ' PROV_RSA_FULL ("nCipher Enhanced Cryptographic Provider") ' PROV_RSA_AES ("nCipher Enhanced RSA and AES Cryptographic Provider") ' PROV_RSA_SCHANNEL("nCipher Enhanced SChannel Cryptographic Provider") ' PROV_DSS_DH ("nCipher Enhanced DSS and Diffie-Hellman Cryptographic Provider") ' PROV_DH_SCHANNEL ("nCipher Enhanced DSS and Diffie-Hellman SChannel Cryptographic Provider") ' We'll be using the RSA FULL provider: Dim csp As New Chilkat.Csp() csp.ProviderName = "nCipher Enhanced Cryptographic Provider" ' Tell the crypt object to use the CSP: crypt.SetCSP(csp) ' We can sign any type of file, creating a .p7s detached signature as output: success = crypt.CreateP7S("test.xml","test.p7s") If (success = false) Then MsgBox(crypt.LastErrorText) Exit Sub End If MsgBox(crypt.LastErrorText) ' Verify the signature... crypt.SetVerifyCert(cert) success = crypt.VerifyP7S("test.xml","test.p7s") If (success = false) Then MsgBox(crypt.LastErrorText) Exit Sub End If MsgBox("Success!") |
Need a specific example? Send a request to support@chilkatsoft.com
© 2000-2007 Chilkat Software, Inc. All Rights Reserved.