Class SecurityTools.RSAHashes

  • Enclosing class:
    SecurityTools

    public static final class SecurityTools.RSAHashes
    extends java.lang.Object
    Contains methods dealing with RSA encryption and decryption.
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static byte[] decrypt​(java.security.PrivateKey key, byte[] cipherText)
      Decrypts specified text with private key.
      static byte[] decryptFromString​(java.security.PrivateKey key, java.lang.String cipherText)
      Decrypts specified text with private key.
      static byte[] encrypt​(java.security.PublicKey key, java.lang.String plainText)
      Encrypts specified text with public key.
      static java.lang.String encryptToString​(java.security.PublicKey key, java.lang.String plainText)
      Encrypts specified text with public key.
      static java.security.KeyPair generateKeyPair()
      Generates a key pair.
      static java.security.KeyPair generateKeyPair​(boolean saveToFiles, java.lang.String fileName)
      Generates a key pair and saves them to files matching the specified filename.
      static java.security.PrivateKey readPrivateKeyFromBytes​(byte[] bytes)
      Converts a byte array to a PrivateKey object.
      static java.security.PublicKey readPublicKeyFromBytes​(byte[] bytes)
      Converts a byte array to a PublicKey object.
      • Methods inherited from class java.lang.Object

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

      • generateKeyPair

        public static java.security.KeyPair generateKeyPair()
                                                     throws java.io.IOException,
                                                            java.security.GeneralSecurityException
        Generates a key pair.
        Returns:
        Key pair as a KeyPair object
        Throws:
        java.io.FileNotFoundException - if the file is a directory rather than a regular file, or for some other reason cannot be opened for writing
        java.io.IOException - if an I/O error occurs
        java.security.GeneralSecurityException - if error occurs
      • generateKeyPair

        public static java.security.KeyPair generateKeyPair​(boolean saveToFiles,
                                                            java.lang.String fileName)
                                                     throws java.io.IOException,
                                                            java.security.GeneralSecurityException
        Generates a key pair and saves them to files matching the specified filename.
        Parameters:
        saveToFiles - If true KeyPair will be saved to two separate files
        fileName - File name to use to save files
        Returns:
        Key pair as a KeyPair object
        Throws:
        java.io.FileNotFoundException - if the file is a directory rather than a regular file, or for some other reason cannot be opened for writing
        java.io.IOException - if an I/O error occurs
        java.security.GeneralSecurityException - if error occurs
      • readPublicKeyFromBytes

        public static java.security.PublicKey readPublicKeyFromBytes​(byte[] bytes)
                                                              throws java.security.GeneralSecurityException
        Converts a byte array to a PublicKey object.
        Parameters:
        bytes - To read from
        Returns:
        Converted public key as PublicKey object
        Throws:
        java.security.GeneralSecurityException - if error occurs
      • readPrivateKeyFromBytes

        public static java.security.PrivateKey readPrivateKeyFromBytes​(byte[] bytes)
                                                                throws java.security.GeneralSecurityException
        Converts a byte array to a PrivateKey object.
        Parameters:
        bytes - To read from
        Returns:
        Converted public key as PrivateKey object
        Throws:
        java.security.GeneralSecurityException - if error occurs
      • encrypt

        public static byte[] encrypt​(java.security.PublicKey key,
                                     java.lang.String plainText)
                              throws java.security.GeneralSecurityException
        Encrypts specified text with public key.
        Parameters:
        key - Public key to encrypt with
        plainText - String to encrypt
        Returns:
        Encrypted text as byte array
        Throws:
        java.security.GeneralSecurityException - if error occurs
      • encryptToString

        public static java.lang.String encryptToString​(java.security.PublicKey key,
                                                       java.lang.String plainText)
                                                throws java.security.GeneralSecurityException
        Encrypts specified text with public key.
        Parameters:
        key - Public key to encrypt with
        plainText - String to encrypt
        Returns:
        Encrypted text as string
        Throws:
        java.security.GeneralSecurityException - if error occurs
      • decrypt

        public static byte[] decrypt​(java.security.PrivateKey key,
                                     byte[] cipherText)
                              throws java.security.GeneralSecurityException
        Decrypts specified text with private key.
        Parameters:
        key - Private key to decrypt with
        cipherText - String to decrypt
        Returns:
        Decrypted text as byte array
        Throws:
        java.security.GeneralSecurityException - if error occurs
      • decryptFromString

        public static byte[] decryptFromString​(java.security.PrivateKey key,
                                               java.lang.String cipherText)
                                        throws java.security.GeneralSecurityException
        Decrypts specified text with private key.
        Parameters:
        key - Private key to decrypt with
        cipherText - String to decrypt
        Returns:
        Decrypted text as string
        Throws:
        java.security.GeneralSecurityException - if error occurs