Top Inners Fields Constructors Methods
org.bouncycastle.pqc.legacy.crypto.qtesla

pack-priv Class QTesla1p

extends Object
Class Inheritance
Imports
java.security.SecureRandom, org.bouncycastle.util.Arrays, .Pack

Nested and Inner Type Summary

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

Field Summary

Modifier and TypeField and Description
private static int
pack-priv static final int
private static final int
pack-priv static final int
private static final int
pack-priv static final int
private static final int
private static final int
private static final int
private static int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final int
private static final long
private static final int
private static final int
private static final int
private static final int

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private static int
absolute(int value)

private static void
at(byte[] bs, int base, int index, int value)

private static int
at(byte[] bs, int base, int index)

private static boolean
checkPolynomial(int[] polynomial, int polyOffset, int bound)

pack-priv static void
decodePublicKey(int[] publicKey, byte[] seedA, int seedAOffset, final byte[] publicKeyInput)

pack-priv static void
decodeSignature(byte[] C, int[] Z, final byte[] signature, int signatureOffset)

pack-priv static void
encodeC(int[] positionList, short[] signList, byte[] output, int outputOffset)

pack-priv static void
encodePrivateKey(byte[] privateKey, int[] secretPolynomial, int[] errorPolynomial, byte[] seed, int seedOffset, byte[] publicKey)

pack-priv static void
encodePublicKey(byte[] publicKey, final int[] T, final byte[] seedA, int seedAOffset)

pack-priv static void
encodeSignature(byte[] signature, int signatureOffset, byte[] C, int cOffset, int[] Z)

pack-priv static int
generateKeyPair(byte[] publicKey, byte[] privateKey, SecureRandom secureRandom)

pack-priv static int
generateSignature(byte[] signature, byte[] message, int messageOffset, int messageLength, byte[] privateKey, SecureRandom secureRandom)

private static void
hashFunction(byte[] output, int outputOffset, int[] v, byte[] message, int messageOffset)

pack-priv static int
littleEndianToInt24(byte[] bs, int off)

pack-priv static boolean
memoryEqual(byte[] left, int leftOffset, byte[] right, int rightOffset, int length)

pack-priv static void
sample_y(int[] y, byte[] seed, int seedOffset, int nonce)

pack-priv static boolean
test_correctness(int[] v, int vpos)

private static boolean
testRejection(int[] Z)

private static boolean
testZ(int[] Z)

pack-priv static int
verifying(byte[] message, final byte[] signature, int signatureOffset, int signatureLength, final byte[] publicKey)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

BPLUS1BYTESback to summary
private static int BPLUS1BYTES
CRYPTO_BYTESback to summary
pack-priv static final int CRYPTO_BYTES
CRYPTO_C_BYTESback to summary
private static final int CRYPTO_C_BYTES
CRYPTO_PUBLICKEYBYTESback to summary
pack-priv static final int CRYPTO_PUBLICKEYBYTES
CRYPTO_RANDOMBYTESback to summary
private static final int CRYPTO_RANDOMBYTES
CRYPTO_SECRETKEYBYTESback to summary
pack-priv static final int CRYPTO_SECRETKEYBYTES
CRYPTO_SEEDBYTESback to summary
private static final int CRYPTO_SEEDBYTES
HM_BYTESback to summary
private static final int HM_BYTES
maskb1back to summary
private static final int maskb1
NBLOCKS_SHAKEback to summary
private static int NBLOCKS_SHAKE
PARAM_Bback to summary
private static final int PARAM_B
PARAM_B_BITSback to summary
private static final int PARAM_B_BITS
PARAM_BARR_DIVback to summary
private static final int PARAM_BARR_DIV
PARAM_BARR_MULTback to summary
private static final int PARAM_BARR_MULT
PARAM_Dback to summary
private static final int PARAM_D
PARAM_Eback to summary
private static final int PARAM_E
PARAM_GEN_Aback to summary
private static final int PARAM_GEN_A
PARAM_Hback to summary
private static final int PARAM_H
PARAM_Kback to summary
private static final int PARAM_K
PARAM_KEYGEN_BOUND_Eback to summary
private static final int PARAM_KEYGEN_BOUND_E
PARAM_KEYGEN_BOUND_Sback to summary
private static final int PARAM_KEYGEN_BOUND_S
PARAM_Nback to summary
private static final int PARAM_N
PARAM_Qback to summary
private static final int PARAM_Q
PARAM_Q_LOGback to summary
private static final int PARAM_Q_LOG
PARAM_QINVback to summary
private static final long PARAM_QINV
PARAM_R2_INVNback to summary
private static final int PARAM_R2_INVN
PARAM_Sback to summary
private static final int PARAM_S
PARAM_S_BITSback to summary
private static final int PARAM_S_BITS
RADIX32back to summary
private static final int RADIX32

Constructor Detail

QTesla1pback to summary
pack-priv QTesla1p()

Method Detail

absoluteback to summary
private static int absolute(int value)
atback to summary
private static void at(byte[] bs, int base, int index, int value)
atback to summary
private static int at(byte[] bs, int base, int index)
checkPolynomialback to summary
private static boolean checkPolynomial(int[] polynomial, int polyOffset, int bound)
decodePublicKeyback to summary
pack-priv static void decodePublicKey(int[] publicKey, byte[] seedA, int seedAOffset, final byte[] publicKeyInput)
decodeSignatureback to summary
pack-priv static void decodeSignature(byte[] C, int[] Z, final byte[] signature, int signatureOffset)
encodeCback to summary
pack-priv static void encodeC(int[] positionList, short[] signList, byte[] output, int outputOffset)
encodePrivateKeyback to summary
pack-priv static void encodePrivateKey(byte[] privateKey, int[] secretPolynomial, int[] errorPolynomial, byte[] seed, int seedOffset, byte[] publicKey)
encodePublicKeyback to summary
pack-priv static void encodePublicKey(byte[] publicKey, final int[] T, final byte[] seedA, int seedAOffset)
encodeSignatureback to summary
pack-priv static void encodeSignature(byte[] signature, int signatureOffset, byte[] C, int cOffset, int[] Z)
generateKeyPairback to summary
pack-priv static int generateKeyPair(byte[] publicKey, byte[] privateKey, SecureRandom secureRandom)
generateSignatureback to summary
pack-priv static int generateSignature(byte[] signature, byte[] message, int messageOffset, int messageLength, byte[] privateKey, SecureRandom secureRandom)
hashFunctionback to summary
private static void hashFunction(byte[] output, int outputOffset, int[] v, byte[] message, int messageOffset)
littleEndianToInt24back to summary
pack-priv static int littleEndianToInt24(byte[] bs, int off)
memoryEqualback to summary
pack-priv static boolean memoryEqual(byte[] left, int leftOffset, byte[] right, int rightOffset, int length)
sample_yback to summary
pack-priv static void sample_y(int[] y, byte[] seed, int seedOffset, int nonce)
test_correctnessback to summary
pack-priv static boolean test_correctness(int[] v, int vpos)
testRejectionback to summary
private static boolean testRejection(int[] Z)
testZback to summary
private static boolean testZ(int[] Z)
verifyingback to summary
pack-priv static int verifying(byte[] message, final byte[] signature, int signatureOffset, int signatureLength, final byte[] publicKey)
org.bouncycastle.pqc.legacy.crypto.qtesla back to summary

pack-priv Class QTesla1p.Gaussian

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private static final int
private static final int
private static final int[]
private static final int

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
pack-priv static void
sample_gauss_poly(int nonce, byte[] seed, int seedOffset, int[] poly, int polyOffset)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

CDT_COLSback to summary
private static final int CDT_COLS
CDT_ROWSback to summary
private static final int CDT_ROWS
cdt_vback to summary
private static final int[] cdt_v
CHUNK_SIZEback to summary
private static final int CHUNK_SIZE

Constructor Detail

Gaussianback to summary
pack-priv Gaussian()

Method Detail

sample_gauss_polyback to summary
pack-priv static void sample_gauss_poly(int nonce, byte[] seed, int seedOffset, int[] poly, int polyOffset)
org.bouncycastle.pqc.legacy.crypto.qtesla back to summary

pack-priv Class QTesla1p.QTesla1PPolynomial

extends Object
Class Inheritance
  • java.lang.Object
  • org.bouncycastle.pqc.legacy.crypto.qtesla.QTesla1p.QTesla1PPolynomial

Field Summary

Modifier and TypeField and Description
private static final int[]
private static final int[]

Constructor Summary

AccessConstructor and Description
pack-priv

Method Summary

Modifier and TypeMethod and Description
private static int
barr_reduce(int a)

private static int
barr_reduce64(long a)

private static int
correct(int x)

pack-priv static void
ntt(int[] a, int[] w)

pack-priv static void
nttinv(int[] a, int aPos, int[] w)

pack-priv static void
poly_add(int[] result, int[] x, int[] y)

pack-priv static void
poly_add_correct(int[] result, int rpos, int[] x, int xpos, int[] y, int ypos)

pack-priv static void
poly_mul(int[] result, int rpos, int[] x, int xpos, int[] y)

pack-priv static void
poly_ntt(int[] x_ntt, int[] x)

pack-priv static void
poly_pointwise(int[] result, int rpos, int[] x, int xpos, int[] y)

pack-priv static void
poly_sub(int[] result, int rpos, int[] x, int xpos, int[] y, int ypos)

pack-priv static void
poly_sub_reduce(int[] result, int rpos, int[] x, int xpos, int[] y, int ypos)

pack-priv static void
poly_uniform(int[] a, byte[] seed, int seedOffset)

pack-priv static int
reduce(long a)

pack-priv static void
sparse_mul32(int[] prod, int ppos, int[] pk, int pkPos, int[] pos_list, short[] sign_list)

pack-priv static void
sparse_mul8(int[] prod, int ppos, byte[] s, int spos, int[] pos_list, short[] sign_list)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

zetaback to summary
private static final int[] zeta
zetainvback to summary
private static final int[] zetainv

Constructor Detail

QTesla1PPolynomialback to summary
pack-priv QTesla1PPolynomial()

Method Detail

barr_reduceback to summary
private static int barr_reduce(int a)
barr_reduce64back to summary
private static int barr_reduce64(long a)
correctback to summary
private static int correct(int x)
nttback to summary
pack-priv static void ntt(int[] a, int[] w)
nttinvback to summary
pack-priv static void nttinv(int[] a, int aPos, int[] w)
poly_addback to summary
pack-priv static void poly_add(int[] result, int[] x, int[] y)
poly_add_correctback to summary
pack-priv static void poly_add_correct(int[] result, int rpos, int[] x, int xpos, int[] y, int ypos)
poly_mulback to summary
pack-priv static void poly_mul(int[] result, int rpos, int[] x, int xpos, int[] y)
poly_nttback to summary
pack-priv static void poly_ntt(int[] x_ntt, int[] x)
poly_pointwiseback to summary
pack-priv static void poly_pointwise(int[] result, int rpos, int[] x, int xpos, int[] y)
poly_subback to summary
pack-priv static void poly_sub(int[] result, int rpos, int[] x, int xpos, int[] y, int ypos)
poly_sub_reduceback to summary
pack-priv static void poly_sub_reduce(int[] result, int rpos, int[] x, int xpos, int[] y, int ypos)
poly_uniformback to summary
pack-priv static void poly_uniform(int[] a, byte[] seed, int seedOffset)
reduceback to summary
pack-priv static int reduce(long a)
sparse_mul32back to summary
pack-priv static void sparse_mul32(int[] prod, int ppos, int[] pk, int pkPos, int[] pos_list, short[] sign_list)
sparse_mul8back to summary
pack-priv static void sparse_mul8(int[] prod, int ppos, byte[] s, int spos, int[] pos_list, short[] sign_list)