org.jasypt.util.text

## Class StrongTextEncryptor

- Object
- - org.jasypt.util.text.StrongTextEncryptor

- All Implemented Interfaces:
    TextEncryptor

      public final class StrongTextEncryptor
      extends Object
      implements TextEncryptor

  Utility class for easily performing high-strength encryption of texts.

  This class internally holds a `StandardPBEStringEncryptor` configured this way:

  - Algorithm: `PBEWithMD5AndTripleDES`.
  - Key obtention iterations: `1000`.

  The required steps to use it are:

  1. Create an instance (using `new`).
  2. Set a password (using ``setPassword(String)`` or ``setPasswordCharArray(char[])``).
  3. Perform the desired ``encrypt(String)`` or ``decrypt(String)`` operations.

  To use this class, you may need to download and install the Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files.

  This class is thread-safe.

  Since:
    1.2 (class existed in org.jasypt.util package since 1.0)
  Author:
    Daniel Fernández

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `StrongTextEncryptor()` Creates a new instance of `StrongTextEncryptor`.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `String` | `decrypt(String encryptedMessage)` Decrypts a message.
    `String` | `encrypt(String message)` Encrypts a message.
    `void` | `setPassword(String password)` Sets a password.
    `void` | `setPasswordCharArray(char[] password)` Sets a password, as a char[].

    - ### Methods inherited from class Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### StrongTextEncryptor

          public StrongTextEncryptor()

      Creates a new instance of `StrongTextEncryptor`.

  - ### Method Detail

    - #### setPassword

          public void setPassword(String password)

      Sets a password.
      Parameters:
        `password` - the password to be set.

    - #### setPasswordCharArray

          public void setPasswordCharArray(char[] password)

      Sets a password, as a char[].
      Parameters:
        `password` - the password to be set.
      Since:
        1.8

    - #### encrypt

          public String encrypt(String message)

      Encrypts a message.
      Specified by:
        `encrypt` in interface `TextEncryptor`
      Parameters:
        `message` - the message to be encrypted.
      See Also:
        `StandardPBEStringEncryptor.encrypt(String)`

    - #### decrypt

          public String decrypt(String encryptedMessage)

      Decrypts a message.
      Specified by:
        `decrypt` in interface `TextEncryptor`
      Parameters:
        `encryptedMessage` - the message to be decrypted.
      See Also:
        `StandardPBEStringEncryptor.decrypt(String)`

Copyright © 2019 The JASYPT team. All rights reserved.