md5加密方法

简介: md5加密方法


                   package com.XX.core.myutil;


import org.slf4j.Logger;

import org.slf4j.LoggerFactory;

import java.security.MessageDigest;


public class Md5Util {


   private static final Logger LOGGER = LoggerFactory.getLogger(Md5Util.class);


   private static String compute(String inStr) {

       try {

           char[] charArray = inStr.toCharArray();

   

           byte[] byteArray = new byte[charArray.length];

   

           for (int i = 0; i < charArray.length; i++) {

               byteArray[i] = (byte) charArray[i];

           }

           MessageDigest md5 = MessageDigest.getInstance("MD5");

           byte[] md5Bytes = md5.digest(byteArray);

   

           StringBuffer hexValue = new StringBuffer();

   

           for (int i = 0; i < md5Bytes.length; i++) {

               int val = ((int) md5Bytes[i]) & 0xff;

               if (val < 16) {

                   hexValue.append("0");

               }

               hexValue.append(Integer.toHexString(val));

           }

           return hexValue.toString();

       }catch (Exception e) {

           LOGGER.error("MD5 Error...", e);

           return "";

       }

       

   }

   

   /**

    * 按传入编码进行MD5加密

    * @param charsetName

    * @return

    */

   private static String compute(String inStr, String charsetName){

       try{

           byte[] byteArray = inStr.getBytes(charsetName);

           MessageDigest md5 = MessageDigest.getInstance("MD5");

           byte[] md5Bytes = md5.digest(byteArray);

   

           StringBuffer hexValue = new StringBuffer();

   

           for (int i = 0; i < md5Bytes.length; i++) {

               int val = ((int) md5Bytes[i]) & 0xff;

               if (val < 16) {

                   hexValue.append("0");

               }

               hexValue.append(Integer.toHexString(val));

           }

   

           return hexValue.toString();

       }catch (Exception e) {

           LOGGER.error("MD5 Error...", e);

           return "";

       }

   }

   

   public static String encrypt(final String key) {

       return compute(key);

   }

   

   /**

    * 按传入编码进行MD5加密

    * @param key

    * @param charsetName

    * @return

    */

   public static String encrypt(final String key, final String charsetName){

       return compute(key, charsetName);

   }

   

   public static void main(String[] args) {

       System.out.println(Md5Util.encrypt("123456123456"));

   }

}                


相关文章
|
2月前
|
算法 Java 数据安全/隐私保护
java MD5 32位加密
java MD5 32位加密
19 0
|
2月前
|
安全 API 开发工具
oss加密的配置方法
阿里云OSS提供多种加密选项:SSE-OSS(默认或对象级AES-256加密)、SSE-KMS(使用KMS托管CMK)、临时密钥加密和客户端加密(CSE)。可通过控制台或API设置Bucket策略,使用HTTP头部指定加密方式。KMS和临时密钥可能涉及更复杂的密钥管理和权限配置。
181 5
|
4月前
|
编解码 算法 安全
怎么Java进行MD5摘要加密?
MD5(Message-Digest Algorithm 5)是一种常用的摘要算法,用于将任意长度的数据转换为固定长度的摘要值(通常为128位)。MD5算法的原理是将原始数据分成若干个固定长度的块,对每个块进行一系列的数据处理,最终得到一个128位的摘要值。这个摘要值可以作为数据的唯一标识,用于验证数据的完整性和真实性。
43 1
|
5月前
|
存储 数据挖掘 数据安全/隐私保护
11.Java方法的综合练习题大全-双色球彩票系统,数字的加密和解密等试题(上)
11.Java方法的综合练习题大全-双色球彩票系统,数字的加密和解密等试题
78 1
|
5月前
|
存储 算法 Java
11.Java方法的综合练习题大全-双色球彩票系统,数字的加密和解密等试题(下)
11.Java方法的综合练习题大全-双色球彩票系统,数字的加密和解密等试题(上)
84 1
|
7月前
|
数据安全/隐私保护 Python
Python hashlib 加密方法(MD5、SHA1、SHA256、SHA52)
Python hashlib 加密方法(MD5、SHA1、SHA256、SHA52)
|
4月前
|
移动开发 JavaScript 安全
js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结
js的常见的三种密码加密方式-MD5加密、Base64加密和解密和sha1加密详解总结
125 0
|
1月前
|
JavaScript 前端开发 数据安全/隐私保护
JavaScript实现MD5 加密的6中方式
JavaScript实现MD5 加密的6中方式
15 0
|
2月前
|
编解码 测试技术 数据安全/隐私保护
小工具实战-Python实现小工具输出字符串大小写转换、字符串统计、编解码、MD5加密
小工具实战-Python实现小工具输出字符串大小写转换、字符串统计、编解码、MD5加密
43 2
|
2月前
|
算法 前端开发 JavaScript
SpringBoot+随机盐值+双重MD5实现加密登录
SpringBoot+随机盐值+双重MD5实现加密登录
255 1