发明名称 计算指数结果之方法及装置
摘要 本发明揭示关于计算指数Bd的结果,B系一基数,d系一指数,其可藉由一二进制数用复数个位元表示,首先将一第一辅助量X之值初始设定为1(102)。接着将一第二辅助量Y初始设定为基数B(102)。接着,如果一指数位元等于0,则依顺序处理指数位元(104),其系藉由将第一辅助量X更新为X2或由X2所导出的一值;并将第二辅助量Y更新为X*Y或X*Y所导出的一值(104a)。如果一指数位元等于1,则将第一辅助量X更新为X*Y或X*Y所导出的一值;且将第二辅助量Y更新为Y2或Y2所导出的一值(104b)。依顺序处理该指数所有的位元后,第一辅助量X的值可作为该指数运算的结果(106)。如此,藉由使时间及目前轮廓均匀化可获得一较高安全度。此外,藉由一可能的平行操作性能,可增强其性能。
申请公布号 TW589547 申请公布日期 2004.06.01
申请号 TW091123933 申请日期 2002.10.17
申请人 亿恒科技公司 发明人 威兰 菲斯崔;贞 皮尔 席菲特
分类号 G06F17/10 主分类号 G06F17/10
代理机构 代理人 陈长文 台北市松山区敦化北路二○一号七楼
主权项 1.一种计算一指数Bd结果E之方法,B系一基数,d系一指数,其中该指数可藉由一二进制数用复数个位元表示,其包括下列步骤:将一第一辅助量X之値初始设定为1(102);将一第二辅助量Y初始设定为基数B(102):依顺序处理(104)该指数之位元,其系藉由:若该指数之一位元等于0,则将第一辅助量X更新为X2或由X2所导出的一値,并将第二辅助量Y更新为X*Y或X*Y所导出的一値(104a),或若该指数之一位元等于1,则将第一辅助量X更新为X*Y或由X*Y所导出的一値,且将第二辅助量Y更新为Y2或Y2所导出的一値(104b);且依顺序处理所有指数位元后,使用第一辅助量X作为指数运算的结果(106)。2.如申请专利范围第1项之方法,其中在依顺序处理之步骤(104)中,系由该指数的最高有效位元开始的。3.如申请专利范围第1项之方法,其中该指数运算系一模数指数运算Bdmod N,N系该模数,且其中导出自X2.XY或Y2的値系藉由X2.XY及Y2分别之模数N之模数简化产生。4.如申请专利范围第1项之方法,其中在更新步骤中,如果该指数位元等于1,则相互平行计算X2及X*Y的値。5.如申请专利范围第1项之方法,其中在更新步骤中,如果该指数位元等于0,则相互平行计算X*Y及Y2的値。6.如申请专利范围第3项之方法,其中在一RSA解码及/或一RSA编码中系使用该模数指数运算。7.如申请专利范围第3项之方法,其中该指数d、该基数B及/或该模数N皆系整数。8.一种计算一指数Bd之结果E的装置,B系一基数,d系一指数,其中该指数可藉由一复数个位元组成之二进位数目表示,其包括:初始设定(102)一第一辅助量X之値为1的构件;初始设定(102)一第二辅助量Y为基数B的构件;顺序处理(104)该指数之位元的构件,其系藉由:若该指数之一位元等于0,则将第一辅助量X更新(104a)为X2或由X2所导出的一値,并将第二辅助量Y更新为X*Y或由X*Y所导出的一値,或若该指数之一位元等于1,则将第一辅助量X更新(104b)为X*Y或X*Y所导出的一値,并将第二辅助量Y更新为Y2或Y2所导出的一値;以及将所有指数位元依顺序处理后,使用(106)该第一辅助量X之値作为该指数运算结果的构件。9.如申请专利范围第8项之装置,其中依顺序处理(104)之构件包括一第一计算单元及一第二计算单元,该第一计算单元及第二计算单元系配置以相互进行平行操作,且其中若该指数位元等于0,则该第一计算单元系配置以计算X2;或若该指数位元等于1,则计算X*Y,且其中若该位元等于0,则该第二计算单元系配置以计算X*Y;而若该位元等于1,则计算Y2。图式简单说明:图1显示本发明计算指数结果的方法之方块图;图2显示有一模数简化的图1方法之方块图;及图3系关于有及无一虚拟乘法的最熟悉的平方及乘法演算法之一般图例。
地址 德国