最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

Java MD5加密工具

互联网 admin 3浏览 0评论

Java MD5加密工具

1.基本原理

MD5加密算法,其全称是Message-Digest Algorithm 5,通常被称为信息摘要算法,所谓的信息摘要就是把明文内容按一定规则生成一段哈希(hash)值,即得到这段明文内容的信息摘要。利用MD5可以基于任意长度的明文字符串生成128位的哈希值,结果唯一且不可逆,因此MD5经常被用于防止信息被篡改、数字签名、以及对明文进行加密等场景。

2.加密原理

MD5算法加密的过程分为三步:处理原文,设置初始值,加密运算

3.直接上JavaMD5加密工具代码

package com.star.util;import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;/*** @Description: MD5加密工具类* @Author: Athy* @QQ群: 567177147*/
public class MD5Utils {/*** @Description: MD5加密* @Auther: ONESTAR* @Date: 17:19 2022/12/23* @Param: 要加密的字符串* @Return: 加密后的字符串*/public static String code(String str){try {MessageDigest md = MessageDigest.getInstance("MD5");md.update(str.getBytes());byte[]byteDigest = md.digest();int i;StringBuffer buf = new StringBuffer("");for (int offset = 0; offset < byteDigest.length; offset++) {i = byteDigest[offset];if (i < 0)i += 256;if (i < 16)buf.append("0");buf.append(Integer.toHexString(i));}//32位加密return buf.toString();// 16位的加密//return buf.toString().substring(8, 24);} catch (NoSuchAlgorithmException e) {e.printStackTrace();return null;}}public static void main(String[] args) {System.out.println(code("hello"));}
}

Java MD5加密工具

1.基本原理

MD5加密算法,其全称是Message-Digest Algorithm 5,通常被称为信息摘要算法,所谓的信息摘要就是把明文内容按一定规则生成一段哈希(hash)值,即得到这段明文内容的信息摘要。利用MD5可以基于任意长度的明文字符串生成128位的哈希值,结果唯一且不可逆,因此MD5经常被用于防止信息被篡改、数字签名、以及对明文进行加密等场景。

2.加密原理

MD5算法加密的过程分为三步:处理原文,设置初始值,加密运算

3.直接上JavaMD5加密工具代码

package com.star.util;import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;/*** @Description: MD5加密工具类* @Author: Athy* @QQ群: 567177147*/
public class MD5Utils {/*** @Description: MD5加密* @Auther: ONESTAR* @Date: 17:19 2022/12/23* @Param: 要加密的字符串* @Return: 加密后的字符串*/public static String code(String str){try {MessageDigest md = MessageDigest.getInstance("MD5");md.update(str.getBytes());byte[]byteDigest = md.digest();int i;StringBuffer buf = new StringBuffer("");for (int offset = 0; offset < byteDigest.length; offset++) {i = byteDigest[offset];if (i < 0)i += 256;if (i < 16)buf.append("0");buf.append(Integer.toHexString(i));}//32位加密return buf.toString();// 16位的加密//return buf.toString().substring(8, 24);} catch (NoSuchAlgorithmException e) {e.printStackTrace();return null;}}public static void main(String[] args) {System.out.println(code("hello"));}
}

与本文相关的文章

发布评论

评论列表 (0)

  1. 暂无评论