aboutsummaryrefslogtreecommitdiff
path: root/tests/core/crypto
Commit message (Collapse)AuthorAgeFilesLines
* 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
|
* core/crypto/gost: Remove, exoticYawning Angel2023-11-171-22/+0
|
* core/crypto/blake: Remove, use BLAKE2b/BLAKE2sYawning Angel2023-11-171-61/+0
|
* core/crypto/sha2: Add SHA-512/256Yawning Angel2023-11-171-0/+16
|
* Add missing commagingerBill2023-05-291-1/+1
|
* core/crypto: Add private attributes for internalsYawning Angel2023-04-081-1/+7
| | | | | These constants and internal routines are not intended for use outside the actual implementations themselves.
* Fix issue 1761. Added the test vector to the core and vendor testszhibog2022-05-041-0/+4
|