Commit graph

2269 commits

Author SHA1 Message Date
Henry de Valence
9f5bd8c4c0 Rename reduce32 to reduce and have it return its result.
This means that all FieldElement32x4 operations return values, vs mutating interior state.
2018-06-14 15:54:36 -07:00
Henry de Valence
bab1ebbeb8 Replace scale_by_curve_constants by a Mul<(u32,u32,u32,u32)> impl 2018-06-14 15:42:20 -07:00
Henry de Valence
6ef9e9dcfb Make publicity a little more consistent 2018-06-14 15:22:16 -07:00
Henry de Valence
97292fef91 Move packing functions to top of the module 2018-06-14 15:21:51 -07:00
Henry de Valence
4dc219910a Move blend_lanes into the blend function 2018-06-14 15:13:53 -07:00
Henry de Valence
64b1b481ba Rewrite diff_sum in terms of shuffle, blend, negate 2018-06-14 14:59:11 -07:00
Henry de Valence
fe51adad31 Don't expose u32x8 unpacking functions 2018-06-14 14:32:13 -07:00
Henry de Valence
c46ec9638c Add documentation 2018-06-14 14:23:24 -07:00
Henry de Valence
eea3eadf5b Replace special-case swap_{AB,CD} methods with general shuffles 2018-06-14 14:23:24 -07:00
Henry de Valence
02296fafb5 Delete unused constant 2018-06-14 14:23:24 -07:00
Henry de Valence
25d9f3f6ca Eliminate vector constants from edwards module 2018-06-14 14:23:24 -07:00
Henry de Valence
cc8728b2a6 Add comment about rustc-constant-info to blend function 2018-06-14 14:23:24 -07:00
Henry de Valence
28f10bc183 Change Lanes::ALL to Lanes::ABCD for consistency 2018-06-14 14:23:24 -07:00
Henry de Valence
794ed5c8e3 Rewrite the doubling horrorshow 2018-06-14 14:23:24 -07:00
Henry de Valence
30a2b01c05 Add more selectors to the Lanes enum 2018-06-14 14:19:46 -07:00
Henry de Valence
64cb999866 Make platform-vector lanes constants private 2018-06-14 14:19:26 -07:00
Henry de Valence
00d8b6ea4f Change negate_D, negate_D_lazy to impl Neg, negate_lazy 2018-06-14 14:17:36 -07:00
Henry de Valence
14ce6d3da6 Add a shuffling abstraction for FieldElement32x4 2018-06-14 14:10:37 -07:00
Henry de Valence
c8dc2a6418 Implement addition for FieldElement32x4 2018-06-14 14:10:32 -07:00
Henry de Valence
bd1e3c5f3e some rustfmt changes 2018-06-14 14:05:52 -07:00
Henry de Valence
d29618ca2e
Merge pull request #145 from tarcieri/rand-0-5
Upgrade rand to (non-pre)release version 0.5
2018-06-03 11:47:26 -07:00
Tony Arcieri
42430f1a1f Upgrade rand to (non-pre)release version 0.5
It was previously using pre-release version 0.5.0-pre.2
2018-06-02 11:17:10 -07:00
Isis Lovecruft
a7c318da6e
Fix benchmarks to use new rand_core traits. 2018-05-30 21:01:21 +00:00
Isis Lovecruft
196fd24b63
Update README to explain features and update benches. 2018-05-30 20:59:44 +00:00
Jake McGinty
715208e0eb use production rand 0.5 release 2018-05-22 22:44:31 -07:00
Isis Lovecruft
115174df19
Merge branch 'feature/remove-unnecessary-std' into develop 2018-05-16 22:24:06 +00:00
Isis Lovecruft
47c1d869ec
Make key generation work with no_std. 2018-05-16 22:09:31 +00:00
Isis Lovecruft
85a3776d27
Collapse part of the .travis build matrix. 2018-05-16 19:56:09 +00:00
Isis Lovecruft
44b3a32598
Merge branch 'feature/update-curve25519-dalek-0.17' into develop 2018-05-16 19:54:40 +00:00
Isis Lovecruft
3a54e970a6
Change travis config to test various backends. 2018-05-16 19:47:35 +00:00
Isis Lovecruft
f6a631c229
WIP Update curve25519-dalek dependency to 0.17. 2018-05-15 23:34:01 +00:00
Isis Lovecruft
f76e08deec
Add syntax highlighting to README. 2018-05-15 23:00:27 +00:00
Isis Lovecruft
ba0bf47492
Update links in README to point to new github org. 2018-05-15 23:00:06 +00:00
Isis Lovecruft
bd8a546b13
Merge branch 'master' into develop 2018-05-15 22:53:03 +00:00
Isis Lovecruft
d1e6f3a968
Merge branch 'release/0.2.0' 2018-05-15 22:52:49 +00:00
Isis Lovecruft
d80bd7094f
Bump x25519-dalek version to 0.2.0. 2018-05-15 22:51:53 +00:00
Isis Lovecruft
3a0b35dc38
Add backend options to travis.yml build matrix. 2018-05-15 21:51:31 +00:00
Isis Lovecruft
b13417e82c
Expose backend options from curve25519-dalek. 2018-05-15 21:48:01 +00:00
Isis Lovecruft
5f608f9218
Merge branch 'feature/benches' into develop 2018-05-15 21:01:16 +00:00
Isis Lovecruft
d0c4da85e8
Update rand dependency to 0.5.0-pre.2. 2018-05-15 21:00:28 +00:00
Isis Lovecruft
3b825e7a32
Merge branch 'master' into develop 2018-05-15 20:59:24 +00:00
Isis Lovecruft
32288e8625
Merge branch 'release/0.17.0' 2018-05-15 20:59:23 +00:00
Isis Lovecruft
3e9a5db419
Update curve25519-dalek dependency to 0.17. 2018-05-15 20:41:39 +00:00
Isis Lovecruft
337de2a204
Bump curve25519-dalek version to 0.17.0. 2018-05-15 20:39:01 +00:00
Isis Lovecruft
26ae887262
Merge remote-tracking branch 'mcginty/curve25519-0.16' into develop 2018-05-15 20:30:31 +00:00
Isis Lovecruft
1b2f382e66
Merge remote-tracking branch 'oleganza/no-default-features-in-curve25519' into develop 2018-05-15 20:28:09 +00:00
Isis Lovecruft
9a89a217f8
Merge remote-tracking branch 'dalek/multiscalar-trait-without-precomputation_r1' into develop 2018-05-15 20:23:05 +00:00
Isis Lovecruft
325cdcad2a
Merge remote-tracking branch 'dalek/rand-0.5' into develop 2018-05-15 20:21:01 +00:00
Henry de Valence
bbb64312f7 Use rand 0.5
Requires `0.5.0-pre.2`, which adds `impl CryptoRng for OsRng`.
2018-05-15 12:30:28 -07:00
Henry de Valence
bab642c5af Add doc comments 2018-05-15 11:33:38 -07:00