trait AuthenticatedTreeOps[D <: Digest] extends BatchProofConstants with ToStringHelper
Code common to the prover and verifier of https://eprint.iacr.org/2016/994 (see Appendix B, "Our Algorithms")
- Alphabetic
- By Inheritance
- AuthenticatedTreeOps
- ToStringHelper
- SparkzEncoding
- BatchProofConstants
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Type Members
Abstract Value Members
- abstract def addNode(r: Leaf[D], key: ADKey, v: ADValue): InternalNode[D]
- returns
- a new node with two leaves: r on the left and a new leaf containing key and value on the right
- Attributes
- protected
- abstract val collectChangedNodes: Boolean
- Attributes
- protected
- abstract val keyLength: Int
- Attributes
- protected
- abstract def keyMatchesLeaf(key: ADKey, r: Leaf[D]): Boolean
- returns
- whether we found the correct leaf and the key contains it
- Attributes
- protected
- abstract def nextDirectionIsLeft(key: ADKey, r: InternalNode[D]): Boolean
- returns
- whether to go left or right when searching for key and standing at r
- Attributes
- protected
- abstract def replayComparison: Int
Deletions go down the tree twice -- once to find the leaf and realize that it needs to be deleted, and the second time to actually perform the deletion.
Deletions go down the tree twice -- once to find the leaf and realize that it needs to be deleted, and the second time to actually perform the deletion. This method will re-create comparison results. Each time it's called, it will give the next comparison result of key and node.key, where node starts at the root and progresses down the tree according to the comparison results.
- returns
- result of previous comparison of key and relevant node's key
- Attributes
- protected
- abstract val rootNodeHeight: Int
- Attributes
- protected
- abstract val valueLengthOpt: Option[Int]
- Attributes
- protected
Concrete Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val EndOfTreeInPackagedProof: Byte
- Definition Classes
- BatchProofConstants
- val LabelInPackagedProof: Byte
- Definition Classes
- BatchProofConstants
- val LeafInPackagedProof: Byte
- Definition Classes
- BatchProofConstants
- val NegativeInfinityKey: ADKey
- Attributes
- protected
- val PositiveInfinityKey: ADKey
- Attributes
- protected
- def arrayToString(a: Array[Byte]): String
- Attributes
- protected
- Definition Classes
- ToStringHelper
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- val changedNodesBuffer: ArrayBuffer[ProverNodes[D]]
Sequence of leafs and internal nodes that where likely by modified after last proof generation
Sequence of leafs and internal nodes that where likely by modified after last proof generation
- Attributes
- protected
- val changedNodesBufferToCheck: ArrayBuffer[ProverNodes[D]]
Nodes that may, or may not be mofidied after last proof generation
Nodes that may, or may not be mofidied after last proof generation
- Attributes
- protected
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def digest(rootNode: Node[D]): ADDigest
The digest consists of the label of the root node followed by its height, expressed as a single (unsigned) byte
The digest consists of the label of the root node followed by its height, expressed as a single (unsigned) byte
- Attributes
- protected
- implicit val encoder: SparkzEncoder
- Definition Classes
- SparkzEncoding
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def onNodeVisit(n: Node[D], operation: Operation, isRotate: Boolean = false): Unit
- Attributes
- protected
- def returnResultOfOneOperation(operation: Operation, rootNode: Node[D]): Try[(Node[D], Option[ADValue])]
- Attributes
- protected
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated