做了一个便捷生成数字签名的网页工具 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
tdxdxoz
V2EX    分享创造

做了一个便捷生成数字签名的网页工具

  •  
  •   tdxdxoz 1 天前 via Android 632 次点击

    前段时间做了一个小工具,可以方便地给文本添加数字签名。为了方便使用是网页的形式( rust 写的纯前端项目),但是访问过一次后断网也能打开和正常使用。

    地址: https://daily-sign.github.io/

    动机

    因为各种社会事件开始产生一些杞人忧天的想法,觉得应该给自己的任何发言添加数字签名。但是按照标准的做法,签名用的私钥应该只保存在安全的设备上,每次签名都要在这个设备上跑命令执行签名,这是一件很不方便的事情,对没有技术背景的人来说更是难以上手。 所以想做一个工具,直接使用密码进行签名,在便捷性和安全性中达到一个平衡,让方便地给日常消息签名成为可能。

    设计的时候主要遵循两个原则,一是尽量方便使用,二是不可以有后端、所有操作都在浏览器本地执行。

    用途

    给自己的发言添加数字签名小尾巴。不管是换号还是不幸卷入社会事件,都能用来证明是本人和避免冒充。可以在邮件中或使用新平台时添加签名证明是本人。还可以用于委托代发到自己不使用的平台,只要签名正确就能证明是本人。

    注意事项

    把基于密码生成的密钥直接用作非对称加密的私钥是不标准的做法。人脑想出来的密码,随机度远远不如真正随机的 32 bits 密钥。本项目的意义在于权衡便捷性和安全性。尽管没有已知的攻击,如果要最大程度发挥公私钥签名的安全性,不应该使用本工具,或者至少使用随机生成的强密码。

    4 条回复    2025-10-09 18:46:22 +08:00
    JoeJoeJoe
        1
    JoeJoeJoe  
    PRO
       1 天前 via iPhone
    op 的网站 ui 做的看起来很舒服

    但是签名后的文本用起来可能稍微有点尴尬

    我如果要评论的话可能还得带一个小尾巴出来

    ps:我开始是以为做了一些类似图片透明水印的操作,用完才知道是做了一个小尾巴,感觉这个小尾巴可以使用一些透明元素来处理

    长度: 333 bytes
    签名: GkBvnPLzLMWX5FzjOuJPJLp4mBYmaHjrooNfRD5VZVbU7r7VT05auAlE1BcpdVmISycou84fpu8Ih7PTAlLzCw==
    tdxdxoz
        2
    tdxdxoz  
    OP
       1 天前
    @JoeJoeJoe 因为想做文本签名而不是图片水印。或许应该搞搞什么编码把小尾巴尽量压短。
    ryd994
        3
    ryd994  
       20 小时 20 分钟前 via Android
    @JoeJoeJoe
    你要公开公钥而且通过不同的渠道反复公开公钥。这样别人才能 1.拿到你的公钥 2.确信这个公钥确实是你的
    有了公钥才能验证签名

    @tdxdxoz
    这个做法太密码学民科了。私钥只能保存在安全的设备上不假。但是安全的设备不是只能有一台安全的电脑。
    TPM/智能卡就是为了解决密钥的保管问题。智能卡很便携,在任何设备上都可以使用。加密解密过程只在智能卡内部处理,即使在不安全的设备上使用也不会泄露私钥。最多只是在解密数据时泄露解密后的明文而已。

    你这个作品,用弱密码的话,人家社工+穷举一下就出来了。用强密码的话又记不住,又回到了怎么储存密钥的问题上了。
    tdxdxoz
        4
    tdxdxoz  
    OP
       19 小时 51 分钟前 via Android
    @ryd994 需要硬件不是更不方便了吗,而且会为了日常使用去买设备的本来就是极少数愿意折腾技术的人。私钥丢失的事也不罕见了。
    关于密码强度的问题,我想大多数密码,比如大多数没用密码管理器的人的 v 站密码,都是既没有弱到可以社工穷举出来,也没强到人脑记不住的。这也是我一直在说的找到一个平衡。(另外本身 Argon2 算法的抗枚举能力还是可以的)
    我是做纯理论的,对偏实践的密码学确实不太熟练。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     5576 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 44ms UTC 06:37 PVG 14:37 LAX 23:37 JFK 02:37
    Do have faith in what you're doing.
    ubao 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