From 2f2bab5627130da2389e1ea371ff27fc63492660 Mon Sep 17 00:00:00 2001 From: therealyingtong Date: Tue, 19 Apr 2022 12:58:48 +0200 Subject: [PATCH] circuit.rs: Use BaseFitsInScalarInstructions for variable-base mul. --- src/circuit.rs | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/circuit.rs b/src/circuit.rs index 7accc42d..4bc1bc21 100644 --- a/src/circuit.rs +++ b/src/circuit.rs @@ -45,7 +45,7 @@ use crate::{ use halo2_gadgets::{ ecc::{ chip::{EccChip, EccConfig}, - FixedPoint, NonIdentityPoint, Point, + FixedPoint, NonIdentityPoint, Point, ScalarVar, }, poseidon::{Pow5Chip as PoseidonChip, Pow5Config as PoseidonConfig}, primitives::poseidon, @@ -504,11 +504,13 @@ impl plonk::Circuit for Circuit { rivk, )? }; + let ivk = + ScalarVar::from_base(ecc_chip.clone(), layouter.namespace(|| "ivk"), ivk.inner())?; // [ivk] g_d_old // The scalar value is passed through and discarded. let (derived_pk_d_old, _ivk) = - g_d_old.mul(layouter.namespace(|| "[ivk] g_d_old"), ivk.inner())?; + g_d_old.mul(layouter.namespace(|| "[ivk] g_d_old"), ivk)?; // Constrain derived pk_d_old to equal witnessed pk_d_old //