- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
离散对数比特安全理论分析
离散对数比特安全理论分析
摘要:自Diffie、Hellman提出公钥密码体制以来,公钥加密算法设计和分析技巧在突飞猛进地发展。然而需要引起我们注意的是很大部分公钥密码体制基于离散对数,这些密码算法的有效性依赖于计算离散对数的难度,本文从理论分析的角度看离散对数问题的比特安全性,借助二叉树遍历,递归反证的思想,由离散对数问题的困难性证得求解离散对数高位比特的困难性。
关键词:离散对数问题;比特安全;二次剩余;二叉树;递归反证
离散对数问题(DLP):给定一个质数p,和有限域Zp上的一个本原元α,对Zp上整数β,寻找唯一的整数c,使得αc≡β(mod p)。一般地,如果仔细选择p,则认为该问题是难解的,且目前还没有找到计算离散对数问题的多项式时间算法。为了抵抗已知的攻击,p至少应该是150位的十进制整数,且p-1至少有一个大的素数因子。
简述如下:对于质数p(须使得p-1至???有一个大的素因子,否则可利用Pohlig-Hellman算法转化为较小模的离散对数问题,通过穷搜系数得到解),本原元α∈Zp*且β∈Zp*,求logαβ(mod p-1)是困难的.
为以下叙述方便,这里设β=αx mod p,x=2lal+2l-1al-1+…+22a2+2a1+a0,其中al=Ll+1(β),al-1=Ll(β)…a1=L2(β),a0=L1(β).
一、最低比特L1(β)容易求
根据本原元可生成整个循环群的性质可知:(αp)= -1(α∈QNR)因为若α是二次剩余,不可能生成二次非剩余,而群Zp*中有二次非剩余,与α是Zp*本原元矛盾.
通过计算(βp)=(αxp),判断β=αx∈QR还是β=αx∈QNR.
1.若(αxp)=1(即β=αx∈QR),则有x是偶数,即a0=0=L1(β).
2.若(αxp)= -1(即β=αx∈QNR),则有x是奇数,即a0=1=L1(β).
二、设p-1=2st,其中t为奇数,则L1(β),L2(β)…Ls(β)容易求
(一)求解L2(β):
1.若L1(β)=0,则可求出β的两个平方根αx2,αx2+p-12=αx2+2s-1t(αp-12=-1mod p)且x2,x2+2s-1t具有相同的奇偶性,其中任意一个记为β1,利用类似一步的二次剩余判定求出β的平方根β1的最后1比特L1(β1),即L2(β).
2.若L1(β)=1,则可求出β/α的两个平方根,由指数奇偶性相同,取其中任意一个记为β,同理可求L2(β).
依次地,对于任意的i≤s,可求Li(β).因为只要i≤s,可保证s-(i-1)≥1,于是2s-(i-1)是2的倍数,指数与主平方根奇偶性相同,故而可记任意一个为βi-1,可求L1(βi-1)=Li(β).
(二)下列出已知Li(β)求解Li+1(β)的过程:
1.若Li(β)=0,则可求出βi-1的两个平方根,同样指数与主平方根具有相同的奇偶性,其中任意一个记为βi,利用类似一步的二次剩余判定求出βi-1的平方根βi的最后1比特L1(βi),即Li+1(β).
2.若Li(β)=1,则可求出βi-1/α的两个平方根,由指数奇偶性相同,取其中任意一个记为βi,其中任意一个记为βi,求L1(βi)即Li+1(β).
(三)最后,对Ls(β)的求解:
1.若Ls-1(β)=0,则可求出βs-2的两个平方根,由指数奇偶性相同,取其中任意一个记为βs-1,利用类似一步的二次剩余判定求出βs-2的平方根βs-1的最后1比特L1(βs-1),即Ls(β).
2.若Ls-1(β)=1,则可求出βs-2/α的两个平方根,由指数奇偶性相同,取其中任意一个记为βs-1,其中任意一个记为βs-1,求L1(βs-1)即Ls(β).
若Ls(β)=0,可求βs-1的两个平方根,但指数与主平方根有不同的奇偶性.可见,这里无法继续按照原来的思路过程求解Ls+1(β),那么,下面进一步探讨是否有其他的算法思路求解Ls+1(β)。利用反证法的思想,证明求解Ls+1(β)是困难的.
如上对离散对数各比特的求解结果按二叉树的二叉链表结构存储,以方便后续对孩子结点的访问.
根结点为β,第二层为αx2,αx2+p-12,第三层为αx4,αx4+2s-1t,αx4+2s-2t,αx4+2s-2t+2s-1t如下图所示:
三、求解Ls+1(β)是困难的
这里只须证明:若可计算Ls+1(β),则计算logαβ是容易的,这与离散对数求解的困难性相矛盾.
因为Ls+1(β)=as,若as=0,主平方根∈QR;若as=1,主平方根∈QNR,所以若Ls+1(β)=0,则从2s个平方根中
文档评论(0)