
Apple 钱包中证件的安全性
以下功能协助提升在 Apple 钱包中使用证件的安全性。
身份数据完整性和防伪性
Apple 钱包中的证件使用由发证机构提供的签名,使任何符合 ISO/IEC 18013-5 要求的读卡器均可验证 Apple 钱包中的用户证件。此外,“钱包”中证件的所有数据元素均单独受防伪保护。这使证件读卡器可请求 Apple 钱包中证件上存在的一部分特定数据元素,并使 Apple 钱包中的证件可用对应相同部分作出响应,因而只会共享所请求的数据并最大限度地保护用户隐私。
设备绑定
Apple 钱包中的证件认证使用设备签名来防止克隆证件和重放证件出示。Apple 钱包将证件认证私钥储存在 iPhone 设备的安全元件中,这样证件会绑定到州签发机构创建证件时所针对的同一设备。
知情同意
Apple 钱包中的证件可能使用认证来识别使用 ISO/IEC 18013-5 标准中所定义协议的读卡器。出示证件期间,如果读卡器自己有被 Apple 钱包信任的证书,则会显示一个图标,向用户保证其正在与目标方交互。
通过无线电线路传输的用户数据保密性
会话加密有助于确保在 Apple 钱包中的证件和证件读卡器之间交换的所有个人可识别信息 (PII) 都已加密。加密过程由应用层执行。因此会话加密的安全性不依赖于传输层(例如 NFC、蓝牙和无线局域网)提供的安全性。
Apple 钱包中的证件有助于保护用户信息隐私
Apple 钱包中的证件遵守 ISO/IEC 18013-5 中所概述的“设备检索”流程。设备检索消除了在出示期间调用服务器的需要,因而保护用户不受 Apple 和发证机构的跟踪。
如“身份数据完整性和防伪性”中所述,发证机构提供的签名等元素会包括在移动安全对象 (MSO) 中,供读卡器验证证件。为了减少这些静态元素的可追踪性和有助于防止在依赖方间跟踪证件出示,设备会为 Apple 钱包中的每个证件管理多个证件认证密钥。发证机构在签发和更新证件时,会为每个证件认证密钥生成唯一的 MSO 有效负载,这些密钥会在加密后发送到用户设备上并进行储存。在出示证件时,设备会选择随机的证件认证密钥及其相关的 MSO 用于交易。这在用户出示非可识别信息(如 age_over_18 或其他年龄元素)时很有用,因为减少了多方可靠匹配元素和识别特定用户的可能性。为了减少开销,在某些情况下(例如,向相同依赖方出示时,或在出示内容中已含本身可链接的信息时)密钥可能会重复使用。当所有证件认证密钥都至少用过一次时,如果发证机构选择支持提前轮换,设备会发起生成新一批密钥并请求刷新有效负载的流程。
证件校验器安全性
在运行 iOS 17 或更高版本的 iPhone 上,美国商户和组织可使用 iPhone 无缝、安全地当面读取符合 ISO 18013-5 或 ISO 23220-1 标准的移动证件,而无需借助外部硬件。证件校验器有两种不同的使用方式,具体取决于验证使用情况:
证件校验器仅显示:对于仅需目视确认的使用情况,这可实现使用 iOS 用户界面显示“姓名”、“年龄”、“证件照片”和“超过 N 岁”数据。这还旨在阻止所有截屏和录屏功能捕捉显示的信息。此服务不允许收集可追溯到出示者的个人可识别信息 (PII)。
证件校验器数据传输:这可让 App 请求更多数据元素,例如出生日期和地址,从而满足法律验证要求。访问证件校验器数据传输 API 通过授权进行管理,且 App 必须遵守与数据使用方式相关的要求。例如,App 必须展示法律要求才能请求身份数据。同时 App 还需要维护隐私政策,详述其对所请求身份数据的处理、储存或其他用途。
读取移动证件
证件校验器遵循 ISO/IEC 18013-5 标准中定义的协议。当使用证件校验器 API 的 App 请求读取移动证件时,一张由 iOS 控制的表单会显示,并提示移动证件持有者将设备靠近证件读卡器。这样的首次 NFC 接触(根据 ISO/IEC 18013-5 标准所定义,可使用二维码而非 NFC 发起蓝牙交接过程)在两台设备间建立了安全的低功耗蓝牙 (BLE) 连接。此时,移动证件持有者可在其设备上检查正被请求的信息。移动证件持有者同意后,所请求的身份数据会传输到读取设备。使用证件校验器数据传输 API 的 App 会收到响应数据以进行处理,而使用证件校验器仅显示 API 的 App 会看到由 iOS 直接显示的数据。
ISO/IEC 18013-5 标准提供了多种安全保护机制,可检测、防止和降低安全风险。在这些机制中,证件校验器会同时验证发证机构签名和设备签名。此外,证件校验器支持使用 ISO/IEC 18013-5 标准中定义的协议来认证读卡器。App 可以选择显示图标和名称,确保证件持有者正在与使用读卡器证书的目标方交互。
发证机构和设备验证
为防止伪造,证件校验器会验证移动证件受信任发证机构的移动安全对象签名。证件校验器数据传输还会提供 API,可根据需要让 App 自身而非 iOS 执行签名验证。为向商户或组织保证移动证件未从一台设备拷贝到另一台设备,证件校验器会验证会话数据的签名。
读卡器认证
出示证件时,与读卡器认证证书关联的私钥会对证件校验器读卡器请求进行签名。该证书的签发方为 Apple 根证书颁发机构 (CA),其中包含相关 x509 自定义扩展,可向持有者表示商户是否打算储存该数据。如果应用程序想要向证件持有者显示名称和图标,App 管理员需要通过 Apple Business Register 注册并提供准确的品牌信息。提交的信息经成功验证后,在交易时,读卡器认证证书会向证件持有者提供与 Apple Register 中实体相关的信息。