Class McEliecePrivateKeyParameters

    • Constructor Detail

      • McEliecePrivateKeyParameters

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

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

      • 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