密钥恢复的数学方法与应用
1. 实用算法:分支限界法
在RSA方案的密钥恢复中,我们使用二叉树来维护秘密密钥的候选值。由于在计算上不可能同时处理所有候选值,因此采用分支限界法。该方法的步骤如下:
- 扩展 :从每个存活的叶子节点生成一些新的叶子节点。
- 剪枝 :根据预定义的规则修剪一些叶子节点。为了实现剪枝,引入了截断得分函数,它是得分函数的截断变体,对应从根节点到当前叶子节点的得分。
剪枝规则主要有两种:
- 得分小于阈值C的叶子节点被修剪。
- 得分函数排名大于L的叶子节点被修剪。
这两种规则各有优缺点:
| 规则 | 优点 | 缺点 |
| — | — | — |
| 得分小于阈值C | 可自发判断叶子节点是否存活 | 难以估计密钥恢复过程中使用的最大内存大小 |
| 得分排名大于L | 节点信息存储量固定为L,便于内存管理 | 必须等待所有叶子节点的得分值计算完成 |
对于第一种规则,假设在某一步有M个叶子节点,树扩展t次后,叶子节点数变为M2t。需要确定阈值C,使得存活叶子节点的平均值为M,或者最终步骤的叶子节点数落在输入大小的多项式范围内。对于第二种规则,树扩展t位后,叶子节点数为L2t。使用较小的L可以用较少的内存进行密钥恢复,但如果L太小,正确候选值被修剪的概率会增加,因此需要使用较大的L来降低这种概率。
2. 不同噪声模型下的得分函数与成功条件
2.1 离散噪声分析
所有得分函数都基于条件概率。设候选序列为b,观察序列为
密钥恢复的数学方法与应用
超级会员免费看
订阅专栏 解锁全文
1079

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



