Sean Cross
93538aab36
cargo: use consistent package rev for engine25519-as
...
Signed-off-by: Sean Cross <sean@xobs.io>
2021-08-18 18:05:35 +08:00
Sean Cross
859eb04005
Cargo: update engine25519-as git version
...
Update to a new git version that supports the `Xous` target_os.
2021-08-18 17:59:46 +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
9ffc75dd3c
more fixes to try to clean up the build system
2021-06-28 01:27:03 +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
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
b79a276806
Merge pull request #336 from huitseeker/elligator2
...
Elligator2 mapping for curve25519
2021-03-25 03:13:41 +00:00
François Garillot
d1ed427af5
add fiat backends to Travis tests
2021-01-21 08:58:21 -05: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
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
55e0db7cf6
Bump curve25519-dalek version to 3.0.2.
2021-01-08 03:32:42 +00:00
Isis Lovecruft
e47a180991
Bump curve25519-dalek to 3.0.1.
2021-01-07 21:29:17 +00:00
François Garillot
8aa1458941
Implements an Elligator2 map for Curve25519
...
This implementation:
- is agnostic on the hash used to pick a field element, even though SHA512 is commonly used,
- follows https://tools.ietf.org/id/draft-irtf-cfrg-hash-to-curve-10.html closely
- tests the outputs of the function using libsignal's implementation.
2020-10-21 17:38:22 -04:00
Henry de Valence
45f3f53351
Add link to Cargo.toml with explanation of packed_simd renaming
2020-09-30 12:01:43 -07:00
Markus Zoppelt
f27923bf8c
adjusted dependency entry like to pick up latest pick up the latest packed_simd crate under an alternative name.
...
see also: https://github.com/rust-lang/packed_simd/issues/303#issuecomment-701361161
2020-09-30 15:17:18 +02:00
Markus Zoppelt
c2e394dd04
bumped packed_simd to 0.3.4. resolves #333
2020-09-30 12:59:10 +02:00
bunnie
eb45d338ee
mods to get hardware integration to actually work.
2020-08-21 01:37:10 +08:00
bunnie
9c3d34345c
add hardware acceleration to differential point add and double
...
hacky implementation, but it'll let us do a performance benchmark
2020-08-20 15:47:02 +08:00
Henry de Valence
6d96eb7796
Bump version to 3.0.0.
2020-08-17 18:20:26 -07:00
bunnie
616801bd4c
add test is not working
2020-08-10 18:32:46 +08:00
bunnie
c8bd4211f6
edit test to include normalization after add
2020-08-08 02:11:00 +08:00
bunnie
8091a73b80
try to turn off "std" inclusion for the assembler crate
...
...unsuccessful tho. Rust features are hard.
2020-08-07 23:39:02 +08:00
bunnie
11131146be
add test vector generation infrastructure for engine25519
2020-08-07 23:12:05 +08:00
François Garillot
6afd8ff212
Update sha2, digest to 0.9
2020-06-15 07:16:04 -04:00
Henry de Valence
3fc47ef867
Bump version to 2.1.0
2020-05-29 12:39:39 -07:00
François Garillot
7b1363a964
Bump criterion version
2020-02-24 14:24:49 -05:00
Henry de Valence
d889ac8a15
Finalize 2.0.0
...
This collapses the CHANGELOG entries for the intermediate alpha releases (to be
yanked) into a list of changes from 1.x to 2.0.0.
2019-11-22 13:14:14 -08:00
Henry de Valence
69d72f92d6
Bump version to 2.0.0-alpha.2 and update changelog.
2019-11-15 15:00:15 -08:00
Henry de Valence
2b51978553
Remove nightly recommendation now that subtle has stable opt barriers.
...
This bumps the required `subtle` version to `2.2.1`, which contains those changes.
2019-11-15 14:29:14 -08:00
Isis Lovecruft
409ebd94c0
Remove dev-dependency on deprecated rand_os crate.
...
The functionality we were using is now contained in the `rand_core` crate, which
we already depend upon. As far as testing code goes, only benchmarks still
depend upon `rand`, as they use `thread_rng`.
2019-10-28 18:06:29 +00:00
Henry de Valence
6b71cd863a
Update CHANGELOG and bump version
2019-10-25 16:07:19 -07:00
Henry de Valence
6739399ec2
Upgrade to current rand_core, rand, rand_os.
...
Of these only `rand_core` is included in the public API; regardless of `rand`
semver tricks, this is a breaking API change, but the major version is already
bumped to include the Serde serialization fixes.
2019-10-24 12:29:01 -07:00
Henry de Valence
018fccfe8c
Avoid over-specific version specifiers.
...
By default, Cargo treats version specifiers as semver-compatible ranges, so the
version specifiers we include should only have the components that are actually
meaningful, e.g., "1" instead of "1.0.0" (which actually means "1").
2019-10-24 12:25:50 -07:00
Henry de Valence
a79459a1c8
Merge pull request #289 from tarcieri/zeroize
...
Switch from `clear_on_drop` to `zeroize` (fixes #281 )
2019-10-23 20:17:14 -07:00
Tony Arcieri
9480844b8d
Switch from clear_on_drop to zeroize ( fixes #281 )
...
`zeroize` is WASM-friendly as it has no dependencies on C compilers.
Instead uses Rust's own volatile write semantics and compiler fences to
ensure zeroization is not elided by the compiler.
2019-10-23 16:39:21 -07:00
Henry de Valence
70e46c9826
Fill in missing Serde impl for MontgomeryPoint.
2019-10-23 15:55:03 -07:00