Skip to content

A simple header only SHA1 implementation in C (no dependencies)

Notifications You must be signed in to change notification settings

tsoding/teenysha1

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

TeenySHA1

A simple header only SHA1 implementation in pure C (no dependencies). Based on the implementation in boost::uuid::details. Translated from TinySHA1 https://github.com/mohaps/TinySHA1

SHA1 Wikipedia Page: http://en.wikipedia.org/wiki/SHA-1

Usage

#define TEENY_SHA1_IMPLEMENTATION
#include "teenysha1.h"

int main(void)
{
    const char *message = "hello";
    SHA1 s = {0};
    sha1_reset(&s);
    sha1_process_bytes(&s, message, strlen(message));
    digest8_t digest;
    sha1_get_digest_bytes(&s, digest);
    for (size_t i = 0; i < sizeof(digest); ++i) {
        printf("%02x", digest[i]);
    }
    printf("\n");
    return 0;
}
$ cc -o teenysha1test teenysha1test.c  && ./teenysha1test
$ printf 'hello' | sha1sum -

About

A simple header only SHA1 implementation in C (no dependencies)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages