V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
surunzi
V2EX  ›  分享创造

密码管理小工具

  •  1
     
  •   surunzi · 13 天前 · 2433 次点击

    多年来一直用 “主密钥 + 平台名称(如 google 、baidu 、qq 等)” 的方式生成各类密码。好处是只需要记住一个密钥,输入对应名称就能算出密码,而且每个网站、App 的密码都不一样,不用担心一个泄露导致全部失守。缺点是没法直接背下来,每次都要现查,但常用的那些用久了也会自动记住。比如我的银行卡、微信、支付宝支付密码全都不同,现在也早就记熟了。

    最近重新将这个工具实现迁移到自己的工具箱了: https://github.com/liriliri/tinker

    密码生成

    另外还有一些网站生成的 token ,证书没法使用这种方式则会另外使用 keepass 存储,这次也实现了一个简单的界面工具来编辑查看。目前还比较基础,随着使用会不断完善。

    密码管理器

    所有工具均开源,本地桌面运行,不会上传任何数据,断网可运行,有兴趣的可以试试看。

    22 条回复    2026-03-18 16:52:06 +08:00
    stinkytofux
        1
    stinkytofux  
       13 天前
    何必呢, 直接用密码管理器得了.
    surunzi
        2
    surunzi  
    OP
       13 天前
    @stinkytofux 十年前用的时候还不知道有密码管理器这种东西,后面知道了,但感觉也没方便多少,就一直这样用着。
    EthanCN
        3
    EthanCN  
       13 天前
    有这类需求的用户折腾到终点都是密码管理器。
    loading
        4
    loading  
       13 天前 via Android   ❤️ 3
    我没看你的代码,应该与下面的类似

    salt=你提到的主密钥
    name=平台名称
    pwd=encode(name+salt)

    你这个 encode 最简单就是用 base64

    这有个问题,安全措施里面有一个动作是定期修改密码,你这做不到。总不能 google2026 这样吧。

    当然,你的平台名称其实是一个别名,以前我甚至做过浏览器插件。就是用域名,自己输入 salt 之后出一个 base64 按一定算法取一下位,那时感觉挺好玩的。

    最后随着平台变多,还是放密码管理器吧。

    你现在的密码,做下迁移就行了,密码管理器的生成密码功能更好用。

    现在有些站点对密码强度的要求五花八门。
    sunnywx
        5
    sunnywx  
       13 天前   ❤️ 1
    用 keepass 就好了,免费开源,多端都有
    jayhuang0044
        6
    jayhuang0044  
       13 天前
    账号名称呢 同个平台 N 个账号
    Google, 10 个账号的时候, 账号名称是不是也要加进去
    surunzi
        7
    surunzi  
    OP
       13 天前
    @loading 核心算法直接用了某个开源的: https://github.com/jcoglan/vault ,没做任何修改,定期改密码的我一般都是跳过,印象还没哪个是一定要强制变更的。我的默认组合强度够强,特殊符号跟数字字母都包含,长度也够,一般都符合密码强度,除了某些奇葩网站不能包含特殊符号的。这种情况一般也不是什么重要网站,直接随便填一个常用的简单密码进去。不过确实偶尔遇到网站重要但规则不符合的,以前我是自己固定一个复杂密码用这类网站,现在这种情况是直接扔 keepass 里了。
    surunzi
        8
    surunzi  
    OP
       13 天前
    @sunnywx 后面有些情况不满足也寻找了下开源的密码管理方案,keepass 就在使用。不过之前那套用了好多年了,全部密码记录进去不现实,而且也没什么意义,现在是作为补充在用。重新实现的 keepass 管理工具纯粹是自己想清理掉所有的小工具,方便全平台统一使用。
    surunzi
        9
    surunzi  
    OP
       13 天前
    @jayhuang0044 我个人没这种需要😓 不过平台 + 账号名应该可以达到目的?直接填 google_xxx, google_zzz 之类的。
    surunzi
        10
    surunzi  
    OP
       13 天前
    这种方式使用十多年了,目前也没有发现有账号被盗的情况,密码长度设置够强且每个服务使用不同密码,密码也不存储在任何地方,只有我自己人肉记住唯一的密钥,自我感觉应该足够安全。。。
    chinni
        11
    chinni  
       13 天前
    这东西用多了 想不起来平台名字就 gg ,还有改名字的平台,多 url 的平台。反正挺烦的,终点就是 enpass bitwarden 1pass 了
    surunzi
        12
    surunzi  
    OP
       13 天前
    @chinni 大公司的别名是不可能会忘记的,其它的特殊名字改了你也搜得到它改名前是啥,域名换了也能搜出来之前的域名,概率极低。真忘记了的话,那就忘记了,基本上都是一次性注册的不怎么会再用的,这种我可能都是直接简单密码了。目前没遇到要用忘记别名怎么也想不起来 gg 的情况。
    chinni
        13
    chinni  
       13 天前
    @surunzi 我这种密码管理器里 1000 多个基本不适合记住那么多别名
    surunzi
        14
    surunzi  
    OP
       13 天前
    @chinni 牛逼,我是懒得去手动记这些的。。别名我尝试下来是不需要特别记住的,比如我很久不用的墨墨背单词,某天看到这个 app 想要登录,直接工具输入密钥跟“墨墨背单词”,密码就出来了,记录的别名基本就是名字或域名,不需要试很久,跟查找的效率是一样的。
    huaweii
        15
    huaweii  
       13 天前 via Android   ❤️ 1
    @surunzi
    @loading

    4 楼说的很清楚了。另外我给你一点诛心论,定期修改密码,是一个但凡对密码安全有点追求的玩家都绕不过去的坎,最终归宿永远都是密码管理器。你现在这个不上不下的需求,老实讲受众可能几乎没有。

    而且个人感觉是你虽然执行力拉满把代码撸出来了,但我预测很快你就会随着自己对密码安全的理解,转变成一个传统密码管理器的使用者。

    Anyways 分享一下无可厚非,但这种特殊需求的产物也就是自娱自乐了
    surunzi
        16
    surunzi  
    OP
       13 天前
    @huaweii 见人见智吧,定期修改密码,我个人觉得意义不是很大,公司也早就不要求员工定期更换密码了。核心是要所有网站都使用高强度的不同密码,防止一个被爆破其它也完蛋了。另外,这个东西严格来说也不是我发明的需求,我上面写了其实是用了开源库: https://github.com/jcoglan/vault ,也是十多年前无意看到别人推荐的,我也只是换了个界面皮而已。不过像你说的,这确实就是小众需求了。
    ios
        17
    ios  
       13 天前 via iPhone
    keepass iOS 客户端,没有一个好用的
    ITisCool
        18
    ITisCool  
       13 天前
    同样的思路,lesspass 了解一下,挺完善的,还开源,有多平台客户端,这东西好多年了
    longsays
        19
    longsays  
       13 天前 via Android
    一直有用自建的,差不多方案吧
    虽然这里的密码最后也存到 keepass 里面了
    主要用于不方便安装密码管理器的设备(一次性设备),网页输入直接复制密码
    https://i0.du0.org/mm/
    surunzi
        20
    surunzi  
    OP
       13 天前
    @ITisCool 看了下,确实是差不多的东西,多谢分享,之前还真不知道这个。
    surunzi
        21
    surunzi  
    OP
       13 天前
    @longsays 果然还是有人这么干的。其实在此之前一直都是放自己网站上,这次想统一下入口并且成本不高才全部迁到桌面工具上了。目前这个的源码也是纯前端实现,扣出来自己部署一份也很简单。
    sudo123
        22
    sudo123  
       9 天前
    Proton Pass 很好用,我第一个推荐下
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   875 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 21:35 · PVG 05:35 · LAX 14:35 · JFK 17:35
    ♥ Do have faith in what you're doing.