Sample code for 30+ languages & platforms
PureBasic

RIPEMD Hash a String

See more Encryption Examples

Demonstrates how to RIPEMD hash a string using RIPEMD-128, RIPEMD-160, RIPEMD-256, and RIPEMD-320.

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

    content.s = "abcdefghijklmnopqrstuvwxyz"

    ; The desired output is a hexidecimal string:
    CkCrypt2::setCkEncodingMode(crypt, "hex")

    ; Set the hash algorithm:
    CkCrypt2::setCkHashAlgorithm(crypt, "ripemd128")

    hashStr.s
    hashStr = CkCrypt2::ckHashStringENC(crypt,content)

    Debug hashStr

    ; The output is:
    ; FD2AA607F71DC8F510714922B371834E

    CkCrypt2::setCkHashAlgorithm(crypt, "ripemd160")
    hashStr = CkCrypt2::ckHashStringENC(crypt,content)
    Debug hashStr

    ; The output is:
    ; F71C27109C692C1B56BBDCEB5B9D2865B3708DBC

    CkCrypt2::setCkHashAlgorithm(crypt, "ripemd256")
    hashStr = CkCrypt2::ckHashStringENC(crypt,content)
    Debug hashStr

    ; The output is:
    ; 649D3034751EA216776BF9A18ACC81BC7896118A5197968782DD1FD97D8D5133

    CkCrypt2::setCkHashAlgorithm(crypt, "ripemd320")
    hashStr = CkCrypt2::ckHashStringENC(crypt,content)
    Debug hashStr

    ; The output is:
    ; CABDB1810B92470A2093AA6BCE05952C28348CF43FF60841975166BB40ED234004B8824463E6B00


    CkCrypt2::ckDispose(crypt)


    ProcedureReturn
EndProcedure