org.bouncycastle.pqc.jcajce.spec
Class McEliecePrivateKeySpec
java.lang.Object
org.bouncycastle.pqc.jcajce.spec.McEliecePrivateKeySpec
- All Implemented Interfaces:
- java.security.spec.KeySpec
public class McEliecePrivateKeySpec
- extends java.lang.Object
- implements java.security.spec.KeySpec
This class provides a specification for a McEliece private key.
- See Also:
org.bouncycastle.pqc.ecc.JDKMcEliecePrivateKey.McEliecePrivateKey
,
KeySpec
Constructor Summary |
McEliecePrivateKeySpec(java.lang.String oid,
int n,
int k,
byte[] encField,
byte[] encGoppaPoly,
byte[] encSInv,
byte[] encP1,
byte[] encP2,
byte[] encH,
byte[][] encQInv)
Constructor (used by the McElieceKeyFactory ). |
McEliecePrivateKeySpec(java.lang.String oid,
int n,
int k,
GF2mField field,
PolynomialGF2mSmallM goppaPoly,
GF2Matrix sInv,
Permutation p1,
Permutation p2,
GF2Matrix h,
PolynomialGF2mSmallM[] qInv)
Constructor. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
McEliecePrivateKeySpec
public McEliecePrivateKeySpec(java.lang.String oid,
int n,
int k,
GF2mField field,
PolynomialGF2mSmallM goppaPoly,
GF2Matrix sInv,
Permutation p1,
Permutation p2,
GF2Matrix h,
PolynomialGF2mSmallM[] qInv)
- Constructor.
- Parameters:
oid
- n
- the length of the codek
- the dimension of the codefield
- the field polynomial defining the finite field
GF(2m)goppaPoly
- the irreducible Goppa polynomialsInv
- the matrix S-1p1
- the permutation used to generate the systematic check
matrixp2
- the permutation used to compute the public generator
matrixh
- the canonical check matrixqInv
- the matrix used to compute square roots in
(GF(2m))t
McEliecePrivateKeySpec
public McEliecePrivateKeySpec(java.lang.String oid,
int n,
int k,
byte[] encField,
byte[] encGoppaPoly,
byte[] encSInv,
byte[] encP1,
byte[] encP2,
byte[] encH,
byte[][] encQInv)
- Constructor (used by the
McElieceKeyFactory
).
- Parameters:
oid
- n
- the length of the codek
- the dimension of the codeencField
- the encoded field polynomial defining the finite field
GF(2m)encGoppaPoly
- the encoded irreducible Goppa polynomialencSInv
- the encoded matrix S-1encP1
- the encoded permutation used to generate the systematic
check matrixencP2
- the encoded permutation used to compute the public
generator matrixencH
- the encoded canonical check matrixencQInv
- the encoded matrix used to compute square roots in
(GF(2m))t
getN
public int getN()
- Returns:
- the length of the code
getK
public int getK()
- Returns:
- the dimension of the code
getField
public GF2mField getField()
- Returns:
- the finite field GF(2m)
getGoppaPoly
public PolynomialGF2mSmallM getGoppaPoly()
- Returns:
- the irreducible Goppa polynomial
getSInv
public GF2Matrix getSInv()
- Returns:
- the k x k random binary non-singular matrix S^-1
getP1
public Permutation getP1()
- Returns:
- the permutation used to generate the systematic check matrix
getP2
public Permutation getP2()
- Returns:
- the permutation used to compute the public generator matrix
getH
public GF2Matrix getH()
- Returns:
- the canonical check matrix H
getQInv
public PolynomialGF2mSmallM[] getQInv()
- Returns:
- the matrix used to compute square roots in
(GF(2m))t
getOIDString
public java.lang.String getOIDString()