Type Definition sigma_fun::ext::dl_secp256k1_ed25519_eq::CoreProof [−][src]
type CoreProof = And<All<Or<And<DLG<U31>, DLG<U31>>, And<DLG<U31>, DLG<U31>>>, U252>, And<Eq<DLG<U31>, DL<U31>>, Eq<DLG<U31>, DL<U31>>>>;
The underlying sigma protocol we will use to prove the relationship between the two sets of commitments.
We are trying to prove that X_p = x * G_p
and X_q = x * G_q
. The approach is
to split x into two sets of 252 bit pedersen commitments for each curve and prove that the
corresponding commitments commit to the same bit.
Note the commitments are in the form commit(b) = r * G + b* H where G is the standard basepoint
for each curve.