Documentation ¶
Index ¶
- Constants
- func AliceEnd(pkA *paillier.PublicKey, pf *ProofBob, h1A, h2A, cA, cB, NTildeA *big.Int, ...) (alphaIJ *big.Int, err error)
- func AliceEndWC(pkA *paillier.PublicKey, pf *ProofBobWC, B *crypto.ECPoint, ...) (muIJ, muIJRec, muIJRand *big.Int, err error)
- type ProofBob
- type ProofBobWC
- type RangeProofAlice
Constants ¶
View Source
const ( ProofBobBytesParts = 10 ProofBobWCBytesParts = 12 )
View Source
const (
RangeProofAliceBytesParts = 6
)
Variables ¶
This section is empty.
Functions ¶
func AliceEndWC ¶
Types ¶
type ProofBob ¶
func ProofBobFromBytes ¶
func ProveBob ¶
ProveBob implements Bob's proof "ProveMta_Bob" used in the MtA protocol from GG18Spec (9) Fig. 11.
func (*ProofBob) Bytes ¶
func (pf *ProofBob) Bytes() [ProofBobBytesParts][]byte
func (*ProofBob) ValidateBasic ¶
type ProofBobWC ¶
func ProofBobWCFromBytes ¶
func ProofBobWCFromBytes(bzs [][]byte) (*ProofBobWC, error)
func ProveBobWC ¶
func ProveBobWC(pk *paillier.PublicKey, NTilde, h1, h2, c1, c2, x, y, r *big.Int, X *crypto.ECPoint) (*ProofBobWC, error)
ProveBobWC implements Bob's proof both with or without check "ProveMtawc_Bob" and "ProveMta_Bob" used in the MtA protocol from GG18Spec (9) Figs. 10 & 11. an absent `X` generates the proof without the X consistency check X = g^x
func (*ProofBobWC) Bytes ¶
func (pf *ProofBobWC) Bytes() [ProofBobWCBytesParts][]byte
func (*ProofBobWC) ValidateBasic ¶
func (pf *ProofBobWC) ValidateBasic() bool
func (*ProofBobWC) Verify ¶
func (pf *ProofBobWC) Verify(pk *paillier.PublicKey, NTilde, h1, h2, c1, c2 *big.Int, X *crypto.ECPoint) bool
ProveBobWC.Verify implements verification of Bob's proof with check "VerifyMtawc_Bob" used in the MtA protocol from GG18Spec (9) Fig. 10. an absent `X` verifies a proof generated without the X consistency check X = g^x
type RangeProofAlice ¶
func ProveRangeAlice ¶
func ProveRangeAlice(pk *paillier.PublicKey, c, NTilde, h1, h2, m, r *big.Int) (*RangeProofAlice, error)
ProveRangeAlice implements Alice's range proof used in the MtA and MtAwc protocols from GG18Spec (9) Fig. 9.
func RangeProofAliceFromBytes ¶
func RangeProofAliceFromBytes(bzs [][]byte) (*RangeProofAlice, error)
func (*RangeProofAlice) Bytes ¶
func (pf *RangeProofAlice) Bytes() [RangeProofAliceBytesParts][]byte
func (*RangeProofAlice) ValidateBasic ¶
func (pf *RangeProofAlice) ValidateBasic() bool
Click to show internal directories.
Click to hide internal directories.