MD5,MD2,SHA加密的实现方式

简介: import java.security.MessageDigest;import javax.xml.bind.annotation.adapters.HexBinaryAdapter;public class Main { static String src = "Hello...
import java.security.MessageDigest;

import javax.xml.bind.annotation.adapters.HexBinaryAdapter;

public class Main {

	static String src = "Hello,sahadev!";

	public static void main(String[] args) {
		MD5();
		MD2();
		SHA();
	}

	/**
	 * MD5加密
	 */
	public static void MD5() {
		try {
			// 获取MD5加密工具
			MessageDigest md = MessageDigest.getInstance("MD5");
			// 加密
			byte[] digest = md.digest(src.getBytes());
			// 获取二进制十六进制互转工具
			HexBinaryAdapter hexBinaryAdapter = new HexBinaryAdapter();
			// 将二进制数组转换为十六进制字符串
			String marshal = hexBinaryAdapter.marshal(digest);
			// 输出结果
			System.out.println(marshal);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	/**
	 * MD2加密
	 */
	public static void MD2() {
		try {
			// 获取MD2加密工具
			MessageDigest md = MessageDigest.getInstance("MD2");
			// 加密
			byte[] digest = md.digest(src.getBytes());
			// 获取二进制十六进制互转工具
			HexBinaryAdapter hexBinaryAdapter = new HexBinaryAdapter();
			// 将二进制数组转换为十六进制字符串
			String marshal = hexBinaryAdapter.marshal(digest);
			// 输出结果
			System.out.println(marshal);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public static void SHA() {
		try {
			// 获取MD2加密工具
			MessageDigest md = MessageDigest.getInstance("SHA");
			// 加密
			byte[] digest = md.digest(src.getBytes());
			// 获取二进制十六进制互转工具
			HexBinaryAdapter hexBinaryAdapter = new HexBinaryAdapter();
			// 将二进制数组转换为十六进制字符串
			String marshal = hexBinaryAdapter.marshal(digest);
			// 输出结果
			System.out.println(marshal);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

}
输出结果:
MD5 : 8FC69C57ACC2258C7B4A9D39DC4C940B
MD2 : 9EAF08289903A29C3C58D2AAA25BD83D
SHA : 1B1330BFC6257FC9F4B4ED5CB605FA4109608CCA



目录
相关文章
|
5月前
|
存储 安全 算法
用 MD5 加密 WordPress 验证码的完整教程
本文详细介绍了如何使用MD5加密技术增强WordPress验证码的安全性。通过将验证码答案以MD5形式加密并存储在Session中,避免了明文传输可能带来的安全风险。文章从形势分析、MD5算法介绍到实战操作步骤,逐步引导读者实现加密验证流程。同时提供了调试方法,确保修改生效。此教程旨在为网站添加一层安全保障,提升对抗网络攻击的能力。
306 1
|
6月前
|
存储 算法 安全
MD5加密
MD5(Message-Digest Algorithm 5)是一种单向加密算法,将任意长度的数据转换为128位固定长度的散列值,主要用于数据完整性校验和密码存储。其特点包括不可逆运算、高度离散性和相同输入生成一致结果。然而,MD5存在碰撞风险,直接加密密码不安全,需配合“加盐”处理增强安全性。文中提供了未加盐的MD5工具类`MD5Utils`,核心方法`msgToMD5`实现基本加密功能。尽管MD5理论上不可逆,但通过彩虹表等手段可能存在伪破解风险,建议结合多种加密算法提升安全性。
401 2
|
数据安全/隐私保护 Python
Python中的MD5加密“解密”
Python中的MD5加密“解密”
368 0
|
存储 Java 数据库
密码专辑:对密码加盐加密,对密码进行md5加密,封装成密码工具类
这篇文章介绍了如何在Java中通过加盐和加密算法(如MD5和SHA)安全地存储密码,并提供了一个密码工具类PasswordUtils和密码编码类PasswordEncoder的实现示例。
416 10
密码专辑:对密码加盐加密,对密码进行md5加密,封装成密码工具类
|
NoSQL Java Redis
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
这篇文章介绍了如何使用Spring Boot整合Apache Shiro框架进行后端开发,包括认证和授权流程,并使用Redis存储Token以及MD5加密用户密码。
295 0
shiro学习四:使用springboot整合shiro,正常的企业级后端开发shiro认证鉴权流程。使用redis做token的过滤。md5做密码的加密。
|
数据安全/隐私保护 Python
Python中的MD5加密“解密”
Python中的MD5加密“解密”
357 0
|
IDE 开发工具 数据安全/隐私保护
Python编程实现批量md5加密pdf文件
Python编程实现批量md5加密pdf文件
168 0
|
9月前
|
云安全 安全 数据建模
《数字证书:互联网世界的"身份证"与"防盗门"》 ——揭秘网络安全背后的加密江湖
在2023年某深夜,上海陆家嘴金融公司机房遭遇黑客攻击,神秘青铜大门与九大掌门封印的玉牌突现,阻止了入侵。此门象征数字证书,保障网络安全。数字证书如验钞机识别假币,保护用户数据。它通过SSL/TLS加密、CA认证和非对称加密,构建安全通信。证书分为DV、OV、EV三类,分别适合不同场景。忽视证书安全可能导致巨额损失。阿里云提供一站式证书服务,助力企业部署SSL证书,迎接未来量子计算和物联网挑战。
|
11月前
|
安全 算法 网络协议
【网络原理】——图解HTTPS如何加密(通俗简单易懂)
HTTPS加密过程,明文,密文,密钥,对称加密,非对称加密,公钥和私钥,证书加密
|
11月前
|
SQL 安全 网络安全
网络安全与信息安全:关于网络安全漏洞、加密技术、安全意识等方面的知识分享
随着互联网的普及,网络安全问题日益突出。本文将从网络安全漏洞、加密技术和安全意识三个方面进行探讨,旨在提高读者对网络安全的认识和防范能力。通过分析常见的网络安全漏洞,介绍加密技术的基本原理和应用,以及强调安全意识的重要性,帮助读者更好地保护自己的网络信息安全。
217 10