java 加密 MD5+Base64,后续+盐值

319 阅读1分钟
/**
 * 生成签名
 *
 * @param params 报文内容
 * @param charset 字符集
 * @param key 密钥
 * @return 签名
 * @throws RuntimeException 错误内容
 */
private String doSign(String params, String charset, String key) throws RuntimeException {
    String content = params + key;
    String sign = "";
    try {
        MessageDigest md5 = MessageDigest.getInstance("MD5");
        md5.update(content.getBytes(charset));
        sign = new String(Base64.encodeBase64(md5.digest()), charset);
    } catch (Exception e) {
        throw new RuntimeException(e);
    }
    return sign;
}

目前不加盐值,容易被彩虹表入侵