IM 私聊应该都是点对点发送消息吧?

278 天前
 shanyang88

应该没有是经过服务器中转的吧?包括所谓分布式的 matrix 。

2791 次点击
所在节点    程序员
25 条回复
gzlock
278 天前
1 、A 和 B 都在内网时,他们怎么点对点连接上呢?
2 、A 在 B 下线后发了一堆消息,怎么让 B 上线后可以收到这些消息呢?
这两个问题的解决方法就是服务器做转发了吧
chenjia404
278 天前
这个看具体的软件,大部分的都是服务器中转,只有少数类似 tox 、session 、berty 这样的软件才是真正的点对点。
AbduHafiz
278 天前
看来你是门外汉,绝大部分都是中转。要审查。
gdb
278 天前
我认为绝大部分 IM 应该都是服务器中转的。
lovelylain
278 天前
服务器中转兼容性更好,内网可通、离线可留言、内容审查,只有语音视频通话可能会用到点对点,也可能服务器中转。另外要区别于点对点加密,点对点加密不代表点对点传输,是消息只能在客户端解密,服务端无法解密审查。
ladypxy
278 天前
国内的所有 iM 没有点对点
国外的要具体看,像 whatsapp telegram 私聊会点对点加密
chingyat
278 天前
@ladypxy 点对点加密和点对点连接又不是一回事
yazinnnn
278 天前
如果网络做不到 p2p, 你该咋点对点?
ladypxy
278 天前
@chingyat 现在可以说是一回事。你能想起来名字的 IM ,只要提供了点对点,都是会加密的
terrytw
278 天前
你要找的是 jami
terrytw
278 天前
@ladypxy 完全不成立,e2e 加密的 IM 多了去了,点对点传输的几乎没有
me1onsoda
278 天前
如果没有中转做解编码,那不是把通信协议公开了吗
ladypxy
278 天前
@terrytw 举几个例子?
victorc
278 天前
要服务器转发,在服务器端不能落盘,过渡存在内存中
wu67
277 天前
在服务器端中转. 然后服务器根据实现的不同, 有些是带 id 广播, 有些是直接给特定 id 推送/发送.
最离谱的就是消息广播, IM 出事故聊串号就是这个原因, 尤其是那些文档没有明确注明的情况下.
bl4ckoooooH4t
277 天前
点对点发消息无所谓的, 关键是服务器能不能解密你的聊天数据,这才是关键的。
horizon
277 天前
这不是叫端到端么。。
AhFei
277 天前
matrix 的分布式指的应该是服务端可以自托管,服务端之间可以相互通信
zbinlin
277 天前
matrix 会存在 homeserver 上,但进行端对端加密。
jami 是真正 p2p 的,并且也是端对端加密的。
firechat
277 天前
点对点的有几个问题:1 是对方不在线怎么办? 2 如果有多端不好处理 3 历史消息漫游 4 点对点有些网络下 p2p 是不通的还是需要 IM 服务中转 5 已经支持中转了还要再开发一个 p2p 的,增加复杂度。

我们自己的私密聊天和电报的也都是中转的,当对方收下来消息后再删掉,不能算是绝对的 p2p ,这样就解决了对方不在线的问题,另外抛弃掉多端,如果对方有多个端,只能跟其中的一个端私密聊天。当然加密还是需要双方用 DH 算法生成密钥,服务器无法知道密钥来保证安全性。

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

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

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

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

© 2021 V2EX