Sample code for 30+ languages & platforms
B4X

Example: Crypt2.GetSignedAttributes method

Demonstrates how to call the GetSignedAttributes method.

Chilkat B4X Downloads

B4X
Dim success As Boolean = False

Dim crypt As ChilkatCrypt2
crypt.Initialize("crypt")

Dim bdPkcs7 As ChilkatBinData
bdPkcs7.Initialize
success = bdPkcs7.LoadFile("qa_data/cades/CAdES-T/Signature-C-T-1.p7m")
If success = False Then
    Log(bdPkcs7.LastErrorText)
    Return
End If


Dim json As ChilkatJsonObject
json.Initialize
json.EmitCompact = False

Dim sbJson As ChilkatStringBuilder
sbJson.Initialize
Dim i As Int = 0
Dim tryNext As Boolean = True
Do While tryNext
    If crypt.GetSignedAttributes(i, bdPkcs7, sbJson) = True Then
        json.LoadSb(sbJson)
        Log(i & ": ")
        Log(json.Emit)
    Else
        tryNext = False
    End If


    i = i + 1
Loop

'  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"
'      }
'    ]
'  }