我用 chatgpt 写了一个密码网站 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
Authorization
V2EX    程序员

我用 chatgpt 写了一个密码网站

  •  
  •   Authorization 2024-01-11 04:39:27 +08:00 3110 次点击
    这是一个创建于 730 天前的主题,其中的信息可能已经有所发展或是发生改变。
    首先申明,我不是程序员,不会写代码。
    跟 chatgpt 沟通挺难的,或许是我不懂代码,我用我的语言给他将,我要吃饭,他给我一个馒头,而我要的是饭,米饭。

    整个网站的介绍:
    密码名称+主密码,得到一个唯一的密码,这个密码是加密的。

    这个需求看起来是很简单,但是当我实际操作的过程中,越写越复杂,第一次用 script 就解决了整个需求。

    然后涉及到密码学,密码加密的保密性,他给我写了一个调用后端和前端交互,用了什么盐田,我看挺高级的,就提问,现在产生了很多问题。
    1.生成的首个字母 不能含有特殊符号,解决不了。因为密码名称+主密码,得到的是一个唯一的密码。
    2 ,特殊符号我想让他写出 让用户可以控制去掉某一个特殊符号或者某些特殊符号,
    3 ,输入框为空的时候叫他写一个提示出来,也没搞定。

    现在生成密码的过程交互,感觉处理起来有些吃力,并不是我想要的。

    看看大家有什么想法,我觉得写东西出来应该是用最简单的逻辑实现,逻辑不行。
    可能这些代码没有用,我需要重新规划,看看大家的想法。

    这里弄了一个演示,说到演示,这个 go 语言安装废了不少时间,问了他无数次。

    因为平时密码不想记,琢磨弄一个这种,输入一些关键字就可以得到某些网站的密码,你们想怎么写呢?

    不做广告。

    aHR0cHM6Ly9naXRodWIuY29tL21haWxjeC9wYXNzd29yZGtleS1nZW5lcmF0b3IKCnBhc3N3b3Jka2V5Lm9yZyAgIOa8lOekug==

    解码得到项目地址和演示地址。
    第 1 条附言    2024-01-11 13:53:09 +08:00
    这是一个演示版。代码随时更换。目前重新写的,基本实现了我所要的功能。
    18 条回复    2024-01-11 16:25:24 +08:00
    DavidA
        1
    DavidA  
       2024-01-11 07:42:50 +08:00 via iPhone   1
    转成 base64 的意义是什么
    arfaWong
        2
    arfaWong  
       2024-01-11 08:37:04 +08:00
    zongzi1021
        3
    zongzi1021  
       2024-01-11 09:13:00 +08:00
    是 bitwarder 不好用吗
    cleanery
        4
    cleanery  
       2024-01-11 09:18:49 +08:00   1
    是 bitwarder 不好用还是 keepass 不好用了
    dya
        5
    dya  
       2024-01-11 09:47:43 +08:00
    以前 V2EX 网友分享的一个密码加密网站,我没有保留那个网站。这些网站只要不被墙,其实很好用的。只要记住主密码和字段名?就可以生成唯一一个密码。bitwarder 和 keeweb 产生的密码是动态产生的,只能靠 bitwarder 和 keeweb 记住。
    coderpwh
        6
    coderpwh  
       2024-01-11 10:54:42 +08:00
    域名咋来的
    X_Del
        7
    X_Del  
       2024-01-11 12:06:16 +08:00
    Authorization
        8
    Authorization  
    OP
       2024-01-11 12:33:48 +08:00
    @X_Del 你所提到的这个网站生成的密码,并不是我理想中要生成的密码方式,它应该符合密码学,密码中应该有大小写以及特殊符号,不连续出现多个字符,不以数字或者特殊符号开头,
    正在叫 gpt 重新写。
    Authorization
        9
    Authorization  
    OP
       2024-01-11 12:34:28 +08:00
    @coderpwh 域名昨天注册的,叫 gpt 思考了下用什么域名,就给了这样一个,我看没注册,就直接注册了。
    gkiwi
        10
    gkiwi  
       2024-01-11 13:32:16 +08:00
    感觉很棒,一个不会写代码的人通过 gpt ,实现前后端以及部署,已经很不错了!
    ns09005264
        11
    ns09005264  
       2024-01-11 14:14:24 +08:00
    这让我想到一个问题,
    一个不会编程的人通过询问 GPT 来实现需求所花的时间,和另一个直接去学习编程然后通过 Github Copilot 来实现需求所花的时间,这两者谁更有性价比。
    所以你花了多久写的这个?
    hitmanx
        12
    hitmanx  
       2024-01-11 14:56:07 +08:00
    我有个疑问,这个 hash 规则是公开的吗?

    否则哪天这个网站不能用了,即使记得“主密码”和“字段名”,不是也相当于所有的密码都遗失了?这样的话还不如用 lastpass\1password 之类的了
    Authorization
        13
    Authorization  
    OP
       2024-01-11 15:01:48 +08:00
    @hitmanx 正如你所说的这个问题,我已经想到了,正在重新写,最终的效果是,可以提供一个本地生成,相当于把网页存在本地就可以,就算网站挂了,也不影响。
    Authorization
        14
    Authorization  
    OP
       2024-01-11 15:12:12 +08:00
    @ns09005264 并没有花多少时间,上面演示的这个效果,可能花了 4 小时,很多时间都是在重复问一些问题,因为我的描述可能他不理解。然后,今天写的这个,大概花了 3 小时了,实现了,以下功能:
    包含数字、大写字母、小写字母和特殊字符。
    首字符不是数字或特殊字符。
    不重复使用相同字符。
    对于相同的站点标签和主密钥,每次都生成相同的密码。
    生成的密码具有随机性,肉眼看不出规律,
    用户可以指定生成密码的位数。

    目前在处理特殊符号,要让用户决定可以去除哪些特殊符号。

    本次的代码,可以保持在本地运行,就一个 html 一个 js 文件。
    Authorization
        15
    Authorization  
    OP
       2024-01-11 15:14:08 +08:00
    gpt 不跟我说话了,是不是挂了。
    Authorization
        16
    Authorization  
    OP
       2024-01-11 15:18:44 +08:00
    1d074bfa18d34f6c
        17
    1d074bfa18d34f6c  
       2024-01-11 15:53:57 +08:00
    @Authorization 确实挂了,https://status.openai.com/ 可以去看看
    coderpwh
        18
    coderpwh  
       2024-01-11 16:25:24 +08:00
    @Authorization 免费的吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2808 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 25ms UTC 08:10 PVG 16:10 LAX 00:10 JFK 03:10
    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