密码管理软件导出数据安全性讨论

2016-02-29 05:07:55 +08:00
 sneezry

之前发帖说过我写了一个在线的密码管理软件给自己用,由于没什么密码安全方面的知识,不知道现在这么设计是否会存在安全问题,所以我创建了一个 Demo 账号,并将密码备份发布到了网上,如果你感兴趣不妨试一试看看能不能通过这个备份获取到真实密码,密码备份为下图:

这个测试的目的在于:确保保存在服务器上的备份即使被攻击者拿到,用户的数据也是安全的,甚至考虑将备份数据上传到 GitHub 等公开空间进行自动备份。

在线密码管理地址是https://justpass.github.io(如果你想使用请 fork 一份,我随时可能进行 break change ,另外移动端适配我没做完, use at your own risk )

如果破解成功了,导入备份后可以看到如下画面:

3944 次点击
所在节点    信息安全
20 条回复
ynyounuo
2016-02-29 06:59:41 +08:00


是有特定的 Master Password 才能导入该备份还是说得对那张图做处理?
kn007
2016-02-29 07:41:15 +08:00
支持!
sneezry
2016-02-29 08:59:33 +08:00
@ynyounuo 主密码要吻合才能导入,那幅图就是备份
popok
2016-02-29 10:30:11 +08:00
看看你们截图,再看看 Windows 的字体渲染,真心无力吐槽了
sneezry
2016-02-29 11:23:10 +08:00
@popok 咦?不应该啊,虽然字体会不同,但也不会太糟啊,用的 Yahoo Pure ,默认字体处理得不会太糟啊,方便截图么
popok
2016-02-29 11:27:08 +08:00


我是吐槽 Windows 的字体难看,不是说你的项目啦。
sneezry
2016-02-29 11:34:40 +08:00
@popok 下巴掉了…等我排查下…
sneezry
2016-02-29 11:35:28 +08:00
@popok 但是 Windows 也不该如此 Orz
ctsed
2016-02-29 11:57:02 +08:00
这和 zip 加个密码有什么区别
gxm123gxm
2016-02-29 12:14:56 +08:00
@popok win10 上 chrome ie edge 都很正常啊。你用的哪家的 windows...
sneezry
2016-02-29 13:10:26 +08:00
@ctsed 那么你这句话的意思我可以理解为是安全的么?
GhostFlying
2016-02-29 13:31:43 +08:00
@ctsed 一般这种都会选择 AES 很多次来降低效率的吧(我记得 keepass 默认是 6000 次?),这样可以做到一般电脑穷举效率很低,比起 zip 优势还是明显。

不过总体上开放密码库访问总是一个隐患,毕竟你不能保证你的主密钥真的那么安全 /复杂
sneezry
2016-02-29 13:38:52 +08:00
@GhostFlying 昨天我看到资料*nix 系统很多都是循环加密数千次,也很震惊……当时设计的时候主密码 md5 指纹我循环 20 次都担心会有性能问题,太天真了……另外 ctsed 似乎理解为我的目的在分享原创方法,但重点我是在寻求方案是否安全的答案,就像开始我说的那样,我没什么密码安全方面的知识。
GhostFlying
2016-02-29 13:45:25 +08:00
@sneezry 现代处理器计算 AES 效率很高的, ARM 也有对应的硬件加速模块, 20 次的确是太少了
GhostFlying
2016-02-29 13:48:46 +08:00
顺带我试了下, keepass 自带的测试,在 X220 上一秒就能进行 7987200 次 AES
sneezry
2016-02-29 13:53:56 +08:00
@GhostFlying 但在浏览器里用 JS 搞可能就是另外一码事了
ctsed
2016-02-29 14:04:16 +08:00
r#13 @sneezry https://en.wikipedia.org/wiki/Master_Password
貌似是用来解决存储和传输过程中的密码泄漏问题

1Password 的数据文件是存储在本地和私有网盘

lastpass 有双因素等等额外的措施

安不安全我也不懂,不过你这样公开出来,就好像是在公共澡堂感觉有道德和法律的庇护,大摇大摆的把屁股撅起来

https://howsecureismypassword.net/
kn007
2016-02-29 18:29:19 +08:00
@ctsed 网站收藏了。。。我的密码。。。

It would take a desktop PC about
27 trillion years
to crack your password

副密码:

It would take a desktop PC about
6 thousand years
to crack your password
caizixian
2016-03-01 11:03:42 +08:00
@sneezry 在浏览器里面 JS 加密是慢,但这并不能阻止别人拿到你的密码库后写个 native 程序利用硬件加速爆破。

其他的方面我也不了解,但 KeePass 安全方面的文档倒是很值得一读
popok
2016-03-01 11:50:49 +08:00

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/259753

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX