Commit graph

1355 commits

Author SHA1 Message Date
bunnie
c0ee5bf18c Revert "work around compiler bug https://github.com/rust-lang/rust/issues/86693"
turns out we just needed to align $sp to 16-byte boundaries

This reverts commit 279bbc5287.
2021-07-11 17:37:15 +08:00
bunnie
beea1311bf redirect utralib to a stand-in for patching 2021-07-11 02:09:46 +08:00
bunnie
03e91fefce finish u32e_backend variant for bootloader use 2021-07-11 02:03:00 +08:00
bunnie
053d65f3a7 commit a debug branch 2021-07-10 23:46:48 +08:00
bunnie
c950ac9268 add a 'u32e' backend -- u32 + curve25519 engine 2021-07-10 17:57:19 +08:00
bunnie
b8f968b6e4 make our fix parallel to the patch sent upstream
remove const generics so we don't affect their mininum rust version
requirement
2021-06-29 23:35:02 +08:00
bunnie
279bbc5287 work around compiler bug https://github.com/rust-lang/rust/issues/86693
thanks @xobs for the work-around!
2021-06-29 22:42:47 +08:00
bunnie
1a79b76e90 move microcode to the Xous side of things
minimizing the mount of data movement speeds up operations by
about 2x
2021-06-28 18:31:45 +08:00
bunnie
41cc7c4ab3 accelerate the affine transform in hardware 2021-06-28 04:42:01 +08:00
bunnie
9ffc75dd3c more fixes to try to clean up the build system 2021-06-28 01:27:03 +08:00
bunnie
6ee5e8aeb1 clean up warnings 2021-06-27 03:12:00 +08:00
bunnie
98dfce7ec2 fix remaining configuration warts
builds clealy as a test crate, without any dependency on
xous proper for configurations that don't involve xous.
2021-06-27 03:02:18 +08:00
bunnie
4604066747 fix path 2021-06-27 02:05:15 +08:00
bunnie
ea4bc9b079 attempt to clean up some dependency issues 2021-06-27 01:58:27 +08:00
bunnie
0b748f6365 stash a version of the XousEngine25519 trait in case we want it later 2021-06-27 00:30:26 +08:00
bunnie
0b0cda3118 initial swag at gluing things together
Note: breaks for anyone's build environment but mine!
2021-06-26 13:41:19 +08:00
bunnie
6e2cf5ab43 add macros 2021-06-26 02:11:37 +08:00
bunnie
b4e8accf38 Merge branch 'main' into HEAD 2021-06-20 19:20:06 +08:00
Isis Lovecruft
2ea17d554a
Update CHANGELOG and README; bump to 3.1.0. 2021-04-14 01:30:57 +00:00
isis agora lovecruft
5eca140010
Merge pull request #351 from isislovecruft/fix/cleanup-elligator
Trivial cleanups to Elligator2 encoding
2021-04-13 23:31:14 +00:00
isis agora lovecruft
cecc821f40
Merge pull request #342 from huitseeker/fiat4_with_u32
Serial backends w/formally-verified field arithmetic for 32 & 64 bits
2021-04-13 23:23:41 +00:00
isis agora lovecruft
35d4eab431
Merge pull request #349 from huitseeker/modernize_benchmarks
[benchmarks-only] Updates the benchmarks
2021-04-13 22:55:59 +00:00
isis agora lovecruft
b05feec7aa
Merge pull request #350 from isislovecruft/develop
Merge configurably sized basepoint multiplication lookup tables
2021-04-13 22:47:51 +00:00
Isis Lovecruft
0da8f08d65
Maintain legacy 3.x support for lookup tables. 2021-04-13 22:23:34 +00:00
Isis Lovecruft
ee90202a58
Trivial cleanups to Elligator2 encoding.
cf. https://github.com/dalek-cryptography/curve25519-dalek/pull/336
2021-04-13 00:24:50 +00:00
François Garillot
d130b5f17e
[benchmarks-only] Updates the benchmarks
- removes usages fo the (deprecated) `bench_function_over_inputs`
- introduces a few benchmark groups.
2021-03-26 09:18:18 -07:00
Isis Lovecruft
cc0c444fae
Merge branch 'feature/dynamic-table-sizes' into develop 2021-03-25 04:34:08 +00:00
Isis Lovecruft
1491f0db36
Update copyright years. 2021-03-25 04:10:55 +00:00
isis agora lovecruft
b79a276806
Merge pull request #336 from huitseeker/elligator2
Elligator2 mapping for curve25519
2021-03-25 03:13:41 +00:00
Isis Lovecruft
d0014f6d87
Merge remote-tracking branch 'zgfzgf/feat-unused-import' into develop 2021-03-25 02:30:05 +00:00
Isis Lovecruft
ab468cd24c
Fix copyright years in some of the files I touched. 2021-03-25 02:29:37 +00:00
isis agora lovecruft
2a45241382
Merge pull request #348 from isislovecruft/develop
Merge #346 and restructure Zeroize implementations slightly
2021-03-25 02:12:51 +00:00
Isis Lovecruft
4a1fc3c66e
Implement Zeroize for points as the identity element. 2021-03-25 01:45:54 +00:00
Isis Lovecruft
5482c76d16
Merge remote-tracking branch 'garbageslam/zeroize_ristretto' into develop 2021-03-24 18:35:46 +00:00
Isis Lovecruft
da0c49985c
Merge remote-tracking branch 'gedigi/zeroize_ristrettopoint' into develop 2021-03-24 18:12:22 +00:00
Chris Beck
0154ebbfaf implement Zeroize trait on Ristretto curve point types
This is helpful for hardening some of our cryptographic implementations
that use Ristretto curve points
2021-02-10 12:14:32 -07:00
zgfzgf
08bf6ebf08 fix build warning 2021-02-03 17:46:01 +08:00
François Garillot
d1ed427af5
add fiat backends to Travis tests 2021-01-21 08:58:21 -05:00
François Garillot
e2651cceb6
Rename elligator_map -> elligator_encode
leaves an obvious name open for the reverse mapping
2021-01-12 13:46:04 -08:00
François Garillot
abd1922456
Add a fiat_u32 backend based on fiat-crypto as well.
Renames fiat backend directory to fiat_u64 and does the additional plumbing required to make fiat_{u32, u64}_backend equal alternatives.
Adds a few comments.
2021-01-11 15:45:24 -08:00
François Garillot
ce2e3f6e69
bump fiat-crypto version 2021-01-11 09:32:54 -08:00
François Garillot
756a921bee
bump fiat-crypto version 2021-01-11 09:30:30 -08:00
François Garillot
3422872346
bump fiat-crypto version 2021-01-11 09:30:30 -08:00
François Garillot
a9e50eab36
implement conditional assign with fiat__25519_cmovznz_u64 2021-01-11 09:30:30 -08:00
François Garillot
4ce680d3aa
Update the fiat backend to use the fiat-crypto package
https://crates.io/crates/fiat-crypto
2021-01-11 09:30:30 -08:00
François Garillot
d684e13f09
Add a fiat_u64_backend option to curve25519-dalek
This uses https://github.com/calibra/rust-curve25519-fiat/ to implement a new 64bit serial backend for dalek.

Co-authored-by: Zoe Parakevopoulou <zoopar@fb.com>
2021-01-11 09:30:07 -08:00
Isis Lovecruft
5500fd15ef
Merge branch 'master' into develop 2021-01-08 03:40:04 +00:00
Isis Lovecruft
73100b74ff
Merge branch 'release/3.0.2' 2021-01-08 03:39:55 +00:00
Isis Lovecruft
55e0db7cf6
Bump curve25519-dalek version to 3.0.2. 2021-01-08 03:32:42 +00:00
Isis Lovecruft
77ec974212
Whitespace fixes for 3267a5d merge. 2021-01-08 00:33:37 +00:00