Class MLDSAProxyPrivateKey

  • All Implemented Interfaces:
    java.io.Serializable, java.security.Key, java.security.PrivateKey, javax.security.auth.Destroyable, MLDSAKey, MLDSAPrivateKey

    public class MLDSAProxyPrivateKey
    extends java.lang.Object
    implements MLDSAPrivateKey
    An ML-DSA private key wrapper which acts as a proxy to allow an ML-DSA public key to be passed in for external-mu calculation.
    See Also:
    Serialized Form
    • Field Summary

      • Fields inherited from interface java.security.Key

        serialVersionUID
      • Fields inherited from interface java.security.PrivateKey

        serialVersionUID
    • Constructor Summary

      Constructors 
      Constructor Description
      MLDSAProxyPrivateKey​(java.security.PublicKey publicKey)  
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      java.lang.String getAlgorithm()  
      byte[] getEncoded()  
      java.lang.String getFormat()  
      MLDSAParameterSpec getParameterSpec()
      Return the parameters for this key.
      byte[] getPrivateData()
      Return the long form private data for the ML-DSA private key.
      MLDSAPrivateKey getPrivateKey​(boolean preferSeedOnly)
      Return a privateKey which will encode as seed-only or as an expanded-key.
      MLDSAPublicKey getPublicKey()
      Return the public key corresponding to this private key.
      byte[] getSeed()
      Return the seed the private key was generated from (if available).
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
      • Methods inherited from interface javax.security.auth.Destroyable

        destroy, isDestroyed
    • Constructor Detail

      • MLDSAProxyPrivateKey

        public MLDSAProxyPrivateKey​(java.security.PublicKey publicKey)
    • Method Detail

      • getAlgorithm

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

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

        public byte[] getEncoded()
        Specified by:
        getEncoded in interface java.security.Key
      • getPrivateData

        public byte[] getPrivateData()
        Description copied from interface: MLDSAPrivateKey
        Return the long form private data for the ML-DSA private key.
        Specified by:
        getPrivateData in interface MLDSAPrivateKey
        Returns:
        long form private data for private key.
      • getSeed

        public byte[] getSeed()
        Description copied from interface: MLDSAPrivateKey
        Return the seed the private key was generated from (if available).
        Specified by:
        getSeed in interface MLDSAPrivateKey
        Returns:
        the seed for the private key, null if not available.
      • getPrivateKey

        public MLDSAPrivateKey getPrivateKey​(boolean preferSeedOnly)
        Description copied from interface: MLDSAPrivateKey
        Return a privateKey which will encode as seed-only or as an expanded-key.
        Specified by:
        getPrivateKey in interface MLDSAPrivateKey
        Parameters:
        preferSeedOnly - if true, return a privateKey which will encode to seed-only if possible.
        Returns:
        a new MLDSAPrivateKey which encodes to either seed-only or expanded-key.