Create DSL big integer from existing java.math.BigInteger
Create DSL big integer from existing java.math.BigInteger
Wraps the given ErgoBox into SigmaDsl value of type Box.
Access to collection operations.
Access to collection operations.
Access to cost model (aka CostTable) parameters.
Access to cost model (aka CostTable) parameters.
Access to operations used in cost computation.
Access to operations used in cost computation.
Create DSL's group element from existing org.bouncycastle.math.ec.ECPoint
.
Create DSL's group element from existing org.bouncycastle.math.ec.ECPoint
.
Access to Monoid operations
Access to Monoid operations
Wraps the given sigma proposition into SigmaDsl value of type SigmaProp.
true if all the elements in collection are true.
Returns a sigma proposition which is proven when ALL the propositions in the conditions
are proven.
Returns a sigma proposition which is proven when ALL the propositions in the conditions
are proven.
AND sigma protocol proposition
Returns true if at least one element in the conditions
is true, otherwise false.
Returns true if at least one element in the conditions
is true, otherwise false.
Returns a sigma proposition which is proven when at least one of the propositions in the conditions
is proven.
Returns a sigma proposition which is proven when at least one of the propositions in the conditions
is proven.
OR sigma protocol proposition
Logical threshold operation.
Logical threshold operation.
AtLeast has two inputs: integer bound
and a collection of
props same as in anyZK/allZK.
number of props which should be proven in order to satisfy verifier
a collection of sigma propositions of which at least the bound
number should be proved.
THRESHOLD sigma protocol proposition wrapped in SigmaProp value.
Wraps the given tree data into SigmaDsl value of type AvlTree.
Construct a new authenticated dictionary with given parameters and tree root digest.
Construct a new authenticated dictionary with given parameters and tree root digest.
Calculate Blake2b256 hash from the input bytes
.
Calculate Blake2b256 hash from the input bytes
.
Convert big-endian bytes
representation (Coll[Byte]) to the corresponding BigInt value.
Convert big-endian bytes
representation (Coll[Byte]) to the corresponding BigInt value.
collection of bytes in big-endian format
Convert big-endian bytes
representation (Coll[Byte]) to the corresponding Long value.
Convert big-endian bytes
representation (Coll[Byte]) to the corresponding Long value.
Decodes the given bytes to the corresponding GroupElement using default serialization.
Decodes the given bytes to the corresponding GroupElement using default serialization.
serialized bytes of some GroupElement value
GroupElementSerializer
The generator g of the group is an element of the group such that, when written multiplicative form, every element of the group is a power of g.
The generator g of the group is an element of the group such that, when written multiplicative form, every element of the group is a power of g.
the generator of this Dlog group
the identity of the Dlog group used in ErgoTree
Converts Long value l
to the big-endian bytes representation.
Converts Long value l
to the big-endian bytes representation.
Creates a new SigmaProp value representing sigma proposition of the Diffie Hellman signature protocol.
Creates a new SigmaProp value representing sigma proposition of the Diffie Hellman signature protocol. Common input: (g,h,u,v)
Creates a new SigmaProp value representing public key of the discrete logarithm signature protocol.
Creates a new SigmaProp value representing public key of the discrete logarithm signature protocol.
Calculate Sha256 hash from the input bytes
.
Calculate Sha256 hash from the input bytes
.
Creates trivial sigma proposition with the given underlying Boolean value.
Creates trivial sigma proposition with the given underlying Boolean value.
boolean value to be wrapped into SigmaProp
sigma proposition with can be combined with other SigmaProp values
Transforms serialized bytes of ErgoTree with segregated constants by replacing constants at given positions with new values.
Transforms serialized bytes of ErgoTree with segregated constants by replacing constants at given positions with new values. This operation allow to use serialized scripts as pre-defined templates. The typical usage is "check that output box have proposition equal to given script bytes, where minerPk (constants(0)) is replaced with currentMinerPk". Each constant in original scriptBytes have SType serialized before actual data (see ConstantSerializer). During substitution each value from newValues is checked to be an instance of the corresponding type. This means, the constants during substitution cannot change their types.
serialized ErgoTree with ConstantSegregationFlag set to 1.
zero based indexes in ErgoTree.constants array which should be replaced with new values
new values to be injected into the corresponding positions in ErgoTree.constants array
original scriptBytes array where only specified constants are replaced and all other bytes remain exactly the same
Extract sigmastate.AvlTreeData
from DSL's AvlTree
type.
Extract java.math.BigInteger
from DSL's BigInt
type
Extract java.math.BigInteger
from DSL's BigInt
type
Extract org.bouncycastle.math.ec.ECPoint
from DSL's GroupElement
type.
Extract org.bouncycastle.math.ec.ECPoint
from DSL's GroupElement
type.
Extracts ErgoBox from the given Box instance.
Extracts ErgoBox from the given Box instance. This is inverse to the Box method.
Extract sigmastate.Values.SigmaBoolean
from DSL's SigmaProp
type.
Returns a byte-wise XOR of the two collections of bytes.
Returns a byte-wise XOR of the two collections of bytes.
Similar to allOf
, but performing logical XOR operation between all conditions.
Similar to allOf
, but performing logical XOR operation between all conditions.
A default implementation of SigmaDslBuilder interface.
SigmaDslBuilder for detailed descriptions