用于实施特征2乘法的方法和处理器设备的制作方法

文档序号:6408306阅读:159来源:国知局
专利名称:用于实施特征2乘法的方法和处理器设备的制作方法
技术领域
本发明涉及用于实施至少两个输入位串的特征2乘法(Charakteristik-2-Multi plikation)的方法和处理器设备。
背景技术
在大量的加密方法中,在此尤其是在公钥方法中,例如在基于椭圆曲线的加密方 法的近硬件(hardwarenah)实施中,使用特征2乘法。在这样的特征2算法中使用的数可 以在处理器设备、处理器或计算机上被有效地表示成位串。这样的位串可以通过寄存器来 暂存。以这种方式表示的两个数的加法对应于所代表的位串的按位的异或运算。两个位串 或操作数以特征2算法进行的乘法在数学上对应于来自GF (2)[X]的两个多项式的积。在 此,用于代表数的位串对应于相应多项式的系数的0/1序列。特征2乘法的数学基础在于,将两个数的积归为部分积的预定集合,所述部分积 然后被相加到一起以获得结果。作为示例,下面针对数1011和1101的乘法来说明部分积 以及和
权利要求
1.一种用于借助于适于执行整数乘法的处理器设备来实施至少两个分别具有数目N 个位的输入位串(EB1,EB2)的特征2乘法的方法,具有下列步骤a)借助于在相应输入位串(EB1,EB2)中的至少一个预定位置处对相应输入 位串(EB1,EB2)进行第一变换来生成至少一个具有数目K个O位的序列(F),以 针对相应的输入位串(EB1,EB2)生成至少一个第一中间位串(Zll — Z14),其中K € {1,...,N};b)通过该处理器设备的整数乘法对至少两个第一中间位串(Zll- Z14)进行运算,以 生成至少一个第二中间位串(Z21 - Z24);以及c)借助于第二变换对至少一个第二中间位串(Z21- Z24)进行变换,以形成结果位串(E)。
2.根据权利要求1所述的方法, 其特征在于,根据输入位串(EB1,EB2)的位的数目N来确定序列(F)的O位的数目K。
3.根据权利要求2所述的方法, 其特征在于,步骤a)通过如下方式构造用至少两个不同的掩码(Mil,Ml2)通过使相应的输入位串(EBl,EB2)与相应掩码进行 相应的按位与运算来对相应的输入位串(EB1,EB2)进行掩码运算,以针对相应的输入位串 (EB1,EB2)生成至少两个第一中间位串(Zll,Z14)。
4.根据权利要求3所述的方法, 其特征在于,具有数目K个O位的相应序列(F)分别形成相应的具有数目N个位的预定掩码(M11, M12)中的掩码窗,其中K满足如下条件
5.根据权利要求3或4所述的方法, 其特征在于,预定的不同掩码(M11,M12)的数目M为Κ+1 (Μ = K+1)。
6.根据权利要求5所述的方法, 其特征在于,相应的第m个掩码(Mil,M12)由周期模式的至少一部分形成,所述周期模式由相应的 1位和后面跟随的K个O位的相应序列(F)构成,其中m e {1,…,M}。
7.根据权利要求6所述的方法, 其特征在于,相应的第(m+1)个掩码(Mil,M12)通过将相应的第m个掩码(Mil,M12)移位一个位而 形成。
8.根据权利要求3至7之一所述的方法,其特征在于,步骤C)通过如下方式构造一用所述至少两个具有相应增大的长度的不同掩码(Z21 - Z24)通过按位与运算分别 对至少四个第二中间位串(Z21 — Z24)进行掩码运算,以生成至少四个第三中间位串;以及一对所述至少四个第三中间位串进行异或运算,以生成结果位串(E)。
9.根据权利要求1或2所述的方法,其特征在于,步骤a)通过如下方式构造一通过在对应输入位串(EB1,EB2)的所有相邻的N位之间添加具有K个O位的序列 (F)来扩展相应的输入位串(EB1,EB2),以针对每个输入位串(EB1,EB2)生成相应的第一中 间位串(Zll - Z14)。
10.根据权利要求9所述的方法,其特征在于,具有数目K个0位的相应序列(F)形成相应的第一中间位串(Zll — Z14)中的窗,其中 K满足如下条件
11.根据权利要求9或10所述的方法,其特征在于,步骤b)通过如下方式构造一通过所述处理器设备的整数乘法对两个第一中间位串(Zll,Z12)进行运算,以生成 单个的第二中间位串(Z2)。
12.根据权利要求11所述的方法,其特征在于,步骤c)通过如下方式构造一在第二中间位串(Z2)的具有最低值的位处以位置0 (Pl)开始的预定位置i*(K+l) 处,提取所生成的第二中间位串(Z2)的位,其中i G {0, . . ”2N- 2}。
13.一种计算机程序产品,其在程序控制的设备上促使根据权利要求1至12的方法的 执行。
14.一种用于实施至少两个分别具有数目N个位的输入位串(EB1,EB2)的特征2乘法 的处理器设备(10),具有一生成设备(11),其适于借助于在相应的输入位串(EB1,EB2)中的至少一个预定位置 处对相应的输入位串(EB1,EB2)进行第一变换来生成具有数目K个0位的序列(F),以生成 至少一个第一中间位串(Zll — Z14),其中K G {1, . . . ,N};一逻辑运算设备(12),其适于通过整数乘法对至少两个第一中间位串(Zll - Z14)进 行运算,以生成至少一个第二中间位串(Z21 - Z22);以及一变换设备(13),其适于借助于至少一个第二变换对至少一个第二中间位串(Z21 -Z24)进行变换,以形成结果位串(E)。
全文摘要
一种用于借助于适于执行整数乘法的处理器设备来实施至少两个分别具有数目N个位的输入位串的特征2乘法的方法具有下列步骤a)借助于在相应输入位串中的至少一个预定位置处对相应输入位串进行第一变换生成至少一个具有数目K个0位的序列,以生成至少一个第一中间位串,其中;b)通过该处理器设备的整数乘法对至少两个第一中间位串进行运算,以生成至少一个第二中间位串;以及c)借助于第二变换对所述至少一个第二中间位串进行变换,以形成结果位串。
文档编号G06F7/72GK102105860SQ200980128600
公开日2011年6月22日 申请日期2009年5月22日 优先权日2008年7月21日
发明者B·迈尔, J·乔吉亚德斯 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1