- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《SM2椭圆曲线参数选取
关于SM2椭圆曲线参数选取的资料
一.安全的椭圆曲线的选取
1.椭圆曲线上的公钥密码体制的安全性是建立在椭圆曲线离散对数的基础上, 但并不是所有椭圆曲线都可以应用到公钥密码体制中, 为了保证其安全性, 必须选取安全椭圆曲线,即只有选到合适的有限域GF(p)和椭圆曲线(ECC),能够抵抗攻击ECDLP算法的攻击,才能保证所选ECC的安全性。
若某椭圆曲线存在优于n1/2级(n是基点阶次)计算复杂度的攻击方法,则称此曲线为弱椭圆曲线。Fp上的超奇异椭圆曲线(有限域Fp的特征整除q+1-#E(Fp))和Fp上的异常曲线(#E(Fp)=p)都是弱椭圆曲线。(国密局文档p4,p25A.4抗攻击椭圆曲线满足的条件)。下面是选取曲线时应遵循的原则:(一种椭圆曲线参数生成的快速算法)
(1)为了抗击Pollard-ρ攻击,所选取椭圆曲线的阶#E(GF(p))的分解式中应该包含一个大的素数因子,目前应不小于160bit;
(2)为了抗击Weil对和Tate对的攻击,对于1≤k≤30,n不能除pk-1(不宜选取超奇异椭圆曲线);
(3)为了抗击Semaev-Smart-Satoh-Araki的攻击所选曲线的阶不能等于该曲线所定义的有限域的阶,即#E(FP)≠p(不宜选取异常椭圆曲线);
(4)对于二进制域GF(2m)的度m不宜为合数。Gaudry,Hess和Smart提出,若m有小约数l(l=4),存在比Pollards rho算法更快求解ECDLP的方法。
(5)选择GF(p)的子域H,满足它的阶|H| 是#E 的最大素因子n,并在H 上实现ECC。
2.一般来说有4 种寻找安全椭圆曲线的方法:(椭圆曲线密码体制及其参数生成的研究.2006.DR)
(1) 有限域GF( p) 上随机生成一椭圆曲线, 直接计算其阶, 判断阶是否为大素数或含大素数因子, 若是即确定,否则继续选取曲线, 直至符合条件。
(2) 取具有一定特殊性椭圆曲线的系数, 计算该椭圆曲线的阶, 对该阶进行判断, 直至找到所需要的安全曲线。
(3) 如果p = 2m , 其中m 能被一个比较小的整数d 整除, 首先在有限域GF( p1 ) ( p1 = 2 d ) 上选择一椭圆曲线E,并计算其阶, 根据此值, 利用Weil 定理[ 2] 计算该曲线在其扩域GF( p) 上的阶, 若此阶符合安全标准, 再找曲线E在域GF( p) 上的嵌入E, 则E 即为所需的安全椭圆曲线。
(4) 首先给出具有安全条件的曲线阶, 然后构造一具有此阶的椭圆曲线。目前国内外比较流行的计算椭圆曲线阶的算法有complex multiplication 算法、SEA 算法、Satoh 算法。应用广泛的椭圆曲线公钥密码体制( ECC) 中大多是基于特征2 的有限域上。
3.尽管ECC的参数选取方法有许多种,应用最多的是随机选择方法,它是根据任意给定曲线的系数,计算曲线的阶直到找到素数(或近素数)阶的椭圆曲线。
(1)参数p的选取:p当然越大越安全,但越大,计算速度会变慢,200位左右可以满足一般安全要求;
(2)参数a、b的选取:已知素域的规模p,求解比特串SEED及Fp中的元素a,b(D.1p37参数生成)
a) 任意选择长度至少为192的比特串SEED;
b) 计算H = H256(SEED),并记H = (h255;h254;...;h0);
c) 置R =Σhi2i,其中i取从0到255的整数;
d) 置r = R modp;
e) 任意选择Fp中的元素a和b,使r2 ≡ a3 (modp);
f) 若(4a3+27b2) modp=0,则转步骤a);
g) 所选择的Fp上的椭圆曲线为E:y2 = x3+ax+b;
h) 输出(SEED;a,b)
二.椭圆曲线的阶的选取(北邮博士论文)
在椭圆曲线生成的过程中要考虑的一个重要因素就是确定椭圆曲线点的个数,即椭圆曲线的阶通常密码体制中使用的椭圆曲线E的阶#E(Fp)必须满足以下条件:若已给定域Fp,要最大限度地抵抗针对ECDLP的Poh1ig-Hellman攻击和pollardp攻击,应使得#E(Fp)为素数或者接近素数,即#E(Fp)=hn其中n为素数,一般来说,最小应该满足素数n2160,h非常小,比如h=1,2,3或4;另外还要避免对特殊曲线的攻击,保证#E(Fp≠p),即椭圆曲线E不是畸形曲线;同时还要使得#E(Fp)的素因子n不能整除pt-1,其中t=1,2,…,30,即椭圆曲线E不是超奇异曲线,MOV攻击法不能实现
计算椭圆曲线阶的最简单的方法是直接对每个X任F(p)通过WeierstraSS方程查找y任F(p)的解的个数,该方法在密码学域空间很大的情况下是不可取的。在实际的阶计算中,常采用以下两种方法:复乘法和点计数法。
(l)复乘法(
您可能关注的文档
最近下载
- 金刚石绳锯机的使用和维护要点讲解.doc
- 某县在全市利用外资工作汇报会上的发言材料--强势组织不放松 乘风乘势谋突破.doc VIP
- 2025年塔里木职业技术学院单招职业技能测试题库及完整答案1套.docx
- 小米汽车的营销策略研究.docx VIP
- sinoco西诺克SIN系列变频器调试参数设置故障代码资料.pdf VIP
- 流行歌曲口琴简谱集.doc
- 2025年格力空调分销渠道设计分析报告.pdf VIP
- 变革型领导对员工创新行为的影响分析-analysis of the influence of transformational leadership on employees' innovative behavior.docx
- 《放射化学基础》课件.ppt VIP
- 山西12J1工程用料做法(图集规范).pdf
文档评论(0)