• 015 Android md5密码加密及其工具类


    1.md5加密介绍

    MD5算法是广泛使用的杂凑函数,也就是哈希函数,英文全拼是:Message Digest Algorithm,对应的中文名字是消息摘要算法。

    MD5加密:将字符串转换成 32位的字符串(随机生成16进制的字符0-F、不可逆)

    MD5加密的特点:

    (1)一个任意长度的数据,经过MD5计算后就会得到一个长度固定的十六进制字符串; 

    (2)MD5算法消耗较低,不会在性能在造成压力; 
    (3)抗修改性很强,相差极小的两个原数据的MD5值差异会很大 
    (4)抗碰撞性也很强,伪造数据的难度很大

    2.MD5工具类

    package com.example.administrator.test62360safeguard.Utils;
    
    import java.security.MessageDigest;
    import java.security.NoSuchAlgorithmException;
    
    public class MD5Util {
        public static void main(String[] args) {
                String psw="123";
                encoder(psw);
        }
    
        /**
         * 给指定字符串按照md5算法进行加密
         * @param psw 需要加密的密码
         */
        public static String encoder(String psw) {
            try {
                psw=psw+"safeguard"; //密码加盐
                //1.指定加密算法
                MessageDigest digest=MessageDigest.getInstance("MD5");
                //2.将需要的字符串转换为byte类型的数组,然后进行随机哈希过程
                byte[] bs=digest.digest(psw.getBytes());
                System.out.println(bs.length);
                //3.循环遍历bs,然后让其生成32位的字符串(固定写法),拼接字符串
                StringBuffer sb=new StringBuffer();
                for (byte b : bs) {
                    int i=b&0xff; //固定写法
                    //将int类型的i转换成16进制的字符
                    String hexStr=Integer.toHexString(i);
                    if(hexStr.length()<2){
                        hexStr="0"+hexStr;
                    }
                    sb.append(hexStr);
                }
                //System.out.println(sb);
                return sb.toString();
            } catch (NoSuchAlgorithmException e) {
                e.printStackTrace();
            }
            return "";
        }
    }
  • 相关阅读:
    批量替换文本的工具
    wcf异常显示错误到客户端
    文件以二进制存入数据库和从数据库读取二进制文件
    关于关系数据库的范式
    对于挑战书上的很久之前都看不懂的DP看懂的突破
    操作系统概念
    关于P,V操作理解的突破,关于并发设计与并行
    关于快速沃尔什变换
    我觉得我应该养成经常翻收藏夹的习惯
    目前我的思考模式
  • 原文地址:https://www.cnblogs.com/luckyplj/p/10818070.html
Copyright © 2020-2023  润新知