SHAUtils.java

package javax.utils;

import java.nio.charset.StandardCharsets;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

/**
 * SHA 加密算法
 */
public class SHAUtils {

    /**
     * 加密成字节数组
     */
    public static byte[] encrypt(String s) {
        try {
            MessageDigest sha = MessageDigest.getInstance("SHA");
            return sha.digest(s.getBytes(StandardCharsets.UTF_8));
        } catch (NoSuchAlgorithmException e) {
            throw new RuntimeException(e);
        }
    }

    /**
     * 加密成大写字符串
     */
    public static String encryptToUpperString(String s) {
        return encryptToString(s, "%02X");
    }

    /**
     * 加密成小写字符串
     */
    public static String encryptToLowerString(String s) {
        return encryptToString(s, "%02x");
    }

    /**
     * 加密成字符串
     */
    private static String encryptToString(String s, String format) {
        byte[] digest = encrypt(s);
        StringBuilder build = new StringBuilder();
        for (int i = 0; i < digest.length; i++) {
            build.append(String.format(format, digest[i]));
        }

        return build.toString();
    }

}

 

 

 

.

相关文章:

  • 2022-01-03
  • 2022-01-18
  • 2022-12-23
  • 2022-12-23
  • 2021-09-18
  • 2022-01-01
  • 2021-05-27
  • 2022-12-23
猜你喜欢
  • 2022-01-29
  • 2022-12-23
  • 2022-12-23
  • 2021-12-05
  • 2021-08-18
  • 2022-12-23
相关资源
相似解决方案