• MD5加密


    MD5加密算法
        又称-- 数据摘要算法、数据指纹算法
        ------------------------------------------------
        特点:
            ◇ 任意长度的二进制数, 经过MD5加密计算后, 都可以得到一个128位长的二进制密文


            ◇ 相同的原文经过加密后得到的密文永远相同


            ◇ 不同的原文经过加密后得到的密文永远不同
                
            ◇ 只能从原文加密成密文, 密文永远也解不回原文
            
            MD5加密算法在很多应用场景下都有所应用
        ------------------------------------------------
        MD5应用:
            1.创建MD5Utils工具类, 提供md5方法实现MD5加密功能
                /**
                 * 使用md5的算法进行加密
                 */
                public static String md5(String plainText) {
                    byte[] secretBytes = null;
                    try {
                        secretBytes = MessageDigest.getInstance("md5").digest(
                                plainText.getBytes());
                    } catch (NoSuchAlgorithmException e) {
                        throw new RuntimeException("没有md5这个算法!");
                    }
                    String md5code = new BigInteger(1, secretBytes).toString(16);
                    for (int i = 0; i < 32 - md5code.length(); i++) {
                        md5code = "0" + md5code;
                    }
                    return md5code;
                }
                
            2.在实现登陆功能时, 密码应该先加密再和数据库中的密码做比较
                password = MD5Utils.md5(password);

            3.在实现注册功能时, 密码应该先加密再存入数据库
                user.setPassword(MD5Utils.md5(password));
                service.registuser(user);
            
            4.实现自动登陆功能时, 在将用户名和密码保存进Cookie之前, 需要将密码加密后再保存进Cookie(步骤2已实现)

  • 相关阅读:
    2020牛客多校第二场A.All with Pairs hash+kmp
    2020杭电多校第三场
    2020牛客多校第六场K.K-Bag (思维?)
    2020牛客多校第六场 G.Grid Coloring 构造
    2020杭电多校第一场
    2020牛客暑期多校训练营(第三场)D.Points Construction Problem 构造
    ACM模板_axiomofchoice
    关于deque的行为分析
    Codeforces Round #665 (Div. 2) 题解 (CDEF)
    Codeforces Global Round 10 题解 (DEF)
  • 原文地址:https://www.cnblogs.com/tongxuping/p/6964073.html
Copyright © 2020-2023  润新知