(计算数学专业论文)椭圆曲线密码体制中的两个问题的研究.pdf_第1页
(计算数学专业论文)椭圆曲线密码体制中的两个问题的研究.pdf_第2页
(计算数学专业论文)椭圆曲线密码体制中的两个问题的研究.pdf_第3页
(计算数学专业论文)椭圆曲线密码体制中的两个问题的研究.pdf_第4页
(计算数学专业论文)椭圆曲线密码体制中的两个问题的研究.pdf_第5页
已阅读5页,还剩50页未读 继续免费阅读

(计算数学专业论文)椭圆曲线密码体制中的两个问题的研究.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

华中科技大学硕士学位论文 燃= 警揣;= = l i i = i 黼罱= 群穹= = = 摘要 獯鼹夔线密褥落铡是一转公钥瓷鸡体剩,宅不罴建立在大整数分熬及素域乘 法群离数对数趣题的数学鼹题上鲍聪是建立在芟难熬糖鼹裹数对数之上鳇。鲤跫 具有良好的安全性,虽蝗线选取范围广,在同等长度的密镊下具有比r s a 体制更 快的加、解密速度及更高的密码强度,因两倍受青昧。本文研究了椭嘲蓝线点乘 快速算法与基于椭圆曲线密码体制的离线电子现金系统。 对于椭圆曲线点乘快速算法,本文从分析影响椭圆晌线点乘算法速度的主要 操作是模逆运算出发,通过进行射影坐标变换而省去求模逆运算。文章通过不同 的射影挺标变换来比较其速度樽出了g f ( 2 ”) 域与g f ( p ) 域上的点乘快速算法比 较省时的射影坐标变换。 对于基予椭圆曲线密码体制的离线电子现金系统,本文从理论上证明了该系 统是安全的。这样比基于离散对数的离线电子现金系统的安全性要高。 f 第二章、第三章和第四章是本文的重点。第二章介绍了g f ( 2 ”) 域上的点乘算 法,选取了三种具有代表性的射影坐标变换x = 拳,y = 砉( + ) ,x 。考,) ,= 喜( ”) 以及x * 鲁,y ;去( + ) ,透过实验分辑摄出p ) 是最毒效螅。第三章余绍了 g f f 彩域豹杰渠算法,瀚样送行兰耱交换发现( ) 是聂霄效静。第西章奔缁了椭 萄盏线密羁海翎在离线电予现金系统中静应用,设计了个纂于椭薅魏线密码体 1 裁鹤篙线电子现愈系统。声 关键调黯鹰热线褰码体囊l ,嬲线电子瑗佥系统冀乘算法,快速算法,射影坐据交 换。摸递运箨 华中科技大学硕士学位论文 a b s t r a c t e l l i p t i cc u r v ec r y p t o s y s t e mi sak i n do fp u b l i c k e yc r y p t o s y s t e m ,i td o e s n tb a s e d o nm a t h e m a t i c a ld i f f i c u l t yo f b i gi n t e g e rd e c o m p o s i t i o na n dd i s c r e t el o g a r i t h mp r o b l e m w h i c hi si nm u t t i p l i c a t i v eg r o u po f p r i m ef i e l d ,b u tb a s e do nm o r ed i f f i c u l t y - - e l l i p t i c c a r v ed i s c r e t e l o g a r i t h m s oi th a st h ei b l l o w i n ga d v a n t a g e s :h i g hs e c u r i t y , s e l e c t i n g e l l i p t i c c u d , ei naw i d e r a n g e ,f a s t e r i n e n c r y p t i o n ,d e c r y p t i o ns p e e dt h a nr s a c r y p t o s y s t e m ,a n da l s oh i g hc r y p t o g r a p h yi m e n s i t y t h e r e f o r e i ti s v e r yp o p u l a n o f f i i n ee l e c t r o n i cc a s h s y s t e mb a s e do ne l l i p t i c c u r v e c r y p t o s y s t e m a n dt h ef a s t a l g o r i t h m o f p o i n tm u l t i p l i c a t i o ni ne l l i p t i cc u r v ea r er e s e a r c h e di nt h i sp a p e r f o rt h ef a s t a l g o r i t h m o fp o i n t m u l t i p l i c a t i o n i n e l l i p t i cc u r v e ,w ec o n c l u d e o p e r a t i o no fm o d u l ei n x e r s i o ni sm a i no p e r a t i o no fa f f e c t i n gt h es p e e do fa l g o r i t h mo f p o i n tm u l t i p l i c a t i o ni ne l l i p t i cc u l w e s o 、l e a v eo u to p e r a t i o no fm o d u l ei n v e r s i o nb x w a y o f p r o j e c t i v ec o o r d i n a t et r a n s f o r m t h r o u g hd i f f e r e n tt r a n s f o r mc o m p a r e si t ss p e e d af a s t p r o j e c t c o o r d i n a t et r a n s f o r mi n p o i n tm u l t i p l i c a t i o n h a sb e e ns e l e c t e di n g f ( 2 ”) a n d g f ( p ) f o ro f f i i n ee l e c t r o n i cc a s hs y s t e mb a s e do ne l l i p t i cc u r v e c r y p t o s y s t e m ,t h e o r e t i c a l a n a l ) s i ss h o w si ti ss e c u r i t y a n dm o r es e c u r i t yt h a no n eb a s e do nd i s c r e t el o g a r i t h m c h a p t e r2 c h a p t e r3a n dc h a p t e r4a r em a i np a r t so ft h ep a p e r 。c h a p t e r2s t a t e s a l g o r i t h m o f p o i n tm u l t i p l i c a t i o n i n g f ( 2 、b yc h o o s i n g t h i n e r e p r e s e n t a t i x e t r a n s f o 黼s :x = 拳。y = 蒡,x = i x ,y = i y ( 删x = i x y = 可y ( ) ,a 鞋d c a r r y i n go u te x p e r i m e n t 。w ec o n c l u d e ( + + + ) i sm o s te f f e c t i v e 。c h a p t e r3i n t r o d u c e s a l g o r i t h mo fp o i n tm u l t i p l i c a t i o ni ng f ( p ) w ea l s oc a r r yo u tt h r e et r a n s f o r m sa n d c o n c l u d e ( + ) i sm o s te f f e c t i v e i nt h ec h a p t e r4 ,e l l i p t i cc u r v ec r y p t o s y s t e mi sa p p l i e di n o f f i i n ee l e c t r o n i cc a s hs xs t e m o 掰i n ee l e c t r o n i cc a s hs y s t e mb a s e do n e l l i p t i cd i s c r e t e l o g a r i t l u ni sd e s i g n e d , k e ) 1 v o r d se l l i p t i cc u r v e :c r y p t o s y s t e m o f f i i n ee l e c t r o n i cc a s hs y s t e m ,a l g o r i t h mo f p o i n t m u l t i p l i c a t i o n f a s ta l g o r i t h m p r o j e c t i v ec o o r d i n a t et r a n s f o r m ,o p e r a t i o no f m o d u l e ;n v e r s i o n l l 华中科技大学硕士学位论文 # # = = 自= = o # = = = j = = = = ;i , i i l l # ;i _ = = = = # = = ;# = ;# ;= = 女= # ;= = 女# = = # = ; 1 1 闾题与动机 1 绪论 1 9 7 6 年d i f f i e 和h e u m a n 在( n e w d i r e c t i o n s i n c r y p t o g r a p h y ) ) 0 i 中提出的密 钥交换协议,郎现在使用的d h 密钥交换算法,允许逶信双方在不安全的媒介主 安全篼交换餐钥,玖魏将公锈笳密豹恐怒弓l 入韵了密码学,开辞了密码学研究静 释辗域。1 9 7 8 年r o nr i v e s t ,a d is h a m i r 器l e o n a r da d l e m a n 第次将公钥热密熬 悉怒应耀于数据麴密,产生了r s a 篝法。公钥加密舞法瓣一令致会缺点魏是处理 速发缀漫,不适予对大囊数据进程艇凝懈密运舞,耀且其密钥长度必须缀长才能 保诞安全性,因此也不遴用于信用卡等设备存取用户豹标识信息。蕊1 9 8 5 年,n e i l k o b l i t z 觏v i c t o rm i l l e r 分别提出了椭圆曲线密码系统聆】f 3 】( e c c :e l l i p t i cc u r v e c r y p t o s y s t e m ) 。它在智能卡系统中,与前面的两种公钥密码系统相比具有以下的特 点: ( 1 ) 短密钥:1 6 1 b i t 的e c c 的安全强度相滔于1 0 2 4 。b i t 的r s a d s a 。 ( 2 ) 短签名:3 2 2 b i t 的e c d s a 冀法的签名安全强度相当于1 0 2 4 - b i t 的r s a 。 ( 3 ) 短证书( 密钥和签名用b y t e s ) :e c d s a :6 2 r s a :2 5 6 ;d s a :1 6 8 。 在密钥的产鍪中爻s a 过程复杂、必须严格保密:素数的产生粕检测计冀中容 易出错。而嚣e e 生成域的参数簧杂,谨不须保密,褥置参数萄戳公布;虽然秘翡 静生成笈杂、过穰傈密,毽公锈计算逛容荔。翅果羝锈怒d ,嚣么公镌载是d g 。 鼓淡上袭窭,e e c 毙蓦萋嚣瓣转公钥系统奁实际豹应矮申瑟毒傻势,瑟量它熬 安全蛙嵌羧子在糖图翡线上离数对数困难淘题( 糖骚韭线离数对数闻题是锻设已 经知道糖圆曲线上蕊点p 和q ,满足:q = x p 求x ) ,目前2 0 0 比特长的椭圆曲线 密码体制已经有相当赢的安全强度。可以说。e c c 是当今最好的一种公钥密码体 系。出于r s a 的专利权已经失效,e c c 将很有可能取代r s a 的地位,广泛应用于 密钥交换、电子支付系统。关于e c c 的相应工业标准也已经制定出来,主要有i e e e 华中科技大学硕士学位论文 p 1 3 6 31 ”。a n s ix 9 6 2 l - j 和a n s ix 9 6 3 1 a l 。 目前,肖许多关予电子支付系统的研究哪8 1 1 9 1 1 0 】【l l 】1 1 2 1 1 1 3 1 1 1 4 】【1 5 i d 6 1 【1 7 】【1 8 舯1 ,丽研 究的离线电予支付系缆【3 3 1 1 3 4 3 5 ) 【3 6 l 相比于其它的电子支付系统有以下优点: ( 1 ) 它可以不需要银行在线处理每一次支付,从而可以解决其它支付系统中银 行存在的通信和处理魏颈问题: ( 2 ) 支甜的匿名性,也就是它能够傈诚在支彳寸过程中不澄漏支付者的身份; ( 3 ) 在,j 、面颟支衬上其有成本 螽、效率离、使莆方便等优点。如购买趣t e r n e t 上的一篇交嚣、一蓄誊乐或圈笄等。 这些蔫线毫子支瓣系统安全毪太多是基予离散对数困难阏题,瑟糖圜麴线上 竣鹰数难数 蠢题比褰敷对数阀题进镫玻鳃更爨建,因憩烬攒冁趋线密秘体辜4 应用 予电子支l 寸蓉统,将丈大撼离系统的安全性。构造个安全蠢效的基予糖必曲线 离教对数的离线电子支付系统悬本文的研究动机之。 尽管椭圆曲线密弼系统与现有的其它公钥密码系统相比,有很多优越性,但 在实际中。它的计算速度还是不尽人意,如何提高它的加、解密速度仍然是人们 关心的问题。椭阙曲线密码中的主要操作是进行点乘运算,因此如何掇高椭圆曲 线的点乘运算的速度也是本文的研究动机。 l 。2 横圆鼗线公钥寝码 1 2 t 菊陵域上秣鋈魏线 设k 表示一个有限域e 燕域k 上的椭圆曲线,刘e 是一个点的集合: e l k 芸 ( f ,y ) lj ,2 + a t x y + a 3 j ,= 茹3 + 口2 x 2 + 口4 工+ 掰6 ,口l ,口2 ,茸3 ,口4 ,口6 ,等,y 彭 , u d ) 其中0 表豕无穷远点。 在e 上定义懂算,p + q r ,r 是过p 、q 的直线与曲线的另一交点关于x 轴的时称点当p = q 时r 是p 点的切线与曲线的另一交点关于x 轴的对称点。 这样( e ,+ ) 构成a b e l 群1 2 0 1 ,0 是加法单位元( 零元) 。 1 华中科技大学硕士学位论文 如果撩圆曲线的特征f i t c h a r ( k ) 2 3 ,那么可姆蠢限域上椭圆曲线变换为 g f ( p ) 上戆嫩霉麴线,形式为: e 1 : y 2 = x 3 十a x + 6 a , b k 这时,( e 1 ) _ 一1 6 ( 4 a 3 + 2 7 b 2 ) 0 ,j ( e 1 ) = 一1 7 2 8 ( 4 a ) 3 ,7 ( e 1 ) ( 其中( e 1 ) 为椭圆曲 线的判别式,“e ) 为j 的不变量) 。 当c h a r ( k ) = 2 时。根据歹( 嚣) 是霉为零,可分别化为瓶釉形状( 文献c n l ) ,若 ,( ) 霉0 ,褥有蔽域舒( 2 ”) 豹 超凳雾耩鋈藏线为: e 2 : y 2 十x y = x 3 + 黻2 + 6 其中= 吼,若_ ,( ) 。0 ,即可得到有限域6 f ( 2 “) 的椭圆曲线为: e 3 : y 2 + 口j y 茹x 3 + 棵4 x + k 1 ,2 2 g f ( p ) 上韵耩灌涟线 椭圆曲线曩舶1 ( g f ( p ) ) 定义为满足e l 方程的点( x ,y ) g f ( p ) 矗f ( p ) 和光 穷远点0 所组成的集会。这些点的在下面的定义的+ 运算构成一个a b e l 群:群运 算的憾等元是0 ,设p 和q 是椭圆曲线颤时“g f ( p ) ) 上的两个点,若户= 0 ,则 一p = 0 ,鼹p + q = q + p = q ;令p = ( 葺,y 1 ) ,坌= ( 工2 ,y 2 ) ,t 则一p = ( 曩, - y 1 ) ,鼗 p + ( 一秘= 0 ;鲡采q 一p ,翔p q = ( b ,y 3 ) ,这墨 x 3 = 跗2 一x l x 2 y 3 = u ( x i 一而) - y l ( 1 1 ) 华中科技大学硕士学位论文 l 丛丛p q ” 业x 2 - - x i 尸:q i 2 y 1 。 定理1 k h a s s 定理) 如果e 是定义在域g f ( p ) 上的椭圆益线,n 是e 上的点 g f ( p ) 的数目则i n - ( p + 1 ) 蓐2 , 5 。 由h a s s 定理知:一2 4 7 + p 一1 n 2 扫+ p + l 。 1 23 g f ( 2 ”) 上的镛圆曲线 我们考虑定义在特征为2 的有限域g f ( 2 ”) 的非超奇异的椭圆曲线方程。非超 奇异的椭圆曲线方程t ( g f ( 2 4 ) ) 是满足方程e 2 的点( 墨y ) g f ( 2 ”) g f ( 2 ”) 和无穷远点d 所组成的集合。这里的口,6 g f ( 2 “) 且6 0 。一般将e ( 叫1 ( g f ( 2 ”) ) 简记为e 。这些点在下面定义的加法运算构成一个a b e l 群: 设p 和g 是椭圆曲线e ,( g f ( 2 “) ) 上的两个点若p = 0 ,则一p = 0 ,且 p + 9 = q + p = q ;令p = ( 工l ,y i ) ,q = ( x 2 ,y 2 ) , 贝0 一p = ( x l ,一+ y i ) ,且 p + ( 一p ) = 0 :如果q 一p ,则p + q = ( 屯,y 3 ) ,这里 工1 = “2 + u + 工l + 工,+ a y 3 = u ( x l + 工3 ) + x 3 + y l ( 1 2 ) 丝丛p q x 2 + x i 至丝p :9 x 式【1 2 ) 当p = q 时可进行如下变换: 华中科技大学硕士学位论文 投2 h 2 + “+ 露其中“2 警+ 葺,恕歌戆瞧饯入_ y ,褥 y 3 :拜( x l + x 3 ) + 茁3 + y = x 3 ( 嚣+ 1 ) + y i + l 瞄l = ( 豁2 + 裾+ 群) ( 秘+ 1 ) + x ?,矮终褥至 工? + b y ,。专_ 。 1 3 内容的组织和与文章的创新 在广泛深入了解椭圆越线密码体制算法的基础上,本文的龟4 耨之处在于: ( 1 ) 褥出了g f ( 2 ”) 域上椭熙曲线密码体制的点黍算法中援省射的射影坐标交 换。这是通过对g f ( 2 “) 域上e c c 点乘算法进行多糖射影坐标变换的璎论分振, 并进 亍实验模拟,褥出斡璎论魏实践甥唆会的结票。在实际的过羧中,鑫予m 不 是3 2 竣1 6 数倍数,提出了苓凝遴帮模逆运冀豹数攥转换方法,麸蘑大大撼裹了 效率。 ( 2 ) 褥爨了6 f ( p ) 域土携嚣蘸线密鹃俸翻豹点桑算法率轰省辩靛鸯幸彩黧标交 换。这箍逶遗对g f ( p ) 域上e c c 点乘算法靛多种射彰垒标交糗送行理论分析与实 蔑结果餐鞫:较褥獭来鹃。 3 ) 将椭西懿线密玛体稍应孺子离线电子现金系统,与! | 三l 前采厢的离散对数盲 签名的离线电子现金系统捅说提高了安全性。 本文的内容组织如下: 第一章介绍论文的研究背景,提出了研究椭圆轴凌密码体制的快速点乘算法 和将其应用剿离线电子现禽系统的动机。第二_ 荜介绍了g f ( 2 “) 域上的点乘算法, 得到了这个域上最快的点乘射影坐标变换。第三章介绍了g f c p ) 域上的点乘算法, 得到了这个域上最快的点染射影坐标变换。第四章介绍椭圆曲线密码体制在离线 电子现金系统中的应用。第五章是总结和展望。对本文的研究成果以及下一步的 研究方向进行了简单描述。 华中科技大学硕士学位论文 2 g f ( 2 ”) 域上的点乘算法 当e e c 在有限域g f ( 2 ”) 上进彳亍时,有限域上的大藏数运算就构成它的基本 操作。为了保证密码体制的安全强度,要求删很大,而大整数运算是很费时的, 尤其是模逆运算。因此为了得到较快的加,解密速度,必须尽可能进行变换。我 们可以在计算k 圆p 时( 圆是它的点乘符号) ,用变换 j :委胪委( p ,惫o ) ( + ) j 5 j 7 ,。歹7 l ,2 u j 1 , 而省去求模逆运算。芦,r 不同时( 即不同的射影坐标变换) 椭圆曲线密码体制的 点乘算法在冈一平台上运行的时间也不同。因而我们通过对冀法的理论和实验分 析可以得出好的搬标变换。 本章具体讨论的方程魑型如e 2 的椭圆曲线方程,它的+ 运算定义为式( 1 2 ) 。 2 1 射影坐标变换的选取 ( i ) 当p 事q 时,把“= 如旦代入b ,儿得 x ,工, x ;= ! l 2 垒j :i :! 掣+ 口+ x ,+ 工: 舻【鬻卜旬十屯朔 将变换x = 拳舻参代概髑 x,;【i;二:至!掣+专+毒+口 f 墨+ 墨r 纠q = 皇兰二墨二垡垒至l 兰童芏旦;三 三二兰掣兰i2 1 兰! 兰i 垄:墨! 塑+ i j z ? + z ,z ? r 一 。十量+ 墨 z 1 9 刀 x 、 z ? | 篱脚旁舞 ( 2 】) z : ( 2 2 ) 为了减少计算步骤,从上面的式( 2 1 ) 和式( 2 2 ) 分母可以得出式( 。) 中 0 2 且譬 l 孵分予戆嚣一磺t 繁 二矮要桑戳一令数这样会灞粕诗箅多骤。掰汉警p = r = 2 或瓷p = 2 ,r = 3 对是垒 称变换的比较节省时间的选择,这是屯的值未代a y ;的情况,也是p ,的情况下 的坐标选择, ( i i ) 当p 刮一 0 时,把x 3 值代x y 3 得 当p q 时, x ;= “2 + 嚣+ 置+ x 2 + 释 y 3 = u ( u2 + 科+ x 2 + 口) + 封2 + 嚣+ 一+ 茗2 + 群+ y “+ 暇:h ”x 一+ y l ,其中鞋= 鬻a 将交换x 弓护参代入式得 轳器xx 十嬲xx 专呜蜘 ( 。z +2 z f ) 21 z f +2 z fz fz f ( 2 5 ) 儿;拦瓣十毒筹器,嚼“,+ 每+ 务彻+ 专c z 石,。3 咚l z 2 + x 囊 px t z l + x :z ;、z i i z z z ? 姣k ( 2 5 ) 寇蒜x 2 ,6 ) 霹簧出这秘馕况下p = l 计髯步骤跫最少豹t 从( i ) 和( ) 可得出p = l ,r = 2 或者p = 2 ,r = 3 或者p = ,= l 是我们要选箨的。 纛 华中科技大学硕士学位论文 2 2 乘法算法 i - i 固p = 女,- 27 圆p = “t h 二圆p o 。) 2 + + k ) 因此k o p 主要是两点不 同时的点加和两点相同时的点加;而点加中又包含有限域g f ( 2 ) 上的加法、乘法 和除法算法。在g f ( 2 1 ) 加法和减法是一样的,比较简单的,利用位的a 的操作即 可。 2 2 1 具体算法 我们在有限域g f ( 2 ”) 有许多现成的比较好的乘法算法【2 1 i + r l 2 3 1 2 4 1 ,其中文献 【2 1 】的算法是目前比较有效的算法。 算法步骤如下: i 1 lm w l ,1 2 = m w 2 2 f o r ( j = ”! 一1 驴= o 洞一1 ) 3 4 u c ( x ) = 0 5 f o r ( i = 一1 ;i 0 ;i i l ) 6 7 t t , , o j ( x ) = 一,l ( x ) 工+ u c ( x ) x + 钆一。】( b j ( x ) 8 9 i o i f ( i n ,一1 )e ( x ) = 五邶l x ( n n - i ) w n f ( x ) t l , o l ( x ) = 五删( x ) + e c x ) 。一( 工) i f ( i n i 一1 ) r j i + s - l a + + l l ( x ) = i ,u l ( x ) 9 华中科技大学硕士学位论文 r m 。f + l 】( x ) = 】( x ) 1 3 ) 1 4 r o ( x ) = u c ( x ) 1 5 1 除法算法如下: 1 e ( x 、= 0 2 u ( x ) = r ( x ) 3 f o r ( i 2 h 1 :一1 ;i 20 ;i = i 一1 ) 4 5 i f ( , 一1 ) 6 7 e = l 8 f o r ( j = i l ;j o ;j = j 1 ) “,= “j + 厶一,+ , 9 ) 1 0 1 2 2 2 乘法算法正确性检验 m - i 为了验证乘法算法的有效性先介绍多项式表示方法a ( x ) = q x 。( 口,g f ( 2 ) ) ,a f 1 0 可用字节串字串,块串表示,其中字由一系列字节组成,块由一系列字组成。 块4 川= ( a ,a h ,a ,) ( 其中f - ) ,a 是一个字,若m 2 _ w l ,w 1 = s w 2 , a ( x ) = 钆“川( 工) z ”。, 华中科技大学项士学位论文 j i 气。“川2 4 。+ ,( x ) 工叶7 ,a 。+ ,( x ) = 口( 。m i x ”+ + 口叫,) ,不可约多项 ,= 0 m i 式f ( x ) = x ”+ ,x ( 厂,g f ( 2 ) ) ,用厂= ( 厶+ 工) 标记。 j 0 本算法采用块与字相乘。即 r ( x ) = a ( x ) - 6 ( x ) m o d f ( x ) :( n t - i 钆一x ”芝b 如) p ,) m 。d f ( x ) i = o j i o :( n , - i x t ,芝4 。一。庐一t b 小) ) m 。d r ( z ) i = 0 j ,0 :( n 艺- i x ”,( 芝4 。一b f l x ”- b ,o ) ) m 。d f ( x ) ) m 。d f ( x ) j = o f t 0 由于在g f ( 2 ”) 上a ( x ) b ( x ) m o d f ( x ) = ( a ( x ) b ( x ) f ( x ) ) f ( x ) + a ( x ) b ( x ) ,故 n t - 1 4 。一工”b ,( 工) m 。d f ( 工) :篷4 。- 1 州工”b ( x ) 厂( x ) ) 厂( 工) + 缸一b ,1 工”b 廖) 一i 而4 。一m l 石只o ) 厂( 工) 其实就等于“d 6 ,( 工) 厂( 工) ,且只有在f = 一一1 这一块 i = o 才有不为零的商( 其它块的相乘次数小于m ) ,( x ) 也用块来表示,所以式( + + ) 右边 又可表示为如下形式: a l 。, + x - i :1 i ( x ) x ”。b j ( z ) m o df i x ) j = o 一l = 窆a x t n l - 1 ) + ,- 1 s n i - lj ( x ) z 忡i 。b j ( j ) ,( x ) 川( x ) - x ”。+ 缸+ 。 华中科技大学硕士学位论文 n - 一l = 。( ( 川一i 叫( x ) e ( x ) + 爿扣w 吐州( x ) 髟( 石) ) ) j = 0 , :一i = j z s o 】( e ( x ) = a t ,( n 1 1 + ,i ,( 。一l ( z ) x ”1 1 j = 0 而式( ”+ ) 中的最后一个求和中的相邻两项,前一项的最后一个字要与下一步一起 _ ,- 1 进行运算。例如当i = 1 ,z 、正【j ,o 】项x 1 瓦【o 】= x ( f 。x ) 与i = o ,r o s ,o 中的 i r = o w ,- i 瓦嘲= ( f o k x k ) x ”,而w = 、r :s ,他们有共同的次数,即两个多项式应该合 k = o 在求e ( 工) 中它也只是一个字。口( x ) 次数小于厂( x ) ,商数的最高次数为w ! 一1 次只需进行w :一1 次运算。在进行第i 步运算时,如果这一步被除数的工项系数 为l ,则商i ,且次数为i 一1 的一直到次数为零的那些位都与除数对应的位按照 g f ( 2 ) 上进行加法运算( 在g f ( 2 ) 上加法与减法一致) ,或者商0 ,算法正确。 上述算法可类推到w l = w 2 = 3 2 = w ,j = 1 这时,l := n 2 ,因此乘法算法如下 1 r 数组初始化为0 2 f o r d = n 一1j = 0 0 巧1 ) 3 4 u c = 0 5 f o r ( i = ,7 1 ;i = 0 :i = i 一1 ) 6 7 墨l o 】( x ) = r 【力 w + ”c w + 4 【f 】o j 】 i f ( 一”一1 ) p = k l o 】 n ? k n :o 算法如下 1 m = 0 2 u a o 】= 0 3 。f o r ( k = 0 ;k n ? k 一嚣:0 ;i 夤受& f ,| ;i + + ) 8 9 ,= k i 1 0 1 1 华中科技大学硕士学位论文 五1 = 巧l + 圳 f 】b j 】 判断i 1 是否大于等于2 “,若是则m + 1 1 二 1 3 u a i 】= i o l 1 4 u a i + 1 】= 五 1 5 ) 3 2 取模算法 为了保证有限域g f ( p ) 上运算的封闭性,所有的基本运算的结果都要对p 取 模,所以设计高效的取模算法对提高所有基本运算至关重要。 提高取模算法速度的有效方法是采用预计算伫5 l ,将预计算的结果造表备用, 它出以下3 步完成: 第一步:建表。即构造模m 的d + l 阶和d 阶模表。采用递推法。建表效率高。 第二步:初步取模。设a 为n 位b 进制数,m 为d 位b 进制数,则初步取模之 后的结果为一个d 位的b 进制数,可能大于m ,也可能小于n l ,取模的结果在 a 中,是一个d 位的b 进制数。算法描述如下: n ld i a = q b ,m - m 。b ,b c j := ,一b r o o d m ,j = l ,2 ,b 1 ) ,1 0i - - 0 1 f o r ( i = 疗一1 ;i d ;i 一一、 2 3 a = a t 4 a = 0 5 a :a + b “r l d ) 华中科技大学硕士学位论文 6 第三步:求同阶模。 即对上一步的结果进一步求模,得到最终结果。 3 3 加法算法 口b 是素数,m a d d = a + b m o d p ,a , b 的二进制数位数最长的记为h 。 算法如下: 1 i f ( a + 6 2 “+ 1 ) 小一a d d = a + b p 2 e l s e 3 i f ( a + b p )m a d d = a + b p 4 e l s e m a d d = a + b 3 4 减法算法 口,b 是素数,m s u b t r a c t = a b m o d p 。 当o b 时,m s u b t r a c t = a - b :否则m s u b t r a c t = a - b + p 。 算法如下: 1 i f ( 口b )m s u b t r a c t = a b 2 e l s e 3 4 r e l s u b t r a c t = b a 5 m s u b t r a c t 。p r t l s u b t r a c t 6 ) 华审辩技大学硕士学位论文 3 5 点乘算法 3 , 5 1 当p = 2 ,r = 3 瞬戆点梁算法( 露= - 3 ) l - l 七固p = 七,2 固尸= ( ( 七f 1 2 0 p o k ,2 p ) - 2 + + k o p ) 它的不阎点的黼法和桷同煮的赫法愚您为:将变换x = 7 - ,y = 专代入不同点 t v 静点奏嚣“+ ”运算中樽 屯2 :! 兰茎二芝互! := 竖篓! 圣互醚2 互二墨垫: z j z j ( x ,z :一x t z :y z ,= z z :( x :z ? 一葺z ;) 这时的“= 孑耋麓 = 蠼芎箍筹萨一牮z ;z2 0 x :z i x 、z 0z | :三i l 垄! 蔓兰! :茎2 圣差! ! = 墨! 蔓兰i = 五至i2 z ? 将变换代入相同点的点加+ 运算得“= 兰薹乎, 糕 、,;, x一刃百一嚣 一 一 一 旦曩一也一乏 墨一巧置一彳耘盟纠 一以 字搿黼曼露 华中科技大学硕士学位论文 栌茅等= 垃铲弘z k z 儿= 筹c 等一等卜苦= 鱼垒丝丛掣 具体算法如下: 点乘算法 输入,个字节长的t 和尸椭圆曲线上的点 输出 q 1 0 := 0 2 f o r = l 一1 t o 0 3 , 4 ) q :。2 q i f t ,= l t h e n q :2 q + p 6 7 r e t u r nd 两个不同点时的点加算法己= 只+ p 2 输入两点只( x ,r ,z 1 ) 和足( ! e ,z 2 ) 输出 b ( x j e ,z ,) 1 := j ,z ; 2 五2 := 工! z : 3 a 3 := 一五2 4 a := + a 2 华中科技大学硕士学位论文 5 + 矗,:= 誓z ; 6 五。:= 毪z ? 7 五7 :2 五 一五s 8 z 3 := 如z 2 z l 9 ,五:。x l 芝z 一x 菇z 2 l o x 3 :- - 一 2 7 一驾五4 1 i e := z ;a s a 7 r 3 :r e t u m ( x ,k ,z 3 ) 畴点相网时的点加算法昱= 2 0 墨 输入置= ( x 。,嚣,z ;) 输趱q = 最= ( x ,蠢,z ,) 1 := 3 x 1 2 + a z ? 2 五2 := 4 y l 3 z ,:2 2 蕞z 1 4 x ,;2 l i 一2 五: 5 五:= ( 五2 一x 3 ) 一s t , 4 6 r e t u m ( x ,匕,z 3 ) 3 5 2 警p = l ,= 2 时戆纛鸯l 算法 将变换x = 耋,y = 孝代入不同点的点加+ 运算得 华中科技大学硕士学位论文 故、2 垂羞| 专一鲁= ( i 褊) 2 一鲁一鲁 z :五j :! 墨兰i 二墨三i ! :二i 墨! 兰2 茎! 主! ! 兰! 兰;! 茎2 兰! = 墨! 兰12 : z 1 2 ! ( x 2z l - x l z 2 ) 2 z ,= z 。2 二二2 ( x :z i - x i z z ) 2 这时的“;i i r i 2 z 可? - j r 丽, z ? :茎! 芝兰i = 篓! 蔓兰i = 圣兰墨2 兰! 墨! 蔓垄一茎! ! 圣兰:二圣兰i 基莲兰;兰:二点t 兰t 兰i ! z ? 乙( x 2 z ? 一x l z ;)z ; = 幽华- x , ( :r 2 z , - r , z , ) x x 2 z , 一z , - x , z , z ) 代入相嗣点的点加+ 运簿得“= 塑蔫蠹堕, z 3 = 4 e 2 z 舻等等t 争争专;鼬巫雩掣 具体算法如下: 点乘算法是一样的,不做介绍。 两个不嗣点时的点加算法只= 只+ 昱 输入两点最( z ,e ,z 1 ) 和b ( x 2 ,匕,z 2 ) 嚣一郡墨一五鼍一五一雹选编 二一 露一彳 一 丝 丝露 选 一 n 劫鞘盈霉 一 瞥 华中科技大学硕士学位论文 输出只( 墨,匕,z ,) 1 五1 :2 x i z 2 2 丑,:= x ,z 3 五3 := 五:一 4 z ;:2 + 五 5 ,:= z l z 2 五4 6 z := r r 3 7 z 5 :2 r ;z ; 8 a 。:= k z ? 9 丑7 :2 五6 一五5 1 0 x 3 := 葺一x 3 x 。, li _ 匕:。( ( y 2 z l z l r , z 2 x 2 ) z 3 一五7 x 3 ) r r 1 2 r e t u r n ( x 3 ,b ,z 3 ) 两点相同时的点加算法只= 2 固只 输入鼻= ( x ,一,z ,) 输出q = 只= ( z ,e ,z 3 ) 1 := 3 x 卜a z ? 2 z 3 := 4 2 z 3 爿3 :2 z l 五? 一8 a 。r 2 4 e :2 6 2 k ( x l z ,一x 3 2 1 ) 一1 6 y , 5 3 i 华中科技大学硕士学位论文 5 r e t u r n ( x 3 ,匕,z 3 ) 35 3 当p = l ,= l 时的点加算法 x ,= 将x = i x ,y = 乏y 代入不同点的点加+ 运算得 k z , x , z 、 一 z l x l z 2 一鲁一鲁= ( 糍 2 一鲁一鲁 :! 圣兰! 二星兰;2 :兰! 兰:二! 墨! 兰2 兰2 兰l2 1 墨;兰! 二兰! 兰12 : z l z 2 ( x 2 z l - x i z 2 ) 2 这帆= 嚣蔫 儿:等菝x zf 等+ 鲁z 一( 嚣羡) 2 詈 “ ! z i l2lz l2l x 2 z i x l z 2jj z 1 :! ! 墨! 兰;墨:兰 2 1 茎:兰! 二茎! 圣21 :! 圣兰! 二圣兰! ! 二! 墨笔二圣兰;2 :二圣兰21 墨2 三! 二茎! 兰; z l z 2 ( x 2 z i x i z 2 ) 。 z ,= z l z 2 ( x 2 互- x l z 2 ) 3 代入相同点的点加+ 运算得“= 兰蓦等, 铲茅一等= 坐帛弦逝 炉等等一( 等 2 ) - 詈 一垒兰i 堕i 塑! 兰,墨:兰l 二q 篓堕:2 :j 二! 墨:三: 一 8 印z 7 z ,= 8 x 3 z ? 华中科技大学硕士学位论文 具体算法如。f : 点乘算法是样的,不做介绍。 两个不同点时的点加算法b = 只+ p 2 辕入嚣点只( x ;,蔓,五) 和g ( x :,蔓,z :) 输密马( ,艺,z ,) 1 := x i z 2 2 五2 :2 x 3 2 1 3 五3 := 五:一点 4 五4 := 盖l + 孟2 5 z ,:= 鸳z i z 2 6 五s :2 k z 2 7 屯:2 y , z l g + 五7 # = 友一冀5 9 3 , s := 墨z l z 2 一尊 。 i o x 3 :2 如五l 11 e := ( 正肖。z :- & ) - a 托z : 1 2 。r e t 玳- n ( x l ,k ,z 3 ) 嚣点橱鼹时懿点加算法墨= 2 0 曩 输入置= ( 彳,誓,z 。) 输出q = 忍= ( 也,e ,z ,) 华中科技大学硕士学位论文 1 五i := 2 r , z 2 z ,:s 五 3 2 2 := 3 ( i - + a z ? 1 4 五3 :;一i k 五l 5 a 。:= 罡一4 6 x 3 :2 24 五i 7 匕:= 五:( 2 a ,一兄。) 一2 k 2 8 r e t u r n ( x 3 ,匕,z 3 ) 3 6 算法分析和实验模拟结果 实验数据都来自于文献口6 】 p = 2 6 9 5 9 9 4 6 6 6 7 1 5 0 6 3 9 7 9 4 6 6 7 0 1 5 0 8 7 0 1 9 6 3 0 6 7 3 5 5 7 9 1 6 2 6 0 0 2 6 3 0 8 1 4 3 5 l 0 0 6 6 2 9 8 8 8 1 k = 2 6 9 5 9 9 4 6 6 6 7 1 5 0 6 3 9 7 9 4 6 6 7 0 1 5 0 8 7 0 1 9 6 2 5 9 4 0 4 5 7 8 0 7 7 1 4 4 2 4 3 9 1 7 2 1 6 8 2 7 2 2 3 6 8 0 6 l p l 。= b 7 0 e o c b d6 b b 4 b f 7 f 3 2 1 3 9 0 b 94 a 0 3 c l d 35 6 c 2 1 1 2 23 4 3 2 8 0 d 61 1 5 c l d 2 1 鼻,;b d 3 7 6 3 8 8b 5 f 7 2 3 f b 4 c 2 2 d f e 6c d 4 3 7 5 a 05 a 0 7 4 7 6 44 4 d 5 8 1 9 98 5 0 0 7 e 3 4 b ;b 4 0 5 0 a 8 50 c 0 4 b 3 a bt 5 4 1 3 2 5 65 0 4 4 b o b 7d 7 b 村8 b

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论