Просмотр исходного кода

Revert "begin migration from example/halo2 to src/"

This reverts commit 4cdbcc842fcf7c829aced7156df62f535654d1a4.
narodnik 4 лет назад
Родитель
Сommit
89dc49e266

+ 0 - 1
Cargo.lock

@@ -1282,7 +1282,6 @@ dependencies = [
  "bytes 1.1.0",
  "crypto_api_chachapoly",
  "dirs",
- "ff",
  "futures",
  "group",
  "halo2",

+ 0 - 1
Cargo.toml

@@ -33,7 +33,6 @@ features = ["lz4"]
 
 [dependencies]
 # Crypto
-ff = "0.11.0"
 pasta_curves = "0.2.1"
 rand = "0.8.4"
 num-bigint = {version = "0.4.2", features = ["rand"]}

+ 0 - 0
src/constants.rs → example/halo2/src/constants.rs


+ 0 - 0
src/constants/fixed_bases.rs → example/halo2/src/constants/fixed_bases.rs


+ 0 - 0
src/constants/fixed_bases/commit_ivk_r.rs → example/halo2/src/constants/fixed_bases/commit_ivk_r.rs


+ 0 - 0
src/constants/fixed_bases/note_commit_r.rs → example/halo2/src/constants/fixed_bases/note_commit_r.rs


+ 0 - 0
src/constants/fixed_bases/nullifier_k.rs → example/halo2/src/constants/fixed_bases/nullifier_k.rs


+ 0 - 0
src/constants/fixed_bases/spend_auth_g.rs → example/halo2/src/constants/fixed_bases/spend_auth_g.rs


+ 0 - 0
src/constants/fixed_bases/value_commit_r.rs → example/halo2/src/constants/fixed_bases/value_commit_r.rs


+ 0 - 0
src/constants/fixed_bases/value_commit_v.rs → example/halo2/src/constants/fixed_bases/value_commit_v.rs


+ 0 - 0
src/constants/sinsemilla.rs → example/halo2/src/constants/sinsemilla.rs


+ 0 - 0
src/constants/util.rs → example/halo2/src/constants/util.rs


+ 18 - 0
example/halo2/src/crypto.rs

@@ -0,0 +1,18 @@
+use pasta_curves::{
+    arithmetic::{CurveExt, FieldExt},
+    pallas,
+};
+
+use crate::constants::fixed_bases::{
+    VALUE_COMMITMENT_PERSONALIZATION, VALUE_COMMITMENT_R_BYTES, VALUE_COMMITMENT_V_BYTES,
+};
+
+#[allow(non_snake_case)]
+pub fn pedersen_commitment(value: u64, blind: pallas::Scalar) -> pallas::Point {
+    let hasher = pallas::Point::hash_to_curve(VALUE_COMMITMENT_PERSONALIZATION);
+    let V = hasher(&VALUE_COMMITMENT_V_BYTES);
+    let R = hasher(&VALUE_COMMITMENT_R_BYTES);
+    let value = pallas::Scalar::from_u64(value);
+
+    V * value + R * blind
+}

+ 0 - 0
src/proof.rs → example/halo2/src/proof.rs


+ 0 - 0
src/spec.rs → example/halo2/src/spec.rs


+ 0 - 32
src/bin/tx2.rs

@@ -1,32 +0,0 @@
-use pasta_curves::{
-    arithmetic::{CurveAffine, Field},
-    group::{ff::{PrimeField, PrimeFieldBits}, Curve},
-    pallas,
-};
-use halo2_gadgets::{
-    ecc::{
-        chip::{EccChip, EccConfig},
-        FixedPoint, FixedPoints,
-    },
-};
-use rand::rngs::OsRng;
-
-use drk::{
-    constants::{
-        sinsemilla::{OrchardCommitDomains, OrchardHashDomains, MERKLE_CRH_PERSONALIZATION},
-        OrchardFixedBases,
-    },
-    crypto::pedersen_commitment,
-    proof::{Proof, ProvingKey, VerifyingKey},
-    spec::i2lebsp,
-};
-
-fn mod_r_p(x: pallas::Base) -> pallas::Scalar {
-    pallas::Scalar::from_repr(x.to_repr()).unwrap()
-}
-
-fn main() {
-    let secret = pallas::Base::random(&mut OsRng);
-    let public_key = OrchardFixedBases::SpendAuthG.generator() * mod_r_p(secret);
-}
-

+ 0 - 23
src/crypto.rs → src/crypto/mod.rs

@@ -1,26 +1,3 @@
-use pasta_curves::{
-    arithmetic::{CurveExt, FieldExt},
-    pallas,
-};
-
-use crate::constants::fixed_bases::{
-    VALUE_COMMITMENT_PERSONALIZATION, VALUE_COMMITMENT_R_BYTES, VALUE_COMMITMENT_V_BYTES,
-};
-
-#[allow(non_snake_case)]
-pub fn pedersen_commitment(value: u64, blind: pallas::Scalar) -> pallas::Point {
-    let hasher = pallas::Point::hash_to_curve(VALUE_COMMITMENT_PERSONALIZATION);
-    let V = hasher(&VALUE_COMMITMENT_V_BYTES);
-    let R = hasher(&VALUE_COMMITMENT_R_BYTES);
-    let value = pallas::Scalar::from_u64(value);
-
-    V * value + R * blind
-}
-
-//////////////////////////////////
-// copied from mod.rs
-// todo: go through this code
-
 pub mod coin;
 pub mod constants;
 pub mod diffie_hellman;

+ 0 - 3
src/lib.rs

@@ -3,16 +3,13 @@ pub mod blockchain;
 pub mod circuit;
 pub mod cli;
 pub mod client;
-pub mod constants;
 pub mod crypto;
 pub mod endian;
 pub mod error;
 pub mod net;
-pub mod proof;
 pub mod rpc;
 pub mod serial;
 pub mod service;
-pub mod spec;
 pub mod state;
 pub mod system;
 pub mod tx;