数字摘要技术与数字签名
简述数字签名的基本原理

简述数字签名的基本原理
数字签名是一种用于验证文档真实性和完整性的技术。
它通过将文档的摘要信息加密,并与发送者的私钥绑定,来确保文档在传输过程中没有被篡改。
数字签名的基本原理可以简单描述如下:
发送者使用一个哈希函数对要传输的文档进行摘要计算,生成一个固定长度的字符串。
这个摘要信息可以看作是文档的“指纹”,具有唯一性并且不可逆。
接着,发送者使用自己的私钥对这个摘要信息进行加密,生成数字签名。
私钥是发送者的秘密钥匙,只有发送者知道,用来对数据进行加密和解密。
然后,发送者将文档和数字签名一起发送给接收者。
接收者可以使用发送者的公钥对数字签名进行解密,得到摘要信息。
接收者再使用相同的哈希函数对接收到的文档进行摘要计算,得到一个新的摘要信息。
接收者比较这两个摘要信息,如果相同,则说明文档在传输过程中没有被篡改,数字签名有效;如果不同,则说明文档已经被篡改,数字签名无效。
数字签名的基本原理就是通过加密和摘要计算来验证文档的真实性和完整性。
发送者使用私钥对摘要信息加密,接收者使用公钥对数
字签名解密,通过比较摘要信息来验证文档的完整性,从而确保文档在传输过程中不被篡改。
总的来说,数字签名是一种通过加密和摘要计算来验证文档真实性和完整性的技术,是信息安全领域中非常重要的一部分。
通过使用数字签名技术,可以有效防止文档被篡改,确保数据传输的安全性和可靠性。
希望通过对数字签名基本原理的了解,可以更好地保护信息安全,确保数据的可信性和完整性。
数字摘要、数字签名和加密算法

数字摘要、数字签名和加密算法1、加密算法:对原来为明⽂的⽂件或数据按某种算法进⾏处理,使其成为不可读的⼀段代码对称加密:加密和解密使⽤同⼀个密钥⾮对称加密:加密和解密所使⽤的不是同⼀个密钥,通常称为“公钥”和“私钥”,公钥和私钥可以互相解密签名时,使⽤私钥加密,公钥解密,⽤于让所有公钥所有者验证私钥所有者的⾝份并且⽤来防⽌私钥所有者发布的内容被篡改.但是不⽤来保证内容不被他⼈获得,保证了数据的唯⼀性。
加密时,⽤公钥加密,私钥解密,⽤于向公钥所有者发布信息,这个信息可能被他⼈篡改,但是⽆法被他⼈获得,保证了数据的安全性。
2、数字签名:⾮对称加密算法与数字摘要技术的应⽤⾮对称密钥加密: RSA 、ECC等,依赖密钥长度来提⾼安全性,数字摘要:将任意长度的消息变成固定长度的短消息,常⽤的加密算法包括 HASH (MD5、SHA1、SHA256)、HMAC(HmacMD5/HmacSHA1/HmacSHA256)等,安全性按颜⾊区分红⾊安全性⾼,绿⾊安全性⾼3、⼀般使⽤过程:环境:A 的公钥公开,私钥保密,同理B⼀样,A 和 B都使⽤同样的摘要算法 HASHA 给B 发送⼀段数据 data ,⾸先 A 使⽤ HASH 算法⽣成 data 的数字摘要 digestA ,然后利⽤ A 的私钥对数字摘要 digestA 进⾏加密⽣成 digestEncodeA ,然后将 data 和 digestEncodeA ⼀起发送给 BB 收到 A 发过来的 data 和 digestEncodeA 以后,⾸先使⽤ HASH 算法⽣成 data 的数字摘要 digestB ,然后⽤ A的公钥对digestEncodeA 进⾏解密得到数字摘要 digestDecodeB,然后如果 digestB = digestDecodeB ,那么标明data 是由A发送过来的,否则不是同理,B 如果要发送回执,就在循环执⾏上⾯的步骤即可4、总结:数字摘要验证了原⽂是否被篡改、公钥私钥保证了数字摘要的安全性,两者配合使⽤安全性⾼,速度快。
数字签名

(2)可鉴别身份。由于传统的手工签名一般是双方直接见面的,身份自可一清二楚。在络环境中,接收方必 须能够鉴别发送方所宣称的身份。
(3)防篡改(防破坏信息的完整性)。对于传统的手工签字,假如要签署一份200页的合同,是仅仅在合同末尾 签名呢?还是对每一页都签名?如果仅在合同末尾签名,对方会不会偷换其中的几页?而对于数字签名,签名与原 有文件已经形成了一个混合的整体数据,不可能被篡改,从而保证了数据的完整性。
感谢观看
1、要保护文档内容的真实性,可以添加不可见的数字签名。已签名文档的底部有“签名”按钮。 2、单击“文件”选项卡。 3、单击“信息”。 4、在“权限”下,单击“保护文档”、“保护工作簿”或“保护演示文稿”。 5、单击“添加数字签名”。 6、阅读 Word、Excel或 PowerPoint中显示的消息,然后单击“确定”。 7、在“签名”对话框中的“签署此文档的目的”框中,键入目的。 8、单击“签名”。 9、在对文件进行数字签名后,将出现“签名”按钮,并且文件会变为只读以防止修改。
实现方法
数字签名算法依靠公钥加密技术来实现的。在公钥加密技术里,每一个使用者有一对密钥:一把公钥和一把 私钥。公钥可以自由发布,但私钥则秘密保存;还有一个要求就是要让通过公钥推算出私钥的做法不可能实 现。
普通的数字签名算法包括三种算法:
1.密码生成算法;
2.标记算法;
3.验证算法。
数字签名技术大多基于哈希摘要和非对称密钥加密体制来实现。如果签名者想要对某个文件进行数字签名, 他必须首先从可信的第三方机构(数字证书认证中心CA)取得私钥和公钥,这需要用到PKI技术。
数字签名正常的结果为: C:\Documents and Settings\litiejun\??\che.exe: Verified: Signed Signing date: 16:28 2008-4-29 Publisher: n/a Description: n/a Product: n/a Version: n/a File version: n/a
数字签名

数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。
一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。
数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。
数字签名是非对称密钥加密技术与数字摘要技术的应用。
原理:数字签名的文件的完整性是很容易验证的(不需要骑缝章,骑缝签名,也不需要笔迹专家),而且数字签名具有不可抵赖性(不需要笔迹专家来验证)。
简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。
这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。
它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。
基于公钥密码体制和私钥密码体制都可以获得数字签名,主要是基于公钥密码体制的数字签名。
包括普通数字签名和特殊数字签名。
普通数字签名算法有RSA、ElGamal、Fiat-Shamir、Guillou- Quisquarter、Schnorr、Ong-Schnorr-Shamir 数字签名算法、Des/DSA,椭圆曲线数字签名算法和有限自动机数字签名算法等。
特殊数字签名有盲签名、代理签名、群签名、不可否认签名、公平盲签名、门限签名、具有消息恢复功能的签名等,它与具体应用环境密切相关。
显然,数字签名的应用涉及到法律问题,美国联邦政府基于有限域上的离散对数问题制定了自己的数字签名标准(DSS)。
主要功能:保证信息传输的完整性、发送者的身份认证、防止交易中的抵赖发生。
数字签名技术是将摘要信息用发送者的私钥加密,与原文一起传送给接收者。
接收者只有用发送者的公钥才能解密被加密的摘要信息,然后用HASH函数对收到的原文产生一个摘要信息,与解密的摘要信息对比。
网上支付的安全使用数据机密技术、抗抵赖技术、身份认证技术

DES算法优缺点
– DES算法的优点是加密、解密速度快, 算法容易实现,安全性好,迄今为止尚 未找到一种在理论上破译DES的行之有 效的方法。 – DES算法的缺点是密钥量短,容易被 穷尽,在复杂网络中难于实现密钥管理。
思考
对称密码体制已经能够对信息进行加 密,为什么还需要公钥密码体制呢? 公钥密码体制仅仅比对称密钥密码体 制多用了一个密钥而已吗,两个密钥 好在哪里呢?
密文: 明文: please transfer one million dollars topaedobuotoossctcesilyntwlnmomantafllsksor my Swiss bank account six two two abcd nntsowderiricxbselawaia 密钥: computer
加密密钥 解密密钥 (K1) 密码编码学 (K2)
二
数据机密技术与应用
• 密码分析者(Cryptanalyst)又称攻击者,可 采用搭线窃听等方式直接获得未经加密的明文 或加密后的密文,并分析得知明文。这种对密 码系统的攻击手段称为被动攻击(Passive attack),特点:不破坏原始信息 • 攻击者还可以采用删除、更改、增添、重放、 伪造等手段主动向系统注入假信息,这种对密 码系统的攻击手段称为主动攻击(Active attack)
例如:P= battle on Sunday K=5
abcdefghIgklmnoporstuvwxyz efghIgklmnopqrstuvwxyzabcd
C= fexxpi sr wyrhec
K=3时,结果是怎样的呢?
(2)多表替代密码 • 维吉尼亚(vigenere)加密方法
由16世纪法国亨利三世王朝的布莱瑟 维吉尼亚发明的。维吉尼亚密码引入 了“密钥”的概念,即根据密钥来决 定用哪一行的密表来进行替换,以此 来对抗字频统计。
数字摘要、数字签名实验

实验三、数字摘要、数字签名实验
(一)实验目的
通过实验理解数字摘要、数字签名原理与应用
(二)实验步骤
1、选取一个word文档,利用HASH计算器计算其数字摘要MD5的值。
2、利用RSA TOOL工具对其数字摘要进行加密进行数字签名。
3、利用QQ将word文件和数字签名传给另一位同学,另一位同学解密数字签名并计算数字摘要的MD5的值和传输过来的文段的MD5值。
并验证传输过程中文档是否被修改。
4、发送方将word文档修改后,再次,发给另一位同学,接收后再次重复第3步,验证文档是否被篡改。
(三)实验过程
1、选取一个word文档,利用HASH计算器计算其数字摘要MD5的值。
2、利用RSA TOOL工具对其数字摘要进行加密进行数字签名。
3、利用QQ将word文件和数字签名传给另一位同学,另一位同学解密数字签名并计算数字摘要的MD5的值和传输过来的文段的MD5值。
并验证传输过程中文档是否被修改。
对方接收后进行解密:
MD5值相同说明文件未被改动
4、发送方将word文档修改后,再次,发给另一位同学,接收后再次重复第3步,验证文档是否被篡改。
将原文修改后:
得到的MD5值与原来不同,说明文件已经被修改。
(四)实验结果分析
本次实验通过DES加密解密工具、hasher、RSATOOL对word文档进行加密解密。
在实际生活中,这个实验可以保证文档在传输中不被修改。
根据实验可知,如果文档未被修改。
名词解释 数字签名

名词解释数字签名数字签名是一种用于验证数字信息的技术,具有高度的安全性和可靠性。
它通常被用于在网络中传输文档、电子邮件和软件等数字信息,以确保信息的真实性、完整性和不可抵赖性。
本文将分步骤阐述数字签名的概念、原理和实现方法。
一、数字签名的概念数字签名是利用公钥密码学技术对数字信息进行加密和解密的过程。
它通过将数字信息与签名者的私钥相结合,生成一个加密的数字码,即数字签名。
数字签名包含了信息的摘要和签名者的身份信息,它可以确保信息在传输过程中不被篡改、伪造或者假冒。
二、数字签名的原理数字签名的原理基于公钥密码学技术,它包括两个关键的加密算法:一是哈希算法,二是非对称加密算法。
哈希算法是一种将任意长度的输入数据转换为固定长度输出数据的算法,它主要用于生成信息的摘要。
哈希算法的输出被称为消息摘要或数字指纹,它具有唯一性、确定性和不可逆性等特性,因而可以作为数据的唯一标识。
非对称加密算法是一种利用两个密钥(公钥和私钥)来进行加密和解密的算法,公钥用于加密,私钥用于解密。
在数字签名中,签名者先用哈希算法生成信息的摘要,然后用私钥加密摘要,生成数字签名。
接收者利用签名者的公钥解密数字签名,得到信息的摘要,再利用哈希算法对原始信息进行摘要,将两个摘要进行对比,如果相同,则说明信息没有被篡改,信息的来源可靠。
三、数字签名的实现方法数字签名的实现需要满足以下四个条件:保证信息的完整性、保证信息的真实性、保证信息的不可抵赖性和保证密钥的安全性。
为了保证信息的完整性和真实性,签名者通常会使用哈希算法生成消息摘要,并将摘要与数字签名一起发送给接收者。
为了保证信息的不可抵赖性,签名者需要在签名过程中附加自己的身份信息,例如数字证书、身份证明等。
为了保证密钥的安全性,签名者需要使用密码学技术来保护私钥,例如使用加密的存储介质、访问控制和密钥管理等技术。
在实际应用中,数字签名可以通过多种方式实现,例如使用PKI (公钥基础设施)、PEM(隐私增强邮件)、PGP(网络通讯加密软件)等标准和协议。
数字签名科技名词定义中文名称数字签名英文名称digital

数字签名科技名词定义中文名称:数字签名英文名称:digital signature 定义:以电子形式存在于数据信息之中的,或作为其附件的或逻辑上与之有联系的数据,可用于辨别数据签署人的身份,并表明签署人对数据信息中包含的信息的认可。
应用学科:通信科技(一级学科);网络安全(二级学科)以上内容由全国科学技术名词审定委员会审定公布求助编辑百科名片数字签名的流程数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。
一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。
目录基本介绍主要功能签名过程个人安全邮件证书用数字签名识别病毒原因分析使用方法原理特点鉴权完整性不可抵赖如何实现Java数字签名步骤基本介绍主要功能签名过程个人安全邮件证书用数字签名识别病毒原因分析使用方法原理特点鉴权完整性不可抵赖如何实现Java数字签名步骤展开编辑本段基本介绍数字签名不是指将你的签名扫描成数字图像,或者用触摸板获取的签名,更不是你的落款。
数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。
数字签名是非对称密钥加密技术与数字摘要技术的应用。
数字签名了的文件的完整性是很容易验证的(不需要骑缝章,骑缝签名,也不需要笔迹专家),而且数字签名具有不可抵赖性(不需要笔迹专家来验证)。
简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。
这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。
它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。
基于公钥密码体制和私钥密码体制都可以获得数字签名,目前主要是基于公钥密码体制的数字签名。
包括普通数字签名和特殊数字签名。
数字摘要与数字证书

数字摘要与数字证书1、数字摘要定义:数字摘要是将任意长度的消息变成固定长度的短消息,它类似于一个自变量是消息的函数,也就是Hash函数。
一个Hash函数的好坏是由发生碰撞的概率决定的。
如果攻击者能够轻易地构造出两个消息具有相同的Hash值,那么这样的Hash函数是很危险的。
一般来说,安全Hash标准的输出长度为原理:通过某种密码运算生成一系列符号及代码组成电子密码进行签名,来代替书写签名或印章,对于这种电子式的签名还可进行技术验证,其验证的准确度是一般手工签名和图章的验证而无法比拟的。
使用过程:(1)发方A将原文信息进行哈希运算,得一哈希值即数字摘要(2)发方A用自己的私钥数字签名DS;(3)发方A用对称算法钥PBA采用对称算法xx,得xx信息(4)发方用收方B就好像将对称密钥(5)发方A将xx信息(6)收方B接受到数字信封SK;(7)收方B用对称密钥及发方A证书的公钥(8)收方B验证数字签名,先用发方(9)收方B同时将原文信息用同样的哈希运算,求得一个新的数字摘要(10)将两个数字摘要数据没有被篡改,是保密传输的,签名是真实的;否则拒绝该签名。
这样就做到了敏感信息在数字签名的传输中不被篡改,未经认证和授权的人,看不见原数据,起到了在数字签名传输中对敏感数据的保密作用。
优点:保证信息的完整性2、数字证书定义:的,人们可以在网上用它来识别对方的身份。
含公开密钥拥有者信息以及公开密钥的文件。
160位,这样才能保证它足够的安全。
PVA,采用非对称RSADES的对称密钥SK对原文信息、E;PBB,采用RSA算法对对称密钥SK装到了一个用收方公钥xx的信封里;E和数字信封DE一起发送给收方DE后,首先用自己的私钥SK通过DES算法xxxx信息PBA;A的公钥xx数字签名得数字摘要MD和MD进行比较,验证原文是否被修改。
如果二者相等,说明机构,又称为证书授权(数字证书是一个经证书授权中心数字签名的包最简单的证书包含一个xx、MD;MD进行加密,即得数字签名SD及发方ASK加密,形成数字信封B;PVB解密数字信封,取出对称密钥E,还原出原文信息、数字签名MD;MD;)中心发行名称以及证DE,SD算法,对数字摘要证书的公钥-----CACertificate Authority书授权中心的数字签名。
第05章 消息摘要与数字签名(2)

第6章
消息摘要与数字签名
(3)具有数据完整性的数字签名方法
–(5)接收方(B)收到消息(M)和加密的数字签名 (DE)后,使用自己的私钥解密加密过的数字签名 (DE) ,得数字签名。 –(6)接收方(B) 使用与A相同的消息摘要算法计算 消息摘要(MD2)。 –(7)接收方(B)用发送方的公钥解密数字签名。注 意A用私钥加密消息摘要,得到数字签名,因此只能 用A的公钥解密。这个过程得到原先的消息摘要(MDl )。
应的答复,李四的答复是用K王加密的,以为这是张三的公 钥。
(8)王五截获这个消息,用自己的私钥解密,非法获得信
息,并用张三的公钥K张重新加密信息,然后转发给张三, 张三用自己的私钥解密发过来的信息。
(9)这个过程不断重复,张三和李四发送的信息都被王五
看到,而他们两个还以为是直接进行通信呢。
第6章
第6章
消息摘要与数字签名
数字签名作用
用发送方的私钥加密消息有什么用? A的公钥是公开的,谁都可以访问,任何人都可以用其解
密消息,了解消息内容,因而无法实现保密。那么它的作 用是什么?它的作用是:
(1)身份认证:
–如果接收方B收到用A的私钥加密的消息,则可以用A 的公钥解密。如果解密成功,则B可以肯定这个消息是A 发来的。这是因为,如果B能够用A的公钥解密消息,则 表明最初消息用A的私钥加密(记住,用一个公钥加密的 消息只能用相应私钥解密,反过来,用一个私钥加密的 消息只能用相应公钥解密),而且只有A知道他的私钥 。 因此发送方A用私钥加密消息即是他自己的数字签名。
消息摘要与数字签名
李四提供自己的公钥K张,并请求李四也把他的公钥K李给张
三(相互要交换公钥)。
(2)中间攻击者王五截获张三的公钥K张,并用自己的公
基于数字摘要的数字签名技术

基于数字摘要的数字签名技术
王艳
【期刊名称】《南通纺织职业技术学院学报》
【年(卷),期】2006(006)001
【摘要】基于互联网的电子商务由于其快速、低成本的优势,给企业和商家带来了莫大的商机,但这种电子交易的安全性必须得到保证.现在,人们通常采用基于数字摘要、结合RSA算法所形成的数字签名技术来保证交易数据的完整性和不可抵赖性.【总页数】4页(P10-12,33)
【作者】王艳
【作者单位】无锡商业职业技术学院,无锡,214063
【正文语种】中文
【中图分类】TP393.08
【相关文献】
1.基于数字签名技术的数字化校园数据安全策略 [J], 江林升;朱学芳
2.基于数字签名和数字水印技术的电子签章算法研究 [J], 黄敏;赵艳;王海瑶
3.一种基于摘要口令加密私钥的数字签名模式 [J], 郑丽萍;柴争义
4.电子投票系统探讨——基于双重数字签名和数字信封技术 [J], 郭琦
5.基于数字水印和数字签名技术的医学影像存储与传输系统安全机制研究 [J], 曾旭;司马宇
因版权原因,仅展示原文概要,查看原文内容请购买。
深入理解-信息加密信息摘要数字签名

深⼊理解-信息加密信息摘要数字签名⼀、数据加密加密 数据加密就是将明⽂的数据按照某种算法进⾏处理,使其成为不可读的数据,通常称为“密⽂”。
⽤于保护数据不被其他⼈⾮法窃取、阅读。
解密 加密的逆过程为解密,即将该编码信息转化为其明⽂数据的过程。
常见的加密算法可以分为:对称加密算法、⾮对称加密算法。
1、对称加密算法 数据的加密和解密使⽤相同的密钥,在密码学中被称为对称加密算法。
对称加密算法实现简单,密钥较短,且破译困难,是最初的加密算法。
特点:优点:算法公开、计算量⼩、加密速度快、加密效率⾼。
缺点:在数据传输前,发送⽅和接收⽅必须约定并管理保存好秘钥,如果⼀⽅的秘钥被泄露,那么加密信息就存在安全泄露。
使⽤场景:本地数据加密、https通信、⽹络传输等。
常见算法:AES、DES、3DES、DESX、Blowfish、IDEA、RC4、RC5、RC6。
2、⾮对称加密算法 ⾮对称加密算法思想为“加密和解密可以使⽤不同的规则,只要这两种规则之间存在某种对应关系",该类算法使⽤⼀对公钥/私钥完成数据的加密解密过程。
通常:使⽤公钥对数据进⾏加密,使⽤对应的私钥进⾏解密。
使⽤私钥对数据进⾏加密,使⽤对应的公钥进⾏解密。
特点:优点:⾮对称加密相⽐对称加密其安全性更好。
缺点:加密和解密花费时间长、速度慢,只适合对少量数据进⾏加密。
使⽤场景:https会话前期、CA数字证书、信息加密、登录认证等。
常见算法:RSA、DSA(数字签名⽤)、ECC(移动设备⽤)、Diffie-Hellman、ElGamal。
3、加密算法的选择对称加密算法不能实现数字签名,因此签名只能⾮对称算法。
验证⽂件或字符⼀致性⽤信息摘要算法。
数据量⼤⽤对称加密算法、⼩则可以⽤⾮对称加密。
还可以⾮对称与对称集成使⽤,参考https请求原理。
RSA建议采⽤1024位的数字,ECC建议采⽤160位,AES采⽤128为即可。
⼆、数据摘要 信息摘要:对数据进⾏处理,取得⼀段固定长度的⽂本。
数字摘要技术与数字签名

数字摘要技术与数字签名数字摘要技术数字摘要技术(Digital Digest)也称作为安全HASH编码法(SHA:Secure Hash Algorithm)。
数字摘要技术用于对所要传输的数据进行运算生成信息摘要,它并不是一种加密机制,但却能产生信息的数字"指纹",它的目的是为了确保数据没有被修改或变化,保证信息的完整性不被破坏。
数字摘要技术有如下主要特点:·它能处理任意大小的信息,并对其生成固定大小的数据摘要,数据摘要的内容不可预见·对于相同的数据信息进行HASH后,总是能得到同样的摘要;如果数据信息被修改,进行Hash后,其摘要必定与先前不同·HASH函数是不可逆的,无法通过生成的数据摘要恢复出源数据数字签名数字签名(Digital Signature)用来保证信息传输过程中完整性、提供信息发送者的身份认证和不可抵赖性。
使用公开密钥算法是实现数字签名的主要技术。
使用公开密钥算法,当你用自己的私钥加密了一个信息,并将其发送给一个朋友时,如果你的朋友能够使用你的公钥来解密出信息,他就能确定信息必定是从你那里发来的,而不是一些冒名顶替的。
这实际上就是数字签名的原理。
由于公开密钥算法的运算速度比较慢,因此可使用HASH函数对要签名的信息进行摘要处理,减小使用公开密钥算法的运算量。
因此,数字签名一般是结合了数字摘要技术和公开密钥算法共同使用。
实现数学签名的过程如下:签名信息1.对信息M进行HASH函数处理,生成摘要H2.用你的(发送者的)私钥加密H来获取数字签名S3.发送{M, S}验证签名信息1. 接受{M, S} 并区分开它们2. 对接收到的信息M进行HASH函数处理,生成摘要H*3.取得发送者的公钥4.用公钥解密S,来获取H5.比较H和H*,如果H和H*是一样的,即说明信息在发送过程中没有被篡改,反之即反由于对信息进行数字签名后,明文信息也通过网络进行传递,因此,在做完数字签名后,还要对整个信息(包括明文信息M和数字签名的密文信息S)进行加密,以保证信息的保密性。
数字摘要概要

数字摘要的作用过程:
(1)对原文使用Hash算法得到数字摘要; (2)将数字摘要与原文一起通过网络通 信发往接收方; (3)接收方将收到的原文应用单向Hash 函数产生一个新的数字摘要; (4)将新数字摘要与发送方数字摘要进 行比较。
数字摘要的常用算法
1、 MD5
MD5即Message-Digest Algorithm 5(信息-摘要算 法 5),用于确保信息传输完整一致。是计算机广泛使用 的杂凑算法之一(又译摘要算法、哈希算法),主流编程 语言普遍已有MD5实现。 将数据(如汉字)运算为另 一固定长度值,是杂凑算法的基础原理,MD5的前身有 MD2、MD3和MD4。 MD5的作用是让大容量信息在 用数字签名软件签署私人密钥前被"压缩"成一种保密的格 式(就是把一个任意长度的字节串变换成一定长的十六进 制数字串)。 除了MD5以外,其中比较有名的还有 sha-1、RIPEMD以及Haval等一致性验证 MD5的 典型应用是对一段信息(Message)产生信息 摘要(Message-Digest),以防止被篡改。
3、鉴权协议
鉴权协议又被称作挑战--认证模式,在传 输信道是可被侦听但不可被篡改的情况下,这是 一种简单而安全的方法,需要鉴权的一方向将被 鉴权的一方发送随机串,挑战被鉴权方将该随机 串和自己的鉴权口令字一起进行Hash运算后返 还鉴权方,鉴权方将收到的Hash值与在己端用 该随机串和对方的鉴权口令字进行Hash运算的 结果相比较,认证如相同则可在统计上认为对方 拥有该口令字即通过鉴权。
数 字摘 要概要
随着网络技术的发展网上信息的安全和保 密越来越受到重视,但是互联网给我们生活带来很 大便利的同时,更存在着各种因素的潜在威胁。为 了保证信息安全不受侵犯,可以采用多种技术如加 密技术、访问控制技术、认证技术及安全审计技 术等但这些技术大多数是用来预防的,信息一旦被 攻破就不能保证信息的完整性。在网络安全目标 中要求信息在生成、存储或传输过程中保证不被 偶然或蓄意地删除、修改、伪造、乱序、重放、 插入等破坏和丢失,因此需要一个较为安全的标准 和算法,以保证数据的完整性。数字摘要算法就是 提供数据完整性的安全标准。这方面典型的算法 有MD5和SHA-1算法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字摘要技术与数字签名
数字摘要技术
数字摘要技术(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)进行加密,以保证信息的保密性。
实际过程如下图所示:发送方:
接收方:
数字证书
公开密钥加密技术允许人们用私有密钥给电子信息进行数字签名。
信息接收者可使用发送者的公开密钥来查证该信息确为相应私钥所签发。
这一验证过程说明信息发送者确实拥有相应的私人密钥,但这并不能说明发送者是合法的。
也就是说,信息发送者无法证明他们确为其所称之人。
为了得到身份验证的身份证明,公共密钥必须以某种值得信赖的方式与个人相联系。
这一任务由数字证书来完成。
数字证书是一些电子信息,它将公钥与其所有者的个人详细资料(诸如姓名、地址)联系起来。
然而,证书本身并无法保证其所有者的身份。
要使别人认可,证书必须由更高的权威机构--认证中心(CA)
签署。
CA向身份得到证实的用户签署并颁发证书。
其他人因此便可以信任这些证书了,因为这是由他们所信任的CA签署的。
现在,当人们用他的私钥签发电子信息时,接收者可用与之相应的公钥核实电子信息,并且可用包含有公钥的证书验证发送者的身份。
现今使用的证书格式大多遵循X.509标准。