6.3素性检测.pdfVIP

  • 20
  • 0
  • 约1.61万字
  • 约 49页
  • 2017-06-06 发布于河南
  • 举报
6.3素性检测

第六章 公开密钥密码体制 第六章 公开密钥密码体制 第三节 素性检测 1 第六章 公开密钥密码体制 第六章 公开密钥密码体制 在建立RSA公钥体制时,每个用户产生一对大的 随机素数是必不可少的步骤。任何合理规模的网络 也需要许多这样的素数。在讨论如何产生这样的素数 之前, 我们先解决人们经常担心的两个问题。 2 第六章 公开密钥密码体制 第六章 公开密钥密码体制 素数存在性问题 问题:如果每个人都需要一对这样的素数, 难道素数不 会用完吗? 答案:当然不会。数论中有著名的素数定理: 不超过x 的素数的个数大约为x/lnx 。 3 第六章 公开密钥密码体制 第六章 公开密钥密码体制 可以证明, 在长度为512位( 自然数的二进制表示 的位数)的自然数中, 有超过10151个素数。同时,任选 一个512位的随机正整数p , 它是素数的概率大约为 1/lnp ≈ 1/177, 即平均177个具有适当规模的随机正整 数p 中将有一个素数。 4 第六章 公开密钥密码体制 第六章 公开密钥密码体制 选择两个不同素数的概率 问题:是否会有两个人偶然地选中了同样的素数? 答案:这种情况一般不会发生。这是因为从超过10151 个512位素数中选中相同的素数的概率几乎为0。 5 第六章 公开密钥密码体制 第六章 公开密钥密码体制 在代数或数论的教材中, 除了筛选法外,没有其它 确定型算法来判定一个自然数是否为素数, 而筛选法 也只能检测一个小的自然数是否为素数。本节将介绍 几种常用的检测大的随机数是否为素数的概率算法, 也称为概率素性检测。 6 第六章 公开密钥密码体制 第六章 公开密钥密码体制 关于算法的几个名词 一个判定问题(decision problem)是指只能回答“是 (yes)”或者“否(no)”的问题。一个随机算法是指任一使 用了随机数的算法(反过来,一个算法没有使用随机 数,称为确定型算法)。 7 第六章 公开密钥密码体制 第六章 公开密钥密码体制 偏是Monte Carlo算法 定义 对于一个判定问题的一个偏是Monte Carlo 算法是具有下列性质的一个概率算法:算法回答“是” 总是正确的, 回答“否”则有可能不正确。 8 第六章 公开密钥密码体制 第六章 公开密钥密码体制 我们说一个偏是Monte Carlo 算法具有错误概率 ε,是指如果算法对任何回答应该为“ 是” 的实例 (instance)至多以ε的概率给出一个不正确的回答“否” (这个概率是对于给定的

文档评论(0)

1亿VIP精品文档

相关文档