| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> PBE(Password Based Encrytion)基于口令的密码 -> 正文阅读 |
|
[网络协议]PBE(Password Based Encrytion)基于口令的密码 |
什么是PBE我们在使用混合密码系统或者使用密钥协商算法+对称加密的方式进行任何数据的加密的时候,都难以避免地要涉及到密钥的保存,那么密钥如果明文地保存在电脑上那么很容易就会被别人盗取,那么如果我们使用另外一个随机密钥去加密会话密钥,这样怎么样呢?很明显这样下去就会无线循环了,这样我们又要考虑保存密钥的密钥的保存。对于我们人来说,我们不喜欢去记数字和字符,但是我们可以记下一些短的口令,这比起动作百来位的密钥来说可好记多了,所以我们就出现了PBE,我们通过对口令和一些随机数结合进行加工,将它转变为一个用来加密会话密钥的密钥,将会话密钥进行加密之后然后将加密后的密钥进行保存。这个生成的加密密钥的密钥其实就可以将其抛弃了,留在电脑上还可以有泄露密钥的风险。我们最后如果要还原会话密钥,只要将随机数和我们脑子中记住的口令进行相同的操作,就可以还原会话密钥,如果别人没有我们脑子中的口令就别想把会话密钥拿到。而且我们还可以对随机数再使用其他的密钥进行加密,然后再这样进行多重的PBE保护。我们还可以每次会话更换一次密钥,将前一次会话做散列函数操作得出下一个会话密钥,这样的操作都是牺牲解密速度换来安全性。 PBE的生成? 盐(随机数)的作用为什么要把口令和随机数结合之后再做散列函数然后才得到密钥加密密钥?我们现在可以思考这样一个问题,就是口令的安全性,一个由人去设置的口令并不是完全的随机,这在加密领域是十分忌讳的,只有完全的随机函数才是最好的口令,但偏偏人就是一个不喜欢记住随机内容的物种,所以我们就需要随机数的帮助,帮助我们拉高整个加密的安全系数,我们可以把盐和密钥加密密钥保存在电脑的安全的地方,然后口令在脑里记住就好了,有的时候为了加大安全保护,我们可以将盐和其他的密钥进行加密。当我们需要进行解密的时候,我们使用口令和盐计算出密钥加密钥,然后再用密钥加密密钥解密出会话密钥,然后再使用会话密钥解出会话的密文。 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 7:43:29- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |