Packages

class ErgoProvingInterpreter extends ErgoInterpreter with ProverInterpreter

A class which is holding secrets and signing transactions.

Currently it just generates some number of secrets (the number is provided via "dlogSecretsNumber" setting in the "wallet" section) from a seed and sign a transaction (against input boxes to spend and blockchain state) by using the secrets (no additional inputs, e.g. hash function preimages required in scripts, are supported. Here, signing a transaction means spending proofs generation for all of its input boxes.

Linear Supertypes
ProverInterpreter, AttributionCore, AttributionCommon, ErgoInterpreter, ErgoLikeInterpreter, Interpreter, ScorexLogging, StrictLogging, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. ErgoProvingInterpreter
  2. ProverInterpreter
  3. AttributionCore
  4. AttributionCommon
  5. ErgoInterpreter
  6. ErgoLikeInterpreter
  7. Interpreter
  8. ScorexLogging
  9. StrictLogging
  10. AnyRef
  11. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new ErgoProvingInterpreter(secretKeys: IndexedSeq[ExtendedSecretKey], params: ErgoLikeParameters)(implicit IR: IRContext)

    secretKeys

    - secrets in extended form to be used by prover

    params

    - ergo network parameters

Type Members

  1. type CTX = ErgoLikeContext
    Definition Classes
    ErgoInterpreter → ErgoLikeInterpreter → Interpreter
  2. class CachedAttribute[T, U] extends Attribute[T, U]
    Definition Classes
    AttributionCore
  3. class CachedDynamicAttribute[T, U] extends CachedAttribute[T, U]
    Definition Classes
    AttributionCore
  4. class CachedParamAttribute[A, T, U] extends (A) ⇒ Attribute[T, U]
    Definition Classes
    AttributionCore
  5. class CircularAttribute[T, U] extends Attribute[T, U]
    Definition Classes
    AttributionCore
  6. class ConstantAttribute[T, U] extends Attribute[T, U]
    Definition Classes
    AttributionCommon
  7. class MutableCell[T] extends AnyRef
    Definition Classes
    Interpreter
  8. type ProofT = UncheckedTree
    Definition Classes
    ProverInterpreter → Interpreter

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. implicit val IR: IRContext
    Definition Classes
    ErgoLikeInterpreter → Interpreter
  5. def applyDeserializeContext(context: CTX, exp: Value[SType]): (BoolValue, CTX)
    Definition Classes
    Interpreter
  6. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  7. macro def attr[T, U](f: (T) ⇒ U): CachedAttribute[T, U]
    Definition Classes
    AttributionCore
  8. def attrWithName[T, U](name: String, f: (T) ⇒ U): CachedAttribute[T, U]
    Definition Classes
    AttributionCore
  9. def calcResult(context: special.sigma.Context, calcF: sigmastate.eval.IRContext.Ref[(sigmastate.eval.IRContext.Context) ⇒ Any]): SigmaProp
    Definition Classes
    Interpreter
  10. def checkCost(context: CTX, exp: Value[SType], costF: sigmastate.eval.IRContext.Ref[((Int, sigmastate.eval.IRContext.Size[sigmastate.eval.IRContext.Context])) ⇒ Int]): Int
    Definition Classes
    Interpreter
  11. def checkExpiredBox(box: ErgoBox, output: ErgoBoxCandidate, currentHeight: ErgoLikeContext.Height): Boolean

    Check that expired box is spent in a proper way

    Check that expired box is spent in a proper way

    box

    - box being spent

    output

    - newly created box

    currentHeight

    - current height of the blockchain (at the moment of spending)

    returns

    whether the box is spent properly according to the storage fee rule

    Attributes
    protected
    Definition Classes
    ErgoInterpreter
  12. macro def circular[T, U](init: U)(f: (T) ⇒ U): CircularAttribute[T, U]
    Definition Classes
    AttributionCore
  13. def circularWithName[T, U](name: String, init: U)(f: (T) ⇒ U): CircularAttribute[T, U]
    Definition Classes
    AttributionCore
  14. def clone(): AnyRef
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native() @HotSpotIntrinsicCandidate()
  15. val computeCommitments: Strategy
    Definition Classes
    Interpreter
  16. def constant[T, U](name: String, u: ⇒ U): Attribute[T, U]
    Definition Classes
    AttributionCommon
  17. macro def constant[T, U](u: ⇒ U): Attribute[T, U]
    Definition Classes
    AttributionCommon
  18. val convertToUnchecked: (ProofTree) ⇒ UncheckedSigmaTree
    Definition Classes
    ProverInterpreter
  19. def convertToUnproven(sigmaTree: SigmaBoolean): UnprovenTree
    Definition Classes
    ProverInterpreter
  20. def deserializeMeasured(context: CTX, scriptBytes: Array[Byte]): (CTX, Value[SType])
    Definition Classes
    Interpreter
  21. macro def dynAttr[T, U](f: (T) ⇒ U): CachedDynamicAttribute[T, U]
    Definition Classes
    AttributionCore
  22. def dynAttrWithName[T, U](name: String, f: (T) ⇒ U): CachedDynamicAttribute[T, U]
    Definition Classes
    AttributionCore
  23. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  24. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  25. def extractChallenge(pt: ProofTree): Option[Array[Byte]]
    Definition Classes
    ProverInterpreter
  26. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  27. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  28. implicit def internalToDynamicAttribute[T, U](f: (T) ⇒ U): CachedDynamicAttribute[T, U]
    Definition Classes
    AttributionCore
  29. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  30. def log: Logger
    Attributes
    protected
    Definition Classes
    ScorexLogging
    Annotations
    @inline()
  31. val logger: Logger
    Attributes
    protected
    Definition Classes
    StrictLogging
  32. val markReal: Strategy
    Definition Classes
    ProverInterpreter
  33. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  34. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  35. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @HotSpotIntrinsicCandidate()
  36. macro def paramAttr[V, T, U](f: (V) ⇒ (T) ⇒ U): CachedParamAttribute[V, T, U]
    Definition Classes
    AttributionCore
  37. def paramAttrWithName[V, T, U](name: String, f: (V) ⇒ (T) ⇒ U): CachedParamAttribute[V, T, U]
    Definition Classes
    AttributionCore
  38. val polishSimulated: Strategy
    Definition Classes
    ProverInterpreter
  39. def propositionFromErgoTree(tree: ErgoTree, ctx: CTX): SigmaPropValue
    Definition Classes
    Interpreter
  40. def prove(env: ScriptEnv, tree: ErgoTree, ctx: CTX, message: Array[Byte]): Try[CostedProverResult]
    Definition Classes
    ProverInterpreter
  41. def prove(exp: ErgoTree, context: CTX, message: Array[Byte]): Try[CostedProverResult]
    Definition Classes
    ProverInterpreter
  42. def prove(unprovenTree: UnprovenTree, message: Array[Byte]): ProofT
    Attributes
    protected
    Definition Classes
    ProverInterpreter
  43. val proving: Strategy
    Definition Classes
    ProverInterpreter
  44. val pubKeys: IndexedSeq[ProveDlog]
  45. def reduceToCrypto(context: CTX, exp: Value[SType]): Try[ReductionResult]
    Definition Classes
    Interpreter
  46. def reduceToCrypto(context: CTX, env: ScriptEnv, exp: Value[SType]): Try[ReductionResult]
    Definition Classes
    Interpreter
  47. val secretKeys: IndexedSeq[ExtendedSecretKey]
  48. val secrets: IndexedSeq[DLogProverInput]
    Definition Classes
    ErgoProvingInterpreter → ProverInterpreter
  49. def sign(unsignedTx: UnsignedErgoLikeTransaction, boxesToSpend: IndexedSeq[ErgoBox], dataBoxes: IndexedSeq[ErgoBox], stateContext: ErgoLikeStateContext): Try[ErgoLikeTransaction]

    Note

    requires unsignedTx and boxesToSpend have the same boxIds in the same order.

  50. val simulateAndCommit: Strategy
    Definition Classes
    ProverInterpreter
  51. def substDeserialize(context: CTX, updateContext: (CTX) ⇒ Unit, node: SValue): Option[SValue]
    Definition Classes
    ErgoLikeInterpreter → Interpreter
  52. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  53. def toString(): String
    Definition Classes
    AnyRef → Any
  54. def toValidScriptType(exp: SValue): BoolValue
    Definition Classes
    Interpreter
  55. def verify(env: ScriptEnv, exp: ErgoTree, context: CTX, proof: Array[Byte], message: Array[Byte]): Try[VerificationResult]

    Checks that given exp evaluates to true.

    Checks that given exp evaluates to true.

    env

    - environment to use during expression evaluation

    exp

    - expression to check

    context

    - expression evaluation context

    proof

    - cryptographic proof

    message

    - message

    Definition Classes
    ErgoInterpreter → Interpreter
  56. def verify(exp: ErgoTree, context: CTX, proof: ErgoProvingInterpreter.ProofT, message: Array[Byte]): Try[VerificationResult]
    Definition Classes
    Interpreter
  57. def verify(env: ScriptEnv, exp: ErgoTree, context: CTX, proverResult: ProverResult, message: Array[Byte]): Try[VerificationResult]
    Definition Classes
    Interpreter
  58. def verify(exp: ErgoTree, context: CTX, proverResult: ProverResult, message: Array[Byte]): Try[VerificationResult]
    Definition Classes
    Interpreter
  59. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  60. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  61. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... ) @native()

Deprecated Value Members

  1. def finalize(): Unit
    Attributes
    protected[lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] ) @Deprecated @deprecated
    Deprecated

    (Since version ) see corresponding Javadoc for more information.

Inherited from ProverInterpreter

Inherited from AttributionCore

Inherited from AttributionCommon

Inherited from ErgoInterpreter

Inherited from ErgoLikeInterpreter

Inherited from Interpreter

Inherited from ScorexLogging

Inherited from StrictLogging

Inherited from AnyRef

Inherited from Any

Ungrouped