类 EncryptUtils

java.lang.Object
dev.utils.common.encrypt.EncryptUtils

public final class EncryptUtils extends Object
detail: 加解密通用工具类
作者:
Blankj, Ttt
  • 方法详细资料

    • encryptMD2

      public static byte[] encryptMD2(byte[] data)
      MD2 加密
      参数:
      data - 待加密数据
      返回:
      MD2 加密后的数据
    • encryptMD2ToHexString

      public static String encryptMD2ToHexString(String data)
      MD2 加密
      参数:
      data - 待加密数据
      返回:
      MD2 加密后的十六进制字符串
    • encryptMD2ToHexString

      public static String encryptMD2ToHexString(byte[] data)
      MD2 加密
      参数:
      data - 待加密数据
      返回:
      MD2 加密后的十六进制字符串
    • encryptMD5

      public static byte[] encryptMD5(byte[] data)
      MD5 加密
      参数:
      data - 待加密数据
      返回:
      MD5 加密后的数据
    • encryptMD5ToHexString

      public static String encryptMD5ToHexString(String data)
      MD5 加密
      参数:
      data - 待加密数据
      返回:
      MD5 加密后的十六进制字符串
    • encryptMD5ToHexString

      public static String encryptMD5ToHexString(String data, String salt)
      MD5 加密
      参数:
      data - 待加密数据
      salt - salt
      返回:
      MD5 加密后的十六进制字符串
    • encryptMD5ToHexString

      public static String encryptMD5ToHexString(byte[] data)
      MD5 加密
      参数:
      data - 待加密数据
      返回:
      MD5 加密后的十六进制字符串
    • encryptMD5ToHexString

      public static String encryptMD5ToHexString(byte[] data, byte[] salt)
      MD5 加密
      参数:
      data - 待加密数据
      salt - salt
      返回:
      MD5 加密后的十六进制字符串
    • encryptMD5File

      public static byte[] encryptMD5File(String filePath)
      获取文件 MD5 值
      参数:
      filePath - 文件路径
      返回:
      文件 MD5 值
    • encryptMD5FileToHexString

      public static String encryptMD5FileToHexString(String filePath)
      获取文件 MD5 值
      参数:
      filePath - 文件路径
      返回:
      文件 MD5 值转十六进制字符串
    • encryptMD5FileToHexString

      public static String encryptMD5FileToHexString(File file)
      获取文件 MD5 值
      参数:
      file - 文件
      返回:
      文件 MD5 值转十六进制字符串
    • encryptMD5File

      public static byte[] encryptMD5File(File file)
      获取文件 MD5 值
      参数:
      file - 文件
      返回:
      文件 MD5 值 byte[]
    • encryptSHA1

      public static byte[] encryptSHA1(byte[] data)
      SHA1 加密
      参数:
      data - 待加密数据
      返回:
      SHA1 加密后的数据
    • encryptSHA1ToHexString

      public static String encryptSHA1ToHexString(String data)
      SHA1 加密
      参数:
      data - 待加密数据
      返回:
      SHA1 加密后的数据转十六进制字符串
    • encryptSHA1ToHexString

      public static String encryptSHA1ToHexString(byte[] data)
      SHA1 加密
      参数:
      data - 待加密数据
      返回:
      SHA1 加密后的数据转十六进制字符串
    • encryptSHA224

      public static byte[] encryptSHA224(byte[] data)
      SHA224 加密
      参数:
      data - 待加密数据
      返回:
      SHA224 加密后的数据
    • encryptSHA224ToHexString

      public static String encryptSHA224ToHexString(String data)
      SHA224 加密
      参数:
      data - 待加密数据
      返回:
      SHA224 加密后的数据转十六进制字符串
    • encryptSHA224ToHexString

      public static String encryptSHA224ToHexString(byte[] data)
      SHA224 加密
      参数:
      data - 待加密数据
      返回:
      SHA224 加密后的数据转十六进制字符串
    • encryptSHA256

      public static byte[] encryptSHA256(byte[] data)
      SHA256 加密
      参数:
      data - 待加密数据
      返回:
      SHA256 加密后的数据
    • encryptSHA256ToHexString

      public static String encryptSHA256ToHexString(String data)
      SHA256 加密
      参数:
      data - 待加密数据
      返回:
      SHA256 加密后的数据转十六进制字符串
    • encryptSHA256ToHexString

      public static String encryptSHA256ToHexString(byte[] data)
      SHA256 加密
      参数:
      data - 待加密数据
      返回:
      SHA256 加密后的数据转十六进制
    • encryptSHA384

      public static byte[] encryptSHA384(byte[] data)
      SHA384 加密
      参数:
      data - 待加密数据
      返回:
      SHA384 加密后的数据
    • encryptSHA384ToHexString

      public static String encryptSHA384ToHexString(String data)
      SHA384 加密
      参数:
      data - 待加密数据
      返回:
      SHA384 加密后的数据转十六进制
    • encryptSHA384ToHexString

      public static String encryptSHA384ToHexString(byte[] data)
      SHA384 加密
      参数:
      data - 待加密数据
      返回:
      SHA384 加密后的数据转十六进制
    • encryptSHA512

      public static byte[] encryptSHA512(byte[] data)
      SHA512 加密
      参数:
      data - 待加密数据
      返回:
      SHA512 加密后的数据
    • encryptSHA512ToHexString

      public static String encryptSHA512ToHexString(String data)
      SHA512 加密
      参数:
      data - 待加密数据
      返回:
      SHA512 加密后的数据转十六进制
    • encryptSHA512ToHexString

      public static String encryptSHA512ToHexString(byte[] data)
      SHA512 加密
      参数:
      data - 待加密数据
      返回:
      SHA512 加密后的数据转十六进制
    • hashTemplate

      public static byte[] hashTemplate(byte[] data, String algorithm)
      Hash 加密模版方法
      参数:
      data - 待加密数据
      algorithm - 算法
      返回:
      指定加密算法加密后的数据
    • encryptHmacMD5

      public static byte[] encryptHmacMD5(byte[] data, byte[] key)
      HmacMD5 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacMD5 加密后的数据
    • encryptHmacMD5ToHexString

      public static String encryptHmacMD5ToHexString(String data, String key)
      HmacMD5 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacMD5 加密后的数据转十六进制
    • encryptHmacMD5ToHexString

      public static String encryptHmacMD5ToHexString(byte[] data, byte[] key)
      HmacMD5 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacMD5 加密后的数据转十六进制
    • encryptHmacSHA1

      public static byte[] encryptHmacSHA1(byte[] data, byte[] key)
      HmacSHA1 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA1 加密后的数据
    • encryptHmacSHA1ToHexString

      public static String encryptHmacSHA1ToHexString(String data, String key)
      HmacSHA1 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA1 加密后的数据转十六进制
    • encryptHmacSHA1ToHexString

      public static String encryptHmacSHA1ToHexString(byte[] data, byte[] key)
      HmacSHA1 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA1 加密后的数据转十六进制
    • encryptHmacSHA224

      public static byte[] encryptHmacSHA224(byte[] data, byte[] key)
      HmacSHA224 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA224 加密后的数据
    • encryptHmacSHA224ToHexString

      public static String encryptHmacSHA224ToHexString(String data, String key)
      HmacSHA224 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA224 加密后的数据转十六进制
    • encryptHmacSHA224ToHexString

      public static String encryptHmacSHA224ToHexString(byte[] data, byte[] key)
      HmacSHA224 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA224 加密后的数据转十六进制
    • encryptHmacSHA256

      public static byte[] encryptHmacSHA256(byte[] data, byte[] key)
      HmacSHA256 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA256 加密后的数据
    • encryptHmacSHA256ToHexString

      public static String encryptHmacSHA256ToHexString(String data, String key)
      HmacSHA256 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA256 加密后的数据转十六进制
    • encryptHmacSHA256ToHexString

      public static String encryptHmacSHA256ToHexString(byte[] data, byte[] key)
      HmacSHA256 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA256 加密后的数据转十六进制
    • encryptHmacSHA384

      public static byte[] encryptHmacSHA384(byte[] data, byte[] key)
      HmacSHA384 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA384 加密后的数据
    • encryptHmacSHA384ToHexString

      public static String encryptHmacSHA384ToHexString(String data, String key)
      HmacSHA384 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA384 加密后的数据转十六进制
    • encryptHmacSHA384ToHexString

      public static String encryptHmacSHA384ToHexString(byte[] data, byte[] key)
      HmacSHA384 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA384 加密后的数据转十六进制
    • encryptHmacSHA512

      public static byte[] encryptHmacSHA512(byte[] data, byte[] key)
      HmacSHA512 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA512 加密后的数据
    • encryptHmacSHA512ToHexString

      public static String encryptHmacSHA512ToHexString(String data, String key)
      HmacSHA512 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA512 加密后的数据转十六进制
    • encryptHmacSHA512ToHexString

      public static String encryptHmacSHA512ToHexString(byte[] data, byte[] key)
      HmacSHA512 加密
      参数:
      data - 待加密数据
      key - 密钥
      返回:
      HmacSHA512 加密后的数据转十六进制
    • hmacTemplate

      public static byte[] hmacTemplate(byte[] data, byte[] key, String algorithm)
      Hmac 加密模版方法
      参数:
      data - 待加密数据
      key - 密钥
      algorithm - 算法
      返回:
      指定加密算法和密钥, 加密后的数据
    • encryptDES

      public static byte[] encryptDES(byte[] data, byte[] key, String transformation, byte[] iv)
      DES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      DES 加密后的数据
    • encryptDESToBase64

      public static byte[] encryptDESToBase64(byte[] data, byte[] key, String transformation, byte[] iv)
      DES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      DES 加密后的数据转 Base64
    • encryptDESToHexString

      public static String encryptDESToHexString(byte[] data, byte[] key, String transformation, byte[] iv)
      DES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      DES 加密后的数据转十六进制
    • decryptDES

      public static byte[] decryptDES(byte[] data, byte[] key, String transformation, byte[] iv)
      DES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      DES 解密后的数据
    • decryptDESToBase64

      public static byte[] decryptDESToBase64(byte[] data, byte[] key, String transformation, byte[] iv)
      DES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      Base64 解码后, 在进行 DES 解密后的数据
    • decryptDESToHexString

      public static byte[] decryptDESToHexString(String data, byte[] key, String transformation, byte[] iv)
      DES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      十六进制转换后, 在进行 DES 解密后的数据
    • encrypt3DES

      public static byte[] encrypt3DES(byte[] data, byte[] key, String transformation, byte[] iv)
      3DES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      3DES 加密后的数据
    • encrypt3DESToBase64

      public static byte[] encrypt3DESToBase64(byte[] data, byte[] key, String transformation, byte[] iv)
      3DES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      3DES 加密后的数据转 Base64
    • encrypt3DESToHexString

      public static String encrypt3DESToHexString(byte[] data, byte[] key, String transformation, byte[] iv)
      3DES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      3DES 加密后的数据转十六进制
    • decrypt3DES

      public static byte[] decrypt3DES(byte[] data, byte[] key, String transformation, byte[] iv)
      3DES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      3DES 解密后的数据
    • decrypt3DESToBase64

      public static byte[] decrypt3DESToBase64(byte[] data, byte[] key, String transformation, byte[] iv)
      3DES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      Base64 解码后, 在进行 3DES 解密后的数据
    • decrypt3DESToHexString

      public static byte[] decrypt3DESToHexString(String data, byte[] key, String transformation, byte[] iv)
      3DES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      十六进制转换后, 在进行 3DES 解密后的数据
    • encryptAES

      public static byte[] encryptAES(byte[] data, byte[] key, String transformation, byte[] iv)
      AES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      AES 加密后的数据
    • encryptAESToBase64

      public static byte[] encryptAESToBase64(byte[] data, byte[] key, String transformation, byte[] iv)
      AES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      AES 加密后的数据转 Base64
    • encryptAESToHexString

      public static String encryptAESToHexString(byte[] data, byte[] key, String transformation, byte[] iv)
      AES 加密
      参数:
      data - 待加密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      AES 加密后的数据转十六进制
    • decryptAES

      public static byte[] decryptAES(byte[] data, byte[] key, String transformation, byte[] iv)
      AES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      AES 解密后的数据
    • decryptAESToBase64

      public static byte[] decryptAESToBase64(byte[] data, byte[] key, String transformation, byte[] iv)
      AES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      Base64 解码后, 在进行 AES 解密后的数据
    • decryptAESToHexString

      public static byte[] decryptAESToHexString(String data, byte[] key, String transformation, byte[] iv)
      AES 解密
      参数:
      data - 待解密数据
      key - 密钥
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      返回:
      十六进制转换后, 在进行 AES 解密后的数据
    • symmetricTemplate

      public static byte[] symmetricTemplate(byte[] data, byte[] key, String algorithm, String transformation, byte[] iv, boolean isEncrypt)
      对称加密模版方法
      参数:
      data - 待加解密数据
      key - 密钥
      algorithm - 算法
      transformation - Cipher.getInstance(java.lang.String) transformation
      iv - 算法参数 AlgorithmParameterSpec
      isEncrypt - 是否加密处理
      返回:
      指定加密算法, 加解密后的数据
    • encryptRSA

      public static byte[] encryptRSA(byte[] data, byte[] key, boolean isPublicKey, String transformation)
      RSA 加密
      参数:
      data - 待加密数据
      key - 密钥
      isPublicKey - true X509EncodedKeySpec, false PKCS8EncodedKeySpec
      transformation - Cipher.getInstance(java.lang.String) transformation
      返回:
      RSA 加密后的数据
    • encryptRSAToBase64

      public static byte[] encryptRSAToBase64(byte[] data, byte[] key, boolean isPublicKey, String transformation)
      RSA 加密
      参数:
      data - 待加密数据
      key - 密钥
      isPublicKey - true X509EncodedKeySpec, false PKCS8EncodedKeySpec
      transformation - Cipher.getInstance(java.lang.String) transformation
      返回:
      RSA 加密后的数据转 Base64
    • encryptRSAToHexString

      public static String encryptRSAToHexString(byte[] data, byte[] key, boolean isPublicKey, String transformation)
      RSA 加密
      参数:
      data - 待加密数据
      key - 密钥
      isPublicKey - true X509EncodedKeySpec, false PKCS8EncodedKeySpec
      transformation - Cipher.getInstance(java.lang.String) transformation
      返回:
      RSA 加密后的数据转十六进制
    • decryptRSA

      public static byte[] decryptRSA(byte[] data, byte[] key, boolean isPublicKey, String transformation)
      RSA 解密
      参数:
      data - 待解密数据
      key - 密钥
      isPublicKey - true X509EncodedKeySpec, false PKCS8EncodedKeySpec
      transformation - Cipher.getInstance(java.lang.String) transformation
      返回:
      RSA 解密后的数据
    • decryptRSAToBase64

      public static byte[] decryptRSAToBase64(byte[] data, byte[] key, boolean isPublicKey, String transformation)
      RSA 解密
      参数:
      data - 待解密数据
      key - 密钥
      isPublicKey - true X509EncodedKeySpec, false PKCS8EncodedKeySpec
      transformation - Cipher.getInstance(java.lang.String) transformation
      返回:
      Base64 解码后, 在进行 RSA 解密后的数据
    • decryptRSAToHexString

      public static byte[] decryptRSAToHexString(String data, byte[] key, boolean isPublicKey, String transformation)
      RSA 解密
      参数:
      data - 待解密数据
      key - 密钥
      isPublicKey - true X509EncodedKeySpec, false PKCS8EncodedKeySpec
      transformation - Cipher.getInstance(java.lang.String) transformation
      返回:
      十六进制转换后, 在进行 RSA 解密后的数据
    • rsaTemplate

      public static byte[] rsaTemplate(byte[] data, byte[] key, boolean isPublicKey, String transformation, boolean isEncrypt)
      RSA 加解密模版方法
      参数:
      data - 待加解密数据
      key - 密钥
      isPublicKey - true X509EncodedKeySpec, false PKCS8EncodedKeySpec
      transformation - Cipher.getInstance(java.lang.String) transformation
      isEncrypt - 是否加密处理
      返回:
      指定加密算法, 加解密后的数据