- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二进制域运算
基于GF(2m)的ECC 一、有限域运算 约束条件 二进制域GF(2m) 多项式表示法 am-1zm-1+ … + a1z1+ a0 其中z=2 ai=0或1 选取一个既约(约减)多项式f(z) zm+r(z) 以GF(2160)为例 m=160 a159z159+ … + a1z1+ a0 f(z) = z160+r(z) = z160+z5+z3+z2+1 模加 有 a= a159z159+ … + a1z1+ a0 b= b159z159+ … + b1z1+ b0 求模加 c = a + b 则 c= c159z159+ … + c1z1+ c0 c159 = a159 ^ b159 c158 = a158 ^ b158 …… c1 = a1 ^ b1 c0 = a0 ^ b0 模乘 有 a= a159z159+ … + a1z1+ a0 b= b159z159+ … + b1z1+ b0 求模乘 c = a * b 模乘 方法一:根据bi选择a或0,移位后模加到部分积上。 可以对每个部分结果进行模约减。 c = 0; for i = 0 … 159 t = bi * a * zi (mod f(z)); c = c ^ t; 模乘 方法二:多项式展开,并行计算所有ci。该方法不需要模约减。 c0 = a0 * b0; c1 = a1 * b0 ^ a0 * b1; …… cm-1 = am-1 * b0 ^ am-2 * b1 ^ …… ^ a1 * bm-2 ^ a0 * bm-1 ; …… c2m-3 = am-1 * bm-2 ^ am-2 * bm-1; c2m-2 = am-1 * bm-1; 模约减 有 a= a159z159+ … + a1z1+ a0 f(z) = z160+r(z) = z160+z5+z3+z2+1 求模约减 c = a mod f(z) 注意: f(z) = z160+r(z) z160 = -r(z) mod f(z) = r(z) mod f(z) z161 = r(z)*z mod f(z) z162 = r(z)*z2 mod f(z) …… z160+k = r(z)*zk mod f(z) 模约减 例如:a230= 1,则有z230项 由于 z230 =z160+70 = r(z)*z70 mod f(z) = z75+z73+z72+ z70 因此可以将z230约减为z75+z73+z72+ z70, 即用‘1’与z75 、z73、z72、z70项模加(异或) 容易推导得: 当i=0~159时:只会得到 zi 一项 当i= 160~314时: 即k=0…154,会产生zk+5、zk+3、zk+2、 zk+0 四项 模约减 当i= 315时,k=155,得到 z160、z158、z157、 z155 ,进一步得到: z158、z157、 z155 、z5、z3、z2、1 当i= 316时,k=156,得到 z161、z159、z158、 z156 ,进一步得到: z159、z158、 z156 、z6、z4、z3、z 当i= 317时,k=157,得到 z162、z160、z159、 z157 ,进一步得到: z159、 z157 、z7、z5、 z5、 z4、 z3、 z2 、z2、1,即: z159、 z157 、z7、z4、 z3、 1, 当i= 318时,k=158,得到 z163、z161、z160、 z158 ,进一步得到: z158 、z8、z6、 z6、 z5、 z5、 z4、 z3、 z3、z3、z2、 z、 1即: z158 、z8、z4、 z3、z2、 z、 1 模平方 有 a= a159z159+ … + a1z1+ a0 求模平方 c = a2 mod f(z) c = a2 mod f(z) = a*a mod f(z) 可以用模乘求解 也可以找出规律,进一步化简 模逆 有 a= a159z159+ … + a1z1+ a0 求模逆 a-1,使得: a* a-1 mod f(z) = 1 费马小定理: a-1 = a2 * a2*2 * a2*2*2 * ……* a2*2*……*2 (即:2(m-1)) 可以找出规律,用较少次数的平方实现 * * v1.0 同济大学微电子中心 任浩琪
文档评论(0)