- Notifications
You must be signed in to change notification settings - Fork58
An implementation of Keccak derived functions specified in FIPS-202, SP800-185 and KangarooTwelve
License
debris/tiny-keccak
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
An implementation of Keccak derived functions specified inFIPS-202
,SP800-185
andKangarooTwelve
.
TheKeccak-f[1600]
permutation is fully unrolled; it's nearly as fastas the Keccak team's optimized permutation.
In yourCargo.toml
specify what features (hash functions, you are intending to use).Available options are:cshake
,fips202
,k12
,keccak
,kmac
,parallel_hash
,sha3
,shake
,sp800
,tuple_hash
.
[dependencies]tiny-keccak = {version ="2.0",features = ["sha3"] }
use tiny_keccak::Sha3;fnmain(){letmut sha3 =Sha3::v256();letmut output =[0u8;32];let expected =b"\\x64\x4b\xcc\x7e\x56\x43\x73\x04\x09\x99\xaa\xc8\x9e\x76\x22\xf3\\xca\x71\xfb\xa1\xd9\x72\xfd\x94\xa3\x1c\x3b\xfb\xf2\x4e\x39\x38\ "; sha3.update(b"hello"); sha3.update(b" "); sha3.update(b"world"); sha3.finalize(&mut output);assert_eq!(expected,&output);}
Benchmarked withrust-crypto sha3 on:
MacBook Pro (Retina, 15-inch, Mid 2015)2,5 GHz Intel Core i716 GB 1600 MHz DDR3Intel Iris Pro 1536 MB
Benchmark code is availablehere
running 4 teststest rust_crypto_sha3_256_input_32_bytes ... bench: 677 ns/iter (+/- 113) = 47 MB/stest rust_crypto_sha3_256_input_4096_bytes ... bench: 17,619 ns/iter (+/- 4,174) = 232 MB/stest tiny_keccak_sha3_256_input_32_bytes ... bench: 569 ns/iter (+/- 204) = 56 MB/stest tiny_keccak_sha3_256_input_4096_bytes ... bench: 17,185 ns/iter (+/- 4,575) = 238 MB/s
About
An implementation of Keccak derived functions specified in FIPS-202, SP800-185 and KangarooTwelve
Topics
Resources
License
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Releases
Packages0
Uh oh!
There was an error while loading.Please reload this page.
Contributors13
Uh oh!
There was an error while loading.Please reload this page.