-
Notifications
You must be signed in to change notification settings - Fork 112
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Impl From<u16> for BigInt * Add Polynomial * Add the proof * Update travis config * Bump version * Rename coef0 to const_term + update docs * Add sample_exact and sample_exact_with_fixed_const * Rename LdeiProveError -> LdeiProofError * Move polynomial into secret_sharing module * LDEI prove takes witness and statement * Comment out crypto primitives for a while * Update traits, add wrappers, and upgrade secp256k1 implementation * Update polynomial * Do not access wrappers internal state directly, improve docs * Add generator wrapper * Add secp256k1 test * Implement Serialize, Deserialize for Point(Z) * Update feldman_vss * Add {to,from}_bytes functions to PointZ * Update hashing * Change curve_name method with associated constant * Deref stylistic fix * Optimise generator multiplication * Update docs * Update commitments * Update low_degree_exponent_interpolation * Update sigma_correct_homomorphic_elgamal_enc * Update sigma_correct_homomorphic_elgamal_encryption_of_dlog * Wrappers: rename methods, implement PartialEq * Update sigma_dlog * Update sigma_ec_ddh * Rename curve_order to group_order * Restrict the points to be of group order * Split a large wrappers module into several files * Update sigma_valid_pedersen * Update sigma_valid_pedersen_blind * Fix derived Serialize/Deserialize traits * Update coin_flip_optimal_rounds * Update dh_key_exchange * Update dh_key_exchange_variant_with_pok_comm * Update diffie_hellman_key_exchange example * Update pedersen_commitment * Update proof_of_knowledge_of_dlog example * Update verifiable_secret_sharing example * Fix warning * Fix clippy warnings * Update doc * Improve hashing * Write doc * Fix typos * Update travis config * Update P-256 curve implementation * Add tests * Update Ed25519 curve * Update Ristretto curve * Ristretto: x=hash(y) * Add the first BLS curve * Default implementation for ECPoint::is_zero method * Add tests, fix ed25519 negation * Uncomment proofs of base_point2 picked randomly * Add the second BLS curve * Write doc * Add pairing, update docs * Rename package * Update readme * Add changelog * Merge Point&PointZ, Scalar&ScalarZ * Serialize always succeeds * Update doc * Fix clippy warning * VerifiableSS returns polynomial used to derive secret shares * Fix documentation * Optimize elliptic curves implementations * Add serialize/deserialize to Scalars * Use scalar/point `serialize` functions to implement serde serialization instead of bigint * Add serde tests * Add more EC serialize/deserialize tests * Update examples * Update Cargo.toml * Update docs * Update vss to use u16 instead of usize fix * Resolve TODO * Fix doc * Impl iter::{Sum, Product} for wrappers * Ristretto: return x=None instead of x=hash(y) * Add documentation for the rest of the curves * Improve point serialization * Improve scalar serialization * Move serde-related stuff to dedicated module * Improve serde tests * Remove PointRef wrapper * Move actual unsafe code to a single function * Finalization Co-authored-by: Elichai Turkel <elichai.turkel@gmail.com>
- Loading branch information
Showing
59 changed files
with
6,005 additions
and
4,839 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,25 @@ | ||
language: rust | ||
cache: cargo | ||
rust: | ||
- stable | ||
rust: stable | ||
virt: lxd | ||
|
||
before_script: | ||
- rustup component add rustfmt-preview clippy | ||
- cargo fmt --all -- --check | ||
- cargo clippy -- -D clippy::all | ||
env: | ||
- BIGINT_BACKEND=rust-gmp-kzen | ||
- BIGINT_BACKEND=num-bigint | ||
|
||
before_install: | ||
- rustup component add rustfmt clippy | ||
|
||
script: | ||
- cargo build --verbose | ||
- cargo test --verbose | ||
- cargo build --verbose --no-default-features --features $BIGINT_BACKEND | ||
- cargo test --verbose --no-default-features --features $BIGINT_BACKEND | ||
- if [[ "$BIGINT_BACKEND" = "rust-gmp-kzen" ]]; then cargo fmt --all -- --check; fi | ||
- if [[ "$BIGINT_BACKEND" = "rust-gmp-kzen" ]]; then cargo clippy -- -D clippy::all; fi | ||
|
||
deploy: | ||
provider: cargo | ||
token: | ||
secure: "FE6A1XRyJtTK92rV3y5e0go+FDKn1HpJbYkHOacDqabTkUluXrCTw3ERFcQQ13QZdc9xkxoAs7roKp8ivl0Xg1IJCzI+yLb0ZR6YcYebKEqd06YFbBmejjvMsyyZHKPTQmroe+tBwcA1IqLLcAY8vmY5EGhJTsGUhovIomw1RvqM6gu9yUwII/sF0a5gqY761cJd4QoLlWTb1Er7DqZxoU9drhWAJQP7sLsspjLu6dOyWzb0A2mTmnek+iuVnt9mGPtjGk4FcNPGbEmNu3UPOVuXcyibFPIALEWrH0ouZB7E9k312g45LucSeKSimgQYQBNAzdsnkKyBwyTpGuaosGnMbI7mhoi3visV21RTbw61N05dmZTYb4VAMcx+93TslKMDv5nmIlUmKxULNRBSTPPtrg0/X7KuKaoHVstrxx0ohd8GFwGYQBB64mQaOxFBhoy//prpHjhFl+1cti4JHyaHFSV/PfaryvUfRg4q2Dlq1HP+ey5cPRPbwfpSO1RmXlIDWe21ncRnKSpgMHTPBzYNtil+gZyzHl5X4ZLvLCaHsZwZQPMFB+otlabFaS1caqkk1F1fHMrj8NMak/snb2IyUJqXgQivqzEn38G3k9/QHeQXhNVwyGDtdWV51P9XfXFpxrEuuWlXF56ABiWcF7bY7Y3DeCbnFNLkVkGZYvY=" | ||
on: | ||
tags: true | ||
condition: '"$TRAVIS_TAG" =~ ^v[0-9].+$ && "$BIGINT_BACKEND" = "rust-gmp-kzen"' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# Changelog | ||
|
||
## v0.8.0-rc1 | ||
* Elliptic curve API has been significantly changed [#120] | ||
|
||
In particular: ECPoint, ECScalar traits were redesigned. They remain, | ||
but are not supposed to be used directly anymore. In replacement, | ||
we introduce structures Point, Scalar representing elliptic point and | ||
scalar. See curv::elliptic::curves module-level documentation to learn | ||
more. | ||
* Add low degree exponent interpolation proof [#119] | ||
|
||
[#119]: https://github.com/ZenGo-X/curv/pull/119 | ||
[#120]: https://github.com/ZenGo-X/curv/pull/120 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.