Erpass

2019-06-26 59 Words

Erpass 一个安全的密码生成软件

原始网站: blog.ertuil.top

项目地址:https://github.com/ertuil/erpass

最近研究各个网站的口令管理。发现主要有两种类型的口令管理。一种是以 1password,lastpass 等为代表的的口令管理软件,其核心思路是把口令存在安全仓库中。但是这些软件不是闭源(担心后门)就是不太好用。 另外一种就是以 lesspass.com,花舟 为代表的无状态的密码生成算法。通过主秘钥和其他信息来生成固定的口令。

我在此基础之上重新实现了一个类似的网站,目前已经托管了一些不太重要的网站的口令(在大量测试安全性后可能考虑完全使用)。主要有如下特点:

  1. 无状态,意味着服务器没有任何数据库或者其他信息。
  2. 采用了 PDPKF2-HMAC-SHA256 和其他算法,多次迭代之后产生强度足够的密码
  3. 部署相关性,每一次部署都生成独立的秘钥,这意味着每一个部署即便主密码和其他信息完全一样,也好吧产生不同的结果
  4. 基于 Golang 语言,跨平台、单文件,可以很方便的在各种平台部署。

安装方法

erpass  -d true --host 0.0.0.0 --port 1234

使用方法

记住一个主密码 Master Key 即可(需要强度足够、复杂、且没有在别处使用)。而后输入状态信息,点击 copy 就复制到剪贴板了。

也可以在命令行中使用 erpass -g qq.com 而后输入主密码的方式来生成。

安全相关

  1. 每一个部署都产生了单独的 secret key,这意味着不同部署是互相独立的,也意味着产生的 secret key 需要单独备份。
  2. Master Key 不提供任何可以找回的手段。
  3. 一定需要使用 nginx 作为前端使用 https 部署。

算法

PDPKF2 一种工业级的基于口令的密码派生算法多轮迭代,SHA256 杂凑函数。

Related Topics


No related topics