Parcourir la source

[proof] fix c3/c4 constrained commitments

mohab metwally il y a 3 ans
Parent
commit
fa89bae1bf
1 fichiers modifiés avec 4 ajouts et 10 suppressions
  1. 4 10
      proof/tx.zk

+ 4 - 10
proof/tx.zk

@@ -32,13 +32,13 @@ Base c3_pk,
 Base c3_rho,
 Scalar c3_opening,
 Base c3_value,
-EcPoint c3_cm,
+EcPoint c3_cm_ref,
 
 Base c4_pk,
 Base c4_rho,
 Scalar c4_opening,
 Base c4_value,
-EcPoint c4_cm,
+EcPoint c4_cm_ref,
 }
 
 circuit "tx" {
@@ -79,19 +79,13 @@ c3_cm_msg = poseidon_hash(PREFIX_CM, c3_pk, c3_value, c3_rho);
 c3_cm_v = ec_mul_short(c3_cm_msg, VALUE_COMMIT_VALUE);
 c3_cm_r = ec_mul(c3_opening, VALUE_COMMIT_RANDOM);
 c3_cm = ec_add(c3_cm_v, c3_cm_r);
-c3_cm_x = ec_get_x(c3_cm);
-constrain_instance(c3_cm_x);
-c3_cm_y = ec_get_y(c3_cm);
-constrain_instance(c3_cm_y);
+constrain_equal_point(c3_cm, c3_cm_ref);
 # coin (4) cm/commitment
 c4_cm_msg = poseidon_hash(PREFIX_CM, c4_pk, c4_value, c4_rho);
 c4_cm_v = ec_mul_short(c4_cm_msg, VALUE_COMMIT_VALUE);
 c4_cm_r = ec_mul(c4_opening, VALUE_COMMIT_RANDOM);
 c4_cm = ec_add(c4_cm_v, c4_cm_r);
-c4_cm_x = ec_get_x(c4_cm);
-constrain_instance(c4_cm_x);
-c4_cm_y = ec_get_y(c4_cm);
-constrain_instance(c4_cm_y);
+constrain_equal_point(c4_cm, c4_cm_ref);
 v1v2 = base_add(c1_value, c2_value);
 v2v3 = base_add(v3_value, v4_value);
 constrain_equal_base(v1v2, v2v3);