Michael Hamburg
1a38c25d9d
CFRG crypto back to working, just need to do elligator inversion for identity on x25519
7 years ago
Michael Hamburg
2d04fa7b43
working out sign bugs; then on to invert elligator ristretto
7 years ago
Michael Hamburg
2cc6ebfb67
ed25519 ristretto inverse works except at the identity point
7 years ago
Michael Hamburg
5fc32bf1e9
elligator apparently(?) working for ed448
7 years ago
Michael Hamburg
c82e7ae7a7
add ristretto widget. elligator is correct, but inverse is not yet
7 years ago
Michael Hamburg
263d454903
ristretto patched in, except elligator. still need to test against vectors though
7 years ago
Michael Hamburg
30544252e6
fix comments in generated code too
7 years ago
Michael Hamburg
4a133be2e0
fix comments add/subtract
7 years ago
Michael Hamburg
dc3deb8c81
Don't use vector arithmetic in generic arch_32
7 years ago
Michael Hamburg
b295ef7669
rename decaf_sponge_* apis to decaf_sha3_*. Also reverse order on decaf_sponge_hash to make it the same as decaf_shake*_hash and decaf_sha3*_hash
7 years ago
Michael Hamburg
b29565fdfd
fix assertion on x25519/x448(0), thanks Olivier Cheron
7 years ago
Michael Hamburg
1c8b8cb77d
fix warning due to MACRO?4:3 in elligator.c
7 years ago
Michael Hamburg
3d5962c330
fix two warnings pointed out by Sofia Celi
7 years ago
Michael Hamburg
4e809c79cf
ok so the cpuid problem was an fPIC issue. Hopefully this fixes it...
7 years ago
Michael Hamburg
cdb0ce047d
avoid warning for uninitialized entropy; change asm cpuid to look more like cpuid.h in the vain hope that this will compile better
7 years ago
Mike Hamburg
513e646081
restore declaration of deisogenize which was causing build failure in gcc
7 years ago
Michael Hamburg
488e2548bd
fix(?! needs testing) a critical bug in SHAKE XOF: the state would never transition to SQUEEZING, resulting in incorrect outputs
7 years ago
Michael Hamburg
b423ac359c
working on decaffeinating ed25519
7 years ago
Michael Hamburg
92b2cb464a
sha3 functions can now return an error (likely to be ignored) if output length is to large. Also add shake###_output
7 years ago
Michael Hamburg
dd9bcf2355
remove dynamic throw lists, since theyre deprecated
7 years ago
Michael Hamburg
5717005809
dont look for immintrin on GCC pre-4.4. Also dont build with -maes; need to autoconfig other flags
7 years ago
Michael Hamburg
51e3296fd5
aligned(32) -> VECTOR_ALIGNED internally; still need (32) in interfaces, at least for now, because the library might have been compiled with eg avx2 but the caller might be compiled without
7 years ago
Michael Hamburg
e69e00269f
rename publicly-visible macros to DECAF_ namespace
7 years ago
Michael Hamburg
ec4ece08f0
add decaf_edXXX_convert_public_key_to_xXXX; thanks Johan Pascal
7 years ago
Michael Hamburg
6e2ce5201f
internal VECTOR_ALIGNED instead of __attribute((aligned(32))), thanks Olivier
7 years ago
Michael Hamburg
beba37006a
deprecated macros, thanks Olivier Chéron and Tomi Ollila
7 years ago
Michael Hamburg
f22d082756
fix? register allocation on x86-64
7 years ago
Michael Hamburg
aef9fd8677
add DEFAULT_SOURCE in word.h
7 years ago
Michael Hamburg
bd2a516210
generator should now be python3 clean
7 years ago
Michael Hamburg
42a969202c
add _DEFAULT_SOURCE for more modern glibc
7 years ago
Michael Hamburg
4a13ad4b8b
unroll loops in arch_32/f_impl.c except on -Os
7 years ago
Michael Hamburg
bb1eef3712
tear out STROBE. Probably will re-introduce later
7 years ago
Michael Hamburg
af606fb195
x448 generate_key -> derive_public_key to match ed448 nomenclature
7 years ago
Mike Hamburg
b8f6e3d007
change x86-64 non-BMI2 asm constraints for gcc compat; thanks Olivier Cheron
8 years ago
Michael Hamburg
9e3702bb85
fix ticket #1
8 years ago
Michael Hamburg
f102952af4
fix ticket #1
8 years ago
Michael Hamburg
875d2b2251
ED25519_NO_CONTEXT -> DECAF_ED25519_NO_CONTEXT; DECAF_ED25519_NO_CONTEXT -> DECAF_EDDSA_25519_SUPPORTS_CONTEXTLESS_SIGS
8 years ago
Michael Hamburg
638f5560f8
make ED*_NO_CONTEXT actually a pointer
8 years ago
Andrew Bennett
7ec87d8616
Use magic constant ED25519_NO_CONTEXT for non-contextual operations.
8 years ago
Andrew Bennett
ef6e74bdec
Update EdDSA operations to match draft 07 from CFRG.
8 years ago
Andrew Bennett
80c0bd5d7d
Don't redefine le64toh on modern FreeBSD, NetBSD, and DragonflyBSD.
8 years ago
Daniel Angel Muñoz Trejo
a803bbe38e
Fixed sha512 for platforms where sizeof(size_t) != 8
8 years ago
Hamburg
3cb0f2c9a1
error: shifting a negative
signed value is undefined
8 years ago
Michael Hamburg
f29b338f37
whoops restore some GENERATED files
8 years ago
Michael Hamburg
bc80c744bf
decaf/decaf_[field].h[xx] -> decaf/point_[field].h[xx]
8 years ago
Michael Hamburg
a01e875d4a
move strobe and crypto to TOY areas
8 years ago
Michael Hamburg
2c605ea46e
add EdDSA C prehash routines
8 years ago
Michael Hamburg
28086a96d1
remove python dependency by checking in generated code
8 years ago
Michael Hamburg
d1e2bbec15
fix Ed448-prehash and test against newly-corrected cfrg vectors
8 years ago
Andrew Bennett
c558c0ecdb
x86_64/i386 and illumos/solaris/SunOS compatibility fixes.
* SunOS linker doesn't support --gc-sections
* Add portable_endian.h with __sun version of htole64 and le64toh
* Replace portable endian code in shake.c with inclusion of portable_endian.h
* Replace portable endian code in word.h with inclusion of portable_endian.h
* Add explicit extern reference to word.h for posix_memalign when __sun defined
* Replace references to u_int*_t with uint*_t
* rdtsc call in shake.c was only working on 32-bit i386
* rdtsc call in bench_decaf.cxx was inaccurate on 64-bit x86_64 when clang absent
* Fix two signed/unsigned comparison errors in test_decaf.cxx
8 years ago