简介
Encrypted Chat 是一个基于 Web 的端到端加密即时通讯工具。所有加密和解密操作均在浏览器本地完成,中继服务器仅转发密文,无法获取任何明文信息。无需注册,无需安装,打开即用。
功能特性
- AES-256-GCM 加密 — 对称加密,保证消息机密性与完整性
- PBKDF2 密钥派生 — 60万次迭代,每房间独立盐值,从24个助记词安全派生256位密钥
- ECDH 前向安全 — 每次会话临时密钥交换,即使助记词事后泄露也无法解密历史消息
- 对端认证 — HMAC 认证密钥交换,必须知道助记词才能建立连接
- 防重放攻击 — 序列号通过 AAD 传输,严格单调递增校验;随机 nonce 绑定每次密钥交换
- 阅后即焚 — 消息60秒后自动从DOM中销毁,附带粒子爆炸动画
- 零存储 — 服务器不存储任何消息、密钥或用户数据
- 服务端限速 — 服务器每秒最多转发10条消息,防止洪泛攻击
- 威胁检测 — 检测到开发者工具或可疑脚本/元素注入自动清除聊天并通知对方
工作原理
- 创建房间时,浏览器生成24个 BIP-39 助记词,通过 PBKDF2(每房间独立盐值)派生 AES-256 密钥
- 双方通过安全渠道交换 Room ID 和助记词(密钥本身不经过网络传输)
- 双方连接信令服务器,执行 ECDH(P-256)临时密钥交换,生成会话密钥并删除临时私钥
- 密钥交换过程中使用 HMAC 认证对端身份,附带随机 nonce 防止重放
- 每条消息使用 AES-256-GCM 加密,序列号通过 AAD 绑定防止重放和乱序
- 消息仅在双方浏览器内存中存在,60秒后自动销毁,页面关闭后所有密钥消失
仍可能导致泄密的情况
- 屏幕被窥视或录屏 — 消息在屏幕上显示的60秒内,可被旁人看到、截屏或屏幕录制
- 设备被植入监控软件 — 键盘记录器、屏幕监控等恶意软件可绕过所有浏览器级加密
- 助记词泄露 — 如果 Room ID 和助记词通过不安全渠道传输,第三方可加入房间解密当次会话消息(但无法解密历史消息)
- TLS 中间人代理 — 企业/学校在设备上安装自定义根证书并配置HTTPS代理,可解密传输层(消息体仍为密文)
- 内存抓取 — 具有设备管理员权限的人员可通过调试工具读取浏览器进程内存中的密钥和明文
- 对方设备不安全 — 加密是端到端的,但你无法控制对方设备的安全状况
- 浏览器扩展 — 恶意或被入侵的浏览器扩展可访问页面DOM和内存中的所有数据