java安全-----摘要
来源:互联网 发布:迪杰斯特拉算法流程图 编辑:程序博客网 时间:2024/05/22 13:05
我们在下载文件的时候经常会看到有的下载站点也提供下载文件的“数字摘要“,供下载者验证下载后的文件是否完整,或者说是否和服务器上的文件”一模一样“。其实,数字摘要就是采用单项Hash函数将需要加密的明文“摘要”成一串固定长度(128位)的密文,这一串密文又称为数字指纹,它有固定的长度,而且不同的明文摘要成密文,其结果总是不同的,儿同样的明文其摘要必定一致。 因此,“数字摘要“叫”数字指纹“可能会更贴切一些。“数字摘要“是https能确保数据完整性和防篡改的根本原因。
(本段摘自袭烽的博客)
下面 我们来看看如何通过java来生成摘要
使用java生成摘要 我们需要是用到Java的MessageDigest类 这个类在=java.security包下。
下面 贴上代码:
package test;import java.security.MessageDigest;import com.sun.org.apache.xml.internal.security.utils.Base64;public class Test { public static void main(String[] args) { Test my=new Test(); my.testDigest(); } @SuppressWarnings("static-access")public void testDigest() { try { String myinfo="我的测试信息"; //确定计算摘要的算法 一般有MD5 SHA-1等 其中md5计算出的摘要是15位 SHA-1计算出的摘要是20位MessageDigest alga=MessageDigest.getInstance("MD5"); // MessageDigest alga=MessageDigest.getInstance("SHA-1"); //添加要进行计算摘要的信息alga.update(myinfo.getBytes()); //计算出摘要byte[] digesta=alga.digest(); //查看摘要信息System.out.println("摘要信息是:"+new String(Base64.encode(digesta)));// 通过某中方式传给其他人你的信息 (myinfo) 和摘要 (digesta) 对方可以判断是否更改或传输正常MessageDigest algb=MessageDigest.getInstance("MD5"); // MessageDigest algb=MessageDigest.getInstance("SHA-1"); algb.update(myinfo.getBytes()); //比较两个摘要是否相同if (algb.isEqual(digesta,algb.digest())) { System.out.println("信息检查正常"); } else { System.out.println("摘要不相同"); } } catch (java.security.NoSuchAlgorithmException ex) { System.out.println("非法摘要算法"); } } }
- java安全-----摘要
- Java安全之消息摘要
- Java安全之消息摘要
- java安全(三)摘要算法MD5
- [Java 安全]消息摘要与数字签名
- [Java 安全]消息摘要与数字签名
- [Java 安全]消息摘要与数字签名
- Java安全之消息摘要算法
- 技术摘要:如何编写安全的Java代码
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- Java安全(加密、摘要、签名、证书、SSL、HTTPS)
- 你可能没听说过(但应该会用到的)15 个免费 API
- Java字符串问题Top10
- C++中获取一个文件夹下所有文件名(转)
- 表的版本号的理解(块的版本号)
- 基于QT的webkit开发CB/S结构的应用系统
- java安全-----摘要
- 关于已知两点经纬度求球面最短距离的公式推导(转载)
- 判断一个数是否为回文数
- 记GMGDC2013大会
- 关于opensips搭建的几点注意项
- 权志龙中文网被黑了
- Serial Drivers
- jqgrid操作以及应用方法
- Mysql开二进制日志的风险