Commit graph

71 commits

Author SHA1 Message Date
Adam Ierymenko
3621fe8897
Some AES cleanup and include controller with Go build. 2020-05-30 17:03:12 -07:00
Adam Ierymenko
6051c973d3
A bunch of warning removal, build fixes, and cleanup. 2020-05-25 09:48:18 -07:00
Adam Ierymenko
a1193f0e30
A few AES-GMAC-SIV tweaks to use a bit more IV state. 2020-05-19 12:18:50 -07:00
Adam Ierymenko
52e1f5502d
More VL1 work after re-re-re-refactor... 2020-05-13 14:26:53 -07:00
Adam Ierymenko
b533c300d8
A ton more work... almost there 2020-04-28 19:52:09 -07:00
Adam Ierymenko
2b0127c26d
Work in progress on crypto stuff, refactoring to back out of use of structs for encode/decode as it is questionably portable. 2020-04-16 12:34:51 -07:00
Adam Ierymenko
16a3c14c53
A bunch of cleanup and refactoring, implementation of prep for forward secrecy still in progress. 2020-04-13 12:22:08 -07:00
Adam Ierymenko
c65391a344
Add symmetric key container, tons of cleanup. 2020-04-06 16:54:35 -07:00
Adam Ierymenko
9428fc53f6
A bunch of cleanup, bug fix, just use unordered_map, etc. 2020-03-30 17:28:23 -07:00
Adam Ierymenko
3914964a35
AES docs 2020-03-26 15:55:31 -07:00
Adam Ierymenko
bedf63e257
Some minor security tightening stuff and AES fixes. 2020-03-26 13:54:15 -07:00
Adam Ierymenko
d151d731a6
(1) Mask bit 31 of AES-CTR nonce to disallow uint32 overflow, (2) get rid of handling of uint32/uint64 overflow in our AES-CTR code to optimize, (3) optimize AES software a bit 2020-03-26 10:28:59 -07:00
Adam Ierymenko
f92fca03a0
Update SIV diagram, length pad AAD. 2020-03-25 15:09:49 -07:00
Adam Ierymenko
d3a7468e83
Implement AES-GMAC-SIV and benchmark, rework COM and add a lot of comments and docs, and comments and docs elsewhere too. 2020-03-25 09:05:44 -07:00
Adam Ierymenko
24e30a684b
A bunch of little nit-picky header and name cleanup. 2020-03-04 08:16:44 -08:00
Adam Ierymenko
c5bd21a23e
various optimization 2020-02-26 17:00:03 -08:00
Adam Ierymenko
5275a34b0b
more refactoring 2020-02-21 07:11:16 -08:00
Adam Ierymenko
e236d6f743
More minor refactoring 2020-02-14 10:19:45 -08:00
Adam Ierymenko
5db0d9438c
More built-in AES and GMAC primitive work. 2020-02-14 09:05:48 -08:00
Adam Ierymenko
08e06f9b8f
More refactoring and a bunch of AES goodness. 2020-02-13 14:44:18 -08:00
Adam Ierymenko
f21ecb3762
Yet more major and very nit-picky refactoring for performance, etc. Also use std::atomic<> now with a TODO to implement a shim if we ever do need to build this on a pre-c++11 compiler. 2020-02-12 14:04:25 -08:00
Adam Ierymenko
91ce4c4ea6
Refactoring protocol marshal/unmarshal code... 2020-01-24 21:16:07 -08:00
Adam Ierymenko
73b23f1b16
Go code cleanup and fixes, other cleanup. 2020-01-20 16:03:19 -08:00
Adam Ierymenko
eef70e198b
Version 2.x notice updates and other boring stuff. 2020-01-20 08:46:20 -08:00
Adam Ierymenko
53b7c8f725
Make Peer bootstrap field an Endpoint even though we only support InetAddress right now, and a bunch more stuff. 2020-01-20 08:08:38 -08:00
Adam Ierymenko
a5aea2f3bb
Everything but the Go code builds now! 2020-01-10 21:09:13 -08:00
Adam Ierymenko
83eacdfada
New Buffer implementation (not used yet) and cleanup 2020-01-10 15:28:27 -08:00
Adam Ierymenko
ef64e6a336
Build fixes, cleanup 2020-01-08 21:24:47 -08:00
Adam Ierymenko
3fbfad5585
cleanup 2020-01-07 14:03:50 -08:00
Adam Ierymenko
6267c67888
A bunch of cleanup and refactoring toward 2.x 2019-12-12 16:15:49 -08:00
Adam Ierymenko
9f9032ae36
Cleanup and warning removal. 2019-09-13 16:24:02 -07:00
Adam Ierymenko
87fe69c27c
AES optimization rabbit hole 2019-09-13 09:35:49 -07:00
Adam Ierymenko
2d1eeda188
Cleanup, optimization 2019-09-12 14:32:37 -07:00
Adam Ierymenko
0723a85ab3
Build fixes. 2019-09-11 15:52:18 -07:00
Adam Ierymenko
c6141ffbc7
cleanup 2019-09-05 18:06:48 -07:00
Adam Ierymenko
c0e92d06a5
faster without const variable second-guessing of the compiler 2019-09-05 17:31:12 -07:00
Adam Ierymenko
274b2682d6
cleanup and docs 2019-09-05 15:09:20 -07:00
Adam Ierymenko
171d661b84
cleanup 2019-09-05 12:17:04 -07:00
Adam Ierymenko
5cea8da664
Optimization and naming cleanup 2019-09-05 12:03:11 -07:00
Adam Ierymenko
44dd52d08f
KBKDF 2019-09-05 11:39:16 -07:00
Adam Ierymenko
43e6a9e9ee
more fastitude 2019-09-05 09:54:30 -07:00
Adam Ierymenko
55f4f9aaeb
cleanup 2019-09-04 16:15:10 -07:00
Adam Ierymenko
82b7e1dbcb
HMAC fix 2019-09-04 15:22:15 -07:00
Adam Ierymenko
3a0d385119
Implement changes to AES-GMAC-CTR: four keys with one for each role/purpose instead of just two, and simpler CTR-IV calculation. 2019-09-04 14:37:38 -07:00
Adam Ierymenko
185e90c40f
AES-GMAC-CTR tweaks, self test tweaks, debian typo fix. 2019-09-04 08:19:12 -07:00
Adam Ierymenko
1b459b0560
cleanup 2019-08-27 14:31:04 -07:00
Adam Ierymenko
40803a4dc1
cleanup 2019-08-27 14:25:11 -07:00
Adam Ierymenko
b9ef09dd58
Optimization stuff 2019-08-26 18:15:32 -07:00
Adam Ierymenko
ec9582f3f2
More test vectors, software mode GCM. 2019-08-26 16:24:42 -07:00
Adam Ierymenko
a0fd4ad23f
Cleanup, Linux build fix. 2019-08-26 12:17:23 -07:00