Yawning Angel
2f301e46dc
core/crypto: Switch to using ensure
2025-03-23 19:14:33 +09:00
Yawning Angel
dc94452fb9
core/crypto/blake2: Add the ability to easily alter digest size
2025-03-23 19:14:33 +09:00
Laytan Laats
288312a812
core: improve package doc comments for the documentation generator
2024-09-03 19:59:04 +02:00
Yawning Angel
7a8b1669b0
core/crypto: Expose the block sizes for every hash algorithm
...
While I just went and made this private, this information is required
for keying HMAC.
2024-02-07 00:37:18 +09:00
Yawning Angel
899fab64d9
core/crypto: Documentation cleanups
2024-02-07 00:37:18 +09:00
Yawning Angel
00ab3beed9
core:crypto/hash: Add a generic higher level hash interface
...
There is a lot of code duplicated in convenience methods in each hash
implementation, and having a generic hash type makes implementing
higher-level constructs such as HMAC significantly easier down the road.
2024-02-07 00:37:18 +09:00
Yawning Angel
aa821991b8
core/crypto/blake2: API cleanup and bug fixes
...
- blake2s.Blake2s_Context -> blake2s.Context
- blake2b.Blake2b_Context -> blake2b.Context
- Fix the BLAKE2s low level API (context type was incorrect)
- Support the configurable output size
2023-11-17 19:31:51 +09:00
Yawning Angel
70ba4b5321
core/crypto: Add more assertions to the low level API
...
Assertions here are "fine" and it matches what the code that has the
checks in init/update/final already does.
2023-11-17 19:31:51 +09:00
Yawning Angel
e86bb3a795
core/crypto: Change hash asserts to panics
...
Assertions can be disabled, but at the point where cryptographic
anything is involved, a single branch has an infinitesimally small
performance impact.
The correct thing to do is to punch the caller in the face if they do
something that is blatantly incorrect, especially in a security critical
setting.
2023-11-17 19:31:51 +09:00
Yawning Angel
d6e0e5d3f6
core/crypto/blake2: odinfmt (NFC)
2023-11-17 16:53:29 +09:00
gingerBill
9ee4b76cd9
Just make the io.Reader etc aliases
2023-06-08 16:38:57 +01:00
gingerBill
3f6775e29b
Update to new io interface
2023-06-08 16:35:24 +01:00
gingerBill
1bf8328606
Strip unneeded semicolons
2022-01-25 16:40:25 +00:00
zhibog
42033ea808
Extended crypto API by variants that write the result into a destination buffer, instead of returning it
2021-12-31 13:16:11 +01:00
zhibog
c24454ae70
Removed context switching system from the crypto library to simplify the code
2021-11-09 16:50:13 +01:00
zhibog
dd7449b8b5
Fixed some typos in proc names
2021-10-16 19:20:43 +02:00
zhibog
b7a0627d09
Remove the read_entire_file from the crypto utils and now use the one within core:os
2021-10-16 18:46:18 +02:00
zhibog
f48ee00c2f
Improved API. hash_file procs now just take a file handle instead of a path
2021-10-15 20:29:25 +02:00
zhibog
77be7144c3
Add crypto library. Additional information is included in the README.md
2021-10-14 22:20:55 +02:00