#include "barev_sha1.h" #include "sha1.h" void barev_sha1_hex(const unsigned char *data, size_t len, char out_hex40[41]) { unsigned char digest[20]; SHA1_CTX ctx; static const char hex[] = "0123456789abcdef"; size_t i; SHA1Init(&ctx); SHA1Update(&ctx, data, (uint32_t)len); SHA1Final(digest, &ctx); for (i = 0; i < 20; ++i) { out_hex40[i * 2] = hex[(digest[i] >> 4) & 0x0F]; out_hex40[(i * 2) + 1] = hex[digest[i] & 0x0F]; } out_hex40[40] = '\0'; }