SHARE THE PERSPECTIVE

要验证加密聊天,应检查应用的加密状态,确认对方是你想联系的人,并使用应用支持的密钥验证流程。通过可信的独立途径比较安全号码或二维码,是一种实用方法;有些应用还提供基于密钥透明度的自动验证。熟悉的显示名称或单独一个锁形图标,都不能证明一个人的身份。

为什么加密并不自动意味着已验证

端到端加密的设计目标,是让只有对话的端点能够读取消息。每位参与者都有加密密钥,发送方使用与接收者关联的密钥信息,为特定设备保护消息。

这回答了一个重要问题:对话是否在端点之间加密? 但它本身并未回答另一个问题:这个联系人显示的密钥,真的属于你想联系的人吗?

如果有人声称自己是你的联系人并提供一个密钥,即使该密钥属于冒充者,加密仍然可能正常工作。消息确实加密了,但加密给了错误的端点。

联系人验证将加密身份与人的身份联系起来。在发送密码、财务信息、私人文件或敏感媒体之前,这是至关重要的一步。

密钥验证能证明什么,又不能证明什么

指纹匹配说明双方对所比较的密钥信息达成一致。将该密钥与某个人联系起来,则取决于你如何获得比较信息。如果你与冒充者比较,完全可能成功验证冒充者的设备。验证也不能证明设备没有恶意软件,或其所有者会对消息保密。

Signal 的自动密钥验证使用密钥透明度,检查账户标识与公钥之间的一致性。它补充手动安全号码检查,但是否可用取决于联系人和应用当前的支持情况。应按照验证界面的提示操作,而不是假定每个聊天都提供此功能。密钥记录的一致性与确认一个人的现实身份,是不同的目标。

后量子密钥协商并不消除这种区别。更具抵抗力的密钥交换,仍然需要与预期的端点建立密钥。Livara 的安全文档描述了其协议和信任边界;这些声明不能代替检查实际对话,也不能代替独立评估。

安全号码验证如何工作

许多加密通讯应用把复杂的加密密钥信息转换为可读的指纹:一串较长的安全号码、一组单词或一个二维码。对于完全相同的对话,双方应看到相匹配的表示形式。

安全号码验证就是与联系人比较这些表示形式。在比较途径和设备可信的前提下,匹配可作为双方正在比较相同密钥信息的证据。不匹配意味着应立即停止并调查。

具体界面因应用而异,但验证加密密钥的基本流程相似:

  1. 打开与该联系人的对话详情。
  2. 找到标为加密、安全、验证联系人或安全号码的选项。
  3. 显示数字指纹或二维码。
  4. 与联系人设备上显示的版本比较。
  5. 如果应用提供相应开关,将联系人标记为已验证。

指纹只有通过可信途径比较才有用。把安全号码复制到同一个未经验证的聊天中,并不能证明身份:控制该渠道的攻击者可以拦截信息并提供相匹配的信息。

当面通过二维码验证联系人

当双方身处同一个房间时,二维码联系人验证是一种方便的完整验证数据比较方式。在两台设备上打开验证界面,然后用一台设备扫描另一台显示的二维码。按照应用的确认流程操作,并确保它报告匹配成功。

概念示意图:两个人手持手机,两台手机都显示二维码。

使用以下操作检查清单:

  • 确认你查看的正是与预期联系人的那条对话。
  • 让联系人自行解锁并操作自己的设备。
  • 直接扫描对方当前屏幕上的二维码,而不是转发的截图。
  • 将联系人标记为已验证之前,仔细阅读结果。
  • 如果扫描失败或报告不匹配,不要交换敏感信息。

二维码在数学上并不天然比数字指纹更强;它只是验证数据的一种更不容易出错的表示形式。其价值取决于比较途径的真实性、应用的实现以及双方设备的安全性。

远距离使用带外验证

不便见面时,带外验证提供了一种手动替代方法。它意味着通过与被检查聊天完全分离的通信途径比较指纹。

例如,使用你早已知道的传统电话号码致电联系人,请对方读出设备上的安全号码,再与你设备上显示的号码仔细比较。仅凭声音或视频辨认并不能得出确定结论:账户可能被攻陷,媒体也可能被模仿。对于高风险请求,应把既有的独立联系途径与你已经信任的背景信息结合起来,不要改用仅由未经验证账户提供的替代号码。

根本原则是:第二条途径不能依赖正在检查的聊天内部所作的身份声明。

避免以下安全陷阱:

  • 不要让联系人把号码粘贴进同一个未经验证的对话。
  • 不要仅仅因为截图看起来像应用的真实界面,就信任它。
  • 不要在没有独立确认的情况下,接受“因为换了新手机所以变了”的解释。
  • 除非应用明确将验证流程设计成这样,否则不要只比较长指纹开头和末尾的四位数字。

意外的密钥变化意味着什么

加密密钥经常会因正常原因改变。联系人可能更换手机、重新安装应用或重置账户;具体哪些操作会改变身份密钥,取决于通讯应用。因此,密钥变化并不是中间人攻击的绝对证据。

应把意外变化当作发送敏感材料前需要检查的理由。新密钥可能是合法的,但之前的手动比较不会自动建立对新密钥的信任。如果应用提醒安全代码发生变化:

  1. 暂停所有敏感消息的发送。
  2. 通过已知、独立的途径联系对方,即进行带外联系。
  3. 询问对方最近是否更换设备或重新安装应用。
  4. 双方都打开当前的验证界面。
  5. 重新进行安全号码验证。
  6. 只有在数值完全匹配后,才恢复敏感通信。

如果联系人施压要求你忽略提醒、要求紧急转账,或拒绝通过另一个渠道验证,应高度警惕。

加密聊天的实用信任习惯

按你的威胁模型,采取与风险相称的验证流程。日常聊天只需留意密钥变化提醒。对于高度机密的工作,始终在发送第一份敏感内容之前完成全面验证。

验证降低了向意外密钥加密的风险。它不能代替设备安全、谨慎选择接收者,或对发送内容的判断。验证的严格程度应与发错给他人的后果相称。

来源

探索 Livara
CONTINUE THE THREADPrivate messaging ↗
YOU’VE REACHED THE ENDBack to the reading room ↗