唐诗密码本用唐诗生成随机密码 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
mfhh
V2EX    分享创造

唐诗密码本用唐诗生成随机密码

  •  
  •   mfhh 2015-09-18 17:22:22 +08:00 9125 次点击
    这是一个创建于 3682 天前的主题,其中的信息可能已经有所发展或是发生改变。

    唐诗密码本

    ss

    怎么使用?

    如果你不知道怎么编一个复杂的密码,那么随机生成一个. 比如"SDSGB9H". 可是这是个什么鬼怎么记?! 来,背一句唐诗就好了. "上帝深宫闭九阍". 拼音首字就是. 而且有数字的哦. 密码级别很高的. 如果有天忘了,凭模糊的印象去翻李商隐的诗集. 或许能找出来的.

    灵感词怎么用?

    如果你输入了灵感词,密码句子里会尽量包含这个词.但是不保证有. 比如你希望给自己的工商银行账号起密码,但是又怕不好记.可以以"工商"为灵感词.生成"GSCWQ , NMDSB" (工商彻屋去,牛马登山避)(大水-白居易). 如果希望有数字 3.可以用"三"做灵感词,得到如"MJZWWXY , XZ3ZBYR"(盟经早晚闻仙语,学种三芝伴羽人)这样的密码.

    开源项目

    这是一个开源项目, https://github.com/fangj/mima, 用 express,angular 搭建. 欢迎小伙伴到 github 上点小星星.

    开发者

    npm install npm start 访问 http://localhost:3000 

    感谢

    本项目使用了这些小伙伴的贡献:

    关于我

    方健,湖建血统的南京土著. 养着一只肥白的中华田园猫. 有很多有趣的想法,就是没空做 T T.

    加微信的同学请给我发红包. 谢谢!

    微信

    22 条回复    2020-01-20 17:32:50 +08:00
    lhbc
        1
    lhbc  
       2015-09-18 17:30:54 +08:00   1
    已加入密码库全家桶,感谢楼主。
    mfhh
        2
    mfhh  
    OP
       2015-09-18 17:40:15 +08:00
    忘了发链接了 http://mima.treenote.net
    怎么修改自己的主题?
    oott123
        3
    oott123  
       2015-09-18 17:43:13 +08:00
    楼主你有没有想过,这样其实就只是一个大字典,你这个项目,危害性不要太大……
    hging
        4
    hging  
       2015-09-18 17:44:25 +08:00
    1L.哈哈哈哈哈
    mfhh
        5
    mfhh  
    OP
       2015-09-18 17:48:42 +08:00
    @oott123 这个大字典就是全唐诗。。。 暴力破解如果用这么大的字典。暴力破解意义就不大了。如果真有人这么干。我就改文学作品库。。
    mfhh
        6
    mfhh  
    OP
       2015-09-18 17:50:35 +08:00
    @oott123 使用者还可以切换大小写组合,特殊标点断句什么的往里面掺沙子。
    cloudy9101
        7
    cloudy9101  
       2015-09-18 18:29:25 +08:00
    有创意, 但是我不想背诗... 2333
    lonelygo
        8
    lonelygo  
       2015-09-18 19:07:38 +08:00
    是不是考虑再加一个个人定义的转码逻辑?
    这样就是进了 1L 密码库全家桶,依然无法逆向
    即使是个大字典,少了转码,别人依然搞不定
    ryd994
        9
    ryd994  
       2015-09-18 21:39:10 +08:00 via Android
    @lonelygo 所谓字典,就是以数量盖复杂度。只要知道唐诗出现过的组合概率更高就行了。
    realpg
        10
    realpg  
    PRO
       2015-09-18 21:51:17 +08:00
    @mfhh
    全唐诗首字母缩写固定组合这么点数据量,作为字典根本不叫大好不好……
    没有个 GB 的容量哪好意思说叫大字典
    Jocktaa
        11
    Jocktaa  
       2015-09-18 22:21:26 +08:00
    靠,以后不能拿唐诗做密码了。。。。
    echo1937
        12
    echo1937  
       2015-09-18 22:23:40 +08:00
    随机密码的优点在于长度和随机性,唐诗首字母看似随机又好记,其实就是就是个字典,而且以全唐诗那点数据量,加上宋词也不会太大(况且大部分人懂的唐诗宋词也就那么一点)。

    如果改变转码定义,那么随机性会增加,好记程度又会降低,似乎无法兼顾。
    vpncup
        13
    vpncup  
       2015-09-18 22:31:25 +08:00 via iPhone
    可以在规则中加入打油诗
    Marfal
        14
    Marfal  
       2015-09-18 22:40:08 +08:00
    @mfhh 没强度的,自己用还可以,用的人多了分分钟破解。
    mfhh
        15
    mfhh  
    OP
       2015-09-19 09:03:40 +08:00
    人类密码=好记+随机性
    密码本解决的是=好记+伪随机

    我同意 @lonelygo 说的要加个人转码逻辑。设计上就是这么考虑的。但是这个转码逻辑不加在程序里,留给用户自己。不是作者偷懒,而是这样才安全。

    无论程序如何加规则,出来的都是大字典。
    最终使用的时候建议是用户根据自己的个性掺沙子(用户个性规则)。
    最终密码 = 程序建议密码(好记+伪随机)+ 用户个性规则(用户个人方便记忆+更强的随机)

    比如密码本生成全的是大写的『 MJZWWXY , XZ3ZBYR 』 这是个种子密码。
    用户在这个基础上有无数中排列组合
    『 MJZWWXY , XZ3ZBYR 』 ->

    简单无标点: MJZWWXYXZ3ZBYR
    替换标点: MJZWWXY#XZ3ZBYR
    每句取首 2 个大写,其余小写: MJzwxy,XZ3zbyr
    每句只取前四个字: MJZWXZ3Z
    加上用户偏好的固定数字: MJZWXZ3Z1314

    还有类似『飞流直下三千尺』,程序给的建议是 FLZX3QC. 用户完全可以用 flzx3000 ,或者 flzx3kc

    这样的排列组合对原字典扩大很多种可能,同时,因为『沙子』不在程序里,所以更加安全。

    沙子用户自己掺有 2 个好处:
    1. 自己想出来的沙子好记
    2. 沙子在用户脑子里:安全

    如果既然要用户费脑子想沙子还要密码本有什么用?

    沙子本身可以安全性很差,可能只有 1~2 位,可能用户长期都用一样的沙子。
    real_password= pesdo_password (机器生成的)+simple_password (用户生成的)

    沙子本身可能只是一个变幻规则,要作用到一个字符串上才能成为实体密码
    real_password=userTransfer (pesdo_password )

    沙子对用户本人是好记的。有较弱的安全度。

    伪密码对知道明文的所有人是好记的。有一般的安全度。

    伪密码+沙子=只对用户本人是好记的。有较强的安全度。

    自己搜了下『唐诗密码本』,发现下文,不是我写的。想法很相似。
    http://www.360doc.com/content/10/0520/16/114824_28577582.shtml
    mfhh
        16
    mfhh  
    OP
       2015-09-19 09:35:24 +08:00
    演示下如何掺沙子。 为了方便理解。不用英文了。中文请脑补为拼音。
    伪随机母密码:『两个黄鹂鸣翠柳』
    =>
    黄鹂鸣翠柳
    2 个黄鹂鸣翠柳
    两个黄鹂鸣:翠柳
    两个 /黄鹂 /鸣翠柳
    2 个 /黄鹂 /鸣:翠柳
    2 个 /y 鹂:鸣翠柳 (注: y 是 yellow 的意思)
    2 个 /y 鹂,鸣:gt (注: gt 是 green tree 的意思)
    2bmgt (注: two birds 鸣 green tree )
    两个黄鹂在 V2EX 鸣翠柳

    采用唐诗的意义在于,由于母密码是有语言含义的,用户可以做很多变幻,又不丧失可记忆性。
    为了避免母密码过于集中,唐诗密码本采用的是全唐诗,字数是唐诗 300 首的 140 倍。
    加上类似上面的 特殊符号断句,数字化,英文化,减字, 增字 等多种变幻手法排列组合,一个母密码可以变幻几百倍。

    从另一个角度说,一般用户用的密码强度就比密码本生成的高?很多都还不如。为什么不用复杂的随机密码呢?因为没法记。所以不实用。 密码本的目的是让有一定强度的密码能够真正用起来。还是那句话,不要求跑过狮子,跑过慢的就行。不要求密码无懈可击,比原来的强度好就行。 密码本的目的,是寻找一个『好记』和『强度』的平衡。
    Delbert
        17
    Delbert  
       2015-09-19 11:02:33 +08:00 via Android
    蓝鲸 同在蓝鲸
    Ncer
        18
    Ncer  
       2015-09-20 11:47:18 +08:00
    挺好,支持
    monk
        19
    monk  
       2015-09-20 20:35:05 +08:00
    出来五言诗,不符最少 6 字符的要求呢
    mfhh
        20
    mfhh  
    OP
       2015-09-22 16:42:24 +08:00
    @monk 2 句一起用嘛
    mfhh
        21
    mfhh  
    OP
       2015-09-22 16:43:17 +08:00
    用类似原理做了个读小说的应用 http://one.treenote.net/
    xmcdhs
        22
    xmcdhs  
       2020-01-20 17:32:50 +08:00 via Android
    挖个坟……突发奇想:五绝集句用来作为账号的唯一指纹短语怎么样?
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2630 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 32ms UTC 12:58 PVG 20:58 LAX 05:58 JFK 08:58
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86