DH 算法思想 SSH解决内容篡改问题

DH算法用于交换密钥
交换密钥的目的是生成仅双方共享的密钥
交换密钥的基本过程:

  1. 双方确定公开的内容
  2. 用各自的私钥分别对公共内容加密(加密本质就是数学运算)并发送给对方
  3. 这时双方使用自己的密钥对收到的内容加密(要设计运算保证最后结果相同,也就是两步运算的顺序是可以调换的),双方就得到了共同的结果(作为公共密钥)

这样就实现了安全的将密钥传递给对方的目的
由于私钥没有被传递所以监听者无法得到最终的公共密钥(这依赖于难运算,如离散对数等数学难题)

为了防止破解 运算方法应当不能被逆运算或难以被逆运算

DH 算法

蛋老师视频
在这里插入图片描述

核心:离散对数问题 正向运算简单、逆向困难。

加密是为了防止传输过程被监听劫持,而客户端被劫持就不可能保密了

中间人篡改问题

劫持数据 分别发送给双方 成为隐形的中间人

比对哈希值可以确认信息是否篡改,但哈希值也可被篡改

SSH

蛋老师视频
在这里插入图片描述
沟通确定使用哪种算法,实现不为人知的密钥

客户端临时密钥对
服务端临时密钥对
双方交换临时公钥

服务端使用临时私钥加密 哈希签名 发送给客户端

哈希签名:一些双方共知的信息运算得到的哈希值

客户端使用 服务端临时公钥 解密哈希签名 验证信息是否被篡改

这种方法并不能解决一开始通讯就被劫持一直与中间人进行沟通的情况
通常第一次与服务器联系时被劫持的可能性较小(除非一早就被盯上了),当ip信息更改提示时应当警惕

一些方案降低风险

SSH 证书 验证证书
公钥认证 避免重复输入密码 客户端公钥保存到服务端

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值