Module bus.crypto

Class SaltParser

java.lang.Object
org.miaixz.bus.crypto.builtin.SaltParser

public class SaltParser extends Object
OpenSSL中加盐解析器 参考:
     https://stackoverflow.com/questions/11783062/how-to-decrypt-file-in-java-encrypted-with-openssl-command-using-aes
     https://stackoverflow.com/questions/32508961/java-equivalent-of-an-openssl-aes-cbc-encryption
 
Since:
Java 17+
Author:
Kimi Liu
  • Constructor Details

    • SaltParser

      public SaltParser(MessageDigest digest, int keyLength, String algorithm)
      构造
      Parameters:
      digest - MessageDigest
      keyLength - 密钥长度
      algorithm - 算法
    • SaltParser

      public SaltParser(MessageDigest digest, int keyLength, int ivLength)
      构造
      Parameters:
      digest - MessageDigest
      keyLength - 密钥长度
      ivLength - IV长度
  • Method Details

    • ofMd5

      public static SaltParser ofMd5(int keyLength, String algorithm)
      创建MD5 OpenSSLSaltParser
      Parameters:
      keyLength - 密钥长度
      algorithm - 算法
      Returns:
      OpenSSLSaltParser
    • of

      public static SaltParser of(MessageDigest digest, int keyLength, String algorithm)
      创建OpenSSLSaltParser
      Parameters:
      digest - MessageDigest
      keyLength - 密钥长度
      algorithm - 算法
      Returns:
      OpenSSLSaltParser
    • getKeyAndIV

      public byte[][] getKeyAndIV(byte[] pass, byte[] salt)
      通过密钥和salt值,获取实际的密钥
      Parameters:
      pass - 密钥
      salt - 加盐值
      Returns:
      实际密钥