[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Public domain SHA-1 in C



-----BEGIN PGP SIGNED MESSAGE-----

I've written an implementation of SHA-1 in C. Public domain, so you can
hack it to your hearts content and/or use it however you want. You can
download it from
http://www.edmweb.com/steve/sha1.c

It's not hard to use. Allocate a SHA1_CTX, initialize it with SHA1Init()
run over the data with SHA1Update() and finally extract the result using
SHA1Final(). Or just compile the program as-is and use it to hash files. 

It's reasonably fast (the 80 core SHA operations look good) but I'm
certain that there's room for improvement. 

Tested under FreeBSD 2.1.0-RELEASE on an i486SX. The three test vectors
from FIPS PUB 180-1 hash correctly.


=====================================================================
| Steve Reid - SysAdmin & Pres, EDM Web (http://www.edmweb.com/)    |
| Email: [email protected]   Home Page: http://www.edmweb.com/steve/ |
| PGP (2048/9F317269) Fingerprint: 11C89D1CD67287E68C09EC52443F8830 |
|          -- Disclaimer: JMHO, YMMV, TANSTAAFL, IANAL. --          |
===================================================================:)

-----BEGIN PGP SIGNATURE-----
Version: 2.6.3ia
Charset: noconv

iQEVAwUBMksSsNtVWdufMXJpAQFV3AgApaK+upwWtBJZUwq5Pr4cpvjWQcxFHxv6
XEoZmwgwzR94lpjdEK5GPXt7U9HTp+xiwiaeQ7Hjg+iuR/qtofwZlZhQ5EmyBl2M
8rnFSRgwR4NH1y2PwAxQKSo2SaHU8JZ3X3D6Yk1WXAqk90vN8dzQAIa8B409IuhM
tBPixrS6d0KsySSOHQkWO7Mqij43wZOnrgikJF3IDCvSf0us8gGC9wZjdIax3Rgr
soswtQvT6QpZDZ/+39UiA2RSMFuER/S3NbZZSJdfIGK1XzUeU2MUC4NmURlc/ntz
3B1pd+jovxuHW1D/TQ2jHSIdg1Yol/zeu1OeuuhL37QOQAVkupgVUA==
=B73M
-----END PGP SIGNATURE-----