Sample code for 30+ languages & platforms
PureBasic

Example: Crypt2.LastSignerCert method

Demonstrates how to call the LastSignerCert method.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkCrypt2.pb"
IncludeFile "CkCert.pb"

Procedure ChilkatExample()

    success.i = 0

    crypt.i = CkCrypt2::ckCreate()
    If crypt.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    p7m_path.s = "qa_data/p7m/Firma.docx.p7m"
    out_path.s = "qa_output/Firma.docx"

    success = CkCrypt2::ckVerifyP7M(crypt,p7m_path,out_path)
    If success = 0
        Debug CkCrypt2::ckLastErrorText(crypt)
        CkCrypt2::ckDispose(crypt)
        ProcedureReturn
    EndIf

    ; Examine the certificate(s) used for signing.
    numSigners.i = CkCrypt2::ckNumSignerCerts(crypt)
    i.i = 0

    cert.i = CkCert::ckCreate()
    If cert.i = 0
        Debug "Failed to create object."
        ProcedureReturn
    EndIf

    While i < numSigners
        CkCrypt2::ckLastSignerCert(crypt,i,cert)
        Debug "Signer: " + CkCert::ckSubjectDN(cert)
        i = i + 1
    Wend


    CkCrypt2::ckDispose(crypt)
    CkCert::ckDispose(cert)


    ProcedureReturn
EndProcedure