RSA为什么能实现数字签名

如题所述

数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。

  数字签名是非对称密钥加密技术与数字摘要技术的应用。

  数字签名了的文件的完整性是很容易验证的(不需要骑缝章,骑缝签名,也不需要笔迹专家),而且数字签名具有不可抵赖性(不需要笔迹专家来验证)。

  简单地说,所谓数字签名就是附加在数据单元上的一些数据,或是对数据单元所作的密码变换。这种数据或变换允许数据单元的接收者用以确认数据单元的来源和数据单元的完整性并保护数据,防止被人(例如接收者)进行伪造。它是对电子形式的消息进行签名的一种方法,一个签名消息能在一个通信网络中传输。基于公钥密码体制和私钥密码体制都可以获得数字签名,目前主要是基于公钥密码体制的数字签名。包括普通数字签名和特殊数字签名。普通数字签名算法有RSA等

所以一句话解释你的问题:主要原因是:RSA具备了公钥、私钥这个特点。

参考资料:http://baike.baidu.com/view/7626.htm

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-31
什么是RSA? RSA是一种非对称加密算法,用它可以产生公私钥对,就是一个公钥和一个私钥。

什么是数字签名? 数字签名就是 用私钥对数据进行加密。

有了RSA产生的私钥,然后再用RSA加密算法时行加密,才能产生数字签名。

明白?

当然,除了RSA,还有ECC等好多其它非对称算法。本回答被网友采纳
第2个回答  2022-12-16
数字签名用于发送方身份认证和验证消息的完整性,要求具有唯一性,不可抵赖性,不可伪造等特性。RAS的私钥是仅有发送方知道的唯一秘钥,具有唯一性;使用该秘钥加密消息(即数字签名),加密者无法抵赖,具有不可抵赖性;RAS加密强度保证了私钥破译计算不可行,因而难以伪造,从而具有保密性。因而RSA符合数字签名的要求,能实现数字签名。
第3个回答  2021-04-05

这个问题和  差不多.

假如A和B为了防止通信内容被篡改,通过RSA签名的处理一般过程是:

A先将待签名的内容(plainText)进行摘要运算,例如: md5,sha256,sha512之类的hash算法计算hash值(request_hash),然后对request_hash的值进行RSA私钥加密

    得到一个  encryptText值,  然后将原文plainText,encryptText值一起发给另外一端B

B事先得到了A的公钥配置,因此可以尝试解密encryptText,如果失败则说明公钥私钥有问题,如果成功了得到一个hash值,然后B自身也对原始内容plainText进行hash运算,得到一个local_hash值

和A发过来encrypt解密出来的request_hash值对比,如果一样则说明签名没问题是自己同志发过来的,否则中间有诈或者被篡改了。

如需要调试验证结果,可看下:

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网