我做了一个极致安全的消息分享网站

2023-03-24 01:40:53 +08:00
 maggch97

https://supersafemessage.github.io/

访问->分享链接->其他人通过你的分享链接向你发送加密消息

数据目前绝对安全,2048 位的 rsa 加密,量子计算机出现之前你的信息应该暂时是安全的

代码一切从简,不引入任何外部库,欢迎审查

为什么要做:

和朋友亲人分享一些"机密信息",你应该没有在 telegram 上加你的女朋友吧?

普通人也有"机密信息",至少你不应该用微信发信用卡的 CVV

不需要手机号,不需要邮箱,没有人知道谁在接收信息,谁在发送信息。

没有聊天记录,关闭接收页面,没有人能再次解码你的信息。你可以不相信我的服务器,可以不相信一切,但是永远可以相信密码学。

还能更安全吗?

用一个足够干净的系统,最新的浏览器,不要安装任何第三方证书

关闭掉所有浏览器插件,打开浏览器的无痕模式,看到消息,记住,然后关闭浏览器不要把信息保存到本地

想办法确认你的收件人、发件人真的是本人,确认你分享的链接没有被篡改。当然这一步应该不太会有人需要

未来打算

分享图片?建立双向的加密通信?一个极致安全的信息收发设备?

Github: https://github.com/SuperSafeMessage/SuperSafeMessage.github.io

2796 次点击
所在节点    分享创造
23 条回复
Drumming
2023-03-24 01:42:43 +08:00
截图录屏,我相信密码学,但是我不相信人类
yanzhiling2001
2023-03-24 01:50:45 +08:00
项目才新建,没有明确的引导,我摸索了一下才知道怎么用的。
iBugOne
2023-03-24 02:32:09 +08:00
我为什么要用这个服务而不是 One Time Secret 呢?
maggch97
2023-03-24 02:44:31 +08:00
@iBugOne 当然可以用其他的,每个人对安全的要求都不一样。但就原理上来说,这个是最安全的
benedict00
2023-03-24 07:23:03 +08:00
可以用 SHA512 校验消息完整性
wbrobot
2023-03-24 08:50:09 +08:00
如何保障链接分享过程中的安全呢?(链接不被别人窃取)
pianjiao
2023-03-24 09:20:44 +08:00
当面说不好吗
maggch97
2023-03-24 09:23:40 +08:00
@wbrobot 窃取的话最多收到假消息,要是被篡改就麻烦了
cmdOptionKana
2023-03-24 09:24:53 +08:00
访问->分享链接->其他人通过你的分享链接向你发送加密消息

第二步 “分享链接”,假设通过微信分享,是否意味着微信服务器可以拿到这个链接,从而获取机密?
cmdOptionKana
2023-03-24 09:26:27 +08:00
密钥是前端生成,还是后端生成?
maggch97
2023-03-24 09:35:12 +08:00
@cmdOptionKana 不可以,这个链接里面的密钥是公钥,只能用来加密,不能用来解密。这是 rsa 这类非对称加密算法保证的。非对称加密广泛用于 https

这也是为什么我说这是最安全的,其他所有的服务都提供的是对称加密,加密解密用的是同一个密钥。one time secret 等等,你需要信任服务器的"只显示一次就销毁"的逻辑,才能保证信息不泄露。并且也有可能泄露,只不过能让你在泄露之后知晓补救。

安全里面最重要的就是不信任任何人,虽然这个网站依然依赖了你的浏览器是安全的,系统是安全的,CPU ,内存是安全的。但至少比依赖服务器是安全的靠谱多了(后者同样需要依赖浏览器系统 CPU 内存安全。
cmdOptionKana
2023-03-24 10:13:22 +08:00
@maggch97 原来如此!明白了,看起来真的不错啊!
vazo
2023-03-24 13:42:00 +08:00
@maggch97 部分区域访问不了 workers.dev
maggch97
2023-03-24 13:58:53 +08:00
@vazo 直接用最简单的方式上线的,后续换个服务商稍微解决一下国内访问的问题。不过肯定有被屏蔽的风险,不可能 100%可访问
duke807
2023-03-24 14:24:39 +08:00
“每次打开页面后请右键查看网页源代码,确保这里面没有一行可能泄漏信息的代码”

每次都查代码不现实,如果不这么做,又没法确保你代码是安全的,可以参考我这个 CDEncrypt 项目,使用 PWA 方式,可以离线使用,每个版本的代码只要检查一次,因为代码修改和升级无法避免会弹窗通知用户:

https://v2ex.com/t/832302
duke807
2023-03-24 14:27:38 +08:00
而且我这个是纯粹静态网站,不需要服务器中转数据,用户自己也很容易部署,不担心全部被屏蔽
duke807
2023-03-24 14:44:35 +08:00
“和朋友亲人分享一些"机密信息"”

OP 这个非对称加密不合适这种场景,特别是同时分享给多个人
而 CDEncrypt 就是为这个场景服务的,支持大段文字、文件、图片、视频
对方打开连接就行,只有首次打开才需要输入密码,绝对不能对对方的计算机水平有任何要求
至于密码的安全,提前帮对方输入一次密码,或者打电话告知,或者用阅后即焚分享密码,都是主动提供给对方
而 OP 这个,要反过来让对方提供给自己,完全不现实
neptuno
2023-03-24 15:52:27 +08:00
gpg 邮件?
maggch97
2023-03-25 14:28:31 +08:00
现在已经支持图片分享, 并且图片是经过压缩后分享的, 凑巧解决了最近一些截图软件爆出来的安全漏洞
enopkf
2023-04-01 13:56:24 +08:00
用什么方法来保证分享链接(公钥)没被篡改呢?
打个电话来验证吗?发微信,如果微信在中间篡改公钥呢?
公钥本身需要依赖 CA ,需要先有个可信的渠道来保证公钥的正确

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/926699

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX