使用 Apple Pay 时的支付授权
对于配备安全隔区的设备,仅在收到来自安全隔区的授权后才能进行支付。在 iPhone 或 iPad 上,这涉及到确认用户已使用面容 ID、触控 ID 或设备密码进行认证。面容 ID 或触控 ID 为默认的支付方式(如果可用);不过用户可随时使用密码来代替。如果尝试匹配指纹三次不成功或匹配面容两次不成功,会自动提供密码输入选项;五次尝试不成功,则需要输入密码。如果面容 ID 或触控 ID 尚未配置或没有为 Apple Pay 启用,用户也需要输入密码。对于在 Apple Watch 上进行的支付,用户必须使用密码解锁设备且必须连按侧边按钮两下。
使用共享的配对密钥
安全隔区和安全元件之间通过串行接口通信:安全元件连接到 NFC 控制器,NFC 控制器连接到应用程序处理器。虽然并非直接相连,但安全隔区和安全元件可以使用共享的配对密钥进行安全通信,该密钥已在设备制造过程中预置。对通信的加密和认证均基于 AES,且两方均使用加密随机数来防止重放攻击。配对密钥会使用安全隔区的 UID 密钥和安全元件唯一标识符在安全隔区内部生成。之后配对密钥会在工厂中从安全隔区安全地传输到硬件安全模块 (HSM) 中,该模块含有随后将配对密钥注入安全元件所需的密钥材料。
授权安全的交易
用户授权交易后(包括直接与安全隔区通信的物理手势),安全隔区之后会向安全元件发送认证类型签名数据以及交易类型的详细信息(免接触式或 App 中),而安全元件中绑定了授权随机 (AR) 值。用户在首次预置信用卡时,安全隔区中会生成 AR 值,只要 Apple Pay 启用,该值便会一直存在,且会受到安全隔区加密和防回滚机制的保护。AR 值会通过使用配对密钥安全地传送到安全元件中。在收到新的 AR 值后,安全元件会将之前添加的付款卡标记为删除。
使用支付密码实现动态安全性
源自支付小程序的支付交易包括支付密码和设备卡号。此密码为一次性代码,使用交易计数器和密钥计算。交易计数器值随每次新交易的产生而递增。密钥则在个性化过程中预置在支付小程序中,且为支付网络和/或发卡机构所知。根据支付方案的不同,计算过程中还可能使用其他数据,包括:
终端不可预知数,针对近距离无线通信 (NFC) 交易
Apple Pay 服务器随机数,针对 App 内交易
这些安全码会被提供给支付网络和发卡机构,使发卡机构可验证每笔交易。根据交易的类型不同,这些安全码的长度也可能有所不同。