MD5加密算法(MD5加密算法对于密码的实现代码)
说到加密算法,这个属于安全领域经常涉及到的加密,为了安全嘛,这个还是比较重要的知识。比如在网络协议里https就是一种加密网络传输协议,一般涉及到金融领域,购物,基金,股票等系统都需要使用https进行传输,以免被不法分子窃取报文改写。
MD5是加密算法中的一种,在程序开发人员,特别是后端人员,经常在项目中使用到。如用户登录场景,添加用户的时候,密码存储为密文。关于MD5的实现,在jdk中,针对任何一种算法,都提供了类似的API,只是加密的实例名称不一样而已。
MessageDigest digest = MessageDigest.getInstance("MD5");
其他RSA等算法也是支持的。
编程语言只是一种平台实现,JavaScript中也同样有MD5的写法,其他语言也同样有。所以说,工作久了就越来越体会到编程思想的重要性。
说到加密,我曾经看到过一个视频讲解,当时德国恩格尔加密机的诞生,在战场上为了破解加密内容的故事,非常多的科学家花费了太多的精历,投入了大量的金钱。
回归原文,谈谈java中的md5加密。我们可以封装成具体的工具类。
public static String getMD5(String content) {
try {
MessageDigest digest = MessageDigest.getInstance("MD5");
digest.update(content.getBytes());
return getHashString(digest);
} catch (NoSuchAlgorithmException e) {
e.printStackTrace();
}
return null;
}
private static String getHashString(MessageDigest digest) {
StringBuilder builder = new StringBuilder();
for (byte b : digest.digest()) {
builder.append(Integer.toHexString((b >> 4) & 0xf));
builder.append(Integer.toHexString(b & 0xf));
}
return builder.toString();
}
好了,今天的内容就讲解到这里。
关注微信公众号“宝康大叔”,给你提供更多学习资料和项目实战资料,以及创业随笔。