Documentation
¶
Index ¶
- Constants
- Variables
- type IdemixIssuerPublicKey
- type PublicParams
- func NewPublicParamsFromBytes(raw []byte, driverName driver.TokenDriverName, ...) (*PublicParams, error)
- func NewWith(driverName driver.TokenDriverName, driverVersion driver.TokenDriverVersion, ...) (*PublicParams, error)
- func Setup(bitLength uint64, idemixIssuerPK []byte, idemixCurveID mathlib.CurveID) (*PublicParams, error)
- func (p *PublicParams) AddAuditor(auditor driver.Identity)
- func (p *PublicParams) AddIssuer(id driver.Identity)
- func (p *PublicParams) Auditors() []driver.Identity
- func (p *PublicParams) Bytes() ([]byte, error)
- func (p *PublicParams) CertificationDriver() string
- func (p *PublicParams) ComputeHash() ([]byte, error)
- func (p *PublicParams) ComputeMaxTokenValue() uint64
- func (p *PublicParams) Deserialize(raw []byte) error
- func (p *PublicParams) GeneratePedersenParameters() error
- func (p *PublicParams) GenerateRangeProofParameters(bitLength uint64) error
- func (p *PublicParams) GraphHiding() bool
- func (p *PublicParams) Issuers() []driver.Identity
- func (p *PublicParams) MaxTokenValue() uint64
- func (p *PublicParams) Precision() uint64
- func (p *PublicParams) Serialize() ([]byte, error)
- func (p *PublicParams) SetAuditors(ids []driver.Identity)
- func (p *PublicParams) SetIssuers(ids []driver.Identity)
- func (p *PublicParams) String() string
- func (p *PublicParams) TokenDataHiding() bool
- func (p *PublicParams) TokenDriverName() driver.TokenDriverName
- func (p *PublicParams) TokenDriverVersion() driver.TokenDriverVersion
- func (p *PublicParams) Validate() error
- type RangeProofParams
Constants ¶
View Source
const ( DLogIdentifier = "zkatdlog" ProtocolV1 = 1 )
Variables ¶
View Source
var (
SupportedPrecisions = []uint64{16, 32, 64}
)
Functions ¶
This section is empty.
Types ¶
type IdemixIssuerPublicKey ¶
func (*IdemixIssuerPublicKey) FromProtos ¶
func (i *IdemixIssuerPublicKey) FromProtos(s *pp.IdemixIssuerPublicKey) error
func (*IdemixIssuerPublicKey) ToProtos ¶
func (i *IdemixIssuerPublicKey) ToProtos() (*pp.IdemixIssuerPublicKey, error)
type PublicParams ¶
type PublicParams struct { // DriverName is the name of token driver this public params refer to. DriverName driver.TokenDriverName // DriverVersion is the version of token driver this public params refer to. DriverVersion driver.TokenDriverVersion // Curve is the pairing-friendly elliptic curve used for everything but Idemix. Curve mathlib.CurveID // PedersenGenerators contains the public parameters for the Pedersen commitment scheme. PedersenGenerators []*mathlib.G1 // RangeProofParams contains the public parameters for the range proof scheme. RangeProofParams *RangeProofParams // IdemixIssuerPublicKeys contains the idemix issuer public keys // Wallets should prefer the use of keys valid under the public key whose index in the array is the smallest. IdemixIssuerPublicKeys []*IdemixIssuerPublicKey // Auditors is a list of the public keys of the auditor(s). AuditorIDs []driver.Identity // IssuerIDs is a list of public keys of the entities that can issue tokens. IssuerIDs []driver.Identity // MaxToken is the maximum quantity a token can hold MaxToken uint64 // QuantityPrecision is the precision used to represent quantities QuantityPrecision uint64 }
func NewPublicParamsFromBytes ¶
func NewPublicParamsFromBytes( raw []byte, driverName driver.TokenDriverName, driverVersion driver.TokenDriverVersion, ) (*PublicParams, error)
func NewWith ¶
func NewWith(driverName driver.TokenDriverName, driverVersion driver.TokenDriverVersion, bitLength uint64, idemixIssuerPK []byte, idemixCurveID mathlib.CurveID) (*PublicParams, error)
func (*PublicParams) AddAuditor ¶
func (p *PublicParams) AddAuditor(auditor driver.Identity)
func (*PublicParams) AddIssuer ¶
func (p *PublicParams) AddIssuer(id driver.Identity)
func (*PublicParams) Auditors ¶
func (p *PublicParams) Auditors() []driver.Identity
func (*PublicParams) Bytes ¶
func (p *PublicParams) Bytes() ([]byte, error)
func (*PublicParams) CertificationDriver ¶
func (p *PublicParams) CertificationDriver() string
func (*PublicParams) ComputeHash ¶
func (p *PublicParams) ComputeHash() ([]byte, error)
func (*PublicParams) ComputeMaxTokenValue ¶
func (p *PublicParams) ComputeMaxTokenValue() uint64
func (*PublicParams) Deserialize ¶
func (p *PublicParams) Deserialize(raw []byte) error
func (*PublicParams) GeneratePedersenParameters ¶
func (p *PublicParams) GeneratePedersenParameters() error
func (*PublicParams) GenerateRangeProofParameters ¶
func (p *PublicParams) GenerateRangeProofParameters(bitLength uint64) error
func (*PublicParams) GraphHiding ¶
func (p *PublicParams) GraphHiding() bool
func (*PublicParams) Issuers ¶
func (p *PublicParams) Issuers() []driver.Identity
Issuers returns the list of authorized issuers
func (*PublicParams) MaxTokenValue ¶
func (p *PublicParams) MaxTokenValue() uint64
func (*PublicParams) Precision ¶
func (p *PublicParams) Precision() uint64
func (*PublicParams) Serialize ¶
func (p *PublicParams) Serialize() ([]byte, error)
func (*PublicParams) SetAuditors ¶
func (p *PublicParams) SetAuditors(ids []driver.Identity)
SetAuditors sets the auditors to the passed identities
func (*PublicParams) SetIssuers ¶
func (p *PublicParams) SetIssuers(ids []driver.Identity)
SetIssuers sets the issuers to the passed identities
func (*PublicParams) String ¶
func (p *PublicParams) String() string
func (*PublicParams) TokenDataHiding ¶
func (p *PublicParams) TokenDataHiding() bool
func (*PublicParams) TokenDriverName ¶
func (p *PublicParams) TokenDriverName() driver.TokenDriverName
func (*PublicParams) TokenDriverVersion ¶
func (p *PublicParams) TokenDriverVersion() driver.TokenDriverVersion
func (*PublicParams) Validate ¶
func (p *PublicParams) Validate() error
type RangeProofParams ¶
type RangeProofParams struct { LeftGenerators []*mathlib.G1 RightGenerators []*mathlib.G1 P *mathlib.G1 Q *mathlib.G1 BitLength uint64 NumberOfRounds uint64 }
func (*RangeProofParams) FromProto ¶
func (rpp *RangeProofParams) FromProto(params *pp.RangeProofParams) error
func (*RangeProofParams) ToProtos ¶
func (rpp *RangeProofParams) ToProtos() (*pp.RangeProofParams, error)
Click to show internal directories.
Click to hide internal directories.