数字摘要技术
数字摘要技术(Digital Digest)也称作为安全HASH编码法(SHA:Secure Hash Algorithm)。数字摘要技术用于对所要传输的数据进行运算生成信息摘要,它并不是一种加密机制,但却能产生信息的数字"指纹",它的目的是为了确保数据没有被修改或变化,保证信息的完整性不被破坏。
数字摘要技术有如下主要特点:
·它能处理任意大小的信息,并对其生成固定大小的数据摘要,数据摘要的内容不可预见
·对于相同的数据信息进行HASH后,总是能得到同样的摘要;如果数据信息被修改,进行Hash后,其摘要必定与先前不同
·HASH函数是不可逆的,无法通过生成的数据摘要恢复出源数据
数字签名
数字签名(Digital Signature)用来保证信息传输过程中完整性、提供信息发送者的身份认证和不可抵赖性。使用公开密钥算法是实现数字签名的主要技术。
使用公开密钥算法,当你用自己的私钥加密了一个信息,并将其发送给一个朋友时,如果你的朋友能够使用你的公钥来解密出信息,他就能确定信息必定是从你那里发来的,而不是一些冒名顶替的。这实际上就是数字签名的原理。
由于公开密钥算法的运算速度比较慢,因此可使用HASH函数对要签名的信息进行摘要处理,减小使用公开密钥算法的运算量。因此,数字签名一般是结合了数字摘要技术和公开密钥算法共同使用
实现数学签名的过程如下:
签名信息
1. 对信息M进行HASH函数处理,生成摘要H
2. 用你的(发送者的)私钥加密H来获取数字签名S
3. 发送 {M, S}
验证签名信息
1. 接受{M, S} 并区分开它们
2. 对接收到的信息 M进行HASH函数处理,生成摘要H*
3. 取得发送者的公钥
4. 用公钥解密S,来获取H
5. 比较H和H*,如果H和H*是一样的,即说明信息在发送过程中没有被篡改,反之即反
由于对信息进行数字签名后,明文信息也通过网络进行传递,因此,在做完数字签名后,还要对整个信息(包括明文信息M和数字签名的密文信息S)进行加密,以保证信息的保密性。
数字证书:
数字证书是一个经证书授权中心数字签名的包含公开密钥拥有者信息和公开密钥的文件。最简单的证书包含一个公开密钥、名称以及证书授权中心的数字签名。一般情况下证书中还包括密钥的有效时间,发证机关(证书授权中心)的名称,该证书的序列号等信息,证书的格式遵循ITUT。
CA机构 证书授证(Certificate Authority)中心
出现CA机构的目的:防止有的一些用户的公钥被非法替换,造成数据的泄露
相关推荐
2.2 RSA数字签名基本概念和RSA数字签名算法的实现原理 2.2.1 RSA数字签名基本概念 2.2.2 RSA数字签名算法的实现原理 2.3 MD5算法的介绍 3 RSA数字签名的设计与实现 3.1 RSA数字签名的总体设计 3.1.1 RSA数字...
第二,介绍了RSA数字签名的一些基本概念和数字签名的理论实现过程;第三,对MD5算法基本原理的介绍;第四,详述了RSA数字签名的设计与实现,主要实现的模块包括RSA密钥的产生(一对公钥和私钥),RSA加密算法和解密...
第二,介绍了RSA数字签名的一些基本概念和数字签名的理论实现过程;第三,对MD5算法基本原理的介绍;第四,详述了RSA数字签名的设计与实现,主要实现的模块包括RSA密钥的产生(一对公钥和私钥),RSA加密算法和解密...
第二,介绍了RSA数字签名的一些基本概念和数字签名的理论实现过程;第三,对MD5算法基本原理的介绍;第四,详述了RSA数字签名的设计与实现,主要实现的模块包括RSA密钥的产生(一对公钥和私钥),RSA加密算法和解密...
第二,介绍了RSA数字签名的一些基本概念和数字签名的理论实现过程;第三,对MD5算法基本原理的介绍;第四,详述了RSA数字签名的设计与实现,主要实现的模块包括RSA密钥的产生(一对公钥和私钥),RSA加密算法和解密...
3. 数字签名 二、Android签名机制--APK签名过程 1. APK签名概述 2. APK签名相关的文件 3. 签名的过程(MANIFEST.MF) 4. 签名的过程(CERT.SF) 5. 签名的过程(CERT.RSA) 6. 签名结束 三、Android签名机制--APK...
数字签名是非对称密钥加密技术与数字摘要技术的应用。 作用 (1)防冒充(伪造)。私有密钥只有签名者自己知道,所以其他人不可能构造出正确的。 (2)可鉴别身份。由于传统的手工签名一般是双方直接见面的,身份自可...
要了解如何实现签名,需要了解两个基本概念:消息摘要、数字签名和数字证书。 消息摘要 消息摘要(Message Digest),又称数字摘要(Digital Digest)或数字指纹(Finger Print)。简单来说,消
数字签名是非对称密钥加密技术与数字摘要技术的应用。 数字签名的作用: 1)防冒充(伪造)。私有密钥只有签名者自己知道,所以其他人不可能构造出正确的。 2)可鉴别身份。由于传统的手工签名一般是双方直接见面的,...
本文主要谈一下密码学中的加密和数字签名,以及其在java中如何进行使用。对密码学有兴趣的伙伴,推荐看Bruce Schneier的著作:Applied Crypotography。在jdk1.5的发行版本中安全性方面有了很大的改进,也提供了对RSA...
消息摘要,消息验证码,数字签名,口令保护,数字证书和证书链的生成、签发、检验和维护,SSL和HTTPS客户及服务器程序、基于代码位置和签发者的授权,签名Java Applet以及基于身份的验证和授权(JAAS)等。...
java 网络高级编程(PDF) 介绍了网络进程通信的主要技术,Java有关的Web技术,异步消息服务技术JMS和Java Mail技术,Java安全体系结构、密钥、消息摘要、数字签名等技术 Java 极限编程(PDG) 简短介绍极限编程文法及...
3.4.4. 数字签名 7 3.4.5. 数字信封 8 3.5. 客户端NetPayClient在各系统下的安装及调用 9 3.5.1. 说明 9 3.5.2. NetPayClient for Java 使用说明 9 3.5.3. NetPayClient for Win32使用说明 12 3.5.4. NetPayClient ...
无涯教程网(learnfk)整理提供:Java密码体系结构用于实现现代密码学的概念,如数字签名,消息摘要和证书。
7.深度讲解了数字证书、根证书、数据摘要、数字签名等概念与用途。度剖析了Swarm的节点架构、服务架构及服务部署模式; 8.全面详细的讲解了Docker中MySQL“一主两从”的读写分离主从集群搭建过程,Redis的“一主两从...
本书首先概述了计算机和网络安全概念并解释了Java安全模型,并在此基础上,详细描述了Java 2平台中新增加的许多安全结构方面的措施,同时对Java安全性的实施提出了使用指导,描绘了如何定制、扩展和精化安全结构以及...
也有人说,从纯技术的角度看,信息安全专业的主要研究内容为密码学,如各种 加密算法,公钥基础设施,数字签名,数字证书等,而这些只是保障网络安全的手段之 一。因此,信息安全应该是网络安全的子集。这些说法是否...
HTTPS之前有必要弄清楚一些密码学的相关基础概念,比如:明文、密文、密码、密钥、对称加密、非对称加密、信息摘要、数字签名、数字证书。接下来我会逐个解释这些术语,文章里面提到的『数据』、『消息』都是同一个...
的双(重数字摘要,并与买家发送的双重数字摘要比较,以确保信息的完整性和)真生实成性新。 2 )~( 8 )的备选答案如下:(注:备选答案可重复选择) A .买家的公钥 B .买家的私钥 C .商家的公钥 D .商家的...
MD4发展而来它作用是让大容量信息在用数字签名软件Software签署私人密匙前被"压缩"成种保密格式(就是 把个任意长度字节串变换成定长大整数)不管是MD2、MD4还是MD5它们都需要获得个随机长度信息并产生个 128位信息...