ReputationProof
Inherits: BaseProof
A class representing a reputation proof. Each of the following are accessible as properties on the object.
import { ReputationProof } from '@unirep/circuits'
const data = new ReputationProof(publicSignals, proof)
epochKey
The epoch key that owns the reputation.
this.epochKey
stateTreeRoot
The state tree root the user is a member of.
this.stateTreeRoot
nonce
The nonce of the epoch key being proven. This value is only set if revealNonce is truthy.
this.nonce
revealNonce
An integer indicating whether or not the nonce should be revealed. If this value is non-zero the nonce is revealed.
this.revealNonce
epoch
The epoch the user is proving membership in.
this.epoch
attesterId
The attester id for the proof.
this.attesterId
data
The signature data included for the proof.
this.data
minRep
A minimum amount of net positive reputation the user controls. This value is only used if proveMinRep is non-zero.
Example: Alice has 10 posRep and 5 negRep. Alice can prove a minRep of 2 because she has a net positive reputation of 5.
this.minRep
proveMinRep
Whether or not to enforce the provided minRep value. If this value is non-zero the minRep will be proven.
this.proveMinRep
maxRep
A maximum amount of net positive reputation the user controls. This value is only used if proveMaxRep is non-zero.
Example: Bob has 10 posRep and 5 negRep. Bob can prove a maxRep of 7 because he has a net positive reputation of 5.
this.maxRep
proveMaxRep
Whether or not to enforce the provided maxRep value. If this value is non-zero the maxRep will be proven.
this.proveMaxRep
proveZeroRep
Whether or not to prove the user has a net 0 reputation balance. If this value is non-zero the user posRep and negRep must be equal.
this.proveZeroRep
proveGraffiti
Whether the user has chosen to prove a graffiti. If this value is non-zero the user graffiti will be proven.
this.proveGraffiti
graffiti
The graffiti controlled by the user, which is defined by data[SUM_FIELD_COUNT] in the circuits. This value is only checked if proveGraffiti is non-zero.
this.graffiti
control
The control field used for the proof. This field contains many signals binary encoded into an array of 256 bit values. This value is automatically decoded into the other properties on this class. See the circuit documentation for more information.
this.control[0]
this.control[1]