Class BCMcEliecePublicKey

  • All Implemented Interfaces:
    java.io.Serializable, java.security.Key, java.security.PublicKey

    public class BCMcEliecePublicKey
    extends java.lang.Object
    implements java.security.PublicKey
    This class implements a McEliece public key and is usually instantiated by the McElieceKeyPairGenerator or McElieceKeyFactorySpi.
    See Also:
    Serialized Form
    • Method Detail

      • getAlgorithm

        public java.lang.String getAlgorithm()
        Return the name of the algorithm.
        Specified by:
        getAlgorithm in interface java.security.Key
        Returns:
        "McEliece"
      • getN

        public int getN()
        Returns:
        the length of the code
      • getK

        public int getK()
        Returns:
        the dimension of the code
      • getT

        public int getT()
        Returns:
        the error correction capability of the code
      • getG

        public GF2Matrix getG()
        Returns:
        the generator matrix
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
        Returns:
        a human readable form of the key
      • equals

        public boolean equals​(java.lang.Object other)
        Compare this key with another object.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        other - the other object
        Returns:
        the result of the comparison
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
        Returns:
        the hash code of this key
      • getEncoded

        public byte[] getEncoded()
        Return the keyData to encode in the SubjectPublicKeyInfo structure.

        The ASN.1 definition of the key structure is

               McEliecePublicKey ::= SEQUENCE {
                 n           Integer      -- length of the code
                 t           Integer      -- error correcting capability
                 matrixG     OctetString  -- generator matrix as octet string
               }
         
        Specified by:
        getEncoded in interface java.security.Key
        Returns:
        the keyData to encode in the SubjectPublicKeyInfo structure
      • getFormat

        public java.lang.String getFormat()
        Specified by:
        getFormat in interface java.security.Key