import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* 消息摘要加密
* <p>
* SHA+Hex
*
* @author
*
*/
public abstract class ShaHex {
/** 明文编码 */
private static final String ENCODING = "UTF8";
/** 加密算法 */
private static final String PROVIDER = "SHA-1";
private static final Logger LOG = LoggerFactory.getLogger(ShaHex.class);
private ShaHex() {
// do nothing
}
/**
* 获得明文摘要信息
* @param message
* @return 加密成功时,返回摘要信息,加密失败时直接返回明文。
*/
public static final String messageDigest(String message) {
String digest = null;
try {
final byte[] plainText = message.getBytes(ENCODING);
MessageDigest messageDigest = MessageDigest.getInstance(PROVIDER);
messageDigest.update(plainText);
digest = new String(HexUtils.encode(messageDigest.digest()));
} catch (UnsupportedEncodingException e) {
LOG.error("加密失败!", e);
digest = message;
} catch (NoSuchAlgorithmException e) {
LOG.error("加密失败!", e);
digest = message;
}
return digest;
}
}
SHA+HEX消息摘要加密
本文深入探讨了消息摘要加密技术,特别是SHA+Hex算法的原理及其实现过程。通过实例展示了如何将明文进行加密并转换为十六进制字符串,以及在实际场景中的应用。同时强调了在加密过程中遇到的常见问题及其解决方案。
部署运行你感兴趣的模型镜像
您可能感兴趣的与本文相关的镜像
Stable-Diffusion-3.5
图片生成
Stable-Diffusion
Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

被折叠的 条评论
为什么被折叠?



