Index

A B C D E F G H I L M N P R S T V 
All Classes|All Packages

A

AbstractNode - Class in io.crums.util.mrkl.index
Breadth-first coordinates of a node in a Merkle tree.
AbstractNode(int, int) - Constructor for class io.crums.util.mrkl.index.AbstractNode
 
add(byte[]) - Method in class io.crums.util.mrkl.Builder
Adds the specified item as the next leaf node are returns its leaf index.
add(byte[], int, int) - Method in class io.crums.util.mrkl.Builder
Adds the specified item as the next leaf node are returns its leaf index.
add(byte[], int, int) - Method in class io.crums.util.mrkl.DeltaBuilder
Items only the width of the (hash) digest width are allowed because this is an omni-width tree.
add(byte[], int, int) - Method in class io.crums.util.mrkl.FixedLeafBuilder
 
add(T) - Method in class io.crums.util.ListExtension
Adds to the second.
addAll(Collection<? extends T>) - Method in class io.crums.util.ListExtension
Adds to the second.
appendToStringDetail(StringBuilder) - Method in class io.crums.util.mrkl.Tree
 

B

BRANCH_PAD - Static variable in class io.crums.util.mrkl.Tree
 
build() - Method in class io.crums.util.mrkl.Builder
Builds and returns the tree.
build() - Method in class io.crums.util.mrkl.DeltaBuilder
 
build() - Method in class io.crums.util.mrkl.FixedLeafBuilder
 
Builder - Class in io.crums.util.mrkl
Collects items (byte arrays) and builds a Merkle tree.
Builder(Builder) - Constructor for class io.crums.util.mrkl.Builder
Copy constructor.
Builder(String) - Constructor for class io.crums.util.mrkl.Builder
Creates a new copy-on-write (copy-on-add) instance with a dedicated MessageDigest using the given hashing algorithm.
Builder(String, boolean) - Constructor for class io.crums.util.mrkl.Builder
Creates a new instance with a dedicated MessageDigest using the given hashing algorithm.
ByteList - Class in io.crums.util.mem
A read-only, copy-on-read view of a List<byte[]>.
ByteList(List<byte[]>) - Constructor for class io.crums.util.mem.ByteList
Creates an instance from the given source instance.
Bytes - Class in io.crums.util.mem
 

C

chainLength(int, int) - Static method in class io.crums.util.mrkl.Proof
 
clear() - Method in class io.crums.util.mrkl.Builder
Clears the state of the instance, as if new.
clear() - Method in class io.crums.util.mrkl.DeltaBuilder
 
completeTree() - Method in class io.crums.util.mrkl.Builder
 
computeNewLeafCount(Tree, byte[]) - Static method in class io.crums.util.mrkl.DeltaTree
Infers and returns the number of leaves in the new tree given an array of deltas (additions) from a base tree.
contains(Object) - Method in class io.crums.util.mem.ByteList
copy(byte[]) - Static method in class io.crums.util.mem.Bytes
 
copy(byte[], int, int) - Static method in class io.crums.util.mem.Bytes
 
copyOnWrite - Variable in class io.crums.util.mrkl.Builder
 
count() - Method in class io.crums.util.mrkl.Builder
Returns the number of items added.
count() - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the number leaf nodes (data items) in the tree.
count(int) - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the number of nodes at the given level.
countSansCarry(int) - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the numbern of nodes at the given level excluding the carry (if it has one).

D

data - Variable in class io.crums.util.mrkl.Builder
Breadth-first view of the nodes' data.
data() - Method in class io.crums.util.mrkl.Node
Returns a copy of the node's data.
data(int) - Method in class io.crums.util.mrkl.FreeLeafTree
 
data(int, int) - Method in class io.crums.util.mrkl.DeltaTree
 
data(int, int) - Method in class io.crums.util.mrkl.FixedLeafTree
 
data(int, int) - Method in class io.crums.util.mrkl.FreeLeafTree
 
data(int, int) - Method in class io.crums.util.mrkl.Tree
Returns [a copy of] the data for the node at the specified coordinates.
dataBlock() - Method in class io.crums.util.mrkl.FixedLeafTree
Returns entire data block.
DeltaBuilder - Class in io.crums.util.mrkl
Builds an incrementally bigger tree by only recalculating and maintaining deltas.
DeltaBuilder(Tree) - Constructor for class io.crums.util.mrkl.DeltaBuilder
Constructs a copy-on-write instance.
DeltaBuilder(Tree, boolean) - Constructor for class io.crums.util.mrkl.DeltaBuilder
Creates a new instance.
DeltaTree - Class in io.crums.util.mrkl
A Merkle tree constructed from another with more leaves appended.
DeltaTree(DeltaTree) - Constructor for class io.crums.util.mrkl.DeltaTree
Copy constructor.
DeltaTree(Tree, byte[]) - Constructor for class io.crums.util.mrkl.DeltaTree
Creates a new instance.
digest - Variable in class io.crums.util.mrkl.Builder
 

E

equals(Object) - Method in class io.crums.util.mem.ByteList
Equality here is implemented using Arrays.equals(byte[], byte[]).
equals(Object) - Method in class io.crums.util.mrkl.index.AbstractNode
Equality semantics are governed by coordinates and handedness.
equals(Object) - Method in class io.crums.util.mrkl.index.TreeIndex
Determines whether an instance is structurally equivalent to another.
equals(Object) - Method in class io.crums.util.mrkl.Proof
 
extraBlock() - Method in class io.crums.util.mrkl.FixedLeafTree
Returns the data beyond the standard definition of the tree.

F

FACTORY - Static variable in class io.crums.util.mrkl.index.AbstractNode
Stateless factory.
first() - Method in class io.crums.util.ListExtension
Returns the first list.
fitsModelCapacity(int, int, int) - Static method in class io.crums.util.mrkl.FixedLeafTree
 
FixedLeafBuilder - Class in io.crums.util.mrkl
 
FixedLeafBuilder(FixedLeafBuilder) - Constructor for class io.crums.util.mrkl.FixedLeafBuilder
 
FixedLeafBuilder(String) - Constructor for class io.crums.util.mrkl.FixedLeafBuilder
 
FixedLeafBuilder(String, boolean) - Constructor for class io.crums.util.mrkl.FixedLeafBuilder
 
FixedLeafBuilder(String, int) - Constructor for class io.crums.util.mrkl.FixedLeafBuilder
 
FixedLeafBuilder(String, int, boolean) - Constructor for class io.crums.util.mrkl.FixedLeafBuilder
 
FixedLeafTree - Class in io.crums.util.mrkl
A more compact Tree appropriate if the leaves are fixed-width and it'all fits under 2 gigabytes.
FixedLeafTree(int, String, byte[], int, int) - Constructor for class io.crums.util.mrkl.FixedLeafTree
Creates a new instance.
FixedLeafTree(FixedLeafTree) - Constructor for class io.crums.util.mrkl.FixedLeafTree
Copy constructor.
FreeLeafTree - Class in io.crums.util.mrkl
A Tree allowing variable length leaves.
FreeLeafTree(byte[][], int, String) - Constructor for class io.crums.util.mrkl.FreeLeafTree
Creates a new instance.
FreeLeafTree(byte[][], int, String, boolean) - Constructor for class io.crums.util.mrkl.FreeLeafTree
Creates a new instance.

G

get(int) - Method in class io.crums.util.ListExtension
 
get(int) - Method in class io.crums.util.mem.ByteList
getFrontier() - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the frontier nodes.
getHashAlgo() - Method in class io.crums.util.mrkl.Builder
 
getHashAlgo() - Method in class io.crums.util.mrkl.Proof
 
getHashAlgo() - Method in class io.crums.util.mrkl.Tree
 
getLeaf(int) - Method in class io.crums.util.mrkl.Node
Returns the leaf node at the given index.
getLeftChild(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getLeftChild(AbstractNode) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getNode(int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getNode(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getParent(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getParent(AbstractNode) - Method in class io.crums.util.mrkl.index.TreeIndex
Convenience method.
getRightChild(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getRightChild(AbstractNode) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getRoot() - Method in class io.crums.util.mrkl.Node
Returns the root of the tree.
getSibling(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
getSibling(AbstractNode) - Method in class io.crums.util.mrkl.index.TreeIndex
Convenience method.

H

hasCarry(int) - Method in class io.crums.util.mrkl.index.TreeIndex
Determines whether the last node is a carry.
hash() - Method in class io.crums.util.mrkl.Tree
Returns the hash of the root of the tree.
hash(byte[]) - Method in class io.crums.util.mrkl.Builder
Convenience method to hash using this instance's digest algo.
hashAlgoWidth() - Method in class io.crums.util.mrkl.Tree
Returns the byte width of the hashing algorithm by observing the width of the node at coordinates (1, 0), which is the first internal node constructed in a tree.
hashChain() - Method in class io.crums.util.mrkl.Proof
Returns the hash chain.
hashCode() - Method in class io.crums.util.mem.ByteList
 
hashCode() - Method in class io.crums.util.mrkl.index.AbstractNode
 
hashCode() - Method in class io.crums.util.mrkl.index.TreeIndex
 
hashCode() - Method in class io.crums.util.mrkl.Proof
 
hashInternals(byte[], byte[], MessageDigest) - Static method in class io.crums.util.mrkl.Tree
 
hashLeaves(byte[], byte[], MessageDigest) - Static method in class io.crums.util.mrkl.Tree
 
hashUncommon(byte[], byte[], MessageDigest) - Static method in class io.crums.util.mrkl.Tree
 
hashWidth() - Method in class io.crums.util.mrkl.Builder
 
hashWidth() - Method in class io.crums.util.mrkl.FixedLeafTree
 
height() - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the height of the root of the tree relative to its base (the leaves).

I

idx() - Method in class io.crums.util.mrkl.Tree
Returns the random access index into tree structure.
index() - Method in class io.crums.util.mrkl.index.AbstractNode
Returns this node's index (at this level).
indexOf(Object) - Method in class io.crums.util.mem.ByteList
init(TreeIndex<N>) - Method in interface io.crums.util.mrkl.index.TreeIndex.NodeFactory
 
io.crums.util - package io.crums.util
 
io.crums.util.mem - package io.crums.util.mem
 
io.crums.util.mrkl - package io.crums.util.mrkl
 
io.crums.util.mrkl.index - package io.crums.util.mrkl.index
 
isCarry() - Method in class io.crums.util.mrkl.Node
 
isCarry(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
Determines whether node at the given coordinates is a carry.
isLeaf() - Method in class io.crums.util.mrkl.index.AbstractNode
Determines whether this node is at level zero.
isLeafWidthFixed() - Method in class io.crums.util.mrkl.Tree
Determines whether the width of the leaves is fixed.
isLeft() - Method in class io.crums.util.mrkl.index.AbstractNode
Determines whether this node is the left child of its parent.
isLeft(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
Determines if the node at the given coordinates is the left child of its parent node.
isOmniWidth() - Method in class io.crums.util.mrkl.Tree
Determines whether the width of the leaves is the same as the byte width of the hashing algorithm.
isRight() - Method in class io.crums.util.mrkl.index.AbstractNode
Determines whether this node is the right child of its parent.
isRight() - Method in class io.crums.util.mrkl.Node
 
isRight(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
Determines if the node at the given coordinates is the right child of its parent node.
isRoot() - Method in class io.crums.util.mrkl.Node
 
isRoot(AbstractNode) - Method in class io.crums.util.mrkl.index.TreeIndex
 
item() - Method in class io.crums.util.mrkl.Proof
Returns [a copy of] the item proven.
item(int) - Method in class io.crums.util.mrkl.Builder
Returns (a copy of) of the item at the given index.
itemsAdded() - Method in class io.crums.util.mrkl.DeltaBuilder
Returns the total number of items added (appended).

L

lastIndexOf(Object) - Method in class io.crums.util.mem.ByteList
LEAF_PAD - Static variable in class io.crums.util.mrkl.Tree
 
leafCount() - Method in class io.crums.util.mrkl.Node
Returns the total number of leaves in the tree this node belongs to.
leafCount() - Method in class io.crums.util.mrkl.Proof
Returns the total number of leaves in the tree from which this proof was constructed.
leafIndex() - Method in class io.crums.util.mrkl.Proof
The [leaf] index of the item proven.
leafWidth() - Method in class io.crums.util.mrkl.Builder
 
leafWidth() - Method in class io.crums.util.mrkl.DeltaTree
 
leafWidth() - Method in class io.crums.util.mrkl.FixedLeafBuilder
 
leafWidth() - Method in class io.crums.util.mrkl.FixedLeafTree
Returns the fixed-size leaf width.
leafWidth() - Method in class io.crums.util.mrkl.FreeLeafTree
Returns -1 signifying variable width.
leafWidth() - Method in class io.crums.util.mrkl.Tree
Returns the leaf width in bytes if fixed; -1, otherwise (variable).
leavesBlock() - Method in class io.crums.util.mrkl.FixedLeafTree
Returns the leaves' data block.
leftChild() - Method in class io.crums.util.mrkl.Node
Returns this node's left child, or null if this node is a leaf.
level() - Method in class io.crums.util.mrkl.index.AbstractNode
Returns this node's level.
level(int) - Method in class io.crums.util.mrkl.Builder
 
levelSize(int) - Method in class io.crums.util.mrkl.Builder
 
ListExtension<T> - Class in io.crums.util
A first list extended by a second.
ListExtension(List<T>) - Constructor for class io.crums.util.ListExtension
Creqte a new instance by extending the first list with an ArrayList.
ListExtension(List<T>, List<T>) - Constructor for class io.crums.util.ListExtension
Creates an instance composed of the given 2 lists.
lock - Variable in class io.crums.util.mrkl.Builder
Synchronization lock.

M

maxIndex(int) - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the maximum allowed index at the given level.
maxIndexJoinsCarry(int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
MIN_ALGO_WIDTH - Static variable in class io.crums.util.mrkl.FixedLeafTree
 
MIN_LEAF_WIDTH - Static variable in class io.crums.util.mrkl.FixedLeafTree
 

N

newByteArrayList(int) - Method in class io.crums.util.mrkl.Builder
 
newGeneric(int) - Static method in class io.crums.util.mrkl.index.TreeIndex
 
newInstance(byte[][]) - Static method in class io.crums.util.mem.ByteList
Creates a new instance.
newInstance(byte[][], boolean) - Static method in class io.crums.util.mem.ByteList
Creates a new instance.
newNode(int, int, boolean) - Method in interface io.crums.util.mrkl.index.TreeIndex.NodeFactory
 
Node - Class in io.crums.util.mrkl
Merkle tree node.

P

packageTree() - Method in class io.crums.util.mrkl.Builder
 
packageTree() - Method in class io.crums.util.mrkl.DeltaBuilder
 
packageTree() - Method in class io.crums.util.mrkl.FixedLeafBuilder
 
parent() - Method in class io.crums.util.mrkl.Node
Returns this node's parent, or null if this node is root.
proof(int) - Method in class io.crums.util.mrkl.Tree
Returns a cryptographic path to the root of the Merkle tree.
Proof - Class in io.crums.util.mrkl
A cryptographic path from an item (expressed in bytes) to the root of a Merkle tree.
Proof(Proof) - Constructor for class io.crums.util.mrkl.Proof
Copy constructor.
Proof(Tree, int) - Constructor for class io.crums.util.mrkl.Proof
 
Proof(String, int, int, byte[][]) - Constructor for class io.crums.util.mrkl.Proof
 
Proof(String, int, int, byte[][], boolean) - Constructor for class io.crums.util.mrkl.Proof
 

R

rightChild() - Method in class io.crums.util.mrkl.Node
Returns this node's right child, or null if this node is a leaf.
root() - Method in class io.crums.util.mrkl.Tree
Returns the root node of the tree.
rootHash() - Method in class io.crums.util.mrkl.Proof
Returns[a copy of] the hash at the root of the Merkle tree.
rootHeightForCount(int) - Static method in class io.crums.util.mrkl.index.TreeIndex
Returns the height of the Merkle tree root node with count-many leaf elements.

S

second() - Method in class io.crums.util.ListExtension
Returns the second list.
serialIndex() - Method in class io.crums.util.mrkl.Node
Returns the node's serial index.
serialIndex(int, int) - Method in class io.crums.util.mrkl.index.TreeIndex
 
sibling() - Method in class io.crums.util.mrkl.Node
Returns the sibling that makes this node's parent, or null if this node is root.
size() - Method in class io.crums.util.ListExtension
 
size() - Method in class io.crums.util.mem.ByteList
 
source - Variable in class io.crums.util.mem.ByteList
 

T

toString() - Method in class io.crums.util.mrkl.index.AbstractNode
 
toString() - Method in class io.crums.util.mrkl.index.TreeIndex
 
toString() - Method in class io.crums.util.mrkl.Tree
For debug use.
totalCarries() - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the total number of carries (otherwise known as promoted nodes).
totalCount() - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the total number of nodes in the tree.
totalCountSansCarries() - Method in class io.crums.util.mrkl.index.TreeIndex
Returns the total number of nodes in the tree excluding the carries.
transfer(byte[], byte[], int) - Static method in class io.crums.util.mem.Bytes
 
transfer(byte[], int, byte[], int, int) - Static method in class io.crums.util.mem.Bytes
 
tree() - Method in class io.crums.util.mrkl.Node
 
Tree - Class in io.crums.util.mrkl
The Merkle tree.
Tree(int, String) - Constructor for class io.crums.util.mrkl.Tree
Base constructor creates an index and locks down the algo.
Tree(Tree) - Constructor for class io.crums.util.mrkl.Tree
Copy constructor.
treeDataLength(int, int, int) - Static method in class io.crums.util.mrkl.FixedLeafTree
Returns the number of bytes needed to encode the state of the tree, or -1 if that number exceeds the maximum int Java allows.
TreeIndex<N extends AbstractNode> - Class in io.crums.util.mrkl.index
A breadth-first view of the structure of a Merkle tree.
TreeIndex(int, TreeIndex.NodeFactory<N>) - Constructor for class io.crums.util.mrkl.index.TreeIndex
 
TreeIndex.NodeFactory<N extends AbstractNode> - Interface in io.crums.util.mrkl.index
 

V

verify(Node, MessageDigest) - Method in class io.crums.util.mrkl.Tree
 
verify(MessageDigest) - Method in class io.crums.util.mrkl.Node
Verifies the hash of this node against its children, if it hash any.
verify(MessageDigest) - Method in class io.crums.util.mrkl.Proof
Verifies this proof and returns the result.
A B C D E F G H I L M N P R S T V 
All Classes|All Packages