// SECURE · SERVERLESS · CONNECTED

SSC.

安全优先的「全设备互联」即时通讯

功能对标日常聊天软件,架构上却没有一台固定的服务器:设备之间端到端直连,逐条加密。跑在公网的辅助节点用的是和你手机同一套协议代码——它能做的你手机全能做,它读不了的你手机也读不了。

⬇ 下载 Android APK · v0.2.2
637 KB · Android 10+ · MD5 20eb0f5cafa46fa8a8c14443372edad4

#四条红线,永久有效

无固定服务器没有消息必经的中心节点,设备直连优先,默认零中转。
公钥钉死 · 换钥封存好友公钥首次核对后钉死;换钥立即封存告警,绝不静默降级。
SAS 人工核对配对时两端显示六位短码,人工对上才建立好友关系。
端到端逐条加密所有内容逐条端到端加密,任何中间设备解不开。

#能做什么

文本 / 图片 / 视频 / 文件 / 语音

60KB 分片传输、断点续传、SHA-256 全文校验,边收边加密落盘,绝不明文落盘。

定时销毁

消息带到期时间,两端各自定时物理抹除记录与附件,删除即覆盖。

NAT 打洞直连

藏在 NAT 后面也能互联:托在线好友递「约拍条」,双端同约同开打洞,拨通即原握手直连。NAT 脾气可在诊断页自测。

地址租约 + 断线自愈

「记我」心跳持续登记可达地址,拨不通自动向好友查询、自动重拨。实测断联 9.7 小时自动复联。

已读回执

对方打开聊天页即报水位,气泡「已发送」翻绿「已读」。回执帧内只有一个时间戳,零内容。

同账号多设备同步

同一身份文件放 N 台设备即多端在线,消息自动同步互达。

离线待发箱

对方离线时消息只存在你自己设备的待发箱,链路恢复才发送——不寄存在任何节点上。

设备诊断页

账号/端口、多设备链路、全局 IPv6、NAT 脾气、地址登记册、在线状态,一屏全览可复制。

IPv6 双栈

监听自动双栈,有全局 IPv6 就优先直连(v6 无 NAT,命中即免打洞)。

#辅助节点:开源、可选、读不了你的消息

公网辅助节点是一个普通 SSC 个人端点——和手机同一份 com.ssc.core 代码编译出来的。它只干三件事,全部只碰地址、不碰内容:

功能它能看到什么
镜像:告诉你「外面看你的真实地址」你的来源 ip:port(网络层本来就可见)
查询应答:好友问「XX 在哪」密文请求;只回答观测到的地址,内容零经过
递条:打洞约拍条原样转递目标公钥密封的密文条,中间人零阅读

它不是消息中继(协议层面就没有转发他人消息的能力),不是账号服务器(没有数据库和用户表),进程零落盘他人消息。节点程序开源,欢迎审代码:

# 十分钟自建(任何能出网的 Linux + Java 17)
bash server/build-node.sh              # 产出 out/sscnode.jar
scp out/sscnode.jar you@yourserver:/opt/ssc/
systemctl enable --now ssc-node        # 默认 46800 聊天 / 46811 配对,自动开 IPv6 双栈
# 然后手机 SSC「添加好友 → 扫码/粘贴」配对,两边核对六位 SAS 码

#质量:改核心先过回归

172自动化回归断言
7测试套件(浸泡/媒体/打洞/互联/已读…)
WAN公网真链路实测(手机↔模拟器↔VPS 节点)

每个版本发布前:全量测试绿 + 模拟器完整过一遍 + 真机抽查。协议含字节流重放防御、篡改落库即告警隔离、多设备并发一致性等硬仗。

#它不假装能解决的事

双方都藏得深 + NAT 都严苛?

任何服务器都帮不上。此时只有等待可达时机或换网络环境——程序会明确告知,不会假装解决,也不会为此偷偷中转你的消息。

默认零中转

逃生门(盲转)设计为:自己的服务器、钉公钥、默认关闭、不落盘。不用就不存在。

#版本路线

v0.2.2(当前)

媒体核心 + 互联 + NAT 打洞阶段1 + 节点开源。

进行中

真机双机同网/异网打洞调参;表情包;存储用量页。

下一站

P2P 实时语音通话(Opus 直连,NAT 失败明确告知,绝不中转)。