构思了一个端对端加密聊天的 App,大家看看有没有漏洞

2021-08-13 13:22:40 +08:00
 t4we

目标是传输过程中不会解密,服务器无法审查内容,除非用户主动中间人自己。

  1. 注册 App 时,会生成 RSA 公钥私钥,公钥上传到服务器,私钥自己保存
  2. 私聊时,会向服务器请求对方公钥,使用对方公钥加密后发送
  3. 接收者使用自己的私钥解密

整个过程 https

1680 次点击
所在节点    HTTP
6 条回复
jybox
2021-08-13 13:27:13 +08:00
这不就是 iMessage,这个查找他人公钥的服务叫 IDS,关键是如何确认服务器给的是正确的公钥而不是在实施中间人攻击。
https://support.apple.com/guide/security/how-imessage-sends-and-receives-messages-sec70e68c949/web
LeslieLeung
2021-08-13 13:38:02 +08:00
之前做过类似的 提几个想法
1. 使用非对称加密速度比较慢,如果有多媒体传输(例如要发送图片、视频或者语音视频通话的功能)就会受影响,所以聊天内容可以采用对称加密
2. 如果使用对称加密,其密钥协商就应该使用 DH 算法等进行交换,加上数字签名等防止 MITM
3. (不确定)端到端加密聊天国内政策不允许
vonsy
2021-08-13 13:38:41 +08:00
AoEiuV020
2021-08-13 14:22:01 +08:00
第一反应也是中间人,你 RSA 这块压根没有防中间人,
wangkun025
2021-08-13 14:24:53 +08:00
没有。
甚至不需要 https
wangkun025
2021-08-13 14:25:31 +08:00
政策不允许是确定的。

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

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

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

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

© 2021 V2EX