网络安全基础知识:

问题 解决
1.窃听 加密
2.欺骗 消息认证/数字签名
3.伪造 消息认证/数字签名
4.否认 数字签名

demo 在公钥密码中,任何人都可以使用公钥进行加密

在数字签名技术中,有以下2种行为

生成签名

验证签名

demo

思考

如何能保证这个签名是消息发送者自己签的?

答案

用消息发送者的私钥进行签名

数字签名和公钥密码

数字签名,其实就是将公钥密码反过来使用

  私钥 公钥
公钥密码 接受者解密时使用 发送者加密时使用
数字签名 签名者生成签名时使用 验证者验证签名时使用
谁持有密钥 个人持有 只要需要,任何人都可以持有

数字签名的过程(简化版)

demo 简化版缺点就是对消息进行加密很耗性能或者耗费时间.

数字签名的过程 – 改进

demo

数字签名验签 demo

如果有人篡改了文件内容或者签名内容,会是什么结果?

结果是:签名验证失败,证明内容会篡改

数字签名不能保证机密性?

数字签名的作用不是为了保证机密性,仅仅是为了能够识别内容有没有被篡改

数字签名的作用

数字签名无法解决的问题

中间人攻击

要正确使用签名,前提是用于验证签名的公钥必须属于真正的发送者

如果遭遇了中间人攻击,那么

所以在验证签名之前,首先得先验证公钥的合法性

如何验证公钥的合法性?

证书(数字证书)