区块链大学程序那些事区块链研习社

基于口令的密码(PBE)

2020-05-05  本文已影响0人  flydean程序那些事

基于口令的密码(PBE)

基于口令的密码(Password Based Encryption,PBE)是一种基于口令生成密钥,并使用该密钥进行加密的方法。其中加密和解密使用的是同一个密钥。

根据用户自己的口令和salt生成口令密码,我们先看下加密的过程:

image

加密的过程可以分为这几步:

  1. 生成KEK密钥
  1. 生成会话密钥并加密
  1. 加密消息

步骤1生成的KEK并不需要保存,因为它完全可以根据salt来重构。

接下来我们再看一下解密的过程:

image
  1. 重建KEK
  1. 解密会话密钥
  1. 解密消息

为什么要使用salt呢?

salt主要是为了防御字典攻击,因为用户自己的口令不具备随机性,很容易被暴力破解。加了salt之后,被暴力破解的难度大大加大。

更多内容请访问 http://www.flydean.com/pbe/

上一篇下一篇

猜你喜欢

热点阅读