Top Inners Fields Constructors Methods
org.bouncycastle.pqc.crypto.sphincsplus

pack-priv abstract Class SPHINCSPlusEngine

extends Object
Class Inheritance
Known Direct Subclasses
org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.Sha2Engine, org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.Shake256Engine, org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.HarakaSEngine
Imports
org.bouncycastle.crypto.Digest, .Xof, org.bouncycastle.crypto.digests.SHA256Digest, .SHA512Digest, .SHAKEDigest, org.bouncycastle.crypto.generators.MGF1BytesGenerator, org.bouncycastle.crypto.macs.HMac, org.bouncycastle.crypto.params.KeyParameter, .MGFParameters, org.bouncycastle.util.Arrays, .Bytes, .Memoable, .Pack

Nested and Inner Type Summary

Modifier and TypeClass and Description
pack-priv static class
pack-priv static class
pack-priv static class

Field Summary

Modifier and TypeField and Description
pack-priv final int
A

pack-priv final int
D

pack-priv final int
H

pack-priv final int
pack-priv final int
K

pack-priv final int
N

pack-priv final boolean
robust

Deprecated obsolete to be removed
pack-priv final int
T

pack-priv final int
pack-priv final int
pack-priv final int
pack-priv final int
pack-priv final int

Constructor Summary

AccessConstructor and Description
public
SPHINCSPlusEngine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Summary

Modifier and TypeMethod and Description
pack-priv abstract byte[]
F(byte[] pkSeed, ADRS adrs, byte[] m1)

pack-priv abstract byte[]
H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

pack-priv abstract IndexedDigest
H_msg(byte[] prf, byte[] pkSeed, byte[] pkRoot, byte[] message)

pack-priv abstract void
init(byte[] pkSeed)

pack-priv abstract byte[]
PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)

pack-priv abstract byte[]
PRF_msg(byte[] prf, byte[] randomiser, byte[] message)

pack-priv abstract byte[]
T_l(byte[] pkSeed, ADRS adrs, byte[] m)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

Aback to summary
pack-priv final int A
Dback to summary
pack-priv final int D
Hback to summary
pack-priv final int H
H_PRIMEback to summary
pack-priv final int H_PRIME
Kback to summary
pack-priv final int K
Nback to summary
pack-priv final int N
robustback to summary
pack-priv final boolean robust

Deprecated

obsolete to be removed

Annotations
@Deprecated
Tback to summary
pack-priv final int T
WOTS_LENback to summary
pack-priv final int WOTS_LEN
WOTS_LEN1back to summary
pack-priv final int WOTS_LEN1
WOTS_LEN2back to summary
pack-priv final int WOTS_LEN2
WOTS_LOGWback to summary
pack-priv final int WOTS_LOGW
WOTS_Wback to summary
pack-priv final int WOTS_W

Constructor Detail

SPHINCSPlusEngineback to summary
public SPHINCSPlusEngine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Detail

Fback to summary
pack-priv abstract byte[] F(byte[] pkSeed, ADRS adrs, byte[] m1)
Hback to summary
pack-priv abstract byte[] H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)
H_msgback to summary
pack-priv abstract IndexedDigest H_msg(byte[] prf, byte[] pkSeed, byte[] pkRoot, byte[] message)
initback to summary
pack-priv abstract void init(byte[] pkSeed)
PRFback to summary
pack-priv abstract byte[] PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)
PRF_msgback to summary
pack-priv abstract byte[] PRF_msg(byte[] prf, byte[] randomiser, byte[] message)
T_lback to summary
pack-priv abstract byte[] T_l(byte[] pkSeed, ADRS adrs, byte[] m)
org.bouncycastle.pqc.crypto.sphincsplus back to summary

pack-priv Class SPHINCSPlusEngine.HarakaSEngine

extends SPHINCSPlusEngine
Class Inheritance

Field Summary

Modifier and TypeField and Description
private HarakaS256Digest
private HarakaS512Digest
private HarakaSXof
Inherited from org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine:
ADHH_PRIMEKNrobustTWOTS_LENWOTS_LEN1WOTS_LEN2WOTS_LOGWWOTS_W

Constructor Summary

AccessConstructor and Description
public
HarakaSEngine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Summary

Modifier and TypeMethod and Description
protected byte[]
bitmask(ADRS adrs, byte[] m)

public byte[]
F(byte[] pkSeed, ADRS adrs, byte[] m1)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.F.

public byte[]
H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H.

pack-priv IndexedDigest
H_msg(byte[] prf, byte[] pkSeed, byte[] pkRoot, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H_msg.

pack-priv void
pack-priv byte[]
PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF.

public byte[]
PRF_msg(byte[] prf, byte[] randomiser, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF_msg.

public byte[]
T_l(byte[] pkSeed, ADRS adrs, byte[] m)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.T_l.

Field Detail

harakaS256Digestback to summary
private HarakaS256Digest harakaS256Digest
harakaS512Digestback to summary
private HarakaS512Digest harakaS512Digest
harakaSXofback to summary
private HarakaSXof harakaSXof

Constructor Detail

HarakaSEngineback to summary
public HarakaSEngine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Detail

bitmaskback to summary
protected byte[] bitmask(ADRS adrs, byte[] m)
Fback to summary
public byte[] F(byte[] pkSeed, ADRS adrs, byte[] m1)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.F.

Hback to summary
public byte[] H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H.

H_msgback to summary
pack-priv IndexedDigest H_msg(byte[] prf, byte[] pkSeed, byte[] pkRoot, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H_msg.

initback to summary
pack-priv void init(byte[] pkSeed)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.init.

PRFback to summary
pack-priv byte[] PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF.

PRF_msgback to summary
public byte[] PRF_msg(byte[] prf, byte[] randomiser, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF_msg.

T_lback to summary
public byte[] T_l(byte[] pkSeed, ADRS adrs, byte[] m)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.T_l.

org.bouncycastle.pqc.crypto.sphincsplus back to summary

pack-priv Class SPHINCSPlusEngine.Sha2Engine

extends SPHINCSPlusEngine
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final int
private final byte[]
private final MGF1BytesGenerator
private final Digest
private final byte[]
private Memoable
private final Digest
private final byte[]
private Memoable
private final HMac
Inherited from org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine:
ADHH_PRIMEKNrobustTWOTS_LENWOTS_LEN1WOTS_LEN2WOTS_LOGWWOTS_W

Constructor Summary

AccessConstructor and Description
public
Sha2Engine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Summary

Modifier and TypeMethod and Description
protected byte[]
bitmask(byte[] key, byte[] m)

protected byte[]
bitmask(byte[] key, byte[] m1, byte[] m2)

protected byte[]
bitmask256(byte[] key, byte[] m)

private byte[]
public byte[]
F(byte[] pkSeed, ADRS adrs, byte[] m1)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.F.

public byte[]
H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H.

pack-priv IndexedDigest
H_msg(byte[] prf, byte[] pkSeed, byte[] pkRoot, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H_msg.

pack-priv void
pack-priv byte[]
PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF.

public byte[]
PRF_msg(byte[] prf, byte[] randomiser, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF_msg.

public byte[]
T_l(byte[] pkSeed, ADRS adrs, byte[] m)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.T_l.

Field Detail

blback to summary
private final int bl
hmacBufback to summary
private final byte[] hmacBuf
mgf1back to summary
private final MGF1BytesGenerator mgf1
msgDigestback to summary
private final Digest msgDigest
msgDigestBufback to summary
private final byte[] msgDigestBuf
msgMemoback to summary
private Memoable msgMemo
sha256back to summary
private final Digest sha256
sha256Bufback to summary
private final byte[] sha256Buf
sha256Memoback to summary
private Memoable sha256Memo
treeHMacback to summary
private final HMac treeHMac

Constructor Detail

Sha2Engineback to summary
public Sha2Engine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Detail

bitmaskback to summary
protected byte[] bitmask(byte[] key, byte[] m)
bitmaskback to summary
protected byte[] bitmask(byte[] key, byte[] m1, byte[] m2)
bitmask256back to summary
protected byte[] bitmask256(byte[] key, byte[] m)
compressedADRSback to summary
private byte[] compressedADRS(ADRS adrs)
Fback to summary
public byte[] F(byte[] pkSeed, ADRS adrs, byte[] m1)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.F.

Hback to summary
public byte[] H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H.

H_msgback to summary
pack-priv IndexedDigest H_msg(byte[] prf, byte[] pkSeed, byte[] pkRoot, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H_msg.

initback to summary
pack-priv void init(byte[] pkSeed)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.init.

PRFback to summary
pack-priv byte[] PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF.

PRF_msgback to summary
public byte[] PRF_msg(byte[] prf, byte[] randomiser, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF_msg.

T_lback to summary
public byte[] T_l(byte[] pkSeed, ADRS adrs, byte[] m)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.T_l.

org.bouncycastle.pqc.crypto.sphincsplus back to summary

pack-priv Class SPHINCSPlusEngine.Shake256Engine

extends SPHINCSPlusEngine
Class Inheritance

Field Summary

Modifier and TypeField and Description
private final Xof
private final Xof
Inherited from org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine:
ADHH_PRIMEKNrobustTWOTS_LENWOTS_LEN1WOTS_LEN2WOTS_LOGWWOTS_W

Constructor Summary

AccessConstructor and Description
public
Shake256Engine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Summary

Modifier and TypeMethod and Description
protected byte[]
bitmask(byte[] pkSeed, ADRS adrs, byte[] m)

protected byte[]
bitmask(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

pack-priv byte[]
F(byte[] pkSeed, ADRS adrs, byte[] m1)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.F.

pack-priv byte[]
H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H.

pack-priv IndexedDigest
H_msg(byte[] R, byte[] pkSeed, byte[] pkRoot, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H_msg.

pack-priv void
pack-priv byte[]
PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF.

public byte[]
PRF_msg(byte[] prf, byte[] randomiser, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF_msg.

pack-priv byte[]
T_l(byte[] pkSeed, ADRS adrs, byte[] m)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.T_l.

Field Detail

maskDigestback to summary
private final Xof maskDigest
treeDigestback to summary
private final Xof treeDigest

Constructor Detail

Shake256Engineback to summary
public Shake256Engine(boolean robust, int n, int w, int d, int a, int k, int h)

Method Detail

bitmaskback to summary
protected byte[] bitmask(byte[] pkSeed, ADRS adrs, byte[] m)
bitmaskback to summary
protected byte[] bitmask(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)
Fback to summary
pack-priv byte[] F(byte[] pkSeed, ADRS adrs, byte[] m1)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.F.

Hback to summary
pack-priv byte[] H(byte[] pkSeed, ADRS adrs, byte[] m1, byte[] m2)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H.

H_msgback to summary
pack-priv IndexedDigest H_msg(byte[] R, byte[] pkSeed, byte[] pkRoot, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.H_msg.

initback to summary
pack-priv void init(byte[] pkSeed)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.init.

PRFback to summary
pack-priv byte[] PRF(byte[] pkSeed, byte[] skSeed, ADRS adrs)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF.

PRF_msgback to summary
public byte[] PRF_msg(byte[] prf, byte[] randomiser, byte[] message)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.PRF_msg.

T_lback to summary
pack-priv byte[] T_l(byte[] pkSeed, ADRS adrs, byte[] m)

Implements abstract org.bouncycastle.pqc.crypto.sphincsplus.SPHINCSPlusEngine.T_l.