×用微信扫描并分享

花密 – 好记又安全的密码管理器

50
1 Star2 Stars3 Stars4 Stars5 Stars (3 votes)
Loading...

由于最近各大库被拖,密码安全成为了一件大事。@root 就不幸的在多玩库中招,然后, YY 提示安全异常 (虽然没怎么上过) 。。在 Groups 里几位童鞋讨论密码管理体系时, @root 整理了一些自己的想法,没想到的是,这些想法已经有人加以实现了,这就是花密。@Appinn

花密 - 好记又安全的密码管理器

花密的原理也是基于一个记忆用密码和一个区分不同网站的密码,通过 HMAC 算法获得两个 code 字符串,然后对两个 code 进行计算大小写,最后得到一个 16 位 MD5 hash ,而且这个 hash 也不是标准 MD5,可以有效防止 MD5 反向查询网站的查询,避免社工。

花密算法原理

话说, @root 还是比较喜欢单文件桌面版,不知道作者能不能移植一下,或者,哪位大牛能写个?要是等 @root 来写个的话,估计得等到猴年马月才行吧。。。。囧

update by @sfufoet:只需把花密的页面保存为 html 就行,离线也能使用,它用的是 JS 进行密码的计算。

徐小花:我是花密的作者,关于文章中提到的桌面版本,其实花密已经有了离线版本:http://kisexu.com/blog/18 和 chrome插件: http://kisexu.com/blog/20

最后,感谢 @langgong yu 童鞋的推荐,也欢迎大家推荐其他靠谱的应用~~~

下载地址: 官方网站 | 来自小众软件

×用微信扫描并分享

已有 50 条评论, 我要留言

  1. nuance说道:

    小众的“人人/开心/美空/世纪佳缘/百合/多玩或被泄密”这篇文章下面21楼提供的软件和这个类似

  2. Light※冰之刃说道:

    那我还是宁愿以前见过的输入密码生成卡片= =

  3. 我思我在故说道:

    类似的软件早就有了的,我知道的一个就是PasswordMaker,人家2003年就开始了,十分强大,支持多种Hash算法,跨平台,多浏览器支持,在线离线都可以,不过是英文的。这是官方主页http://passwordmaker.org/,这是Windows桌面版下载链接http://sourceforge.net/projects/passwordmaker/files/latest/download

    • 徐小花说道:

      @我思我在故, 我查看了PasswordMaker,确实思路是相同的,只不过他用URL,我用区分代号,基本思路是相同的。我还要好好考虑考虑,重新整理整理,我想做的和别人不一样,谢谢你

  4. koko说道:

    这玩意有chrome插件
    http://kisexu.com/blog/20

  5. D#说道:

    进去看了,的确不错,关于桌面版,直接把网页保存就可以了,离线一样用(2.单网页应用,获取方便,只要联网即可使用,使用javascript,密码的计算在本地浏览器内进行,无需担心网络安全)。

    • 徐小花说道:

      @D#, 你好我是花密的作者,有什么问题的话,可以直接和我反馈,谢谢

      • somi说道:

        试用了一下,有些少疑问,1、这软件生成的密码好像不包含特殊符号呢。。2、如果用这软件的话,那之前已经在用的密码是不是要重新用这软件生成再在各大网站或软件上修改一遍了,这可不是个小程?3、用这个软件,要记忆“记忆密码”和“区分代码”,正如软件上的例子,淘宝的密码可以用记忆密码+taobao或记忆密码+tb来生成,这样问题来了,到时候密码多起来后,都怕已经忘了淘宝的密码是用“记忆密码+taobao”还是用”记忆密码+tb”生成的了。3、感觉这软件的优势是用了它就不用记密码了,但用什么来记“记忆密码”呢,毕竟那么多密码,该不会都用同样的“记忆密码”吧?

      • long说道:

        如果忘记记忆密码怎么办

  6. 咖啡说道:

    想法很符合我的需求,试用了觉得很好。

  7. sadness说道:

    都用keepass保管……

    • 伊一说道:

      @Winloud, 我能看一下你的这个代码吗?我们大二的编程作业就是这种类型的,我想参考一下

  8. levi说道:

    管理密码推荐用KeePass和Password Safe/Java PasswordSafe(PasswordSafe的java版),都是开源软件,用起来比较放心。

  9. lynx说道:

    这个算法有点简单,根据两个key生成两个md5,一个作为源,在另一个表里查找是否需要转换为大写。如果源的第一个是数字,则换成K开头的。
    其结果就是,如果不是K开头,那么显然是md5的前16位;如果是K开头,那么就是K+md5的2-16位。
    其实只要找到一种映射方法就行,从这个角度来说,这样做已经够用了

    • 徐小花说道:

      @lynx, 感谢,你一定认真看了这个“花密”项目,基本的密码生成原理就是如你说的那样。不过,如果从反向破解的角度看的话,“花密”完全没有问题,目前主流的md5映射库都没有HMAC算法的;每一次计算HMAC需要两个变量;最终的密码其实已经经过了两次不同的变量的HMAC计算,还没有破解网站会做这种映射库的记录吧

      • Lynx说道:

        @徐小花, 恩,而且最后生成的已经缺少了md5的后半部分,原密码是无论如何也无法还原的了。只是最后的密码只有a-f、0-9和k,感觉不够灵活而已。用是绝对够用了的。而且js的好处就是不用通信,密码不会被sniffer

      • Lynx说道:

        @徐小花, ps,有个1990是你生日吧,哇哈哈

    • 徐小花说道:

      @lynx, 呵呵,是的O(∩_∩)O~

      • root说道:

        @徐小花, – – ..原来我等 90 后也在渐渐影响着互联网行业。。。

  10. 玉米阳光说道:

    我觉得 用lastpass 配合keepass 就是完美

    • Qiu说道:

      @玉米阳光, 我就是这么用的,再配合SugarSync或者Dropbox同步Keepass的密码文件。

  11. akatsuki9009说道:

    1Password,Mac下的大神器

  12. dawn说道:

    单独用keepass非常棒

  13. 徐小花说道:

    你好,谢谢小众软件分享我的作品…………
    我是花密的作者,关于文章中提到的桌面版本,其实花密已经有了离线版本:http://kisexu.com/blog/18 和 chrome插件: http://kisexu.com/blog/20

    • root说道:

      @徐小花, 这个离线版还是个网页。。其实我不怎么喜欢浏览器的 JS 版。。我考虑可以在 一个 exe 中完成,而且理论上应该也不难。。我在考虑用易语言试试,看看能不能做出来。。。不过我不熟悉 HMAC ,可能会改个别的算法做 demo。。。

      • 徐小花说道:

        @root, 你好,花密更新了桌面exe版和Greasemonkey脚本版,特别是Greasemonkey脚本版极大地方便了花密的使用,欢迎尝试

  14. reloading说道:

    这个应用在常规的网站问题不大,因为密码是可以复制粘贴的,但如果是网上银行或支付宝这类的不允许粘贴密码的网站,那可就比较麻烦了。

  15. eagle说道:

    为什么不直接用lastpass,要这么麻烦呢

  16. tumuyan说道:

    没什么用的账号全部用弱口令了。使用那些工具总有一天填密码的时候工具不在手边,或者坏掉了。

  17. 格只说道:

    跟我前两天推荐的变量密码设置方法如出一辙,不过,我还是用我的MD5加自己制定的规则吧···毕竟不是纯粹的技术流,软件的安全性也无从判断,哎。。这年头,已经不知道怎么相信别人了。
    另,网址上附了我前两天发布的手动变量密码方法,有兴趣的话可以瞅瞅。

  18. %appdata%说道:

    iobit有一个密码管理器

  19. petcon说道:

    这个只要是稍微会编程的就可以写个程序出来啊

  20. 胡萝卜大王说道:

    其实,生成强壮密码根本无需这些软件,你只要把手向左右或上移一格,再盲打出来心中的单词就没问题了.关键问题在于大量使用同样的用户名和密码.一个密码库被暴,其它网站账号都危险.LastPass是比较好的解决方案.可是也不见得保险…强密码加上自己分级管理吧.

  21. lightecho说道:

    lastpass经常连不上服务器,本地改完同步不到服务器,重启下直接杯具。

  22. 波波说道:

    没这么复杂吧,直接主密码和区分网站一加,再MD5取前6位就可以了,用Python很容易实现的。

  23. 九江博客说道:

    最近密码都被爆啊…

  24. 我就是人民说道:

    俺这里LP使用正常,花密也很不错,省去了自己琢磨用什么算法和编代码的步骤,支持一个

  25. hk说道:

    借地吐槽一下小众给的下载链接….
    没一个好用的….干嘛不用DBank?

  26. trash说道:

    用autohotkey把键盘以某种规律映射一遍
    比如每个键映射为键的右边加上边的数字
    然后输入密码就好了

  27. 吣碎De人说道:

    其实我也打算用易语言做这样的密码生成器的,只是天天加班到半夜,没时间做…另外,我还有一个想法:知道搜狗云输入法,QQ云输入法吧,做一个生成页面,设置几个影响变量,然后将其保存为书签(JS),每次点这个书签,就会跟据这个域名(baidu.com)来计算密码,也可以输入一些信息后生成(如账号等),这样比用HTML应该要方便一点。还有,可以用hta,把生成页(HTML)改一下,保存为HTA,就可以成为成本地程序了,跟应用程序差不太多…

  28. haitao说道:

    http://download.csdn.net/detail/sz_haitao/3991756

    密码,最好是自己容易记,别人很难猜;

    不同地方(邮箱、QQ、论坛、微博、博客、淘宝、支付宝、银行帐号的支付和查询和取款、手机的服务和本机)的密码,不能一样,
    而且不能让别人从一个猜到另一个,
    但又不想记这么多毫无关联的密码。

    能做到吗?这个工具就因此而出现了!

    http://szhaitao.blog.hexun.com/

    系列密码,是通过 不变的“固定特征信息”+每次不同的“具体场合” 自动生成具体场合对应的密码。所以,它是好记的(只需记住固定特征信息,场合都不用记)

    只是生成机制保证了所有人都无法从密码反推得固定特征信息和其它场合的密码。

    只是要注意:固定特征信息只需要一次性设置,而且不得修改!

  29. dyn说道:

    有些网站的密码框里无法粘贴,虽然有一款叫“非粘贴型密码框辅助输入工具”的软件能对付这个情况,但用两个工具毕竟太麻烦。恳问小众及诸网友,有没有一款既能管理密码,又能在非粘贴型密码框自动输入的软件?

  30. somi说道:

    评论失败了,再发一次:

    1、试了几次,生成的密码是没有特殊符号的,只是英文大小写和数字的组合
    2、用这软件不用记密码,但用什么来记“记忆密码”,毕竟那么多密码,该不会都用相同的“记忆密码”吧
    3、用这软件生成的密码,那之前已有的密码不是都要用这软件生成后再去修改了?这工程量可大了!
    4、正如软件上所举的例子,淘宝的密码可以用“记忆密码”+taobao或”记忆密码”+tb来生成,那么问题来了,当密码多起来后,恐怕都已忘了区分代码那里是用了taobao还是tb或是“淘宝”了(记忆密码和区分代码那里均可输入中文,只不过需要粘贴),况且有的区分代码并不会只这么短或可以很好地缩写
    5、刚想说出口但忘了。。

有不同想法?说说看(首次评论会被人工审核,请耐心等待)