Michael Hamburg
7587ea91e7
a couple of LIMBPERM related fixes
9 years ago
Michael Hamburg
94262dbecb
minor
9 years ago
Michael Hamburg
2e23ac747b
move (some of the?) per-field code to src/per_field.c
9 years ago
Michael Hamburg
825751d034
one gf_strong_reduce to rule them all
9 years ago
Michael Hamburg
38455f34f2
one ser/deser to rule them all (TODO test on NEON and other places with LIMBPERM)
9 years ago
Mike Hamburg
a5bed6b351
Working on getting cross-arch working again. Several TODOs.
Currently compiles and passes tests on x86_64 with arch_32 and
DECAF_FORCE_32_BIT=1 (as well as the native settigs of course),
so that's a start.
Want to make serialization routine cross-arch. Need to check that
perf is good enough (likely). Current routine in p25519/arch_32
is almost cross-arch, but has known bugs (FIXMEs). Needs to take
into account separate p and, for NEON, the LIMBPERM.
Want to decouple arches for each curve/field. Currently the split
between decaf_word_t and word_t makes this fraught with peril. Fix
is probably to rename decaf_word_t to decaf_api_word_t and fix it
to either uint32 or uint64, then make internal things separate per
field. That way we don't have to try arch detection in the header,
which is nice.
Need to make decaf_gen_tables use SC_LIMB. Might as well get rid
of API_NS there too.
9 years ago
Michael Hamburg
6bc97fb756
need an include/arch_*/arch_intrinsics.h for other arches
9 years ago
Michael Hamburg
233f8453c7
further reduce the code in f_impl.h
9 years ago
Michael Hamburg
b4c402c238
further reduce the code in f_impl.h
9 years ago
Michael Hamburg
2402788996
further reduce the code in f_impl.h
9 years ago
Michael Hamburg
4218223dd7
generate most of f_impl.h. Not tested on most arches yet :-(
9 years ago
Michael Hamburg
294eabaec7
generate f_field.h
9 years ago
Michael Hamburg
55126adc06
separate c wrapper struct for strobe and spongerng
9 years ago
Michael Hamburg
81403de10c
knock out a couple TODOs
9 years ago
Michael Hamburg
1a14abb4dd
Separate .h files for SHA/SHAKE, STROBE and sponge RNG. TODO: .hxx. Also add a lot of docs
9 years ago
Michael Hamburg
957ec6cd2c
restore shared secret benchmarks
9 years ago
Michael Hamburg
f92d14e08a
crypto.hxx is now a thin wrapper around crypto.h
9 years ago
Michael Hamburg
ca68bb3689
autogenerate decaf/crypto.h
9 years ago
Michael Hamburg
e5491b67c1
some fixes to "make todo"
9 years ago
Michael Hamburg
838fe2aa17
fix a makefile interaction on cxx headers?
9 years ago
Michael Hamburg
48aa8215f2
only include public includes now
9 years ago
Michael Hamburg
a9dcd153df
auto-generate metaheaders
9 years ago
Michael Hamburg
c1306c75dc
actually generate some headers
9 years ago
Michael Hamburg
28ab1d592b
prevent regenerating all headers every make
9 years ago
Michael Hamburg
98be9a0820
now generating some headers for real
9 years ago
Michael Hamburg
47d4b080e9
generator is almost ready to drop in
9 years ago
Michael Hamburg
1c97140893
working on python generation
9 years ago
Michael Hamburg
e167aad7e4
working on python generation
9 years ago
Michael Hamburg
72399d53d7
working on python generation
9 years ago
Michael Hamburg
a0b4bc5099
beginning of header generation technology
9 years ago
Michael Hamburg
55450fa852
respace
9 years ago
Michael Hamburg
6e95e69368
trying to make C++ headers the same, for future unified generation
9 years ago
Michael Hamburg
a3b094eb99
trying to make headers the same, for future unified generation
9 years ago
Michael Hamburg
26b5917bbf
remove decaf.c, to be restored later maybe
9 years ago
Michael Hamburg
ee076bcc3d
usage is static void
9 years ago
Michael Hamburg
facad6c2ac
unify decaf_crypto c versions, still need to unify with c++
9 years ago
Michael Hamburg
21c1fe75a0
going to branch here
9 years ago
Michael Hamburg
b5a2757f21
clear a couple fixmes
9 years ago
Michael Hamburg
ff463c8b9b
keyed tracker is added
9 years ago
Michael Hamburg
64adbd1082
split c crypto routines for now (a bit of a hack :-/)
9 years ago
Mike Hamburg
27f1b4f697
gcc is sad about my control word code
9 years ago
Mike Hamburg
5c4a6d86f0
sponge is now restrict for strobe_duplex, for all the difference that makes :-/
9 years ago
Michael Hamburg
565522ffdf
trying to update to the latest version of strobe. lots of stuff in flux though
9 years ago
Mike Hamburg
2d85bbf727
dual scalarmul because of TLS discussion
port some changes to decaf.c
9 years ago
Mike Hamburg
704b424982
dual scalarmul because of TLS discussion
9 years ago
Mike Hamburg
c6d7fdec35
some alignment and gcc-related fixes. Unfortunately, the python ffi still dies for alignment-related reasons :-(
9 years ago
Michael Hamburg
40cc1d24c7
recategorize a couple of todos and unbreak arch_ref64
9 years ago
Michael Hamburg
a1f5348e18
beginning to separate errors from bools. not there yet though
9 years ago
Michael Hamburg
88a60a294d
add Group::FIELD_MODULUS_TYPE for testing purposes
9 years ago
Michael Hamburg
820c83a80c
sliding window
9 years ago