initial commit
This commit is contained in:
51
README.md
51
README.md
@@ -1,2 +1,53 @@
|
||||
# tiny_sha3
|
||||
Very small, readable implementation of the SHA3 hash function.
|
||||
Updated 03-Sep-15:
|
||||
|
||||
Made the implementation portable. The API is now pretty much the
|
||||
same that OpenSSL uses. Public domain.
|
||||
|
||||
|
||||
### Updated 07-Aug-15:
|
||||
|
||||
Now that SHA3 spec is out, I've updated the package to match with the
|
||||
new padding rules. There is literally one line difference between
|
||||
Keccak 3.0 and SHA-3 implementations:
|
||||
|
||||
```
|
||||
temp[inlen++] = 0x06; // XXX Padding Changed from Keccak 3.0
|
||||
```
|
||||
|
||||
The 0x06 constant there used to be 0x01. But this of course totally
|
||||
breaks compatibility and test vectors had to be revised.
|
||||
|
||||
SHA-3 Spec: http://nvlpubs.nist.gov/nistpubs/FIPS/NIST.FIPS.202.pdf
|
||||
|
||||
Cheers,
|
||||
- markku
|
||||
|
||||
|
||||
### Original README.TXT from 2011:
|
||||
|
||||
Hi.
|
||||
|
||||
The SHA-3 competition is nearing it's end and I would personally like
|
||||
to support Keccak as the winner. I have a PhD in hash function cryptanalysis
|
||||
so don't take my word for it, go ahead and look into the code !
|
||||
|
||||
Since I couldn't find a *compact* and/or *readable* implementation of Keccak
|
||||
anywhere, here's one I cooked up as a service to the curious.
|
||||
|
||||
This implementation is intended for study of the algorithm, not for
|
||||
production use.
|
||||
|
||||
The code works correctly on 64-bit little-endian platforms with gcc.
|
||||
Like your Linux box. The main.c module contains self-tests for all
|
||||
officially supported hash sizes.
|
||||
|
||||
If you're looking for production code, the official multi-megabyte package
|
||||
covers everyting you could possibly need and too much much more:
|
||||
http://keccak.noekeon.org/
|
||||
|
||||
Cheers,
|
||||
- Markku 19-Nov-11
|
||||
|
||||
Dr. Markku-Juhani O. Saarinen <mjos@iki.fi>
|
||||
|
||||
Reference in New Issue
Block a user