志在指尖
用双手敲打未来

数字签名(数字签名技术简介)

数字签名

数字签名(又称公钥数字签名)是只要信息的发送者才干产生的别人无法伪造的一段数字串,这段数字串一起也是对信息的发送者发送信息真实性的一个有效证明。它是一种相似写在纸上的一般的物理签名,但是在使用了公钥加密领域的技能来实现的,用于鉴别数字信息的办法。一套数字签名通常界说两种互补的运算,一个用于签名,另一个用于验证。数字签名对错对称密钥加密技能与数字摘要技能的使用。数字签名

数字签名技术简介

数字签名在ISO7498—2规范中定义为:“附加在数据单元上的一些数据,或是对数据单元所作的暗码改换,这种数据和改换允许数据单元的接纳者用以承认数据单元来历和数据单元的完整性,并保护数据,避免被人(例如接纳者)进行伪造”。
数字签名要完结的功用是我们往常的手写签名要完结功用的扩展。往常在书面文件上签名的首要作用有两点,一是因为对自己的签名本人难以否定,然后承认了文件已被自己签署这一事实;二是因为自己的签名不易被他人模仿,然后承认了文件是真的这一事实。选用数字签名,也能完结这些功用:
(1)承认信息是由签名者发送的;
(2)承认信息自签名后到收到停止,未被修改正;
(3)签名者无法否定信息是由自己发送的。
数字签名的技能基础是公钥暗码技能,下面就先介绍公钥暗码技能的基本思想和RSA公钥暗码体系。
3公钥暗码技能
公钥暗码技能又称为非对称/Jn密技能。与之相对的是对称加密技能。对称加密技能是发送方和接纳方运用相同的密钥进行加密/解密,两边有必要确保这个共同密钥的安全性。其基本进程能够用下图表示:
其间加密改换运用的密钥和解密改换运用的密钥是完全相同的,此密钥有必要以某种安全的办法告诉解密方。大家熟悉的DES加密规范便是一种对称加密技能。1976年,Diffie和Hellman在一篇名叫“NewDirectioninCryptography(暗码学的新方向)”一文中提出了一个新的思想,即:不只加密算法自身能够揭露,便是加密用的密钥自身也能够揭露。这便是公钥暗码体系。其间运用的密钥被分解为一对:一把公钥和一把私钥。只要私钥保密就能够了,公钥能够发到因特网(如网站的黄页)等揭露地方供他人查询和下载。
4数字签名的完结办法
建立在公钥暗码技能上的数字签名办法有很多,有RSA签名、DSA签名和椭圆曲线数字签名算法(ECDSA)等等。下面临RSA签名进行详细分析。
RSA签名的整个进程能够用下图表示:
(1)发送方选用某种摘要算法从报文中生成一个128位的散列值(称为报文摘要);
(2)发送方用RSA算法和自己的私钥对这个散列值进行加密,发生一个摘要密文,这便是发送方的数字签名;
(3)将这个加密后的数字签名作为报文的附件和报文一同发送给接纳方:
(4)接纳方从接纳到的原始报文中选用相同的摘要算法计算出128位的散列值;
(5)报文的接纳方用RSA算法和发送方的公钥对报文附加的数字签名进行解密;
(6)假如两个散列值相同,那么接纳方就能承认报文是由发送方签名的。
最常用的摘要算法叫做MD5(MessageDigest5),它的作者R.L.
Rivest正是提出RSA公钥暗码体系中的R。MD5选用单向Hash函数将任意长度的“字节串”改换成一个128位的散列值,并且它是一个不可逆的字符串改换算法,换言之,即便看到MD5的算法描述和完结它的源代码,也无法将一个MD5的散列值改换回原始的字符串。这一个128位的散列值亦称为数字指纹,就像人的指纹相同,它就成为验证报文身份的“指纹”了。
数字签名是怎么完结与手写签名类同的功用的呢?假如报文在网络传输进程中被修改,接纳方收到此报文后,运用相同的摘要算法将计算出不同的报文摘要,这就确保了接纳方能够判断报文自签名后到收到停止,是否被修改正。假如发送方A想让接纳方误认为此报文是由发送方B签名发送的,因为发送方A不知道发送方B的私钥,所以接纳方用发送方B的公钥对发送方A加密的报文摘要进行解密时,也将得出不同的报文摘要,这就确保了接纳方能够判断报文是否是由指定的签名者发送。一起也能够看出,当两个散列值相一起,发送方B无法否定这个报文是他签名发送的。

未经允许不得转载:IT技术网站 » 数字签名(数字签名技术简介)
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

志在指尖 用双手敲打未来

登录/注册IT技术大全

热门IT技术

C#基础入门   SQL server数据库   系统SEO学习教程   WordPress小技巧   WordPress插件   脚本与源码下载