// 安全传输层

隐私不是一项政策。 它是数学。

在您自己运行的中继上进行端到端加密通讯。消息在离开您的手机之前就已加密,并带有后量子保护,中继只转发密文,并不持有解开它的密钥。

01 / 架构

中继传递的是密文。

消息在您的手机上用 Double Ratchet 加密。您运行的中继在设备之间路由这些消息,但没有读取它们的密钥。它并非看不到谁与谁通信,安全模型准确说明了它能看到什么。

ciphertext = XChaCha20Poly1305(key=k_ratchet, msg=plaintext)
01 / 密钥生成

只在设备上。

私钥在您的手机上生成,从不发送到任何地方。每个账户都对自己的公钥签名,因此中继无法替换成自己的密钥。消息和请求都受到端到端后量子加密保护(X25519 与 ML-KEM-768 结合),与中继之间的连接也使用后量子密钥交换,因此今天录下的流量将来也无法被量子计算机读取。

02 / 元数据

日志精简,局限明示。

运行期间,中继能看到哪些账户在线、何时在线、来自哪个 IP 地址,以及哪两个账户之间有打开的会话。它不会把这些写入日志。两人第一次会话之后,他们用一个每天都会变化的代码重新连接。会话打开期间,中继的内存仍会把两位成员关联在一起(与以前一样)。两人都离开约 10 分钟后,中继保存的任何内容都不再指明这一对;等待中的盲化请求不指明任何人;也没有任何令牌或电路 ID 能把一次连接期间与下一次关联起来。实时观察中继的人仍能看到两个账户相互连接。发给离线用户的消息最多在内存中保存 72 小时,按接收方存放,发送方的身份在加密内容内部。可选的稳定流量功能在应用打开时减少消息时间所透露的信息。

03 / 传输

仅 TLS 1.3。

所有流量都是 TLS 1.3 内的 WebSocket,由中继自行终止 TLS。加入中继只需扫描一次它的邀请,邀请会固定中继的身份。每条消息都会被填充到一个大小档位,而每个中继都会向非 rChat 应用的访问者展示自己独有的伪装网站。

02 / 自托管

不是一项服务,而是您运行的软件。

没有 rChat 云,无需注册,也没有订阅。您在自己控制的服务器上部署中继,然后把它的邀请(一个二维码)交给大家。运行中继的人就是它的运营者,由其决定中继在哪里运行、谁可以使用。

谁能看到什么 中继运营者能看到连接元数据,但永远看不到消息内容。 中继记录与存储的内容
03 / 对比

与其他应用的对比。

rChat 用一个由您控制的服务取代托管服务。它更年轻、规模更小,也不具备大型通讯应用的全部功能。

功能 rChat Signal Telegram
谁运行服务器 您 Signal Telegram
默认端到端加密 是 是 否(仅限秘密聊天)
用官方应用连接您自己的服务器 是 否 否
联系人密钥核对 安全码与二维码 安全码 仅限秘密聊天
04 / 掌控

不必信任我们。运行您自己的节点。

您不应该需要信任运行服务器的任何人。rChat 是开源的:审计代码,构建中继,并在您控制的主机上运行它。

中继自行终止 TLS,并通过 443 端口上的 TLS-ALPN-01 自行获取和续期证书。不需要 80 端口,前面也不需要终止 TLS 的代理。

cargo build --release --bin rchat-server
# point an A/AAAA record for relay.example.com at this host
sudo install -m 0755 target/release/rchat-server /usr/local/bin/
sudo useradd --system --home /var/lib/rchat --shell /usr/sbin/nologin rchat
# /etc/rchat/server.toml
[server]
bind_addr = "0.0.0.0:443"
websocket_path = "/a-long-random-path"
relay_identity_path = "/var/lib/rchat/relay_identity.key"
[server.acme]
enabled  = true
domains  = ["relay.example.com"]
contacts = ["mailto:[email protected]"]
cache_dir = "/var/lib/rchat/acme"
# once, as the service user: create the relay identity (prints its pin)
sudo install -d -m 0700 -o rchat -g rchat /var/lib/rchat
sudo -u rchat rchat-server --config /etc/rchat/server.toml --init-relay-identity
sudo systemctl enable --now rchat-server
# invite people: a link and a QR code with the address and the relay identity
sudo -u rchat rchat-server --config /etc/rchat/server.toml --print-invite
技术白皮书 · v3.0 · 2026年10月

在您运行的中继上进行端到端加密通讯

摘要

rChat 协议第 3 版如何工作:后量子混合握手、签名并与 TLS 会话绑定的密钥包、只有双方都请求才会建立的会话、盲化配对、稳定流量、中继邀请和大小填充。它还坦率说明了自托管中继对您了解什么,以及它永远不会持有什么。

  • 协议第 3 版
  • 后量子
  • 盲化配对
  • 稳定流量
  • 安全码
  • 中继知道什么
05 / 关于

谁在开发 rChat。

开发者

rChat 由 PDG Global Limited 开发,这是一家位于香港的公司,不在“五眼联盟”情报同盟的管辖范围内。

管辖

由于 rChat 是自托管的,管辖中继的是其运营者运行它所在地的法律,而不是开发者所在地的法律。消息内容受端到端加密保护,这不依赖于任何司法管辖。

没有托管服务

PDG Global Limited 不为用户运行中继,也不持有任何账户或消息。关于中继能看到什么,请阅读安全模型。

运行 rChat。

在您自己的服务器上设置中继,然后用一个二维码邀请大家加入。