Zig
Zig
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 Zig Downloads
const std = @import("std");
const chilkat = @import("chilkat");
pub fn main(init: std.process.Init) !void {
const alloc = init.arena.allocator();
// This example assumes the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
const crypt = try chilkat.Crypt2.init();
defer crypt.deinit();
const content = "abcdefghijklmnopqrstuvwxyz";
// The desired output is a hexidecimal string:
crypt.setEncodingMode("hex");
// Set the hash algorithm:
crypt.setHashAlgorithm("ripemd128");
var hash_str: [:0]const u8 = "";
hash_str = try crypt.hashStringENC(alloc, content);
std.debug.print("{s}\n", .{hash_str});
// The output is:
// FD2AA607F71DC8F510714922B371834E
crypt.setHashAlgorithm("ripemd160");
hash_str = try crypt.hashStringENC(alloc, content);
std.debug.print("{s}\n", .{hash_str});
// The output is:
// F71C27109C692C1B56BBDCEB5B9D2865B3708DBC
crypt.setHashAlgorithm("ripemd256");
hash_str = try crypt.hashStringENC(alloc, content);
std.debug.print("{s}\n", .{hash_str});
// The output is:
// 649D3034751EA216776BF9A18ACC81BC7896118A5197968782DD1FD97D8D5133
crypt.setHashAlgorithm("ripemd320");
hash_str = try crypt.hashStringENC(alloc, content);
std.debug.print("{s}\n", .{hash_str});
// The output is:
// CABDB1810B92470A2093AA6BCE05952C28348CF43FF60841975166BB40ED234004B8824463E6B009
}