Documentation
¶
Index ¶
- func AssetCommitment(asset, factor []byte) ([]byte, error)
- func FinalValueBlindingFactor(args FinalValueBlindingFactorArgs) ([32]byte, error)
- func NonceHash(pubKey, privKey []byte) (result [32]byte, err error)
- func RangeProof(args RangeProofArgs) ([]byte, error)
- func SurjectionProof(args SurjectionProofArgs) ([]byte, bool)
- func ValueCommitment(value uint64, generator, factor []byte) ([]byte, error)
- func VerifySurjectionProof(args VerifySurjectionProofArgs) bool
- type FinalValueBlindingFactorArgs
- type RangeProofArgs
- type SurjectionProofArgs
- type UnblindIssuanceResult
- type UnblindOutputResult
- type VerifySurjectionProofArgs
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AssetCommitment ¶
AssetCommitment method generates asset commitment
func FinalValueBlindingFactor ¶
func FinalValueBlindingFactor(args FinalValueBlindingFactorArgs) ( [32]byte, error, )
FinalValueBlindingFactor method calculates the blinder as the sum of all previous blinders of a tx.
func RangeProof ¶
func RangeProof(args RangeProofArgs) ([]byte, error)
RangeProof method calculates range proof
func SurjectionProof ¶
func SurjectionProof(args SurjectionProofArgs) ([]byte, bool)
SurjectionProof method generates surjection proof
func ValueCommitment ¶
ValueCommitment method generates value commitment
func VerifySurjectionProof ¶
func VerifySurjectionProof(args VerifySurjectionProofArgs) bool
VerifySurjectionProof method verifies the validity of a surjection proof
Types ¶
type FinalValueBlindingFactorArgs ¶
type FinalValueBlindingFactorArgs struct {
InValues []uint64
OutValues []uint64
InGenerators [][]byte
OutGenerators [][]byte
InFactors [][]byte
OutFactors [][]byte
}
FinalValueBlindingFactorArgs is the type provided to the function that calculates the blinder of the last output of a tx.
type RangeProofArgs ¶
type SurjectionProofArgs ¶
type UnblindIssuanceResult ¶
type UnblindIssuanceResult struct {
Asset *UnblindOutputResult
Token *UnblindOutputResult
}
func UnblindIssuance ¶
func UnblindIssuance( in *transaction.TxInput, blindKeys [][]byte, ) (*UnblindIssuanceResult, error)
type UnblindOutputResult ¶
type UnblindOutputResult struct {
Value uint64
Asset []byte
ValueBlindingFactor []byte
AssetBlindingFactor []byte
}
UnblindOutputResult is the type returned by the functions that unblind tx outs. It contains the unblinded asset and value and also the respective blinding factors.
func UnblindOutputWithKey ¶
func UnblindOutputWithKey( out *transaction.TxOutput, blindKey []byte, ) (*UnblindOutputResult, error)
UnblindOutputWithKey method unblinds a confidential transaction output with the given blinding private key.
func UnblindOutputWithNonce ¶
func UnblindOutputWithNonce( out *transaction.TxOutput, nonce []byte, ) (*UnblindOutputResult, error)
UnblindOutputWithNonce method unblinds a confidential transaction output with the given ecdh nonce calculated for example with the above NonceHash func.