| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | core/crypto/ecdh: Add secp384r1 | Yawning Angel | 12 days | 1 | -0/+13 |
| | | |||||
| * | core/crypto/_weierstrass: Add secp384r1 | Yawning Angel | 12 days | 1 | -11/+444 |
| | | |||||
| * | core/crypto/ecdh: Initial import | Yawning Angel | 2026-01-28 | 2 | -124/+154 |
| | | |||||
| * | core/crypto: Start work on the NIST curves | Yawning Angel | 2026-01-28 | 1 | -0/+486 |
| | | |||||
| * | core/crypto/ed25519: Cosmetic fixes (NFC) | Yawning Angel | 2026-01-28 | 1 | -3/+3 |
| | | |||||
| * | Change Odin's LICENSE to zlib from BSD 3-clause | gingerBill | 2025-10-28 | 1 | -1/+1 |
| | | | | | This change was made in order to allow things produced with Odin and using Odin's core library, to not require the LICENSE to also be distributed alongside the binary form. | ||||
| * | core:crypto/deoxysii: Initial import | Yawning Angel | 2025-03-23 | 1 | -0/+89 |
| | | |||||
| * | core/crypto/aegis: Initial import | Yawning Angel | 2025-03-23 | 1 | -0/+204 |
| | | |||||
| * | core/crypto/x448: Initial import | Yawning Angel | 2025-03-23 | 1 | -0/+63 |
| | | |||||
| * | core/crypto/_sha3: Fix edge case in cSHAKE bytepad | Yawning Angel | 2024-09-30 | 1 | -0/+17 |
| | | | | | | If the domain separator happens to be exactly the rate, we would previously incorrectly add another rate-bytes of 0s. | ||||
| * | core/crypto/aead: Initial import | Yawning Angel | 2024-08-10 | 3 | -394/+361 |
| | | |||||
| * | core/crypto/chacha20: Change API terminology to be consistent with AES | Yawning Angel | 2024-08-10 | 1 | -7/+7 |
| | | |||||
| * | core/crypto/chacha20poly1305: Support AEAD_XChaCha20_Poly1305 | Yawning Angel | 2024-08-10 | 1 | -0/+62 |
| | | | | | | IETF-draft flavor (32-bit counter) though this makes no practical difference. | ||||
| * | core/crypto/chacha20poly1305: Change the interface to match GCM | Yawning Angel | 2024-08-10 | 1 | -60/+50 |
| | | |||||
| * | core/crypto/chacha20: Use 128-bit/256-bit SIMD | Yawning Angel | 2024-08-10 | 1 | -3/+55 |
| | | |||||
| * | core/crypto/aes: Use NIST terminology for the IV | Yawning Angel | 2024-08-10 | 1 | -2/+2 |
| | | |||||
| * | test/core/crypto: Minor changes to AES related tests | Yawning Angel | 2024-08-10 | 1 | -61/+54 |
| | | | | | | | | - Test against the non-standard GCM nonce length vectors - Fix the CTR mode test to match the comment Correctness was fine without this change. | ||||
| * | core/crypto/aes: Add Intel AES-NI support | Yawning Angel | 2024-07-16 | 1 | -7/+5 |
| | | | | | | This supports AES-NI + PCLMUL, and provides optimized key schedule, ECB, CTR, and GCM. Other modes are trivial to add later if required. | ||||
| * | test/core/crypto: Fix a copy-paste issue in failure spew | Yawning Angel | 2024-07-16 | 1 | -1/+1 |
| | | |||||
| * | tests/core/crypto: Fix new `-vet` issues | Yawning Angel | 2024-07-16 | 1 | -3/+3 |
| | | |||||
| * | Plug leak in AES tests. | Jeroen van Rijn | 2024-06-02 | 1 | -0/+1 |
| | | |||||
| * | Factor benchmarks out into tests\benchmark\<pkg> | Jeroen van Rijn | 2024-06-02 | 1 | -353/+0 |
| | | |||||
| * | Update `tests\core\crypto` | Jeroen van Rijn | 2024-06-02 | 8 | -563/+347 |
| | | |||||
| * | core/crypto/aes: Add AES implementation | Yawning Angel | 2024-06-01 | 3 | -0/+523 |
| | | |||||
| * | core/crypto: Add a `HAS_RAND_BYTES` constant | Yawning Angel | 2024-04-23 | 1 | -1/+1 |
| | | |||||
| * | tests/core/crypto: Start adding comprehensive curve25519 tests | Yawning Angel | 2024-04-09 | 7 | -71/+842 |
| | | |||||
| * | core/crypto: Add `has_rand_bytes` | Yawning Angel | 2024-04-09 | 1 | -1/+1 |
| | | | | | | This allows runtime detection as to if `rand_bytes` is supported or not, and lets us enable the test-case on all of the supported targets. | ||||
| * | tests/core/crypto: Use the `tests/common` boilerplate | Yawning Angel | 2024-03-04 | 6 | -105/+85 |
| | | |||||
| * | core/crypto/kmac: Initial import | Yawning Angel | 2024-03-04 | 1 | -0/+98 |
| | | |||||
| * | core/crypto/tuplehash: Initial import | Yawning Angel | 2024-03-04 | 2 | -131/+342 |
| | | |||||
| * | core/crypto/shake: Support cSHAKE | Yawning Angel | 2024-03-04 | 1 | -6/+60 |
| | | |||||
| * | core/crypto/hkdf: Initial import | Yawning Angel | 2024-03-04 | 1 | -0/+67 |
| | | |||||
| * | core/crypto/pbkdf2: Initial import | Yawning Angel | 2024-03-04 | 2 | -0/+120 |
| | | |||||
| * | core/crypto: Stop using context.temp_allocator | Yawning Angel | 2024-02-07 | 1 | -0/+25 |
| | | | | | | | | | | | | The max digest size for the foreseeable future will be 512 bits, and the max block size is currently 1152 bits (SHA3-224). If people add more exotic hash algorithms without bumping the constants when required, tests will fail. The stream buffer will currently be 576 bytes, which is "fine" to just stick on the stack, and is a sensible multiple of the more common block size of 64 bytes. | ||||
| * | core/crypto/hmac: Initial import | Yawning Angel | 2024-02-07 | 2 | -130/+243 |
| | | |||||
| * | core/crypto/hash: Make the low level interface allocator-less | Yawning Angel | 2024-02-07 | 1 | -4/+10 |
| | | | | | Just (ab)using reflect to victory is probably fine. | ||||
| * | tests/core/crypto: Reorganize | Yawning Angel | 2024-02-07 | 3 | -665/+671 |
| | | | | | | | | All of our crypto is modern now unless exiled to the legacy sub-package, so move the test cases for the currently un-unified algorithms into the main test driver file, and rename the benchmark driver to reflect reality. | ||||
| * | core/crypto/shake: SHAKE is an XOF, not a hash | Yawning Angel | 2024-02-07 | 2 | -31/+79 |
| | | |||||
| * | tests/core/crypto: Cleanup/modernize a bit | Yawning Angel | 2024-02-07 | 3 | -249/+366 |
| | | |||||
| * | core:crypto/hash: Add a generic higher level hash interface | Yawning Angel | 2024-02-07 | 2 | -388/+615 |
| | | | | | | | 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. | ||||
| * | core/crypto: Exile keccak, md5 and sha1 to legacy | Yawning Angel | 2023-11-17 | 1 | -3/+3 |
| | | | | | | | In an perfect world these would just be removed, but the world is imperfect, and people are forced to interact/interface with things that are broken. | ||||
| * | core/crypto/whirlpool: Remove, historical/exotic | Yawning Angel | 2023-11-17 | 1 | -28/+0 |
| | | |||||
| * | core/crypto/tiger: Remove, historical/exotic | Yawning Angel | 2023-11-17 | 1 | -110/+0 |
| | | |||||
| * | core/crypto/streebog: Remove, exotic | Yawning Angel | 2023-11-17 | 1 | -31/+0 |
| | | |||||
| * | core/crypto/ripemd: Remove, historical/exotic | Yawning Angel | 2023-11-17 | 1 | -85/+0 |
| | | |||||
| * | core/crypto/md4: Remove, badly broken | Yawning Angel | 2023-11-17 | 1 | -21/+0 |
| | | |||||
| * | core/crypto/md2: Remove, badly broken | Yawning Angel | 2023-11-17 | 1 | -21/+0 |
| | | |||||
| * | core/crypto/jh: Remove, use SHA-3 | Yawning Angel | 2023-11-17 | 1 | -61/+0 |
| | | |||||
| * | core/crypto/haval: Remove, badly broken | Yawning Angel | 2023-11-17 | 1 | -171/+0 |
| | | |||||
| * | core/crypto/groestl: Remove, use SHA-3 | Yawning Angel | 2023-11-17 | 1 | -61/+0 |
| | | |||||