javaweb基础----对用户登录密码加密

在用户注册时将用户的密码加密后再保存至数据库,提高了安全性,使用MD5加密算法将用户密码加密

 1 package com.vincent.utils;
 2 import java.security.MessageDigest;
 3 
 4 /*
 5  * 负责给字符串数据进行加密
 6  */
 7 public class MD5Utils {
 8 
 9     public static String str2MD5(String strs) {
10         /*
11          * 加密需要使用JDK中提供的类
12          */
13         StringBuffer sb = new StringBuffer();
14         try {
15             MessageDigest digest = MessageDigest.getInstance("MD5");
16             byte[] bs = digest.digest(strs.getBytes());
17             /*
18              * 加密后的数据是-128 到 127 之间的数字,这个数字也不安全。 
19              * 取出每个数组的某些二进制位进行某些运算,得到一个新的加密结果
20              * 
21              *  0000 0011 0000 0100 0010 0000 0110 0001
22              * &0000 0000 0000 0000 0000 0000 1111 1111
23              * ---------------------------------------------
24              *  0000 0000 0000 0000 0000 0000 0110 0001
25              * 
26              *  把取出的数据转成十六进制数
27              */
28             for (byte b : bs) {
29                 int x = b & 255;
30                 String s = Integer.toHexString(x);
31                 if (x < 16) {
32                     sb.append("0");
33                 }
34                 sb.append(s);
35             }
36 
37         } catch (Exception e) {
38             System.out.println("加密失败");
39         }
40         return sb.toString();
41     }
42 }

 

转载于:https://www.cnblogs.com/cjasonvincent/p/8685710.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值