Package | Description |
---|---|
org.bouncycastle.pqc.crypto.ntru | |
org.bouncycastle.pqc.math.ntru.polynomial |
Modifier and Type | Field and Description |
---|---|
IntegerPolynomial |
NTRUSigningKeyPairGenerator.FGBasis.F |
IntegerPolynomial |
NTRUEncryptionPrivateKeyParameters.fp |
IntegerPolynomial |
NTRUSigningKeyPairGenerator.FGBasis.G |
IntegerPolynomial |
NTRUEncryptionPrivateKeyParameters.h |
IntegerPolynomial |
NTRUSigningPrivateKeyParameters.Basis.h |
IntegerPolynomial |
NTRUSigningPublicKeyParameters.h |
IntegerPolynomial |
NTRUEncryptionPublicKeyParameters.h |
Modifier and Type | Method and Description |
---|---|
protected IntegerPolynomial |
NTRUSigner.createMsgRep(byte[] msgHash,
int r)
Deprecated.
|
protected IntegerPolynomial |
NTRUEngine.decrypt(IntegerPolynomial e,
Polynomial priv_t,
IntegerPolynomial priv_fp) |
protected IntegerPolynomial |
NTRUEngine.encrypt(IntegerPolynomial m,
TernaryPolynomial r,
IntegerPolynomial pubKey) |
Modifier and Type | Method and Description |
---|---|
protected IntegerPolynomial |
NTRUEngine.decrypt(IntegerPolynomial e,
Polynomial priv_t,
IntegerPolynomial priv_fp) |
protected IntegerPolynomial |
NTRUEngine.encrypt(IntegerPolynomial m,
TernaryPolynomial r,
IntegerPolynomial pubKey) |
Constructor and Description |
---|
Basis(Polynomial f,
Polynomial fPrime,
IntegerPolynomial h,
NTRUSigningKeyGenerationParameters params)
Constructs a new basis from polynomials
f, f', h . |
NTRUEncryptionPrivateKeyParameters(IntegerPolynomial h,
Polynomial t,
IntegerPolynomial fp,
NTRUEncryptionParameters params)
Constructs a new private key from a polynomial
|
NTRUEncryptionPublicKeyParameters(IntegerPolynomial h,
NTRUEncryptionParameters params)
Constructs a new public key from a polynomial
|
NTRUSigningPublicKeyParameters(IntegerPolynomial h,
NTRUSigningParameters params)
Constructs a new public key from a polynomial
|
Modifier and Type | Class and Description |
---|---|
class |
DenseTernaryPolynomial
A
TernaryPolynomial with a "high" number of nonzero coefficients. |
Modifier and Type | Method and Description |
---|---|
static IntegerPolynomial |
IntegerPolynomial.fromBinary(byte[] data,
int N,
int q)
Returns a polynomial with N coefficients between
0 and q-1 .q must be a power of 2.Ignores any excess bytes. |
static IntegerPolynomial |
IntegerPolynomial.fromBinary(InputStream is,
int N,
int q)
Returns a polynomial with N coefficients between
0 and q-1 .q must be a power of 2.Ignores any excess bytes. |
static IntegerPolynomial |
IntegerPolynomial.fromBinary3Sves(byte[] data,
int N)
Decodes a byte array to a polynomial with
N ternary coefficientsIgnores any excess bytes. |
static IntegerPolynomial |
IntegerPolynomial.fromBinary3Tight(byte[] b,
int N)
Converts a byte array produced by
toBinary3Tight() to a polynomial. |
static IntegerPolynomial |
IntegerPolynomial.fromBinary3Tight(InputStream is,
int N)
Reads data produced by
toBinary3Tight() from an input stream and converts it to a polynomial. |
IntegerPolynomial |
IntegerPolynomial.invertF3()
Computes the inverse mod 3.
|
IntegerPolynomial |
IntegerPolynomial.invertFq(int q)
Computes the inverse mod
q; q must be a power of 2.Returns null if the polynomial is not invertible. |
IntegerPolynomial |
SparseTernaryPolynomial.mult(IntegerPolynomial poly2) |
IntegerPolynomial |
TernaryPolynomial.mult(IntegerPolynomial poly2)
Multiplies the polynomial by an
IntegerPolynomial , taking the indices mod N |
IntegerPolynomial |
ProductFormPolynomial.mult(IntegerPolynomial b) |
IntegerPolynomial |
Polynomial.mult(IntegerPolynomial poly2)
Multiplies the polynomial by an
IntegerPolynomial ,
taking the indices mod N . |
IntegerPolynomial |
IntegerPolynomial.mult(IntegerPolynomial poly2)
Multiplies the polynomial with another, taking the indices mod N
|
IntegerPolynomial |
SparseTernaryPolynomial.mult(IntegerPolynomial poly2,
int modulus) |
IntegerPolynomial |
ProductFormPolynomial.mult(IntegerPolynomial poly2,
int modulus) |
IntegerPolynomial |
DenseTernaryPolynomial.mult(IntegerPolynomial poly2,
int modulus) |
IntegerPolynomial |
Polynomial.mult(IntegerPolynomial poly2,
int modulus)
Multiplies the polynomial by an
IntegerPolynomial ,
taking the coefficient values mod modulus and the indices mod N . |
IntegerPolynomial |
IntegerPolynomial.mult(IntegerPolynomial poly2,
int modulus)
Multiplies the polynomial with another, taking the values mod modulus and the indices mod N
|
IntegerPolynomial |
SparseTernaryPolynomial.toIntegerPolynomial() |
IntegerPolynomial |
ProductFormPolynomial.toIntegerPolynomial() |
IntegerPolynomial |
LongPolynomial5.toIntegerPolynomial() |
IntegerPolynomial |
LongPolynomial2.toIntegerPolynomial() |
IntegerPolynomial |
Polynomial.toIntegerPolynomial()
Returns a polynomial that is equal to this polynomial (in the sense that
Polynomial.mult(IntegerPolynomial, int)
returns equal IntegerPolynomial s). |
IntegerPolynomial |
IntegerPolynomial.toIntegerPolynomial() |
Modifier and Type | Method and Description |
---|---|
void |
IntegerPolynomial.add(IntegerPolynomial b)
Adds another polynomial which can have a different number of coefficients.
|
void |
IntegerPolynomial.add(IntegerPolynomial b,
int modulus)
Adds another polynomial which can have a different number of coefficients,
and takes the coefficient values mod
modulus . |
IntegerPolynomial |
SparseTernaryPolynomial.mult(IntegerPolynomial poly2) |
IntegerPolynomial |
TernaryPolynomial.mult(IntegerPolynomial poly2)
Multiplies the polynomial by an
IntegerPolynomial , taking the indices mod N |
IntegerPolynomial |
ProductFormPolynomial.mult(IntegerPolynomial b) |
IntegerPolynomial |
Polynomial.mult(IntegerPolynomial poly2)
Multiplies the polynomial by an
IntegerPolynomial ,
taking the indices mod N . |
IntegerPolynomial |
IntegerPolynomial.mult(IntegerPolynomial poly2)
Multiplies the polynomial with another, taking the indices mod N
|
IntegerPolynomial |
SparseTernaryPolynomial.mult(IntegerPolynomial poly2,
int modulus) |
IntegerPolynomial |
ProductFormPolynomial.mult(IntegerPolynomial poly2,
int modulus) |
IntegerPolynomial |
DenseTernaryPolynomial.mult(IntegerPolynomial poly2,
int modulus) |
IntegerPolynomial |
Polynomial.mult(IntegerPolynomial poly2,
int modulus)
Multiplies the polynomial by an
IntegerPolynomial ,
taking the coefficient values mod modulus and the indices mod N . |
IntegerPolynomial |
IntegerPolynomial.mult(IntegerPolynomial poly2,
int modulus)
Multiplies the polynomial with another, taking the values mod modulus and the indices mod N
|
void |
IntegerPolynomial.sub(IntegerPolynomial b)
Subtracts another polynomial which can have a different number of coefficients.
|
void |
IntegerPolynomial.sub(IntegerPolynomial b,
int modulus)
Subtracts another polynomial which can have a different number of coefficients,
and takes the coefficient values mod
modulus . |
Constructor and Description |
---|
BigIntPolynomial(IntegerPolynomial p)
Constructs a
BigIntPolynomial from a IntegerPolynomial . |
DenseTernaryPolynomial(IntegerPolynomial intPoly)
Constructs a
DenseTernaryPolynomial from a IntegerPolynomial . |
LongPolynomial2(IntegerPolynomial p)
Constructs a
LongPolynomial2 from a IntegerPolynomial . |
LongPolynomial5(IntegerPolynomial p)
Constructs a
LongPolynomial5 from a IntegerPolynomial . |
SparseTernaryPolynomial(IntegerPolynomial intPoly)
Constructs a
DenseTernaryPolynomial from a IntegerPolynomial . |
Copyright © 2021 BouncyCastle.org. All rights reserved.