Top Fields Constructors Methods
org.bouncycastle.pqc.crypto.picnic

pack-priv Class Tree

extends Object
Class Inheritance
Imports
java.util.logging.Logger, org.bouncycastle.util.Arrays, .Pack

Field Summary

Modifier and TypeField and Description
private int
private int
private PicnicEngine
private boolean[]
private boolean[]
private static final Logger
private static final int
pack-priv byte[][]
private int
private int

Constructor Summary

AccessConstructor and Description
public
Tree(PicnicEngine engine, int numLeaves, int dataSize)

Method Summary

Modifier and TypeMethod and Description
protected int
addMerkleNodes(int[] missingLeaves, int missingLeavesSize, byte[] input, int inputSize)

protected void
buildMerkleTree(byte[][] leafData, byte[] salt)

private void
computeParentHash(int child, byte[] salt)

private boolean
contains(int[] list, int len, int value)

private boolean
exists(int i)

private void
expandSeeds(byte[] salt, int repIndex)

protected void
generateSeeds(byte[] rootSeed, byte[] salt, int repIndex)

protected byte[]
getLeaf(int leafIndex)

protected byte[][]
protected int
private int
getParent(int node)

private int[]
getRevealedMerkleNodes(int[] missingLeaves, int missingLeavesSize, int[] outputSize)

private int[]
getRevealedNodes(int[] hideList, int hideListSize, int[] outputSize)

private int
getSibling(int node)

private void
hashSeed(byte[] digest_arr, byte[] inputSeed, byte[] salt, byte hashPrefix, int repIndex, int nodeIndex)

pack-priv boolean
hasLeftChild(Tree tree, int node)

private boolean
hasRightChild(int node)

private boolean
hasSibling(int node)

private boolean
isLeafNode(int node)

private boolean
isLeftChild(int node)

protected byte[]
openMerkleTree(int[] missingLeaves, int missingLeavesSize, int[] outputSizeBytes)

protected int
openMerkleTreeSize(int[] missingLeaves, int missingLeavesSize)

protected int
reconstructSeeds(int[] hideList, int hideListSize, byte[] input, int inputLen, byte[] salt, int repIndex)

protected int
revealSeeds(int[] hideList, int hideListSize, byte[] output, int outputSize)

protected int
revealSeedsSize(int[] hideList, int hideListSize)

protected int
verifyMerkleTree(byte[][] leafData, byte[] salt)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

dataSizeback to summary
private int dataSize
depthback to summary
private int depth
engineback to summary
private PicnicEngine engine
existsback to summary
private boolean[] exists
haveNodeback to summary
private boolean[] haveNode
LOGback to summary
private static final Logger LOG
MAX_SEED_SIZE_BYTESback to summary
private static final int MAX_SEED_SIZE_BYTES
nodesback to summary
pack-priv byte[][] nodes
numLeavesback to summary
private int numLeaves
numNodesback to summary
private int numNodes

Constructor Detail

Treeback to summary
public Tree(PicnicEngine engine, int numLeaves, int dataSize)

Method Detail

addMerkleNodesback to summary
protected int addMerkleNodes(int[] missingLeaves, int missingLeavesSize, byte[] input, int inputSize)
buildMerkleTreeback to summary
protected void buildMerkleTree(byte[][] leafData, byte[] salt)
computeParentHashback to summary
private void computeParentHash(int child, byte[] salt)
containsback to summary
private boolean contains(int[] list, int len, int value)
existsback to summary
private boolean exists(int i)
expandSeedsback to summary
private void expandSeeds(byte[] salt, int repIndex)
generateSeedsback to summary
protected void generateSeeds(byte[] rootSeed, byte[] salt, int repIndex)
getLeafback to summary
protected byte[] getLeaf(int leafIndex)
getLeavesback to summary
protected byte[][] getLeaves()
getLeavesOffsetback to summary
protected int getLeavesOffset()
getParentback to summary
private int getParent(int node)
getRevealedMerkleNodesback to summary
private int[] getRevealedMerkleNodes(int[] missingLeaves, int missingLeavesSize, int[] outputSize)
getRevealedNodesback to summary
private int[] getRevealedNodes(int[] hideList, int hideListSize, int[] outputSize)
getSiblingback to summary
private int getSibling(int node)
hashSeedback to summary
private void hashSeed(byte[] digest_arr, byte[] inputSeed, byte[] salt, byte hashPrefix, int repIndex, int nodeIndex)
hasLeftChildback to summary
pack-priv boolean hasLeftChild(Tree tree, int node)
hasRightChildback to summary
private boolean hasRightChild(int node)
hasSiblingback to summary
private boolean hasSibling(int node)
isLeafNodeback to summary
private boolean isLeafNode(int node)
isLeftChildback to summary
private boolean isLeftChild(int node)
openMerkleTreeback to summary
protected byte[] openMerkleTree(int[] missingLeaves, int missingLeavesSize, int[] outputSizeBytes)
openMerkleTreeSizeback to summary
protected int openMerkleTreeSize(int[] missingLeaves, int missingLeavesSize)
reconstructSeedsback to summary
protected int reconstructSeeds(int[] hideList, int hideListSize, byte[] input, int inputLen, byte[] salt, int repIndex)
revealSeedsback to summary
protected int revealSeeds(int[] hideList, int hideListSize, byte[] output, int outputSize)
revealSeedsSizeback to summary
protected int revealSeedsSize(int[] hideList, int hideListSize)
verifyMerkleTreeback to summary
protected int verifyMerkleTree(byte[][] leafData, byte[] salt)