当前位置: 移动技术网 > IT编程>开发语言>PHP > 基于口令的密码

基于口令的密码

2020年07月29日  | 移动技术网IT编程  | 我要评论

1. 基于口令的密码

我们需要了解两个主要过程:1.加解密过程;2.获取加密密钥值。我们可以看到的是加解密过程就是通过从步骤2中获得加解密密钥的。接下来我们就详细说明秘钥的生成以及获取过程是怎么样的:

  1. 盐和口令通过散列函数(hash函数)构建加密密钥;
  2. 图中没有显示,其实通过口令最终形成的hash值最终会对秘钥进行加密,和盐一起保存在一个安全的地方;
  3. 会把2中加密后的秘钥通过hash值进行解密(因为当时hash加密的时候是对称加密)。

1.1 相对应的优化

1. 通过拉伸来改良PBE

口令的作用: 口令是固定的,并且长度是有限的,那么他的安全强度就不会很高,甚至比单纯的随机数还要低(伪随机数生成的会话秘钥CEK)。为了达到同样的安全强度就需要将口令和随机数绑定在一起。

2. 如何保存口令以及使用口令

  1. 设置口令
    1. 使用自己才知道的信息;
    2. 不要使用对自己重要的事物的名字;
    3. 不要使用别人见过的信息;
    4. 将多个不同的口令分开使用;
  2. 记录口令
    1. 将口令当成钥匙一样保管,其实就是提高它的重要性,不要放在计算机屏幕或者教室里,这些都太明显了。

3. 口令的有限性

假设口令由英文字母以及数字组成(共62个),并且假设只有8个字符,那么可能的组合也只有62821862^8\approx 218万亿种,那么如果攻击者的计算机每秒可以尝试1亿个口令,则只需要25天就可以遍历所有的口令了——换句话说,即使暴力破解的时间也是可以接受的。

针对口令的有效性需要做到的两点

  1. 生成安全的口令;
  2. 以及盐和加密后的加密密钥保存的地方也必须是安全;

3. 对口令的管理

我们使用很多网站都需要用户名和口令进行登录,为了解决难以管理所以很多人都使用了工具进行管理,那么这些工具的原理是什么呢?

  • 通过随机数来生成难以预料的口令,并能够与浏览器联动在网络上自动输入相应的口令;
  • 我们应该提防工具盗用用户的口令,所以首先就要确定开发者是否可信。

参考文章

1.图解密码技术.第11章.第6节.基于口令的密码

本文地址:https://blog.csdn.net/weixin_42295969/article/details/107624563

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网