
使用卫星收发紧急信息
iPhone 14 或后续机型的用户可通过卫星链接进行通信,以提供各种服务。卫星链接存在严格的带宽限制,且需要采用带宽开销极低的安全协议。无论何种通信类型(SOS 紧急联络、短信或 iMessage 信息),Apple 都会在离网设备和 Apple 数据中心之间建立安全会话。设备会通过蜂窝网络或无线局域网向服务器预注册公钥材料,以在离网时节省带宽。
核心安全架构
设备请求卫星服务时,会通过引用其公钥的截断哈希值与 Apple 数据中心建立安全连接,用于交换密钥。每个公私密钥对仅支持单个会话,最长有效期为八小时。服务器会为每个客户端密钥对提前生成对应的公私密钥对,并与客户端共享公钥。
会话过期或完成后,Apple 服务器和设备会移除对应私钥,从而提供正向保密。Apple 和设备会按固定间隔和在使用私钥后重新在线时注册额外密钥,为卫星通信提供泄露后安全保护。观察程序无法通过会话标识符识别用户,因为每台设备会在每个会话中轮替标识符以防止关联。
通过卫星发送紧急联络和请求道路救援
用户通过卫星发送 SOS 或请求道路救援时,与 Apple 的安全连接(如上所述)会保护通信内容。额外的一重加密会确保内容发送至应用程序服务器的全程都保持加密,服务器会通过传输加密将这些信息转发至 Apple 紧急服务和道路救援合作伙伴。
通过卫星发送 iMessage 信息
通过无线局域网或蜂窝网络收发 iMessage 信息时,如果发件人或收件人群组中的任何设备支持卫星服务,设备会随信息交换密钥材料。通过此机制,设备会收到定期更新的密钥,可供其在蜂窝网络连接不可用且设备接入卫星时加密和解密信息。由于密钥存在生命周期限制,用户需要在过去 30 天内曾收发信息才能进行离网通信。
每台设备会生成对称密钥材料并使用 iMessage 信息加密分发,以加密其自身发出的信息。每条信息将使用基于哈希的密钥导出函数 (HKDF) 棘轮派生的唯一对称密钥,作为其对应的信息计数器。收到信息时,收件人的设备会查询发件人的对称密钥材料,以派生对应的信息密钥。设备重新在线时,会分发新对称密钥用于后续会话。
发送设备仅会在从收件人处收到签名有效负载以确认设备可通过卫星接收信息时,才会使用卫星发送 iMessage 信息。
【注】使用卫星发送 iMessage 信息仅支持一对一信息,不支持群组信息。
通过卫星发送短信
用户使用卫星收发短信时,信息会从网络互通功能 (IWF) 进出。IWF 会从发件人运营商处收到发送给离网客户端的信息(客户端在离网时显示为漫游,因为其不在运营商的本地网络上)。与之类似,IWF 会将来自离网客户端的传出信息发送至收件人的本地运营商。加密和认证会保护离网客户端和 IWF 之间收发的短信,防止 Apple 和可访问卫星信号的任何人访问或修改信息。
通过 NIST P256 曲线进行的迪菲-赫尔曼密钥交换在客户端在网时开始,在客户端离网并建立初始卫星连接时完成。通过 HKDF-SHA-256,Apple 和设备会从此密钥交换中派生多个密钥。其中一个密钥通过对称方式加密(使用 AES-GCM 搭配 256 位密钥)正确发送短信所需的客户端信息(IMSI 和 SMSC)。另一组提供了客户端和 IWF 之间的信息双向加密,同样使用 AES-GCM 搭配 256 位密钥。
卫星连接比传统蜂窝网络通信带宽低且延迟高,因此并非所有传入短信都会在离网连接时立即到达客户端,以防止垃圾信息或低价值信息延误关键短信的接收。与之相反,系统仅会在以下任一种情况下将传入信息传输至客户端:
1.离网客户端曾在最近 24 小时内向发件人发送信息。
2.发件人为已批准的发件人(在用户的紧急联系人或 iCloud 家庭成员中)。
否则,Apple 会将加密的信息储存在其服务器上,直至客户端重新在线并通过传统网络取回信息。为保护用户隐私,Apple 将确保 IWF 不会得知用户的已批准发件人列表。
客户端会使用 HMAC-SHA-256 搭配从会话主密钥派生的密钥,为每个会话中的每个电话号码生成随机假名。会话建立时,客户端会将允许列表上每个电话号码的假名发送给 Apple 服务器。与之类似,每次客户端将短信发送到电话号码时,都会生成假名并发送给 Apple。这可让 Apple 为会话维护允许的发件人假名列表。
用户在会话建立后向客户端发送短信时,IWF 会为信息加密并计算发件人电话号码的假名。它会随加密的信息将此假名发送给 Apple 服务器。服务器会比较传入信息的发件人假名和允许列表,如有匹配则转发加密信息。