Yawning Angel
|
ba1ad82c2b
|
core/crypto/aead: Initial import
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
38aea1f907
|
core/crypto/aes,chacha20poly1305: Add require_results to open
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
b381791f42
|
core/crypto/chacha20: Change API terminology to be consistent with AES
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
14ceb0b19d
|
core/crypto/chacha20poly1305: Support AEAD_XChaCha20_Poly1305
IETF-draft flavor (32-bit counter) though this makes no practical
difference.
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
8efc98ce90
|
core/crypto/chacha20poly1305: Change the interface to match GCM
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
1f3107e693
|
core/crypto/chacha20: Use 128-bit/256-bit SIMD
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
708f053fe6
|
core/crypto/aes: Use NIST terminology for the IV
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
ac7f44b1b8
|
core/crypto/aes: Slightly tweak GHASH to look less spooky
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
b1d6e4139e
|
core/crypto/aes: Disable bounds checking for the CTR loops
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
dfc4df9807
|
core/crypto/_aes/hw_intel: Use a constant for the PSHUFB indicies
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
b9293334ca
|
core/crypto/ed25519: Rename a member for clarity
This better matches the spec.
|
2024-08-10 18:32:37 +09:00 |
|
Yawning Angel
|
b68311d777
|
core/crypto/hash: Make the _to_buffer routines return the hash slice
Quality of life improvement.
|
2024-08-10 18:32:37 +09:00 |
|
gingerBill
|
9f9abb8fb3
|
Use union #shared_nil for os.Error
|
2024-08-04 11:05:30 +01:00 |
|
gingerBill
|
e60951a902
|
Begin converting os.Errno to be a nil-able type as a transition period
|
2024-08-04 10:51:08 +01:00 |
|
Yawning Angel
|
33dae2e26c
|
core/crypto/aes: Support the full range of GCM nonce sizes
|
2024-07-16 01:29:43 +09:00 |
|
Yawning Angel
|
69026852ce
|
core/crypto/aes: Add Intel AES-NI support
This supports AES-NI + PCLMUL, and provides optimized key schedule, ECB,
CTR, and GCM. Other modes are trivial to add later if required.
|
2024-07-16 01:29:43 +09:00 |
|
Yawning Angel
|
1bc21c3481
|
core/crypto/_aes: Remove redundant sanity checks
|
2024-07-16 01:29:43 +09:00 |
|
Yawning Angel
|
c9c0b9ea7b
|
core/crypto: Fix/add some documentation (NFC)
|
2024-07-16 01:29:43 +09:00 |
|
Yawning Angel
|
ff13ee3281
|
core/crypto: Enforce aliasing restrictions
|
2024-07-16 01:29:43 +09:00 |
|
Laytan Laats
|
2d8d0dd851
|
fix @(optimization_mode) usage in builtin collections
|
2024-07-08 21:07:53 +02:00 |
|
gingerBill
|
e296d6fb90
|
Fix loads of indentation issues with mixing spaces and tabs
|
2024-06-29 19:50:51 +01:00 |
|
gingerBill
|
4b71c47fd5
|
Check for unneeded transmute with -vet-cast
|
2024-06-29 12:02:31 +01:00 |
|
gingerBill
|
e41ad2bf16
|
to_random_generator -> random_generator
|
2024-06-15 16:24:01 +01:00 |
|
gingerBill
|
318d5e4a7e
|
Add Reset mode
|
2024-06-15 15:17:23 +01:00 |
|
gingerBill
|
dc4ec8638c
|
Add runtime.Random_Generator interface
|
2024-06-15 14:45:57 +01:00 |
|
gingerBill
|
35a845b93f
|
Fix indentation
|
2024-06-11 13:12:41 +01:00 |
|
gingerBill
|
3ff8952813
|
Replace panic(fmt.tprintf( antipattern with fmt.panicf
|
2024-06-11 13:11:14 +01:00 |
|
Yawning Angel
|
c751e4b2eb
|
core/crypto/aes: Add AES implementation
|
2024-06-01 22:55:42 +09:00 |
|
Yawning Angel
|
1ade62b630
|
core/crypto/_aes/ct64: Add GHASH
|
2024-06-01 22:55:42 +09:00 |
|
Yawning Angel
|
cba58924a8
|
core/crypto/_aes: 64-bit portable implementation
|
2024-06-01 22:55:42 +09:00 |
|
Andreas T Jonsson
|
7feff1c113
|
Merged with master
|
2024-05-02 09:27:46 +02:00 |
|
Andreas T Jonsson
|
9a008d10f3
|
Merge branch 'master' into netbsd
|
2024-04-25 22:04:40 +02:00 |
|
Andreas T Jonsson
|
8ffe577a15
|
Added missing build tags in core
|
2024-04-25 09:43:54 +02:00 |
|
Yawning Angel
|
a6eb64df6c
|
core/crypto: Add a HAS_RAND_BYTES constant
|
2024-04-23 11:47:43 +09:00 |
|
Andreas T Jonsson
|
1b15d8b453
|
Added build tag
Added build tag to rand_bsd.odin and fixed build warning.
|
2024-04-22 09:32:19 +02:00 |
|
Vitalii Kravchenko
|
befb0f7868
|
Core Foundation and Security vendor libraries.
|
2024-04-13 00:11:42 +01:00 |
|
Yawning Angel
|
893c3bef9a
|
core/crypto/ed25519: Initial import
|
2024-04-09 14:37:59 +09:00 |
|
Yawning Angel
|
d96f8bb5c1
|
core/crypto/ristretto255: Initial import
|
2024-04-09 14:37:59 +09:00 |
|
Yawning Angel
|
563c527419
|
core/crypto/_edwards25519: Initial import
|
2024-04-09 14:37:59 +09:00 |
|
Yawning Angel
|
fec42a6d74
|
core/crypto/_fiat/field_scalar25519: Initial import
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
4defe88dec
|
core/crypto/_fiat/field_poly1305: Mark more functions contextless
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
36f3001d59
|
core/crypto/_fiat/field_poly1305: Use multiply to calculate the mask
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
1ce279e6a1
|
core/crypto/_fiat/field_curve25519: Mark more functions contextless
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
c951cbdbbc
|
core/crypto/_fiat: odinfmt (NFC)
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
31aba5a728
|
core/crypto/_fiat/field_poly1305: Move routines (NFC)
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
9a418fd27b
|
core/crypto/_fiat/field_curve25519: Move routines (NFC)
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
f9b9521bf0
|
core/crypto/_fiat/field_curve25519: Use multiply to calculate the mask
Largely for consistency with the generic code, either is valid with Odin
semantics, but this is easier to comprehend.
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
b155fdf8c9
|
core/crypto: Add has_rand_bytes
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.
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
a43a5b053c
|
core/crypto: Add more documentation about assumptions (NFC)
|
2024-04-09 10:23:58 +09:00 |
|
Yawning Angel
|
a45721e9ad
|
core/crypto/poly1305: The final addition is NOT mod p
|
2024-04-05 23:45:41 +09:00 |
|