0b85632c97
ripemd: panic rather than throw in constexpr
...
calculating the hash should never need to throw; all error cases should
be detectable at construction time. we should panic if we detect such an
error.
this fixes a compilation warning
2016-08-01 17:23:30 +10:00
c4daffc001
build: add forgotten includes
2016-07-28 13:39:27 +10:00
e1c115c71a
murmur2: make mixing constexpr and inline
2016-07-01 17:01:21 +10:00
6e533e47b7
hash/keccak: remove unused function
2016-06-29 17:55:30 +10:00
08536765b6
Merge branch 'crypto'
2016-06-20 18:08:46 +10:00
8d191fb2e1
hash/keccak: add initial sha3 base
2016-06-20 18:05:30 +10:00
bcda332900
hash/fwd: add forward declerations
2016-06-20 16:53:56 +10:00
f96c34d581
hash/simple: add simple oneshot hash calculator
2016-06-20 16:53:56 +10:00
33ade82ebf
hash/md5: make header guards consistent with path
2016-06-20 16:53:56 +10:00
8824331c4b
hash/crc: convert to object style accumulator
2016-06-20 16:53:56 +10:00
6338a85992
hash/bsdum: convert to object style accumulator
2016-06-20 16:38:57 +10:00
51e7995c63
hash/adler: convert to object style accumulator
2016-06-20 16:37:43 +10:00
73579f57aa
hash: remove uint8/size_t update functions
2016-06-17 16:27:16 +10:00
ce26ce1238
hash: style
2016-06-17 16:20:09 +10:00
5e6155a51a
hash: make use of restrict and noexcept consistent
2016-06-17 16:06:46 +10:00
ef17f9c7d1
hash: class decleration style
2016-06-17 15:57:09 +10:00
51487cd34e
hash: put checksum functions into util: #️⃣ :
2016-06-17 15:56:14 +10:00
aeba9033e0
hash: prefer iterator style over base/length
2016-06-17 15:46:11 +10:00
ba4b22c208
hash/md2: style
2016-06-17 15:37:54 +10:00
640b4aa6ca
build: fix switch/enum coverage warnings
...
uncovered using clang's -Wswitch-enum
2016-05-12 17:45:29 +10:00
1f432c13b7
build: avoid type truncation warnings
...
discovered with clang's -Wshorten-64-to-32
2016-05-12 17:39:33 +10:00
9bbcfa6e63
make header paths more explicit
2016-04-05 11:06:35 +10:00
3993e561f8
unify licences
2016-02-26 13:36:01 +11:00
424e6e8701
cast: move types/casts to cast
2015-11-17 16:19:27 +11:00
7b083df977
maths: tighten up type requirements for almost_equal
...
almost_equal only operates on two reals, or two integers (and even then
only on the same signedness).
2015-11-13 17:18:10 +11:00
2469450ea9
murmur3: streamline 128 bit hash round functions
...
clang was getting tripped up calculating the tail half-rounds for the
128 bit hashes, so we streamline the round functions so it copes a
little better. plus, this is better code anyway.
2015-09-21 15:32:23 +10:00
72797793e9
h/murmur: remove unused source file
2015-06-04 22:18:00 +10:00
ff23146a68
hash: extract fnv1a hashes to new unit
2015-06-02 21:36:30 +10:00
588b38fd17
hash: move wang mixing funcs into seperate unit
2015-06-02 21:11:57 +10:00
3a4fed804a
fasthash: add initial implementation
2015-05-28 12:17:25 +10:00
a61ea32228
murmurhash: add initial translation
2015-05-25 16:12:45 +10:00
7ae57730f0
whitespace
2015-04-13 18:06:08 +10:00
2658b41ea1
relicence under Apache-2.0
2015-04-13 18:05:28 +10:00
cbf385b570
hash/hmac: instantiate in containing namespace
2015-03-06 02:02:27 +11:00
29a148e2e5
hash/hotp: add simple HOTP implementation
2015-03-02 02:55:54 +11:00
cedcf90c3f
hash/hmac: add HMAC-SHA1 support
2015-03-02 01:21:52 +11:00
c10e11c398
hash/hmac: allow keys greater than block length
2015-03-02 00:35:58 +11:00
cce9af76e3
style
2015-03-02 00:35:45 +11:00
f4fe636cb0
hash/hmac: add simple HMAC-MD5
2015-03-02 00:07:50 +11:00
277354807e
hash/md5: fix blocksize block flushing on update
2015-03-02 00:05:30 +11:00
c4df8bf905
t/casts: simplify trunc_cast, combine size_cast
2015-02-17 16:20:46 +11:00
52f53caee5
debug: drop support for CHECK_HARD
...
HARD vs SOFT assertions were never very well defined or supported.
Currently they just imply a level of functionality that isn't present;
it's better to remove them instead of expending the effort at this
point.
2015-01-28 14:49:34 +11:00
3fd3b805af
adler: fix c-style cast without const error
2014-10-20 12:55:59 +11:00
37ed0fc5fd
hash: cleanup fletcher
2014-09-11 15:44:03 +10:00
018fcef146
hash: whitespace
2014-09-11 15:43:12 +10:00
332264a5be
adler: add iterator style argument wrapper
2014-09-02 23:36:21 +10:00
a9bffcff08
sha1: give state enum a print operator
2014-07-02 15:40:20 +10:00
ca9db30ab4
sha1: style and whitespace
2014-07-02 15:39:53 +10:00
5a7ff4d20a
build: silence sign promotion warnings
2014-07-02 15:38:05 +10:00
3c9c245075
sha1: remove dead store warning
2014-05-20 13:44:36 +10:00
304ddbfedd
whitespace
2014-05-20 13:44:27 +10:00
b4a07538df
hash: make finish public in accumulators
2014-05-09 14:43:40 +10:00
513b09c1c9
sha2: rename SHA2 class to SHA256
...
temporary rename for clarity in existing algorithm code. revisit when/if
we get implementations for each bit length.
2014-05-09 13:01:02 +10:00
a88379bf36
hash: add sha2 implementation
2014-04-16 19:17:56 +10:00
fc935863ef
sha1: cleanup and fix test cases
2014-04-16 18:35:09 +10:00
b33cb706c8
Add RIPEMD160 implementation
2014-04-10 21:04:07 +10:00
a601b20683
Fix bitshifting wide types on 32bit platforms
2013-08-05 16:38:47 +10:00
db18432f1c
Move all hash implementations to hash subdir
2013-07-13 14:40:13 +10:00
9bdc50df3c
Add SHA1 implementation
2013-03-11 20:47:48 +11:00
7099c9bc50
Add MD5 implementation
2013-03-11 20:45:53 +11:00
905a2236a2
Add MD4 implementation
2013-03-11 20:44:32 +11:00
8df03fae81
Add MD2 implementation
2013-03-11 20:43:15 +11:00