zoukankan      html  css  js  c++  java
  • JAVA中MD5加密实现

    MD5加密实现

     结

    package com.pb;
    
    import java.io.UnsupportedEncodingException;
    import java.security.MessageDigest;
    import java.security.NoSuchAlgorithmException;
    import java.util.Scanner;
    
    /*
     * 验证MD5
     * 1.初始化MessageDigest信息摘要对象
     * 2.传入需要计算的字符串更新摘要信息
     * 3.计算信息摘要
     * 4.将byte[] 转换为找度为32位的16进制字符串
     */
    public class MD5 {
        /*
         * 生成md5 有传入参数字符串
         */
        public void generateMD5(String input){
            
            try {
                //1.初始化MessageDigest信息摘要对象,并指定为MD5不分大小写都可以
                MessageDigest md=MessageDigest.getInstance("md5");
                 //2.传入需要计算的字符串更新摘要信息,传入的为字节数组byte[],
                //将字符串转换为字节数组使用getBytes()方法完成
                //指定时其字符编码 为utf-8
                md.update(input.getBytes("utf-8"));
                 //3.计算信息摘要digest()方法
                //返回值为字节数组
                byte [] hashCode=md.digest();
                 //4.将byte[] 转换为找度为32位的16进制字符串
                    //声明StringBuffer对象来存放最后的值
                StringBuffer sb=new StringBuffer();
                //遍历字节数组
                for(byte b:hashCode){
                    //对数组内容转化为16进制,
                    sb.append(Character.forDigit(b>>4&0xf, 16));
                    //换2次为32位的16进制
                    sb.append(Character.forDigit(b&0xf, 16));
                }
                System.out.println("加密后的结果是:"+sb.toString());
            } catch (NoSuchAlgorithmException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (UnsupportedEncodingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    
        public static void main(String[] args) {
            //声明加密MD5类的对象
            MD5 md5=new MD5();
            //使用Scanner来输入一个字符
            Scanner scanner=new Scanner(System.in);
            System.out.println("请输入要加密的内容:");
            String input = scanner.nextLine();
            //调用加密方法
            md5.generateMD5(input);
    
        }
       
    }

    结果:

    请输入要加密的内容:
    学习MD5加密过程
    加密后的结果是:b826cdac46f01dcc8ccc60a76cebf858
  • 相关阅读:
    JAVA中重写equals()方法为什么要重写hashcode()方法说明
    深入浅出UML类图
    UML解惑:图说UML中的六大关系
    maven自动打包上传nexus仓库配置
    vi查找替换命令详解
    Maven运行JUnit测试(http://www.360doc.com/content/13/0927/15/7304817_317455642.shtml)
    Maven 排除依赖jar包
    2、【Spark】Spark环境搭建(集群方式)
    1、【Spark】Spark安装
    Centos7 执行firewall-cmd –permanent –add-service=mysql报错“ModuleNotFoundError: No module named 'gi'”
  • 原文地址:https://www.cnblogs.com/liunanjava/p/4297800.html
Copyright © 2011-2022 走看看