INNER CODE UNIT · Go

ProveAffP

taurushq-io/multi-party-sig · internal/mta/mta.go:59

func ProveAffP(group curve.Curve, h *hash.Hash,
	senderSecretShare *saferith.Int, senderEncryptedShare *paillier.Ciphertext, senderEncryptedShareNonce *saferith.Nat,
	receiverEncryptedShare *paillier.Ciphertext,
	sender *paillier.SecretKey, receiver *paillier.PublicKey, verifier *pedersen.Parameters) (Beta *saferith.Int, D, F *paillier.Ciphertext, Proof *zkaffp.Proof) {
	D, F, S, R, BetaNeg := newMta(senderSecretShare, receiverEncryptedShare, sender, receiver)
	Proof = zkaffp.NewProof(group, h, zkaffp.Public{
		Kv:       receiverEncryptedShare,
		Dv:       D,
		Fp:       F,
		Xp:       senderEncryptedShare,
		Prover:   sender.PublicKey,
		Verifier: receiver,
		Aux:      verifier,
	}, zkaffp.Private{
		X:  senderSecretShare,
		Y:  BetaNeg,
		S:  S,
		Rx: senderEncryptedShareNonce,

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…