Class EdDSA


  • public class EdDSA
    extends java.lang.Object
    Ed25519 Key generation, signing and validation
    • Constructor Summary

      Constructors 
      Constructor Description
      EdDSA()  
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static byte[] detachMessage​(byte[] messageWithSignature)
      Remove a signature from a message
      java.security.KeyPair generateKeyPair()
      Generate a keypair
      byte[] signMessage​(byte[] message, java.security.PrivateKey privateKey)
      Generate a signature for a given message, and return the signature attached to the message
      byte[] signMessageDetached​(byte[] message, java.security.PrivateKey privateKey)
      Generate a signature for the given message
      java.lang.Boolean verifyMessage​(byte[] messageWithSignature, java.security.PublicKey publicKey)
      Verify a given signed message
      java.lang.Boolean verifyMessageDetached​(byte[] message, java.security.PublicKey publicKey, byte[] signature)
      Verify A given message with a given signature
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • EdDSA

        public EdDSA()
    • Method Detail

      • generateKeyPair

        public java.security.KeyPair generateKeyPair()
                                              throws java.lang.Exception
        Generate a keypair
        Returns:
        A keypair
        Throws:
        java.lang.Exception
      • signMessage

        public byte[] signMessage​(byte[] message,
                                  java.security.PrivateKey privateKey)
                           throws java.lang.Exception
        Generate a signature for a given message, and return the signature attached to the message
        Parameters:
        message -
        privateKey -
        Returns:
        signed message
        Throws:
        java.lang.Exception
      • verifyMessage

        public java.lang.Boolean verifyMessage​(byte[] messageWithSignature,
                                               java.security.PublicKey publicKey)
                                        throws java.lang.Exception
        Verify a given signed message
        Parameters:
        messageWithSignature -
        publicKey -
        Returns:
        whether the message is valid or not
        Throws:
        java.lang.Exception
      • detachMessage

        public static byte[] detachMessage​(byte[] messageWithSignature)
        Remove a signature from a message
        Parameters:
        messageWithSignature -
        Returns:
        the message without a signature
      • signMessageDetached

        public byte[] signMessageDetached​(byte[] message,
                                          java.security.PrivateKey privateKey)
                                   throws java.lang.Exception
        Generate a signature for the given message
        Parameters:
        message -
        privateKey -
        Returns:
        a signature
        Throws:
        java.lang.Exception
      • verifyMessageDetached

        public java.lang.Boolean verifyMessageDetached​(byte[] message,
                                                       java.security.PublicKey publicKey,
                                                       byte[] signature)
                                                throws java.lang.Exception
        Verify A given message with a given signature
        Parameters:
        message -
        publicKey -
        signature -
        Returns:
        whether the signature is valid or not
        Throws:
        java.lang.Exception