#
5385b50e |
|
25-May-2018 |
Aaron Green <aarongreen@google.com> |
[crypto] Split Bytes class This CL breaks out the Secret class from the Bytes class. A number of paranoid but expensive functions are only needed for security sensitve secrets, e.g. mandatory_memset in the destructor of keys. This split allows only the data that needs the paranoia to pay for it. Change-Id: Ib3fdc23ef7c0f86a6549c639353ac72bb35ebedf
|
#
23d453e5 |
|
21-Nov-2017 |
Aaron Green <aarongreen@google.com> |
[ulib/crypto] Bytes class improvements This CL adds a few more helper methods and tweaks to Bytes: - Copy(const Bytes &) copies from another Bytes object. - Resize(size_t) is a no-op if the size is unchanged. - Randomize(0) will skip the resizing step. - Merge(const Bytes &) copies another Bytes to the end of this one. - Split(Bytes*) copies to another Bytes from the end of this one. Change-Id: I9fced1b700285b51e8e8461472cf5ee6dccb5640
|
#
ddfd1d95 |
|
25-Oct-2017 |
Aaron Green <aarongreen@google.com> |
[crypto] Add AEAD class This CL adds AEAD, a secret key cipher that can be used to encrypt and decrypt data. AEADs are distinguished from Ciphers in that they do not require block-aligned lengths and ensure data integrity, at the cost of some additional space. Change-Id: I51df60a004f55e763f18ec0d468a7a4ddb9f46f4
|
#
5daf98de |
|
17-Oct-2017 |
Aaron Green <aarongreen@google.com> |
[crypto] Add Cipher class This CL adds Cipher, a secret key cipher that can be used to encrypt and decrypt data. Ciphers are distinguished from AEADs in that they require block-aligned lengths and do not ensure data integrity. Change-Id: I080237adfa3997a9f60903a37a8b377b81766e7f
|
#
c83034d3 |
|
17-Oct-2017 |
Aaron Green <aarongreen@google.com> |
[crypto] Add HMAC class This CL adds an HMAC, a hash-based message authentication code, that can be used to verify the integrity of data. Change-Id: I9b2f5e94cefd9de66529b3eb8b41ff1755fab778
|
#
cb139aa3 |
|
17-Oct-2017 |
Aaron Green <aarongreen@google.com> |
[crypto] Add Bytes class This CL adds Bytes, which represents a byte buffer with methods to securely erase on destruction and compare in constant time. Change-Id: I2c970d02eb70c09c59c76d7c5640a14b02c23d68
|