Class JasyptService

java.lang.Object
com.bytedesk.starter.service.JasyptService

@Service public class JasyptService extends Object
Jasypt 加密服务
  • Field Details

    • stringEncryptor

      private final org.jasypt.encryption.StringEncryptor stringEncryptor
    • jasyptProperties

      private final JasyptSupportProperties jasyptProperties
  • Constructor Details

    • JasyptService

      public JasyptService()
  • Method Details

    • encrypt

      public String encrypt(String plaintext)
      使用应用配置的密钥加密字符串
      Parameters:
      plaintext - 明文
      Returns:
      密文(BASE64编码)
    • decrypt

      public String decrypt(String ciphertext)
      使用应用配置的密钥解密字符串
      Parameters:
      ciphertext - 密文(BASE64编码)
      Returns:
      明文
    • encryptWithPassword

      public String encryptWithPassword(String plaintext, String password)
      使用指定的密码加密字符串(使用配置中的算法等参数)
      Parameters:
      plaintext - 明文
      password - 密码
      Returns:
      密文(BASE64编码)
    • decryptWithPassword

      public String decryptWithPassword(String ciphertext, String password)
      使用指定的密码解密字符串(使用配置中的算法等参数)
      Parameters:
      ciphertext - 密文(BASE64编码)
      password - 密码
      Returns:
      明文
    • encryptWithEncFormat

      public String encryptWithEncFormat(String plaintext)
      包装成 ENC() 格式用于 properties 文件
      Parameters:
      plaintext - 明文
      Returns:
      ENC(密文) 格式
    • encryptWithPasswordAndEncFormat

      public String encryptWithPasswordAndEncFormat(String plaintext, String password)
      使用指定密码包装成 ENC() 格式用于 properties 文件
      Parameters:
      plaintext - 明文
      password - 密码
      Returns:
      ENC(密文) 格式
    • createEncryptor

      private org.jasypt.encryption.StringEncryptor createEncryptor(String password)
      创建根据配置初始化的加密器
      Parameters:
      password - 密码
      Returns:
      初始化好的 PooledPBEStringEncryptor