safew 中文文档 下载 App

安全码与指纹验证——如何确认你的 SafeW 会话没有被中间人窃听

安全码与指纹验证

当你在 SafeW 里加了一个好友并开始会话时,系统会为这次会话生成一个安全码(也叫"安全号码"或"指纹")。这串数字或二维码是双方身份密钥的哈希值,它的唯一用途是:让你可以确认这次会话没有被中间人劫持。

为什么需要验证

端到端加密的前提是"你真的在和对方直接通信,而不是和一个假装成对方的中间人通信"。攻击者如果成功劫持了网络链路,理论上可以在中间解密、读取、再加密转发你的消息——这就是中间人攻击(MITM)。

X3DH 密钥协商协议本身在数学上防止了被动窃听,但对于主动劫持的攻击者,需要额外的验证手段。安全码就是这个手段。

如何操作

方式一:线下比对数字(推荐)

  1. 在会话中打开对方的资料卡片,找到"安全码";
  2. 你会看到一串数字(通常显示为分三组的格式,方便人工比对),以及对应的二维码;
  3. 通过另一个你确信安全的渠道(比如见面时口头、另一个加密通讯工具、或一条已经确认安全的 Signal 对话),让对方把他那边显示的安全码发给你;
  4. 逐位比对。完全一致 = 会话安全;有任何一位对不上 = 可能被劫持,终止会话并删除对方,重新添加。

方式二:扫描安全码二维码

如果你们在一起,更快捷的方式是:让对方打开安全码页面显示二维码,你用 SafeW 的扫描功能直接扫一下。系统会自动比对并标记"已验证"。

验证后会发生什么

一旦你完成了安全码验证,SafeW 会在会话中标记这个联系人"已验证"。之后你们的所有通信都建立在已验证的会话之上。如果后续检测到身份密钥发生变化(比如对方换了设备或密钥被替换),应用会弹出警告提示你重新验证。

常见问题

加好友时不验证可以吗?

技术上可以,但强烈不建议。尤其是在你不知道对方是谁、或者通过网络渠道首次联系的场景下,不验证意味着你无法排除中间人攻击的可能。

为什么 SafeW 不自动验证?

因为没有可信的第三方渠道来自动确认双方身份。任何自动验证机制都可能被攻击者利用。安全码设计成需要人工比对,正是为了保持安全的最低限度——确保真正知道对方是谁的人来做这个验证。

二维码被拍照了怎么办?

二维码本身只是身份密钥的哈希值,单独拍照不会泄露加密能力。但还是建议妥善保管验证过程,不要在公共屏幕展示。