aboutsummaryrefslogtreecommitdiff
path: root/tests/core/crypto
Commit message (Collapse)AuthorAgeFilesLines
* core/crypto/ecdh: Add secp384r1Yawning Angel12 days1-0/+13
|
* core/crypto/_weierstrass: Add secp384r1Yawning Angel12 days1-11/+444
|
* core/crypto/ecdh: Initial importYawning Angel2026-01-282-124/+154
|
* core/crypto: Start work on the NIST curvesYawning Angel2026-01-281-0/+486
|
* core/crypto/ed25519: Cosmetic fixes (NFC)Yawning Angel2026-01-281-3/+3
|
* Change Odin's LICENSE to zlib from BSD 3-clausegingerBill2025-10-281-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 importYawning Angel2025-03-231-0/+89
|
* core/crypto/aegis: Initial importYawning Angel2025-03-231-0/+204
|
* core/crypto/x448: Initial importYawning Angel2025-03-231-0/+63
|
* core/crypto/_sha3: Fix edge case in cSHAKE bytepadYawning Angel2024-09-301-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 importYawning Angel2024-08-103-394/+361
|
* core/crypto/chacha20: Change API terminology to be consistent with AESYawning Angel2024-08-101-7/+7
|
* core/crypto/chacha20poly1305: Support AEAD_XChaCha20_Poly1305Yawning Angel2024-08-101-0/+62
| | | | | IETF-draft flavor (32-bit counter) though this makes no practical difference.
* core/crypto/chacha20poly1305: Change the interface to match GCMYawning Angel2024-08-101-60/+50
|
* core/crypto/chacha20: Use 128-bit/256-bit SIMDYawning Angel2024-08-101-3/+55
|
* core/crypto/aes: Use NIST terminology for the IVYawning Angel2024-08-101-2/+2
|
* test/core/crypto: Minor changes to AES related testsYawning Angel2024-08-101-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 supportYawning Angel2024-07-161-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 spewYawning Angel2024-07-161-1/+1
|
* tests/core/crypto: Fix new `-vet` issuesYawning Angel2024-07-161-3/+3
|
* Plug leak in AES tests.Jeroen van Rijn2024-06-021-0/+1
|
* Factor benchmarks out into tests\benchmark\<pkg>Jeroen van Rijn2024-06-021-353/+0
|
* Update `tests\core\crypto`Jeroen van Rijn2024-06-028-563/+347
|
* core/crypto/aes: Add AES implementationYawning Angel2024-06-013-0/+523
|
* core/crypto: Add a `HAS_RAND_BYTES` constantYawning Angel2024-04-231-1/+1
|
* tests/core/crypto: Start adding comprehensive curve25519 testsYawning Angel2024-04-097-71/+842
|
* core/crypto: Add `has_rand_bytes`Yawning Angel2024-04-091-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` boilerplateYawning Angel2024-03-046-105/+85
|
* core/crypto/kmac: Initial importYawning Angel2024-03-041-0/+98
|
* core/crypto/tuplehash: Initial importYawning Angel2024-03-042-131/+342
|
* core/crypto/shake: Support cSHAKEYawning Angel2024-03-041-6/+60
|
* core/crypto/hkdf: Initial importYawning Angel2024-03-041-0/+67
|
* core/crypto/pbkdf2: Initial importYawning Angel2024-03-042-0/+120
|
* core/crypto: Stop using context.temp_allocatorYawning Angel2024-02-071-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 importYawning Angel2024-02-072-130/+243
|
* core/crypto/hash: Make the low level interface allocator-lessYawning Angel2024-02-071-4/+10
| | | | Just (ab)using reflect to victory is probably fine.
* tests/core/crypto: ReorganizeYawning Angel2024-02-073-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 hashYawning Angel2024-02-072-31/+79
|
* tests/core/crypto: Cleanup/modernize a bitYawning Angel2024-02-073-249/+366
|
* core:crypto/hash: Add a generic higher level hash interfaceYawning Angel2024-02-072-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 legacyYawning Angel2023-11-171-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/exoticYawning Angel2023-11-171-28/+0
|
* core/crypto/tiger: Remove, historical/exoticYawning Angel2023-11-171-110/+0
|
* core/crypto/streebog: Remove, exoticYawning Angel2023-11-171-31/+0
|
* core/crypto/ripemd: Remove, historical/exoticYawning Angel2023-11-171-85/+0
|
* core/crypto/md4: Remove, badly brokenYawning Angel2023-11-171-21/+0
|
* core/crypto/md2: Remove, badly brokenYawning Angel2023-11-171-21/+0
|
* core/crypto/jh: Remove, use SHA-3Yawning Angel2023-11-171-61/+0
|
* core/crypto/haval: Remove, badly brokenYawning Angel2023-11-171-171/+0
|
* core/crypto/groestl: Remove, use SHA-3Yawning Angel2023-11-171-61/+0
|