Top Fields Constructors Methods
org.bouncycastle.pqc.legacy.crypto.mceliece

public Class McEliecePrivateKeyParameters

extends McElieceKeyParameters
Class Inheritance
Imports
org.bouncycastle.pqc.legacy.math.linearalgebra.GF2Matrix, .GF2mField, .GoppaCode, .Permutation, .PolynomialGF2mSmallM, .PolynomialRingGF2m

Field Summary

Modifier and TypeField and Description
private GF2mField
private PolynomialGF2mSmallM
private GF2Matrix
h

private int
k

private int
n

private String
private Permutation
private Permutation
private PolynomialGF2mSmallM[]
private GF2Matrix

Constructor Summary

AccessConstructor and Description
public
McEliecePrivateKeyParameters(int
the length of the code
n
,
int
the dimension of the code
k
,
GF2mField
the field polynomial defining the finite field GF(2m)
field
,
PolynomialGF2mSmallM
the irreducible Goppa polynomial
gp
,
Permutation
the permutation used to generate the systematic check matrix
p1
,
Permutation
the permutation used to compute the public generator matrix
p2
,
GF2Matrix
the matrix S-1
sInv
)

Constructor.

public
McEliecePrivateKeyParameters(int
the length of the code
n
,
int
the dimension of the code
k
,
byte[]
the encoded field polynomial defining the finite field GF(2m)
encField
,
byte[]
the encoded irreducible Goppa polynomial
encGoppaPoly
,
byte[]
the encoded matrix S-1
encSInv
,
byte[]
the encoded permutation used to generate the systematic check matrix
encP1
,
byte[]
the encoded permutation used to compute the public generator matrix
encP2
,
byte[]
the encoded canonical check matrix
encH
,
byte[][]
the encoded matrix used to compute square roots in (GF(2m))t
encQInv
)

Constructor.

Method Summary

Modifier and TypeMethod and Description
public GF2mField

Returns:

the finite field GF(2m)
getField
()

public PolynomialGF2mSmallM

Returns:

the irreducible Goppa polynomial
getGoppaPoly
()

public GF2Matrix

Returns:

the canonical check matrix H
getH
()

public int

Returns:

the dimension of the code
getK
()

public int

Returns:

the length of the code
getN
()

public Permutation

Returns:

the permutation used to generate the systematic check matrix
getP1
()

public Permutation

Returns:

the permutation used to compute the public generator matrix
getP2
()

public PolynomialGF2mSmallM[]

Returns:

the matrix used to compute square roots in (GF(2m))t
getQInv
()

public GF2Matrix

Returns:

the k x k random binary non-singular matrix S^-1
getSInv
()

Inherited from org.bouncycastle.pqc.legacy.crypto.mceliece.McElieceKeyParameters:
getParameters

Field Detail

fieldback to summary
private GF2mField field
goppaPolyback to summary
private PolynomialGF2mSmallM goppaPoly
hback to summary
private GF2Matrix h
kback to summary
private int k
nback to summary
private int n
oidback to summary
private String oid
p1back to summary
private Permutation p1
p2back to summary
private Permutation p2
qInvback to summary
private PolynomialGF2mSmallM[] qInv
sInvback to summary
private GF2Matrix sInv

Constructor Detail

McEliecePrivateKeyParametersback to summary
public McEliecePrivateKeyParameters(int n, int k, GF2mField field, PolynomialGF2mSmallM gp, Permutation p1, Permutation p2, GF2Matrix sInv)

Constructor.

Parameters
n:int

the length of the code

k:int

the dimension of the code

field:GF2mField

the field polynomial defining the finite field GF(2m)

gp:PolynomialGF2mSmallM

the irreducible Goppa polynomial

p1:Permutation

the permutation used to generate the systematic check matrix

p2:Permutation

the permutation used to compute the public generator matrix

sInv:GF2Matrix

the matrix S-1

McEliecePrivateKeyParametersback to summary
public McEliecePrivateKeyParameters(int n, int k, byte[] encField, byte[] encGoppaPoly, byte[] encSInv, byte[] encP1, byte[] encP2, byte[] encH, byte[][] encQInv)

Constructor.

Parameters
n:int

the length of the code

k:int

the dimension of the code

encField:byte[]

the encoded field polynomial defining the finite field GF(2m)

encGoppaPoly:byte[]

the encoded irreducible Goppa polynomial

encSInv:byte[]

the encoded matrix S-1

encP1:byte[]

the encoded permutation used to generate the systematic check matrix

encP2:byte[]

the encoded permutation used to compute the public generator matrix

encH:byte[]

the encoded canonical check matrix

encQInv:byte[][]

the encoded matrix used to compute square roots in (GF(2m))t

Method Detail

getFieldback to summary
public GF2mField getField()
Returns:GF2mField

the finite field GF(2m)

getGoppaPolyback to summary
public PolynomialGF2mSmallM getGoppaPoly()
Returns:PolynomialGF2mSmallM

the irreducible Goppa polynomial

getHback to summary
public GF2Matrix getH()
Returns:GF2Matrix

the canonical check matrix H

getKback to summary
public int getK()
Returns:int

the dimension of the code

getNback to summary
public int getN()
Returns:int

the length of the code

getP1back to summary
public Permutation getP1()
Returns:Permutation

the permutation used to generate the systematic check matrix

getP2back to summary
public Permutation getP2()
Returns:Permutation

the permutation used to compute the public generator matrix

getQInvback to summary
public PolynomialGF2mSmallM[] getQInv()
Returns:PolynomialGF2mSmallM[]

the matrix used to compute square roots in (GF(2m))t

getSInvback to summary
public GF2Matrix getSInv()
Returns:GF2Matrix

the k x k random binary non-singular matrix S^-1