[发明专利]椭圆曲线密码系统的倍点系统无效
申请号: | 200810055618.2 | 申请日: | 2008-01-04 |
公开(公告)号: | CN101262345A | 公开(公告)日: | 2008-09-10 |
发明(设计)人: | 李树国;张霄鹏 | 申请(专利权)人: | 清华大学 |
主分类号: | H04L9/32 | 分类号: | H04L9/32 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 100084北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 椭圆曲线密码系统的倍点系统,属于椭圆曲线密码系统的倍点技术领域。其特征在于:含有倍点寄存器控制器、倍点多路选择控制器、第一多路选择器组、中间变量寄存器组以及第二多路选择器组;在倍点多路选择控制器输出的选通控制信号下,在六个流水线过程内由位于倍点系统外的模乘器和模加器对第二多路选择器组输出的乘数和加数完成倍点运算;在每一个流水过程内,在所述选通控制信号控制下,模乘器和模加器分别向第一、第二两个多路选择器组返回中间数据;在倍点寄存器控制器输出的操作控制信号控制下,控制第一多路选择器组中的各个多路选择器通过中间变量寄存器组向第二多路选择器组输出相应的乘数和加数。本发明提高了倍点运算速度,在一个基本层面上优化了椭圆曲线的点乘性能,提高了数据吞吐率。 | ||
搜索关键词: | 椭圆 曲线 密码 系统 | ||
【主权项】:
1.用于椭圆曲线密码体制的倍点系统,其特征在于:该倍点系统是在专用数字集成电路芯片中采用ASIC流程实现的。含有:倍点寄存器控制器;倍点多路选择控制器;第一多路选择器组,由六个多路选择器mux1、mux2、mux3、mux4、mux5、mux6构成;中间变量寄存器组,由六个中间变量寄存器Reg1、Reg2、Reg3、Reg4、Reg5、Reg6构成;第二多路选择控制器,由四个多路选择器lmux1、lmux2、lmux3、lmux4构成,其中:所述倍点寄存器控制器,是一个有限状态机,输入为形式为010101……且占空比为1∶1的方波时钟信号Clk,以及低电平有效的开始信号Start,输出为六个各自均为2个比特的操作控制信号:C1、C2、C3、C4、C5、C6,所述倍点寄存器控制器在开始信号有效后按以下各轮中时钟节拍在各个时钟输出不同的C1_C2_C3_C4_C5_C6各操作控制信号的组合:初始化时,令各中间变量寄存器分别为:Reg1←X1,Reg2←Y1,Reg3←Z1,Reg4←1,Reg5←1,Reg6←a,(X1,Y1,Z1)为Jacobi投影坐标下椭圆曲线上的点P的坐标,1为常量,a为素数域椭圆曲线方程E:y2=x3+ax+b(mod p)中的参数a,令:R=2P,点R的坐标为(X3,Y3,Z3),C1_C2_C3_C4_C5_C6中每个操作控制信号均为00,在以下叙述中省略各操作控制信号的标志;第一轮Δ1中:在第1时钟周期,操作控制信号均为11_11_11_11_10_11,在第2时钟周期,操作控制信号为11_10_11_11_11_11,在第3时钟周期,操作控制信号为10_11_11_11_11_11,在第4~第8时钟周期,操作控制信号均为11_11_11_11_11_11,在第9时钟周期,操作控制信号为11_11_11_11_01_11;第二轮Δ2中:在第10时钟周期,操作控制信号为11_11_11_11_01_11,在第11时钟周期,操作控制信号均为11_01_11_10_11_11,在第12时钟周期,操作控制信号为10_11_11_11_11_11,在第13时钟周期,操作控制信号为11_11_11_11_11_11,在第14时钟周期,操作控制信号为10_11_11_11_11_11,在第15~第17时钟周期,操作控制信号为11_11_11_11_11_11,在第18时钟周期,操作控制信号为11_01_11_11_11_11;第三轮Δ3中:在第19时钟周期,操作控制信号为11_11_01_11_11_11,在第20时钟周期,操作控制信号为11_11_11_11_11_01,在第21时钟周期,操作控制信号为11_10_11_11_11_11,在第22~第26时钟周期,操作控制信号均为11_11_11_11_11_11,在第27时钟周期,操作控制信号为11_11_11_01_11_11;第四轮Δ4中:在第28时钟周期,操作控制信号为01_11_11_10_11_11,在第29~第36时钟周期,操作控制信号均为11_11_11_11_11_11;第五轮Δ5中:在第37时钟周期,操作控制信号为01_11_11_11_11_10,在第38时钟周期,操作控制信号为10_01_11_11_11_11,在第39时钟周期,操作控制信号为11_11_11_10_11_11,在第40~第45时钟周期,操作控制信号均为11_11_11_11_11_11;第六轮Δ6中:在第46时钟周期,操作控制信号为11_11_11_11_11_11,在第47时钟周期,操作控制信号为11_01_11_11_11_11,在第48时钟周期,操作控制信号为11_10_11_11_11_11;所述倍点多路选择控制器,是一个有限状态机,输入为所述开始信号Start、所述时钟信号Clk,输出均为3个比特的选通控制信号:CL1、CL2、CL3、CL4,所述倍点多路选择控制器在所述开始信号Start有效后的各轮中,在下述每个时钟周期均输出不同的选通控制信号CL1、CL2、CL3、CL4的组合;在所述初始化时,CL1_CL2_CL3_CL4中每个选通控制信号均为000,在以后叙述中省略各选通控制信号的标志;在所述第一轮Δ1中:在所述第1时钟周期,选通控制信号为011_011_001_001,在所述第2时钟周期,选通控制信号为010_010_010_010,在所述第3时钟周期,选通控制信号为001_001_101_101,在所述第4~第9时钟周期,选通控制信号均为000_000_000_000;在所述第二轮Δ2中:在所述第10时钟周期,选通控制信号为000_000_000_000,在所述第11时钟周期,选通控制信号为010_011_111_111,在所述第12时钟周期,选通控制信号为001_101_111_111,在所述第13时钟周期,选通控制信号为000_000_000_000,在所述第14时钟周期,选通控制信号为000_000_001_010,在所述第15~第18时钟周期,选通控制信号均为000_000_000_000;在所述第三轮Δ3中:在所述第19时钟周期,选通控制信号为110_000_000_000,在所述第20时钟周期,选通控制信号为100_100_000_000,在所述第21时钟周期,选通控制信号为110_110_111_111,在所述第22~第27时钟周期,选通控制信号均为000_000_000_000;在所述第四轮Δ4中:在所述第28时钟周期,选通控制信号为000_000_001_111,在所述第29时钟周期,选通控制信号为111_111_000_000,在所述第30时钟周期,选通控制信号为100_110_000_000,在所述第31~第36时钟周期,选通控制信号均为000_000_000_000;在所述第五轮Δ5中:在所述第37时钟周期,选通控制信号为000_000_001_001,在所述第38时钟周期,选通控制信号为000_000_111_010,在所述第39时钟周期,选通控制信号为111_100_111_110,在所述第40~第45时钟周期,选通控制信号均为000_000_000_000;在所述第六轮Δ6中:在所述第46时钟周期,选通控制信号为000_000_000_000,在所述第47时钟周期,选通控制信号为000_000_000_000,在所述第48时钟周期,选通控制信号为000_000_100_111;所述第一多路选择器组,其中:各个多路选择器mux1~mux6各自的选择信号输入端先后依次分别与所述倍点寄存器控制器的各操作控制信号输出端相连,分别输入各个操作控制信号C1~C6,各个多路选择器mux1~mux6各自的00端先后依次输入X1、Y1、Z1、1、1、a,各个多路选择器mux1~mux6各自的模乘数据输入端01共同与所述倍点电路系统外的模乘器的模乘数据r_mul输出端相连,各个多路选择器mux1~mux6各自的模加数据输入端10共同与所述倍点电路系统外的模加器的模加数据r_add输出端相连;所述中间变量寄存器组,其中:各个中间变量寄存器寄存Reg1~Reg6的第一输入端先后依次分别与所述各多路选择器mux1~mux6的信号D1、D2、D3、D4、D5、D6的输出端相连,所述Reg1~Reg6的第二输入端互连后接时钟信号Clk的输出端;所述第二多路选择器组,其中:各个多路选择器lmux1~lmux4各自的选择信号输入端先后依次分别与所述倍点多路选择控制器的各选通控制信号输出端相连,分别输入各个选通控制信号CL1~CL4,多路选择器lmux1、lmux2的000输入端互连后接所述常量1,多路选择器lmux3、lmux4的000输入端互连后接所述模加器的模加信号r_add的输出端,各个多路选择器lmux1~lmux4的001输入端互连后接所述中间变量寄存器Reg1的信号T1的输出端,所述信号T1的输出端同时与所述第一多路选择器组中的多路选择器mux1的11输入端相连,各个多路选择器lmux1~lmux4的010输入端互连后接所述中间变量寄存器Reg2的信号T2的输出端,所述信号T2的输出端同时与所述第一多路选择器组中的多路选择器mux2的11输入端相连,各个多路选择器lmux1~lmux4的011输入端互连后接所述中间变量寄存器Reg3的信号T3的输出端,所述信号T3的输出端同时与所述第一多路选择器组中的多路选择器mux3的11输入端相连,各个多路选择器lmux1~lmux4的100输入端互连后接所述中间变量寄存器Reg4的信号T4的输出端,所述信号T4的输出端同时与所述第一多路选择器组中的多路选择器mux4的11输入端相连,各个多路选择器lmux1~lmux4的101输入端互连后接所述中间变量寄存器Reg5的信号T5的输出端,所述信号T5的输出端同时与所述第一多路选择器组中的多路选择器mux5的11输入端相连,各个多路选择器lmux1~lmux4的110输入端互连后接所述中间变量寄存器Reg6的信号T6的输出端,所述信号T6的输出端同时与所述第一多路选择器组中的多路选择器mux6的11输入端相连,多路选择器lmux1、lmux2的111输入端互连后接所述模加器的模加信号r_add的输出端,多路选择器lmux3、lmux4的111输入端互连后接所述模乘器的模乘信号r_mul的输出端,所述多路选择器lmux1、lmux2的输出信号mul1、mul2分别送入所述模乘器的两个输入端;所述多路选择器lmux3、lmux4的输出信号add1、add2分别送入所述模加器的两个输入端;在所述第一轮Δ1中:所述模乘器的输出r_mul使:T5←T3 2,T5←T2 2,T2←T1 2,所述模加器的输出r_add使:T5←T1+T1,T2←T2+T2,T1←T5+T5;在所述第二轮Δ2中:所述模乘器的输出r_mul使:T2←T5 2,T3←T2×T3,T6←T1×T5,所述模加器的输出r_add使:T4←T5+T5,T1←T2+T2,T1←T1+T2;在所述第三轮Δ3中:所述模乘器的输出r_mul使:T4←T2×T6,T1←T4 2,T1←T4 2,所述模加器的输出r_add使:T4←T5+T5,T2←T6+T6;在所述第四轮Δ4中:所述模乘器的输出r_mul使:T1←T4 2,T1←T4 2,T2←T4×T6,所述模加器的输出r_add使:T4←T1+T4;在所述第五轮Δ5中:所述模乘器的输出r_mul使:T2←T1×T4,T2←T1×T4,T2←T1×T4,所述模加器的输出r_add使:T6←T1+T1,T1←T1-T2,T4←T2-T6;在所述第六轮Δ6中:所述模加器的输出r_add使:T2←T4-T2,得到X3=T1,Y3=T2,Z3=T3;符号“←”表示用右边的数据去代替左边的数据。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/200810055618.2/,转载请声明来源钻瓜专利网。