|  | 
Chilkat  HOME  Android™  AutoIt  C  C#  C++  Chilkat2-Python  CkPython  Classic ASP  DataFlex  Delphi DLL  Go  Java  Node.js  Objective-C  PHP Extension  Perl  PowerBuilder  PowerShell  PureBasic  Ruby  SQL Server  Swift  Tcl  Unicode C  Unicode C++  VB.NET  VBScript  Visual Basic 6.0  Visual FoxPro  Xojo Plugin
| (VBScript) Italian FatturaPA (e-Invoice) Signed XML (CADES-BES P7M) using USB SmartCard ReaderDemonstrates Italian e-Invoice (FatturaPA) signing by using a private key stored on a USB smartcard reader. 
 Dim fso, outFile Set fso = CreateObject("Scripting.FileSystemObject") 'Create a Unicode (utf-16) output text file. Set outFile = fso.CreateTextFile("output.txt", True, True) ' This example assumes the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Crypt2") set crypt = CreateObject("Chilkat.Crypt2") crypt.VerboseLogging = 1 ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.Cert") set cert = CreateObject("Chilkat.Cert") ' Use your smart card user PIN for signing. cert.SmartCardPin = "0000" success = cert.LoadFromSmartcard("") If (success = 0) Then outFile.WriteLine(cert.LastErrorText) WScript.Quit End If success = crypt.SetSigningCert(cert) If (success = 0) Then outFile.WriteLine(crypt.LastErrorText) WScript.Quit End If ' The CadesEnabled property applies to all methods that create PKCS7 signatures. ' To create a CAdES-BES signature, set this property equal to true. crypt.CadesEnabled = 1 crypt.HashAlgorithm = "sha256" ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.JsonObject") set signedAttrs = CreateObject("Chilkat.JsonObject") success = signedAttrs.UpdateInt("contentType",1) success = signedAttrs.UpdateInt("signingTime",1) success = signedAttrs.UpdateInt("messageDigest",1) success = signedAttrs.UpdateInt("signingCertificateV2",1) crypt.SigningAttributes = signedAttrs.Emit() ' Load XML such as the following: ' <p:FatturaElettronica xmlns:p="http://ivaservizi.agenziaentrate.gov.it/docs/xsd/fatture/v1.2" versione="FPR12"> ' <FatturaElettronicaHeader> ' <DatiTrasmissione> ' ... ' </DatiTrasmissione> ' <CedentePrestatore> ' ... ' </CedentePrestatore> ' <CessionarioCommittente> ' ... ' </CessionarioCommittente> ' </FatturaElettronicaHeader> ' <FatturaElettronicaBody> ' <DatiGenerali> ' <DatiGeneraliDocumento> ' ... ' </DatiGeneraliDocumento> ' </DatiGenerali> ' <DatiBeniServizi> ' ... ' </DatiBeniServizi> ' </FatturaElettronicaBody> ' </p:FatturaElettronica> inputXmlPath = "c:/someDir/e-Invoice.xml" outputP7mPath = "c:/someDir/signed.p7m" ' Create the CAdES-BES attached signature, which contains the original data. success = crypt.CreateP7M(inputXmlPath,outputP7mPath) If (success = 0) Then outFile.WriteLine(crypt.LastErrorText) WScript.Quit End If outFile.WriteLine("Success.") outFile.Close | ||||
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.