md5非对称密钥
一、MD5加密概述
Message Digest Algorithm MD5(中文名为消息摘要算法第五版)为计算机安全领域广泛使用的一种散列函数,用以提供消息的完整性保护。该算法的文件号为RFC 1321(R.Rivest,MIT Laboratory for Computer Science and RSA Data Security Inc. April 1992)。
二、Java实现MD5加密解密
1、maven 引入apache的jar(不是maven项目,去网上下一个jar手动引入)
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.3.2</version>
</dependency>
2、MD5使用代码
package com.jd.test; import org.apache.commons.codec.digest.DigestUtils; import java.security.MessageDigest; /**
* MD5通用类
*
* @author 浩令天下
* @since 2017.04.15
* @version 1.0.0_1
*
*/
public class MD5 {
/**
* MD5方法
*
* @param text 明文
* @param key 密钥
* @return 密文
* @throws Exception
*/
public static String md5(String text, String key) throws Exception {
//加密后的字符串
String encodeStr=DigestUtils.md5Hex(text + key);
System.out.println("MD5加密后的字符串为:encodeStr="+encodeStr);
return encodeStr;
} /**
* MD5验证方法
*
* @param text 明文
* @param key 密钥
* @param md5 密文
* @return true/false
* @throws Exception
*/
public static boolean verify(String text, String key, String md5) throws Exception {
//根据传入的密钥进行验证
String md5Text = md5(text, key);
if(md5Text.equalsIgnoreCase(md5))
{
System.out.println("MD5验证通过");
return true;
} return false;
}
}
md5非对称密钥的更多相关文章
- rssh RSA(非对称密钥)
rssh ,非对称密钥,分为密钥和公钥 ,密钥在对面机器,需要进入的文件中,公钥是放在本地机器上 import paramiko private_key = paramiko.RSAKey.from_ ...
- 写给开发人员的实用密码学(七)—— 非对称密钥加密算法 RSA/ECC
本文部分内容翻译自 Practical-Cryptography-for-Developers-Book,笔者补充了密码学历史以及 openssl 命令示例,并重写了 RSA/ECC 算法原理.代码示 ...
- Java中RSA非对称密钥加解密使用示例
一.简介: RSA加密算法是最常用的非对称加密算法,CFCA在证书服务中离不了它.RSA是第一个比较完善的公开密钥算法,它既能用于加密,也能用于数字签名.这个算法经受住了多年深入的密码分析,虽然密码分 ...
- 使用RSA非对称密钥算法实现硬件设备授权
一.硬件设备授权 即用户在硬件设备输入一个序列号(或一个包含授权信息的文件),然后硬件设备便可正常使用. 二.授权方案 构思授权方案时,参考了下面网址的思路: http://bbs.csdn.n ...
- 为什么要使用消息认证码(MAC)而非对称密钥?
问题: 看了消息认证码的介绍后,小丽心想"如果用对称密码将消息加密后再发送的话,是不是就不需要消息认证码了呢?"原因有下: 1.对称密码的密文只有使用和加密时相同的密钥才能正确解密 ...
- SQL 2012 Always On 为 MSCRMSqlClrLogin SQL 登录名创建非对称密钥时报语法错误
根据实施手册中的下图的SQL在为MSCRMSqlClrLogin 创建非对称秘钥时报语法错误,具体的错误在就path那,调了多次还是报错,索性就把SQL拆开执行. 先执行这条 SELECT * FRO ...
- 常见的哈希Hash算法 & MD5 & 对称非对称加密 & 海明码
参考 Link 另外,这篇文章也提到了利用Hash碰撞而产生DOS攻击的案例: http://www.cnblogs.com/charlesblc/p/5990475.html DJB的算法实现核心是 ...
- 加密算法大全图解 :密码体系,对称加密算法,非对称加密算法,消息摘要, Base64,数字签名,RSA,DES,MD5,AES,SHA,ElGamal,
1. 加密算法大全: ***************************************************************************************** ...
- 非对称加密算法-RSA算法
一.概述 1.RSA是基于大数因子分解难题.目前各种主流计算机语言都支持RSA算法的实现 2.java6支持RSA算法 3.RSA算法可以用于数据加密和数字签名 4.RSA算法相对于DES/AES等对 ...
随机推荐
- bom中的offset,client,scroll
简单明了
- lua之自索引
Father={ a=100, b=200 } function Father:dis() print(self.a,self.b) end Father.__index=Father Son= { ...
- golang中map原理剖析
1. golang中的map有自己的一套实现原理,其核心是由hmap和bmap两个结构体实现的 2. 初始化map package main func main() { // 初始化一个可容纳10个 ...
- Servlet-IDEA菜单生成Servlet程序
更快捷方法生成Servlet程序(IDEA菜单生成Servlet) 菜单:new ---> Servlet程序 取消注解做这个配置 可以创建Servlet程序,编写HelloServlet3类, ...
- Linux深入探索04-Bash shell
----- 最近更新[2021-12-30]----- 本文目录结构预览: 一.简介 二.shell 变量 1.查看变量 2.变量类型 3.变量操作 4.系统常见的全局变量 三.shell 选项 1. ...
- fio硬盘压力测试
fio测试工具支持同步(pread/pwrite)和异步(libaio)FIO是测试IOPS的非常好的工具,用来对硬件进行压力测试和验证,支持13种不同的I/O引擎,包括:sync,mmap, lib ...
- Pytest单元测试框架生成HTML测试报告及优化
一.安装插件 要生成html类型的报告,需要使用pytest-html插件,可以在IDE中安装,也可以在命令行中安装.插件安装 的位置涉及到不同项目的使用,这里不再详述,想了解的可自行查询. IDE中 ...
- Lesson1——Pandas是什么
pandas目录 一.简介 Pandas 是一个开源的第三方 Python 库,从 Numpy 和 Matplotlib 的基础上构建而来,享有数据分析"三剑客之一"的盛名(Num ...
- 开源项目实现多线程下载 (xutils)
public void download(View v){ EditText et_url = (EditText) findViewById(R.id.et_url); ...
- 关于linux shell编程,alias rm='cp $@ ~/backup; rm $@'
书上的这个例子需要在ubuntu的低版本的系统才支持,现在基本上都不支持了,想实现也很简单自己写一个脚本先备份再删除. alias也只是做了一次替换alias rm='cp $@ ~/backup; ...