补充访问控制(PACEv2):PACEIM的安全分析
立即解锁
发布时间: 2025-10-26 01:19:04 阅读量: 8 订阅数: 29 AIGC 

### 补充访问控制(PACE v2):PACE IM 的安全分析
#### 1. PACE v2 IM 与 PACE v2 GM 的对比
PACE v2 IM 和 PACE v2 GM 的其他阶段完全相同。遵循相同方法(仅映射阶段特定)的协议属于 PACE 框架,德国的 PACE v2 GM 和 PACE v2 IM 都属于该框架,并且可以在 APDU 级别使用相同的命令集实现。
需要注意的是,PACE v2 IM 要求支持该协议的密码套件包含 H 和 Encoding 这两个原语,而德国的 PACE v2 GM 则不需要。此外,与 PACE v2 GM 相比,PACE v2 IM 具有更高的性能:PACE v2 GM 在芯片和终端端需要 5 次标量乘法,而 PACE v2 IM 仅需要 2 次。由于其他原语的执行时间与之相比可以忽略不计,椭圆曲线运算构成了这两个协议执行时间的主要部分。
基于密码的安全通道协议需要实现前向安全性,因此在协议的某个阶段需要某种形式的 Diffie - Hellman 密钥交换。所以,芯片和终端端至少必须执行 2 次标量乘法。PACE v2 IM 在这基础上提供了密码认证,且额外成本可以忽略不计。
#### 2. 知识产权相关说明
存在许多保护用于密码认证密钥建立的加密协议和技术的专利,例如 EKE 和 SPEKE 协议设计。PACE v2 IM 的设计旨在规避所有已知的知识产权主张。在寻求完全无专利机制的过程中,已考虑了所有现有专利,以确保 PACE v2 IM 独立于它们的范围,但不能正式保证世界上没有第三方拥有该设计的子部分或特征的知识产权。此外,PACE v2 IM 使用了点编码函数,该技术正在申请专利,由 Sagem Sécurité 拥有,Sagem Sécurité 已同意在限制性条件下授予免费使用权利,这是已知的唯一涉及 PACE v2 IM 的知识产权。
#### 3. 基于密码的安全通道的安全模型
由于密码数量有限,攻击者可能会离线枚举公共密码字典中的所有可能密码,这称为字典攻击。期望攻击者学习会话密钥 sk 的能力仅取决于其与芯片或终端的在线交互,而不显著依赖于其离线计算时间或能力。基于密码的密钥交换协议的目标是确保攻击者在在线阶段的成功率不会比随机猜测密码更高,系统可以限制交互次数,在多次尝试失败后使密码失效。
##### 3.1 被动安全模型(窃听)
窃听是最薄弱的攻击场景。在这个非常受限的安全模型中,攻击者只能监听诚实方之间交换的消息,无法冒充他们或修改传输内容。被动攻击者捕获了现实生活中攻击场景的威胁,例如天线主动记录交易,然后使用大量计算能力来恢复密码和/或会话密钥。
被动攻击可能有以下几个目标:
- **密码恢复**:也称为离线字典攻击,攻击者收集多个协议轨迹,并使用计算能力从中提取密码。由于典型应用中的密码字典熵有限,这种攻击通常被认为是主要风险。
- **保密性**:攻击者旨在根据监控的轨迹恢复一个或多个会话密钥,也称为打开通道。
- **前向保密性**:攻击者知道密码并尝试打开监控的通道。
期望基于密码的协议能够抵抗这三种类型的攻击,但被动安全模型通常不足以捕获现实生活中的威胁,因为攻击者可能在设备持有者未察觉的情况下与设备进行交易。因此,安全要求必须包括但不限于纯被动攻击。
##### 3.2 仅芯片或仅终端的主动安全模型
对被动攻击者模型的改进是考虑将目标设备提供给攻击者的场景。攻击可能结合纯窃听和与设备(芯片或终端)的主动对话。在这个安全模型中,攻击者假设只与一个设备交互,并试图破解密码(密码恢复)或会话密钥(保密性)。前向保密性也可以在这种情况下定义,但如果攻击者在密码泄露后获得对设备的主动访问权限,任何协议都无法实现前向保密性。只有在密码泄露给攻击者后无法访问目标设备(但允许窃听)时,前向保密性才有意义。
这个安全模型包含了比纯被动模型更现实的攻击,特别是捕获了中继和刷卡攻击的威胁,但还可以考虑更强的攻击。
##### 3.3 Bellare - Pointcheval - Rogaway 安全模型
Bellare、Pointcheval 和 Rogaway 定义了基于密码的密钥交换最通用和强大的安全模型。在这个模型中,考虑一组客户端 C 和一组服务器 S,客户端 C 和服务器 S 通过客户端实例 Ci 和服务器实例 Sj 进行通信。在并发模型中,攻击者可以创建参与者的多个同时活动的实例,而在非并发模型中,用户 U 和服务器 S 之间只允许一个活动的用户实例 Ui。攻击者可以访问大量诚实执行的过程,只需要被动窃听即可。此外,攻击者可以请求某些用户实例 Ui 和服务器实例 Sj 之间的会话密钥,一个会话密钥的丢失不应影响其他会话的安全性。最终,攻击者试图区分 Ui 和 Sj 使用的真实会话密钥(未泄露)和随机密钥。在这个模型中,攻击者还可以破坏用户以获取他们的密码,之前建立的会话密钥应保持安全,这体现了前向保密性的概念。
普遍认为 BPR(通常是非并发)安全模型足够强大,可以捕获设备在实际中可能面临的所有实际威胁。并发设置在设备支持多个线程的情况下提供了进一步的细化。
##### 3.4 随机预言机和理想密码模型
在本文中,使用随机预言机(RO)和理想密码(IC)模型来证明安全性。在随机预言机模型中,假设某个哈希函数被一个公开可访问的随机函数(随机预言机)所取代,这意味着攻击者不能自己计算哈希函数的结果,必须查询随机预言机。类似地,在理想密码模型中,分组密码(由密钥参数化的置换)被建模为置换预言机。虽然最好获得不依赖于 RO 或 IC 模型的密钥交换协议,但这些模型是评估高效构造安全级别的常用形式化工具。
#### 4. 受限模型下 PACE v2 IM 的安全分析
##### 4.1 受限模型
对 Bellare - Pointcheval - Rogaway 安全模型进行了以下简化:
1. 芯片不能同时与多个终端交互,终端也不能同时与多个芯片交互(非并发模型)。
2. 终端除了芯片的密码外不持有任何秘密。
3. 攻击者不能篡改芯片和终端在交互过程中发送的消息,只能窃听它们的通信。特别是,攻击者不能与持有密码的终端交互,但可以与未正在与终端交互的芯片交互。
具体考虑攻击者和挑战者之间的以下游戏:
1. 挑战者生成系统公共参数 params 并发送给攻击者。
2. 挑战者在字典 D 中随机生成一个密码 π。
3. 挑战者使用 π 模拟芯片和终端之间的 n 次协议执行,并将记录 (T1, ..., Tn) 发送给攻击者。
4. 攻击者可以请求与 (T1, ..., Tn) 匹配的任何会话密钥。
5. 攻击者可以与挑战者进行最多 k 次协议执行,挑战者使用 π 进行响应。每次执行结束时,攻击者可以请求相应的会话密钥 ski。
6. 挑战者将密码 pw 发送给攻击者(前向安全性)。
7. 攻击者必须输出一个未被挑战者透露的会话密钥。
对于与芯片的 k 次交互,攻击者每次通过在字典 D 中随机猜测密码成功的概率为 1/|D|,因此 k 次交互的成功概率至少为 k/|D|。如果攻击者的成功概率不能显著更大,则称基于密码的密钥交换是安全的:
**定义 1**:如果没有攻击者在最多获得 n 个协议记录且运行时间小于 τ 的情况下,恢复会话密钥的概率大于 k/|D| + ε,则称字典 D 中基于密码的密钥交换协议是 (n, k, τ, ε) - 安全的。
##### 4.2 计算假设
PACE v2 IM 的安全性依赖于一个计算假设,称为间隙选择基 Diffie - Hellman(GCBDH)假设。
- **定义 2(DDH 预言机)**:E[q] 是椭圆曲线 E 的 q - 挠子群。E[q] 上的 DDH 预言机是一个给定任何元组 (G, uG, vG, wG) ∈ E[q]³,当 w = uv mod q 时输出 1,否则输出 0 的预言机。这里考虑的是完美 DDH 预言机,即误差概率为零。
- **定义 3(CBDH 问题)**:解决 E[q] 上的 CBDH 问题是指,输入一个随机元组 (G, aG,
0
0
复制全文


