Sample code for 30+ languages & platforms
PureBasic

Calculate MD5 Hash of File (or SHA1, SHA256, and other hash algorithms)

See more Encryption Examples

Demonstrates how to calculate a hash for a file's contents.

Chilkat PureBasic Downloads

PureBasic
IncludeFile "CkCrypt2.pb"

Procedure ChilkatExample()

    ; This example assumes the Chilkat API to have been previously unlocked.
    ; See Global Unlock Sample for sample code.

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

    ; Set the name of the hash algorithm.
    ; Other choices include "sha1", "sha256", "sha384", "sha512", "md2", "md5", and "haval". 
    CkCrypt2::setCkHashAlgorithm(crypt, "md5")

    ; EncodingMode specifies the encoding of the hash output.
    ; It may be "hex", "url", "base64", or "quoted-printable".
    CkCrypt2::setCkEncodingMode(crypt, "hex")

    ; Files of any type may be hashed -- it doesn't matter
    ; if the file is binary or text...
    hashStr.s
    hashStr = CkCrypt2::ckHashFileENC(crypt,"/temp/something.dat")
    If CkCrypt2::ckLastMethodSuccess(crypt) <> 1
        Debug CkCrypt2::ckLastErrorText(crypt)
        CkCrypt2::ckDispose(crypt)
        ProcedureReturn
    EndIf

    Debug hashStr


    CkCrypt2::ckDispose(crypt)


    ProcedureReturn
EndProcedure