java开发之MD5加密算法的实现

 更新时间:2013年05月02日 17:45:15   作者:  
本篇文章介绍了,java开发之MD5加密算法的实现。需要的朋友参考下
先看看代码再说:
复制代码 代码如下:

package com.b510.note;

 import java.math.BigInteger;
 import java.security.MessageDigest;
 import java.security.NoSuchAlgorithmException;

 /**
  * MD5加密
  *
  * @author Hongten
  *
  */
 public class MD5 {

     public static void main(String[] args) {
         System.out.println(MD5.getMD5("123456"));
     }

     /**
      * 用md5编码后的码值
      *
      * @param sInput
      *            明码
      * @return md5加密后的密码
 */
     public static String getMD5(String sInput) {

         String algorithm = "";
         if (sInput == null) {
             return "null";
         }
         try {
             algorithm = System.getProperty("MD5.algorithm", "MD5");
         } catch (SecurityException se) {
         }
         MessageDigest md = null;
         try {
             md = MessageDigest.getInstance(algorithm);
         } catch (NoSuchAlgorithmException e) {
             e.printStackTrace();
         }
         byte buffer[] = sInput.getBytes();

         for (int count = 0; count < sInput.length(); count++) {
             md.update(buffer, 0, count);
         }
         byte bDigest[] = md.digest();
         BigInteger bi = new BigInteger(bDigest);
         return (bi.toString(16));
     }
 }

运行效果:
复制代码 代码如下:

1 186d636867f51c667893c1b1b3d96dc3

我们可以根据自己的需要,来得到自己想要的md5加密后的密文;
复制代码 代码如下:

1 //这里的数字是可以根据需要而进行改变的
2 return (bi.toString(16));

相关文章

  • Springboot解决ajax+自定义headers的跨域请求问题

    Springboot解决ajax+自定义headers的跨域请求问题

    由于浏览器同源策略(同源策略,它是由Netscape提出的一个著名的安全策略,现在所有支持JavaScript 的浏览器都会使用这个策略。接下来通过本文给大家介绍Springboot如何优雅的解决ajax+自定义headers的跨域请求 ,需要的朋友可以参考下
    2019-05-05
  • 详解基于MybatisPlus两步实现多租户方案

    详解基于MybatisPlus两步实现多租户方案

    这篇文章主要介绍了详解基于MybatisPlus两步实现多租户方案,本文分两步,通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-04-04
  • Java并发编程之Semaphore详解

    Java并发编程之Semaphore详解

    这篇文章主要介绍了Java并发编程之concurrent包中的Semaphore详解,信号量Semaphore一般用来表示可用资源的个数,相当于一个计数器,可类比生活中停车场牌子上面显示的停车场剩余车位数量,需要的朋友可以参考下
    2023-12-12
  • 从Myeclipse 导入到eclipse中无法识别为 web项目 问题的解决步骤

    从Myeclipse 导入到eclipse中无法识别为 web项目 问题的解决步骤

    这篇文章主要介绍了从Myeclipse 导入到eclipse中无法识别为 web项目 问题的解决步骤,需要的朋友可以参考下
    2018-05-05
  • java8 stream的分组功能实例介绍

    java8 stream的分组功能实例介绍

    这篇文章主要给大家介绍了关于java8 stream的分组功能的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用java8具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-12-12
  • Java中map和flatMap的区别举例详解

    Java中map和flatMap的区别举例详解

    这篇文章主要给大家介绍了关于Java中map和flatMap区别的相关资料,在Java中Stream接口有map()和flatmap()方法,两者都有中间流操作,并返回另一个流作为方法输出,需要的朋友可以参考下
    2023-10-10
  • 4位吸血鬼数字的java实现思路与实例讲解

    4位吸血鬼数字的java实现思路与实例讲解

    今天小编就为大家分享一篇关于4位吸血鬼数字的java实现思路与实例讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • java操作hdfs的方法示例代码

    java操作hdfs的方法示例代码

    这篇文章主要介绍了java操作hdfs的相关资料,在本地配置Hadoop和Maven的环境变量,首先需从官网下载与服务器相同版本的Hadoop安装包,配置环境变量后,引入Maven的配置文件,以便管理项目依赖,最后,编写代码实现对HDFS的连接和操作,完成数据的读写,需要的朋友可以参考下
    2022-02-02
  • SpringBoot如何接收数组参数的方法

    SpringBoot如何接收数组参数的方法

    这篇文章主要介绍了SpringBoot如何接收数组参数的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-12-12
  • Intellij IDEA 2017.3使用Lombok及常用注解介绍

    Intellij IDEA 2017.3使用Lombok及常用注解介绍

    这篇文章主要介绍了Intellij IDEA 2017.3使用Lombok及常用注解介绍,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09

最新评论