30436f6ae4 
								
							
								 
							
						 
						
							
							
								
								remove vtable in buffer  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								2ea89d9f06 
								
							
								 
							
						 
						
							
							
								
								remove one variable from elligator  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								37e0886300 
								
							
								 
							
						 
						
							
							
								
								simplify elligator, in a way that shouldnt change its output.  I think it uses the opposite convention from the paper for sign(s) though.  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								c7a3efd496 
								
							
								 
							
						 
						
							
							
								
								fix typo in 32-bit code  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9b6fbecc1c 
								
							
								 
							
						 
						
							
							
								
								warning that base point might change for release version, to better integrate with x25510/448 or ed  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								5f38747a15 
								
							
								 
							
						 
						
							
							
								
								Montgomery ladder now uses non-reduced arith for speed.  Also, it is tested to be CT  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								2eacff6ad6 
								
							
								 
							
						 
						
							
							
								
								rfc7748 implementation, but their names will probably change  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4de70b837c 
								
							
								 
							
						 
						
							
							
								
								separate out strobe and spongerng from shake.  strobe is experimental.  spongerng is experimental internally but the interface should be pretty good (except for any camelCase vs snake_case issues).  shake should be stable  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								24e33a2f86 
								
							
								 
							
						 
						
							
							
								
								reasonable suite of ct tests now.  also change scalar randomizer to generate +128 bits  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9f1cc0e2af 
								
							
								 
							
						 
						
							
							
								
								some more ct tests; serializeInto -> serialize_into.  still need more ct tests, unification of snake vs camel case  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								3d0c6a6c28 
								
							
								 
							
						 
						
							
							
								
								typedef Wrapped is no longer private for scalar and point  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								51ac192b79 
								
							
								 
							
						 
						
							
							
								
								ct tests are in; succeed if -DNDEBUG is passed.  Should carefully audit assertions.  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								d81592ba71 
								
							
								 
							
						 
						
							
							
								
								make test_ct, except it probably doesnt work; definitely not on a mac with no memcheck.h installed  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9af4850a18 
								
							
								 
							
						 
						
							
							
								
								Merge branch 'curve25519-work' of ssh://git.code.sf.net/p/ed448goldilocks/code into curve25519-work  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8d6c51ee28 
								
							
								 
							
						 
						
							
							
								
								Separate API word size from arch word size.  This enables compiling  
							
							a 32-bit arch on a 64-bit platform, eg NEON on AARCH64.  It's probably
more useful for cross-platform testing, though.
The breakdown is as follows:
* decaf_bool_t, decaf_word_t and decaf_error_t are as defined in the API.
* DECAF_WORD_BITS is the size of a decaf_word_t.
* decaf_word_t is used for scalars, so on every curve the scalar impls are the same
(i.e. they follow the API's word size).
* SC_LIMB macro always takes a 64-bit word.
* non-prefixed word_t, mask_t, etc are as defined by the per-curve arch.
* ARCH_WORD_BITS is the size of a word_t.
* word_t is used for gf elements, so the curves may have different guts. 
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9be017366a 
								
							
								 
							
						 
						
							
							
								
								update HISTORY and TODO  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								0016b2675c 
								
							
								 
							
						 
						
							
							
								
								arm asm -> __asm__  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								64efd989d6 
								
							
								 
							
						 
						
							
							
								
								use SC_LIMB in generated tables.  Add a new "TODO" category, UNIFY for code that might be unified with other code  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7b7a27eac8 
								
							
								 
							
						 
						
							
							
								
								move (non-hot) add/sub to per_field.c and make them not inline  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7587ea91e7 
								
							
								 
							
						 
						
							
							
								
								a couple of LIMBPERM related fixes  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								94262dbecb 
								
							
								 
							
						 
						
							
							
								
								minor  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								2e23ac747b 
								
							
								 
							
						 
						
							
							
								
								move (some of the?) per-field code to src/per_field.c  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								825751d034 
								
							
								 
							
						 
						
							
							
								
								one gf_strong_reduce to rule them all  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								38455f34f2 
								
							
								 
							
						 
						
							
							
								
								one ser/deser to rule them all (TODO test on NEON and other places with LIMBPERM)  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								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  
				
					
						
							
							
								 
						
							
							
							
								
							
								6bc97fb756 
								
							
								 
							
						 
						
							
							
								
								need an include/arch_*/arch_intrinsics.h for other arches  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								233f8453c7 
								
							
								 
							
						 
						
							
							
								
								further reduce the code in f_impl.h  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								b4c402c238 
								
							
								 
							
						 
						
							
							
								
								further reduce the code in f_impl.h  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								2402788996 
								
							
								 
							
						 
						
							
							
								
								further reduce the code in f_impl.h  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4218223dd7 
								
							
								 
							
						 
						
							
							
								
								generate most of f_impl.h.  Not tested on most arches yet :-(  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								294eabaec7 
								
							
								 
							
						 
						
							
							
								
								generate f_field.h  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								55126adc06 
								
							
								 
							
						 
						
							
							
								
								separate c wrapper struct for strobe and spongerng  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								81403de10c 
								
							
								 
							
						 
						
							
							
								
								knock out a couple TODOs  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								1a14abb4dd 
								
							
								 
							
						 
						
							
							
								
								Separate .h files for SHA/SHAKE, STROBE and sponge RNG.  TODO: .hxx.  Also add a lot of docs  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								957ec6cd2c 
								
							
								 
							
						 
						
							
							
								
								restore shared secret benchmarks  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								f92d14e08a 
								
							
								 
							
						 
						
							
							
								
								crypto.hxx is now a thin wrapper around crypto.h  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								ca68bb3689 
								
							
								 
							
						 
						
							
							
								
								autogenerate decaf/crypto.h  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								e5491b67c1 
								
							
								 
							
						 
						
							
							
								
								some fixes to "make todo"  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								838fe2aa17 
								
							
								 
							
						 
						
							
							
								
								fix a makefile interaction on cxx headers?  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								48aa8215f2 
								
							
								 
							
						 
						
							
							
								
								only include public includes now  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								a9dcd153df 
								
							
								 
							
						 
						
							
							
								
								auto-generate metaheaders  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								c1306c75dc 
								
							
								 
							
						 
						
							
							
								
								actually generate some headers  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								28ab1d592b 
								
							
								 
							
						 
						
							
							
								
								prevent regenerating all headers every make  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								98be9a0820 
								
							
								 
							
						 
						
							
							
								
								now generating some headers for real  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								47d4b080e9 
								
							
								 
							
						 
						
							
							
								
								generator is almost ready to drop in  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								1c97140893 
								
							
								 
							
						 
						
							
							
								
								working on python generation  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								e167aad7e4 
								
							
								 
							
						 
						
							
							
								
								working on python generation  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								72399d53d7 
								
							
								 
							
						 
						
							
							
								
								working on python generation  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								a0b4bc5099 
								
							
								 
							
						 
						
							
							
								
								beginning of header generation technology  
							
							
								
							
							
						 
						9 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								55450fa852 
								
							
								 
							
						 
						
							
							
								
								respace  
							
							
								
							
							
						 
						9 years ago