![]() |
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
(PureBasic) Example: Crypt2.GetSignedAttributes methodDemonstrates how to call the GetSignedAttributes method.
IncludeFile "CkBinData.pb" IncludeFile "CkStringBuilder.pb" IncludeFile "CkJsonObject.pb" IncludeFile "CkCrypt2.pb" Procedure ChilkatExample() crypt.i = CkCrypt2::ckCreate() If crypt.i = 0 Debug "Failed to create object." ProcedureReturn EndIf bdPkcs7.i = CkBinData::ckCreate() If bdPkcs7.i = 0 Debug "Failed to create object." ProcedureReturn EndIf success.i = CkBinData::ckLoadFile(bdPkcs7,"qa_data/cades/CAdES-T/Signature-C-T-1.p7m") If success = 0 Debug CkBinData::ckLastErrorText(bdPkcs7) CkCrypt2::ckDispose(crypt) CkBinData::ckDispose(bdPkcs7) ProcedureReturn EndIf json.i = CkJsonObject::ckCreate() If json.i = 0 Debug "Failed to create object." ProcedureReturn EndIf CkJsonObject::setCkEmitCompact(json, 0) sbJson.i = CkStringBuilder::ckCreate() If sbJson.i = 0 Debug "Failed to create object." ProcedureReturn EndIf i.i = 0 tryNext.i = 1 While tryNext If CkCrypt2::ckGetSignedAttributes(crypt,i,bdPkcs7,sbJson) = 1 CkJsonObject::ckLoadSb(json,sbJson) Debug Str(i) + ": " Debug CkJsonObject::ckEmit(json) Else tryNext = 0 EndIf i = i + 1 Wend ; Sample output: ; 0: ; { ; "signedAttributes": [ ; { ; "oid": "1.2.840.113549.1.9.3", ; "name": "Content Type" ; }, ; { ; "oid": "1.2.840.113549.1.9.5", ; "name": "Signing Time" ; }, ; { ; "oid": "1.2.840.113549.1.9.4", ; "name": "Message Digest" ; }, ; { ; "oid": "1.2.840.113549.1.9.16.2.47", ; "name": "Signing Certificate V2" ; } ; ] ; } CkCrypt2::ckDispose(crypt) CkBinData::ckDispose(bdPkcs7) CkJsonObject::ckDispose(json) CkStringBuilder::ckDispose(sbJson) ProcedureReturn EndProcedure |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.