芝麻开门

SESAME OPEN(芝麻开门)

Passwords on my own.

背景

Sesame open 这个项目源于几个月前跟朋友聊到他对密码管理的需求,才意识到尽管现有很多免费或商业的密码管理工具,却因为种种原因不愿意用。

于是想到了我多年前随手编写的一个工具。当时研究各种加解密方法时,灵机一动,有个好点子,可以满足我对密码管理的几个偏执的需求。

这个工具,我已私藏了多年。

然而朋友的迫切需求并没有治好我的拖延症晚期:(

终于借着这次休假把细节完善了下,开源到了 Github,提供给像我一样有着无以名状的“洁癖”和“控制欲”的朋友。

简介

我们通常有多种密码以及各种密码的变体,来应对临时的、永久的、重要的、不重要的网站的注册和登录。

为了记住这些密码,我们煞费苦心,有用键盘位置的,有用诗句的,有用数学公式的,还有用(前)女友名字或者生日的。

但是,何必用人类不擅长的记忆力来做这些枯燥的事情呢?

Sesame 是一个简洁(到只有一个源文件)的程序,通过这个程序,我们可以很方便地把“网站-用户名-密码”记录到一个文本文件中。

再利用其它云盘,比如 DropboxAnybox 等来实现存储到云端。

Sesame 有几个优势,可以完美地满足我对于密码管理的几个偏执的要求:

  • 密码必须只有我自己能访问(毕竟都是敏感数据,这也是我一直不用其它商业密码管理平台的原因)
  • 不能是明文存储
  • 管理方便
  • 同步方便(假如换电脑,不需要再重复管理)
  • 免费:)

这五大优势,我概括其为 “Passwords on my own.

安全性

Sesame 默认的文本文件 在 ~/.sesame/pwd ,可以通过配置文件 ~/.sesame/config.yaml 来修改。

那么怎么保证这个文本文件的安全性呢?

Sesame 通过 公钥加密方法 来实现密码的非明文存储以及解密。

毕竟私钥(~/.ssh/id_rsa)是绝对不能泄露的。

除了加解密过程,Sesame绝对不会以任何形式运行在后台或读取密钥对:)

这个项目基于Python编写,理论上可以跨平台,不过目前还只在Mac/Ubuntu下测试过。

更多信息,移步 Github