public class BCMcEliecePrivateKey extends java.lang.Object implements CipherParameters, java.security.PrivateKey
McElieceKeyPairGenerator
or McElieceKeyFactorySpi
.Constructor and Description |
---|
BCMcEliecePrivateKey(McEliecePrivateKeyParameters params) |
BCMcEliecePrivateKey(McEliecePrivateKeySpec keySpec)
Constructor (used by the
McElieceKeyFactorySpi ). |
BCMcEliecePrivateKey(java.lang.String oid,
int n,
int k,
GF2mField field,
PolynomialGF2mSmallM goppaPoly,
GF2Matrix sInv,
Permutation p1,
Permutation p2,
GF2Matrix h,
PolynomialGF2mSmallM[] qInv)
Constructor (used by the
McElieceKeyPairGenerator ). |
Modifier and Type | Method and Description |
---|---|
boolean |
equals(java.lang.Object other)
Compare this key with another object.
|
java.lang.String |
getAlgorithm()
Return the name of the algorithm.
|
protected ASN1Primitive |
getAlgParams() |
byte[] |
getEncoded()
Return the key data to encode in the SubjectPublicKeyInfo structure.
|
GF2mField |
getField() |
java.lang.String |
getFormat() |
PolynomialGF2mSmallM |
getGoppaPoly() |
GF2Matrix |
getH() |
int |
getK() |
McElieceParameters |
getMcElieceParameters() |
int |
getN() |
protected ASN1ObjectIdentifier |
getOID() |
java.lang.String |
getOIDString() |
Permutation |
getP1() |
Permutation |
getP2() |
PolynomialGF2mSmallM[] |
getQInv() |
GF2Matrix |
getSInv() |
int |
hashCode() |
java.lang.String |
toString() |
public BCMcEliecePrivateKey(java.lang.String oid, int n, int k, GF2mField field, PolynomialGF2mSmallM goppaPoly, GF2Matrix sInv, Permutation p1, Permutation p2, GF2Matrix h, PolynomialGF2mSmallM[] qInv)
McElieceKeyPairGenerator
).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))tpublic BCMcEliecePrivateKey(McEliecePrivateKeySpec keySpec)
McElieceKeyFactorySpi
).keySpec
- a McEliecePrivateKeySpec
public BCMcEliecePrivateKey(McEliecePrivateKeyParameters params)
public java.lang.String getAlgorithm()
getAlgorithm
in interface java.security.Key
public int getN()
public int getK()
public GF2mField getField()
public PolynomialGF2mSmallM getGoppaPoly()
public GF2Matrix getSInv()
public Permutation getP1()
public Permutation getP2()
public GF2Matrix getH()
public PolynomialGF2mSmallM[] getQInv()
public java.lang.String getOIDString()
public java.lang.String toString()
toString
in class java.lang.Object
public boolean equals(java.lang.Object other)
equals
in class java.lang.Object
other
- the other objectpublic int hashCode()
hashCode
in class java.lang.Object
protected ASN1ObjectIdentifier getOID()
protected ASN1Primitive getAlgParams()
public byte[] getEncoded()
The ASN.1 definition of the key structure is
McEliecePrivateKey ::= SEQUENCE { n INTEGER -- length of the code k INTEGER -- dimension of the code fieldPoly OCTET STRING -- field polynomial defining GF(2ˆm) goppaPoly OCTET STRING -- irreducible Goppa polynomial sInv OCTET STRING -- matrix Sˆ-1 p1 OCTET STRING -- permutation P1 p2 OCTET STRING -- permutation P2 h OCTET STRING -- canonical check matrix qInv SEQUENCE OF OCTET STRING -- matrix used to compute square roots }
getEncoded
in interface java.security.Key
public java.lang.String getFormat()
getFormat
in interface java.security.Key
public McElieceParameters getMcElieceParameters()