在业务中,直接将密码存储在数据库中是不安全的,所以需要将密码加密后再存入数据库当中 。
【使用Md5进行字符串加密】MD5算法的算法特点如下:
压缩性:针对不同长度待加密的数据、字符串等等,其都可以返回一个固定长度的MD5加密字符串 。(通常32位的16进制字符串);
文章插图
加密不可逆:其加密过程几乎不可逆,除非维护一个庞大的Key-Value数据库来进行碰撞破解,否则几乎无法解开 。
容易计算:从原数据计算出MD5值很容易 。
抗修改:对于一个固定的字符串 。数字等等,MD5加密后的字符串是固定的,也就是说不管MD5加密多少次,都是同样的结果 。而如果修改其中一个字节,得到的MD5值都很有很大变化 。
强抗碰撞:已知原数据和其MD5值,想找到一个具有相同MD5值的数据(即伪造数据)是非常困难的 。
import java.nio.charset.StandardCharsets;import java.security.MessageDigest;import java.util.Base64;public class Main {/*** 对字符串进行加密*/public static String encode(String str) {try {//生成一个MD5加密计算摘要MessageDigest md = MessageDigest.getInstance("MD5");return Base64.getEncoder().encodeToString(md.digest(str.getBytes(StandardCharsets.UTF_8)));} catch (Exception e) {e.printStackTrace();return null;}}public static void main(String[] args) {System.out.println(encode("demo"));}}
输出结果:
- GORM基本使用
- win10使用uefi+gpt启动蓝屏的解决方法
- Vue 项目搭建流程和使用大全
- 使用 SAML2 登录 AWS 中国区控制台
- 使用vue-cli创建Vue工程化项目及单文件组件的创建和调用
- 使用AWS MVP方案[Data Transfer Hub]从Global S3
- 太空射击 第02课:使用精灵
- 苹果手机、电脑如何进行屏幕录制?苹果录屏功能在哪?
- 祛疤膏排名前十位,芭克祛疤膏使用方法
- EasyExcel的使用--填充excel