Class PasswordObscurification

java.lang.Object
org.pentaho.reporting.libraries.base.util.PasswordObscurification

public final class PasswordObscurification extends Object
This class handles basic password obscurification. Note that it's not really encryption, it's more obfuscation. Passwords are difficult to read, not impossible.

This implementation guarantees consistent results for all valid character ranges.

  • Field Details

    • PASSWORD_ENCRYPTED_PREFIX

      public static final String PASSWORD_ENCRYPTED_PREFIX
      The word that is put before a password to indicate an encrypted form. If this word is not present, the password is considered to be NOT encrypted
      See Also:
  • Method Details

    • byteToHexString

      public static String byteToHexString(int b)
    • charToHex

      public static int charToHex(int c) throws UnsupportedEncodingException
      Throws:
      UnsupportedEncodingException
    • encryptPassword

      public static String encryptPassword(String password)
    • decryptPassword

      public static String decryptPassword(String encrypted)
    • encryptPasswordWithOptionalEncoding

      public static String encryptPasswordWithOptionalEncoding(String password)
    • decryptPasswordWithOptionalEncoding

      public static String decryptPasswordWithOptionalEncoding(String password)
      Decrypts a password if it contains the prefix "Encrypted "
      Parameters:
      password - The encrypted password
      Returns:
      The decrypted password or the original value if the password doesn't start with "Encrypted "