therealyingtong
|
64a2b02d42
|
ecc::chip.rs: Witness scalar for variable-base scalar mul
|
2021-07-07 23:10:59 +08:00 |
therealyingtong
|
0f60a81485
|
ecc::chip.rs: Add EccScalarFixed, EccScalarFixedShort structs
|
2021-07-07 23:10:59 +08:00 |
therealyingtong
|
83eddd8857
|
ecc::chip.rs: Add Point::from_coordinates_unchecked() API
Co-authored-by: Jack Grigg <jack@electriccoin.co>
|
2021-06-19 18:14:22 +08:00 |
therealyingtong
|
7341996d2c
|
gadget::ecc.rs: Add EccInstructions::constrain_equal() instruction.
This allows us to constrain two points to be equal in value at the
gadget level.
Co-authored-by: Jack Grigg <jack@electriccoin.co>
|
2021-06-13 21:26:30 +08:00 |
therealyingtong
|
e259bb3846
|
ecc::chip.rs: Use concrete pallas::Affine for Chip impl.
The EccInstructions trait is still generic over C: CurveAffine;
however, the EccChip implementation is specific to the pasta
curves.
|
2021-06-12 20:25:09 +08:00 |
therealyingtong
|
aec7a7f850
|
ecc::chip.rs: Stub out scalar-mul-related structs and types.
These will be updated or restored in #111.
|
2021-06-12 20:24:14 +08:00 |
therealyingtong
|
aff56e6763
|
ecc::chip.rs: Make EccPoint.x, EccPoint.y private fields
Also add public getters x() and y().
Co-authored-by: Jack Grigg <jack@electriccoin.co>
Co-authored-by: Daira Hopwood <daira@jacaranda.org>
|
2021-06-12 12:41:27 +08:00 |
therealyingtong
|
6491ea90dd
|
ecc::chip.rs: Bound EccConfig on <C: CurveAffine>.
|
2021-06-12 12:41:27 +08:00 |
therealyingtong
|
e802e2917a
|
chip::add.rs: Implement complete addition instruction.
|
2021-06-12 12:41:27 +08:00 |
therealyingtong
|
7dc11b95d2
|
chip::add_incomplete.rs: Implement add_incomplete() instruction
|
2021-06-12 12:41:27 +08:00 |
therealyingtong
|
7eb86eb0c2
|
chip::witness_point.rs: Implement witness_point() instruction.
|
2021-06-12 12:41:27 +08:00 |
therealyingtong
|
6627b2258f
|
ecc::chip.rs: Add ECC chip.
Implement witness_scalar_var() and extract_p() instructions inline.
|
2021-06-12 12:41:27 +08:00 |