javascript - java怎么去判断md5加密的密码啊?
PHPz
PHPz 2017-04-11 11:28:01
[JavaScript讨论组]
if(!password.equals(result.getString("password"))){
                throw new PasswordException("密码错误");
            }

密码是123456
但是数据库里是已经md5加密后的字符了

表单传过来的是明文123456
现在是抛出异常“密码错误”
要怎么进行MD5判断才正确?

PHPz
PHPz

学习是最好的投资!

全部回复(2)
怪我咯

把传过来的明文先加密,然后再和数据库中的密码做比较

高洛峰

对两次的加密字符进行比较,MD5加密的结果是一样的,所以每次进行加密后的密文进行匹配比较。
java代码加密

import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;

public class MD5Utils {
    public static void main(String[] args) {
        String passWord = "123456";
        StringBuilder sb = new StringBuilder();
        //获取数据摘要器
        try {
            MessageDigest messageDigest = MessageDigest.getInstance("MD5");
            //将一个byte数组进行加密操作,返回的是一个加密的byte数组,二进制的哈西计算,md5加密的第一步
            byte[] digest = messageDigest.digest(passWord.getBytes());
            for (int i = 0; i < digest.length; i++) {
                int result = digest[i] & 0xff;
                //将得到的int类型的值转化为16进制的值
                String hexString = Integer.toHexString(result);
                if (hexString.length()<2){//系统会自动把0省略,所以添加0
                   sb.append("0");
                }
                sb.append(hexString);
            }
            System.out.println(sb.toString());
        } catch (NoSuchAlgorithmException e) {//找不到加密方式异常
            e.printStackTrace();
        }

    }
}

MD5加密

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号