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

我写了个 Chrome 插件,让你再也不用重置密码

  •  
  •   itskingname · 20 小时 50 分钟前 · 477 次点击

    你一定经历过这个循环:

    1. 打开某个网站,输入你记忆中的密码
    2. "密码错误"
    3. 好吧,点"重置密码"
    4. 邮箱收验证码,输入新密码
    5. "密码必须包含大写字母!"
    6. 行,加了一个大写字母
    7. "不能与之前的密码相同。"
    8. ……

    你的记忆力没有问题。 问题出在每个网站的密码规则都不一样:Chase 银行要求 8-32 位、必须有大小写+数字+特殊字符、特殊字符还只能用 ! @ # $ % ^ & * ( ); GitHub 要求至少 8 位或者 15 位以上(两套规则); Apple 要求不能有超过 3 个连续相同字符; PayPal 的上限是 20 位……

    你根本不是忘了密码,你是忘了这个网站的密码规则是什么

    问题的本质

    仔细想想,这件事非常荒谬:

    每个网站都知道自己的密码规则是什么,但它们只在你注册或重置密码时才告诉你。

    你平时登录的时候,密码框旁边什么提示都没有。你输入记忆中的密码 → 错了 → 再试一个 → 还是错 → 你已经不记得当初注册的时候被哪条奇葩规则逼着改了什么。只有当你放弃登录、点了"重置密码"之后,网站才在设置新密码的页面上列出所有规则。

    但问题是:如果你在登录的时候就能看到这些规则,你大概率能一次就想起来正确的密码。 因为你的密码库通常就那么几套模板,区别只是有没有大写、有没有特殊字符、长度是多少。知道了规则,你自然就能回忆起当初用的是哪一套。

    Don't Reset Password

    基于这个想法,我做了一个 Chrome 扩展:Don't Reset Password

    它做的事情非常简单:

    1. 自动检测密码输入框
    2. 从一个社区维护的规则数据库中查找当前网站的密码规则
    3. 在输入框下方直接显示:最小长度、最大长度、是否需要大写、是否需要特殊字符、允许哪些特殊字符……

    就这样。没有其他功能了。

    关于隐私

    我知道你在想什么——"一个读取密码框的插件?"

    所以我要把这件事说清楚:

    • 不读取、不存储、不传输你的密码。 插件只是在密码输入框旁边显示一段提示文字,它不需要也不会访问你输入的内容。
    • 不需要注册账号。 零个人数据。有一个匿名 ID 用来防止垃圾贡献,仅此而已。
    • 规则本身是公开信息。 "密码必须包含大写字母"不是秘密,这是网站在你注册或重置密码时本来就会告诉你的东西——只不过在你正常登录的时候它不会显示。

    代码完全开源,你可以自己审计。

    社区驱动

    一个人不可能覆盖所有网站的密码规则。所以这个规则数据库是社区众包的——任何人都可以贡献自己知道的网站规则,所有人都受益。

    目前已经覆盖了 30 多个常见网站( Google 、GitHub 、Apple 、Chase 、PayPal 、Steam 、淘宝等),但显然还远远不够。如果你在使用中发现某个网站的规则缺失,点一下就可以贡献。

    为什么要写这个

    说实话,这个工具的技术含量不高。它没有用到什么高深的算法,没有 AI ,甚至连后端都很简单。

    但我觉得它解决了一个真实的、每天都在发生的、所有人都遇到过的问题。而且解决方案如此简单,简单到让人奇怪为什么之前没有人做。

    最好的工具不是最复杂的工具,而是让你觉得"这不是理所应当的吗?"的工具。

    试试看:GitHub | 落地页

    4 条回复    2026-03-05 13:38:54 +08:00
    ShineyWang
        1
    ShineyWang  
       19 小时 59 分钟前 via Android   ❤️ 1
    不用重置密码正确的方法难道不是不用密码吗?
    那不是通行密钥 passkey 吗?
    keepfun
        2
    keepfun  
       3 小时 55 分钟前
    好多时候是公司内部的一些网站
    Vipcw95
        3
    Vipcw95  
       3 小时 38 分钟前
    都用 chrome 了,当然是用自动填充了
    itskingname
        4
    itskingname  
    OP
       3 小时 10 分钟前
    @Vipcw95 chrome 的自动填充之前发生过密码泄露事件
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   5547 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 08:49 · PVG 16:49 · LAX 00:49 · JFK 03:49
    ♥ Do have faith in what you're doing.