基于游戏的群组密钥交换安全模型解析
1. 安全提案概述
我们通过一个游戏来定义群组密钥交换(GKE)方案的安全性。在这个游戏中,敌手可以通过预言机与GKE方案进行交互。对于GKE方案的每个算法,敌手可以查询相应的预言机,包括Init、Execute、Process(在未认证设置中),在认证设置中还包括Gen,从而选择各自的公共输入参数。这些预言机的内部算法调用所产生的公共输出,会通过接口snd和key提供给敌手。此外,敌手还可以查询Expose、Reveal预言机,在认证设置中还能查询Corrupt预言机,分别获取实例的秘密状态、已建立的群组密钥以及各方的认证秘密。通过查询Challenge预言机,敌手可以获得挑战群组密钥,如果能正确判断这些密钥是在游戏中由模拟实例实际建立的,还是随机采样的,就算赢得游戏。
以下是图1中使用的变量说明:
| 变量 | 说明 |
| ---- | ---- |
| K | 已计算的群组密钥数组 |
| ST | 实例状态数组 |
| SAU | 秘密认证器数组 |
| CR | 受损或外部认证器集合 |
| WK | 弱群组密钥集合 |
| CH | 为敌手挑战的密钥集合 |
| CP | 实例已计算的密钥集合 |
| TR | 实例间发送的密文队列形式的记录 |
为防止敌手轻易解决挑战,游戏禁止敌手进行以下攻击:
1. 一个群组密钥不能既通过Reveal预言机被揭示,又通过Challenge预言机被查询作为挑战(对应代码行37、42、05)。
2. 当一个实例的本地状态通过Expose预言机被暴露后,如果该实例根据其密钥标识符能
超级会员免费看
订阅专栏 解锁全文
26

被折叠的 条评论
为什么被折叠?



