JAVA中使用MD5加密实现密码加密

1.新建Md5.java

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package com.loger.md5;
 
import java.io.UnsupportedEncodingException;
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
 
import sun.misc.BASE64Encoder;
 
public class Md5 {
    /**利用MD5进行加密*/
   public String EncoderByMd5(String str) throws NoSuchAlgorithmException, UnsupportedEncodingException{
     //确定计算方法
     MessageDigest md5=MessageDigest.getInstance( "MD5" );
     BASE64Encoder base64en = new BASE64Encoder();
     //加密后的字符串
     String newstr=base64en.encode(md5.digest(str.getBytes( "utf-8" )));
     return newstr;
   }
   
   /**判断用户密码是否正确
    *newpasswd 用户输入的密码
    *oldpasswd 正确密码*/
   public boolean checkpassword(String newpasswd,String oldpasswd) throws NoSuchAlgorithmException, UnsupportedEncodingException{
     if (EncoderByMd5(newpasswd).equals(oldpasswd))
       return true ;
     else
       return false ;
   }
}

2.新建测试类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
package com.loger.md5;
 
import java.io.UnsupportedEncodingException;
import java.security.NoSuchAlgorithmException;
 
public class MyTest {
   
   public static void main(String[] args) throws NoSuchAlgorithmException, UnsupportedEncodingException {   
     Md5 md5 = new Md5(); 
     String str = "apple" ;
     try {
       String newString = md5.EncoderByMd5(str);
       System.out.println(newString);
     } catch (NoSuchAlgorithmException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
     } catch (UnsupportedEncodingException e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
     }
     
     System.out.println(md5.EncoderByMd5( "apple" ).equals( "HzhwvidPbEmz4xoMZyiVfw==" ));
     
   }
}

运行结果:

转载于:https://www.cnblogs.com/cangqinglang/p/10133550.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值