Yawning Angel
2f301e46dc
core/crypto: Switch to using ensure
2025-03-23 19:14:33 +09:00
Yawning Angel
9fdcc4e39a
core/crypto/x448: Initial import
2025-03-23 19:14:33 +09:00
Yawning Angel
bb395aeb41
core/crypto: Add rodata annotations (NFC)
2025-03-23 19:14:33 +09:00
Yawning Angel
e4e76f27f6
core/crypto: Use panic_contextless instead of intrinsics.trap
2025-03-23 19:14:33 +09:00
gingerBill
4b71c47fd5
Check for unneeded transmute with -vet-cast
2024-06-29 12:02:31 +01: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
1279ebe948
core/crypto/poly1305: Cleanups
...
- Use `encoding/endian`
2023-11-17 16:53:29 +09:00
Yawning Angel
d72db2698b
core/crypto/_fiat: Hedge against LLVM cleverness
...
Recent LLVM is getting smart to the point where the optimizer can change
a traditional constant-time conditional swap into a pointer swap.
Ensure that this does not happen by force-disabling optimization.
Additionally, disable inlining the relevant routines such that manual
inspection in optimized builds is still reasonably easy to do.
2023-04-08 09:57:47 +09:00
cui fliter
dc8b7a0eb8
fix some typos
...
Signed-off-by: cui fliter <imcusg@gmail.com >
2022-08-05 20:10:20 +08:00
gingerBill
3d7d347192
Convert ODIN_OS and ODIN_ARCH to use enums rather than use strings
2022-01-20 19:56:05 +00:00
gingerBill
29ebe0c3c9
Rename architecture 386 to i386
2022-01-15 17:40:00 +00:00
Yawning Angel
4647081f49
core/crypto/poly1305: Triple performance on amd64 with -o:speed
2021-11-17 13:59:53 +00:00
Yawning Angel
64db286582
core/crypto: Add poly1305
...
This package implements the Poly1305 MAC algorithm as specified in RFC
8439, using routines taked from fiat-crypto and poly1305-donna.
2021-11-17 13:59:53 +00:00
Yawning Angel
1a7a6a9116
core/crypto: Add x25519
...
This package implements the X25519 key agreement scheme as specified in
RFC 7748, using routines taken from fiat-crypto and Monocypher.
2021-11-17 13:59:53 +00:00