计算机网络-7-3-数字签名
数字签名
数字签名必须保证能够实现以下3点:
- 接收者能够核实发送者对报文的签名。也就是所,接收者能够确认该报文的确是发送者发送的。其他人无法伪造对报文的签名。这叫报文鉴别。
- 接收者确信所收到的数据和发送者发送的数据完全一样,没有被篡改过。这叫报文的完整性。
- 发送者事后不能抵赖对报文的签名,这叫不可否认。
现在已有多种实现数字签名的方法。但采用公钥算法要比对称密钥算法更容易实现。下面就来介绍这种数字签名。
为了进行签名,A用其私钥
数字签名为什么具有上述的上述的三个功能点?
- 因为除了A之外没人持有A的私钥
。所以除了A外没有别人能产生密文 。这样,B就相信报文X就是A签名发送的,这就是报文鉴别的原理。 - 同理,其他人如果篡改过报文,但由于无法得到A的私钥
来对X进行加密,那么B对篡改过的报文进行解密后,将会得出不可读的明文,就知道收到的报文被篡改过。这样就可以保证报文的完整性。 - 若A要抵赖曾经发送报文给B,B可以把X以及
出示给进行公证的第三者,第三者很容易的用 去证实A确实发送X给B,这就是不可否认的功能。这三项的关键都是没有其他人能够持有A的私钥SKA。
但上述的过程仅仅只是对报文进行了签名,对报文X还未保密,因为截获到密文
A向B发送时:A使用A的私钥
B接收到后使用B的私钥
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构