Class BCDSTU4145PrivateKey

    • Constructor Detail

      • BCDSTU4145PrivateKey

        protected BCDSTU4145PrivateKey()
      • BCDSTU4145PrivateKey

        public BCDSTU4145PrivateKey​(java.security.interfaces.ECPrivateKey key)
      • BCDSTU4145PrivateKey

        public BCDSTU4145PrivateKey​(java.security.spec.ECPrivateKeySpec spec)
      • BCDSTU4145PrivateKey

        public BCDSTU4145PrivateKey​(java.lang.String algorithm,
                                    ECPrivateKeyParameters params)
    • Method Detail

      • getAlgorithm

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

        public java.lang.String getFormat()
        return the encoding format we produce in getEncoded().
        Specified by:
        getFormat in interface java.security.Key
        Returns:
        the string "PKCS#8"
      • getEncoded

        public byte[] getEncoded()
        Return a PKCS8 representation of the key. The sequence returned represents a full PrivateKeyInfo object.
        Specified by:
        getEncoded in interface java.security.Key
        Returns:
        a PKCS8 representation of the key.
      • getParams

        public java.security.spec.ECParameterSpec getParams()
        Specified by:
        getParams in interface java.security.interfaces.ECKey
      • getParameters

        public ECParameterSpec getParameters()
        Description copied from interface: ECKey
        return a parameter specification representing the EC domain parameters for the key.
        Specified by:
        getParameters in interface ECKey
      • getS

        public java.math.BigInteger getS()
        Specified by:
        getS in interface java.security.interfaces.ECPrivateKey
      • getD

        public java.math.BigInteger getD()
        Description copied from interface: ECPrivateKey
        return the private value D.
        Specified by:
        getD in interface ECPrivateKey
      • setPointFormat

        public void setPointFormat​(java.lang.String style)
        Description copied from interface: ECPointEncoder
        Set the formatting for encoding of points. If the String "UNCOMPRESSED" is passed in point compression will not be used. If the String "COMPRESSED" is passed point compression will be used. The default is "UNCOMPRESSED".
        Specified by:
        setPointFormat in interface ECPointEncoder
        Parameters:
        style - the style to use.
      • equals

        public boolean equals​(java.lang.Object o)
        Overrides:
        equals in class java.lang.Object
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class java.lang.Object
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • destroy

        public void destroy()
        Destroy this key, clearing the key material it holds.

        The private value is held as a BigInteger, which is immutable and so cannot be zeroized in place - destruction drops the internal reference so the value becomes unreachable (cleared on garbage collection). The (public) domain parameters and public key details are retained. After destruction isDestroyed() returns true, the secret-bearing accessors (getEncoded(), getS() and getD()) throw IllegalStateException, the key can no longer be serialized, and it is equal only to itself; hashCode() retains its pre-destruction value.

        Specified by:
        destroy in interface javax.security.auth.Destroyable
      • isDestroyed

        public boolean isDestroyed()
        Specified by:
        isDestroyed in interface javax.security.auth.Destroyable