Commit Graph

49 Commits

Author SHA1 Message Date
ebfull 253f681ed9
Merge pull request #25 from mmaker/fix/sage-script
Fix sage script
2019-12-09 10:56:42 -07:00
Michele Orrù 14b5e16d88 No need to define a polynomial ring in notes/design.rs. 2019-11-28 16:13:42 +01:00
Michele Orrù c9d17f6ab7 Make sage script in notes/design.rs work with sage 3.9.
Sage is now using python3.
2019-11-28 16:13:38 +01:00
Sean Bowe 1a2e9f3af8
Update releases file. 2019-11-22 15:53:50 -07:00
Sean Bowe ac01c75290
Version bump 2019-11-22 15:52:02 -07:00
Sean Bowe 7ee6b3e56c
Add serialization documentation. 2019-11-22 15:46:49 -07:00
ebfull 5f63f860eb
Merge pull request #19 from saitima/cyclotomic_squaring
Add implementation of cyclotomic squaring for final exponentiation step
2019-11-22 14:13:36 -07:00
Sait Imamoglu 0485096dcd Add implementation of cyclotomic squaring for final exponentiation
Fix linter errors

Force ci to run with previous amended commit
2019-11-22 23:46:44 +03:00
Sean Bowe ebfddf68b4
Add test vector for output of pairing function 2019-11-22 13:24:23 -07:00
Sean Bowe 059e03ca9d
Add benchmarks for some pairing subroutines. 2019-11-22 13:09:56 -07:00
Sean Bowe ea4374cc73
Fix documentation for alloc features. 2019-11-14 12:10:18 -07:00
str4d 384e75e892
Merge pull request #17 from zkcrypto/features-cleanup
Change crate features to clarify functionality
2019-11-14 18:03:46 +00:00
Sean Bowe 6dfe4a4129
Remove unnecessary feature guard flag guard. 2019-11-14 10:55:16 -07:00
Sean Bowe ec841d3200
Change crate features to clarify functionality 2019-11-14 10:41:28 -07:00
ebfull 9aff249e98
Merge pull request #15 from zkcrypto/prepared_api
Add API for computing pairings using cached information about G2 elements
2019-11-14 10:30:09 -07:00
Sean Bowe 4ebd15a1ce
Add API for computing pairings using cached information about G2 elements. 2019-11-14 10:16:45 -07:00
ebfull 13eb720103
Merge pull request #16 from zkcrypto/ci-checks
CI checks
2019-11-14 10:16:20 -07:00
Jack Grigg f44ab2fceb
Check no-std compatibility 2019-11-14 13:14:36 +00:00
Jack Grigg 9d2c5a2c13
Catch documentation errors caused by code changes 2019-11-14 13:08:02 +00:00
Jack Grigg f4b3ad0b10
Actions CI workflow 2019-11-14 13:06:44 +00:00
Sean Bowe 7deae47653
Remove dependency on byteorder crate. 2019-11-13 13:26:01 -07:00
Sean Bowe 0ae728c356
Only export pairing structs if `groups` is enabled. 2019-11-13 13:09:36 -07:00
Sean Bowe 626270d5bc
Update to the latest version of subtle 2019-11-13 13:06:38 -07:00
ebfull 76112d6008
Merge pull request #1 from JustinDrake/patch-1
Minor cleanups
2019-11-13 12:24:06 -07:00
Justin 81a319c3e0
Minor cleanups
The ((z<sup>4</sup> - z<sup>2</sup> + 1) / 3) notation is surprising since 3 does not divide z<sup>4</sup> - z<sup>2</sup> + 1.
2019-08-12 22:54:55 +02:00
Sean Bowe afe30519f8
Implementation of basic pairing API that does not require alloc. 2019-08-12 02:11:36 -06:00
Sean Bowe 450587f19b
Add implementation of batch normalization for projective elements. 2019-08-11 21:27:34 -06:00
Sean Bowe 15b9d024cf
Implement serialization and deserialization for G1Affine/G2Affine. 2019-08-11 20:54:58 -06:00
Sean Bowe b893a04fbe
Add implementation of q-order subgroup checking for G1Affine/G2Affine. 2019-08-11 20:05:45 -06:00
Sean Bowe 526209abdf
Add implementation of scalar multiplication for G1/G2. 2019-08-11 19:29:59 -06:00
Sean Bowe 50c599ec96
Add implementation of mixed point addition for G1/G2. 2019-08-11 17:55:58 -06:00
Sean Bowe f996747fd6
Add implementation of point addition for projective group elements. 2019-08-11 17:19:13 -06:00
Sean Bowe 4678a67ce6
Add implementation of point doubling. 2019-08-11 12:35:25 -06:00
Sean Bowe 0ccb2fbff0
Add conversion between affine and projective models. 2019-08-11 12:16:36 -06:00
Sean Bowe 9e671eed0c
Add conditional selection for G1/G2. 2019-08-11 11:59:14 -06:00
Sean Bowe e836a7ab5c
Implement point equality testing for G1/G2. 2019-08-11 11:42:54 -06:00
Sean Bowe a0572c7ad7
Add benchmarks with criterion. 2019-08-11 11:17:37 -06:00
Sean Bowe 352fa7072a
Add generators for G1 and G2. 2019-08-11 02:52:55 -06:00
Sean Bowe f3adaa923c
Add math rendering with KaTeX. 2019-08-11 02:50:24 -06:00
Sean Bowe 603f1ed638
Implementation of lexicographic sorting for Fp and Fp2. 2019-08-10 03:37:13 -06:00
Sean Bowe 1ba0d767c9
Implementation of inversion for Fp and Fp2. 2019-08-10 03:28:08 -06:00
Sean Bowe 6bbf7e29e0
Implementation of sqrt for Fp and Fp2. 2019-08-10 03:20:00 -06:00
Sean Bowe b7493a6254
Add primitive arithmetic and utilities for Fp2. 2019-08-10 02:57:59 -06:00
Sean Bowe 614ae37884
Implement constant time comparison and selection of Fp2 elements. 2019-08-10 02:33:45 -06:00
Sean Bowe 85843c4472
Add primitive arithmetic and utilities for Fp. 2019-08-10 02:32:45 -06:00
Sean Bowe f9b3f177f2
Implement constant time comparison and selection of Fp elements. 2019-08-10 02:32:42 -06:00
Sean Bowe 419c62536c
Add scaffolding for G1 and G2 data structures. 2019-08-10 01:01:28 -06:00
Sean Bowe 479b151075
Implementation of the scalar field for BLS12-381. 2019-08-10 01:01:24 -06:00
Sean Bowe ab1a661fed
Initial commit. 2019-08-09 23:55:50 -06:00