用户手册
Securmy完整指南:如何注册、登录、使用隐私功能,并了解这个原型真正保护什么、不保护什么。
1. 注册与首次登录
在起始界面点击“注册”,输入邮箱和用户名。无需手机号。
注册后你只会看到一次以下三项信息,请立即保存在安全的地方(例如密码管理器):
- 用户名和密码:用户名是第一个字段,密码决定打开哪个资料。同一个用户名下可以有多个资料,各有自己的密码。
- 公开 ID:你分享给想添加为联系人的人。它不会泄露你的邮箱。
- 秘密组合:用于显示隐藏聊天(见相关章节)。
如果丢失密码,可以通过邮件重置,但前提是该资料的邮箱已验证。没有密码也没有已验证邮箱时,资料无法找回。
2. 同一设备上的多个资料
你可以用同一个用户名、不同的密码创建多个资料(例如个人资料和伪装资料)。输入用户名和密码后会打开对应资料,没有会暴露资料数量的选择界面。同一用户名下的两个资料不能使用相同的密码。
3. 添加联系人并聊天
点击“+ 添加联系人”,输入对方的公开 ID。随即打开一个实时聊天,并采用端到端加密(见第 7 节)。
5. 伪装资料
注册时可勾选“创建为伪装资料”:这是一个用于在检查时展示的资料,不会留下同一设备上存在其他资料的任何线索。
6. 限时消息(自毁)
发送消息前,可在下拉菜单中选择自毁时间:30 秒、5 分钟或 1 小时。时间一到,消息即被删除。
7. 端到端加密:它究竟如何运作
这不是营销口号:每条消息在发送到服务器之前,都会在你的浏览器中按以下方案加密:
- 首次登录时,设备生成一对 ECDH 密钥(P-256 曲线):公钥发送到服务器,私钥留在设备上并用你的密码加密。同时准备一批一次性公钥(“prekey”)。
- 每发一条消息,浏览器生成临时密钥,并从服务器取走联系人的一把一次性 prekey。它组合三次 ECDH 交换(你的身份、临时密钥、prekey),用 HKDF-SHA256 派生出仅对该消息有效的 256 位 AES-GCM 密钥。
- 消息用该密钥和随机 IV 加密;消息头经过认证,无法被篡改。服务器只收到密文。
- 接收方重建同一密钥、读取消息,并立即删除私有 prekey:此后任何人都无法解密该消息,即使拥有你的长期密钥。
这与许多现代安全协议使用的是同一类数学原理(ECDH + AES-GCM),这里通过浏览器原生的 Web Crypto API 实现,不依赖任何外部库。
前向保密:过去的消息依然安全
即使有人拿到你的长期密钥(例如偷走设备),也无法解密你已收到的消息,因为它们的密钥已被删除。你已读过的文字仅保留在设备的加密本地缓存中。
密钥保险库
私钥、prekey 和消息缓存仅以加密形式(AES-GCM)保存在浏览器中,密钥由你的密码通过 PBKDF2-SHA256(310,000 次迭代)派生。若用生物识别登录,会要求输入一次密码来打开保险库。修改密码时,保险库会重新加密。
确认真的是他:安全号码
在聊天中点击 🔑 图标:你会看到一个 60 位数字,双方相同。当面或通过语音与联系人核对:若一致,说明无人插手。若联系人的密钥变化(新设备或可能被窃听),会出现警告,在你选择“接受新密钥”之前无法发送。
8. 生物识别解锁(Face ID / Touch ID / 指纹)
在资料设置(⚙️ 图标)中可以找到“启用 Face ID / 指纹解锁”。启用后,你的设备会通过 WebAuthn/FIDO2 创建通行密钥(passkey)并注册到服务器(仅公钥,绝不包含生物识别数据)。
此后登录界面会出现“生物识别解锁”按钮:用它代替密码,由操作系统(而非应用)验证 Face ID、Touch ID、Android 指纹或 Windows Hello。生物特征数据绝不会离开你的设备。
你可以随时在同一设置中关闭它。
9. 切换语言
应用的每个界面右上角都有语言选择器。本网站同样提供相同的 11 种语言:意大利语、英语、西班牙语、法语、德语、葡萄牙语、阿拉伯语、中文、印地语、俄语和日语。你在应用中选择的语言会记在设备上。
10. 原生移动应用(iOS/Android)
面向 iOS 和 Android 的原生应用(React Native/Expo)已开发完成并在测试中:聊天、保险库、P2P 发送、通话、两步验证、生物识别锁,以及不含内容的推送通知,端到端加密与网页版相同。App Store 和 Google Play 上架即将到来;在此之前,网页版可在任何浏览器中使用,并可添加到主屏幕。
11. 已声明的安全限制
出于坦诚,以下是仍然存在的限制,尽管加密是真实的而非仅仅宣称:
- prekey 用尽:若联系人长时间离线并用完一次性密钥,消息仍使用新密钥,但没有一次性删除,前向保密会较弱。
- 消息绑定此设备:按设计,已解密的历史不会迁移。在新设备上,或通过邮件找回密码后,旧保险库无法恢复:你将以新身份开始,联系人会看到密钥变更提醒。
- 保险库的强度取决于密码:请使用长且唯一的密码。任何人若拿到已解锁且应用打开的设备,都能读取聊天,这与任何应用相同。
- 元数据对服务器可见:发送者、时间、表情回应和限时消息的到期时间未加密。
- 仅能通过邮箱找回:若同时丢失密码和已验证邮箱,资料无法恢复。若使用多个资料(如伪装资料),请使用不同邮箱:找回链接会向邮箱控制者暴露该资料存在。
12. 故障排除
“无法加密:联系人还没有公钥”
如果你的联系人在应用最近一次更新后还没有登录过,就会出现这种情况(密钥在登录时自动生成并上传)。请让对方登录一次,之后你就可以正常给他发消息了。
“我忘记了密码”
在登录界面点击“忘记密码?”,输入邮箱和用户名:如果该资料的邮箱已验证,你会收到1小时内有效的链接。否则资料无法找回,需要重新创建。请始终把密码保存在密码管理器中。
没有出现生物识别解锁
需要设备已设置 Face ID、Touch ID、指纹或 Windows Hello,浏览器为最新版本,并使用 HTTPS 连接(正式环境的网页应用已使用)。此外,还必须至少在设置中启用过一次。
“消息已无法读取”
出于安全,每条消息的密钥在你读过后立即删除:文字只保留在此设备的加密缓存中。若更换设备、清除浏览器数据或通过邮件重置密码,之前的消息将无法恢复。这是前向保密的代价。
13. Securmy 保险库与工具
点击侧边栏的 🛡️ 按钮打开保险库。其中的一切都在你的设备上用 AES-256-GCM 加密,密钥存放在你的保险库并由密码保护:服务器永远收不到文件、笔记或密码。
文件保险库
在“文件”标签页添加文件(每个最大 100 MB)。勾选时,照片会在保存前清除元数据。每个文件都可以下载、通过 P2P 发送或删除。
链接点对点传输
选择文件和有效期(10 分钟或 1 小时),得到一次性链接。文件直接发送给收件人,用只存在于链接 # 之后的密钥加密,永远不会到达服务器。传输完成前请保持页面打开。
清理照片
重新绘制图像,丢弃 EXIF、GPS 位置和缩略图。支持 JPEG、PNG 和 WebP;其他格式无法自动清理。
笔记和密码
笔记和账号信息始终以加密形式保存在保险库中。生成器会创建随机密码;复制密码后,剪贴板将在 20 秒后清空。
阅后即焚消息
在消息输入框旁选择“阅后即焚”。收件人点击查看:文本保持可见 10 秒,随后在其设备和服务器上销毁。这无法阻止读者拍摄屏幕。
语音和视频通话
使用聊天标题栏中的 📞 和 🎥 按钮。音频和视频在设备之间直接加密传输。双方会看到 4 位验证码:请口头核对,一致说明通话未被截获。
两步验证
在“安全”中,你可以通过验证器应用(Google Authenticator、Aegis、1Password 等)启用 TOTP 验证码。启用后,用密码登录还需输入 6 位验证码。生物识别解锁仍是独立的登录方式。
备份与紧急清除
备份包含用你自选的至少 10 个字符的口令加密的文件、笔记和密码:没有口令就无法恢复。消息不包含在内。紧急清除会从设备上移除密钥、消息缓存、文件、笔记和密码,且无法撤销。
需要了解的限制
- 跨设备同步为可选的付费功能(空间套餐):数据在你的设备上保持加密,服务器没有密钥。没有套餐时保险库仅限本地;备份仍可用于迁移。
- 要在 P2P 传输和通话中隐藏 IP,请在服务配有 TURN 服务器时开启 安全 → IP 保护(加密中继)。没有中继时,对方可以看到你的 IP,在限制严格的网络中连接可能失败。
- 密码管理器功能基础:不会自动填写表单,也不能替代专业场景下的专用管理器。
- 如果丢失密码和备份口令,加密数据将无法恢复:任何人,包括我们,都无法打开。