CN101986261A - 基为16的高速Montgomery模乘法器VLSI - Google Patents
基为16的高速Montgomery模乘法器VLSI Download PDFInfo
- Publication number
- CN101986261A CN101986261A CN2010105634537A CN201010563453A CN101986261A CN 101986261 A CN101986261 A CN 101986261A CN 2010105634537 A CN2010105634537 A CN 2010105634537A CN 201010563453 A CN201010563453 A CN 201010563453A CN 101986261 A CN101986261 A CN 101986261A
- Authority
- CN
- China
- Prior art keywords
- input end
- arithmetic element
- vlsi
- montgomery
- multiplier
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本发明公开了基为16的高速Montgomery模乘法器VLSI,包括N个MMCell运算单元、FIFO存储单元与2选1的数据选择单元。本发明所述基为16的高速Montgomery模乘法器VLSI,可以克服现有技术中平均性能低、时钟频率低、硬件开销大与实用性差等缺陷,以实现平均性能高、时钟频率高、硬件开销小与实用性好的优点。
Description
技术领域
本发明涉及电子电路,具体地,涉及基为16的高速蒙哥马利(Montgomery)模乘法器超大规模集成电路(VLSI)。
背景技术
目前,互联网的快速发展,使得信息安全技术显得尤为重要,诸如在线购物、网上银行、数据下载等方面都需要一套身份认证系统。在现代密码学中,公钥制密码体制被用来完成这一任务,它能够提供如数字签名、身份认证、数据完整性和抗抵赖性等一系列的安全保障。
在公钥制密码体制中,应用最为广泛的当属RSA密码算法(RSA密码算法是一种非对称密码算法)。RSA密码算法简单有效,但是却非常耗时,因为RSA的基本运算是幂运算,它的操作数长度一般在256~2048bit或者更长,用软件来做1024bit的RSA加密运算,每秒大概只能完成4~8次模幂运算,无法满足实时性的需求。所以,硬件实现RSA加密算法成为未来密码产品的主流,也是当前密码学的研究热点。
蒙哥马利(Montgomery)模乘算法是目前应用最为广泛的也最为高效的模乘算法,它将模乘运算中的除法运算替换成移位操作,大大加快了模乘运算的速度和效率。基于Montgomery模乘算法的硬件超大规模集成电路(VeryLarge Scale Integrated circuits,简称VLSI)设计种类比较多,在这些设计中,时钟数开销最少的是高基Montgomery模乘运算,可扩展性最好的是基于字的Montgomery模乘算法。这里,Montgomery模乘算法,具体可参见下面的算法1。
算法1:Montgomery模乘算法
Input:N、X、Y、M、r(r=2N)
Output:S=MM(X,Y)=XYr-1 mod M
1.S-1=0
2.For i=0 to N-1
3.Si=Si-1+xi×Y
4.Si=Si+s0×M
5.Si=Si/2
6.End For
7.If SN-1>=M Then SN-1=SN-1M
Return SN-1
这里的X是乘数,Y是被乘数,M是模数,r是一个等于2N的常数,X、Y、M都是位长为N的整数。如算法1所示,Montgomery算法采用一系列的移位运算来替代除法,最终的运算结果是XYr-1 mod M而不是真正的模乘运算结果:XY mod M。为了实现模乘运算,需要对初始输入数据进行域转换。Montgomery模乘运算使用一种称为M域的表示形式来表示整数。比如,将x(0<x<M)转化成M域的表示形式就成了:这样,M域中的等于Xr mod M,M域的等于Yr mod M,M域中的Montgomery模乘运算就成了
可见,对于M域中的数来说,它们模乘的结果仍然在M域之中,在整数和M域之间的转换也非常简单,也可以通过Montgomery模乘运算来实现;
这里的r2 mod M是预先计算好的。RSA的加密过程就是求模幂运算过程,而模幂运算需要大量的模乘运算。在做RSA加密之前需要将操作数先转化到M域,然后再做模幂,在做完模幂之后再将结果转化到整数域,这样就完成了一次RSA加密。
从算法1所示的Montgomery模乘算法中可以看出,做一次N位Montgomery模乘运算需要N+1个时钟周期。在开始的N个时钟周期中,每个时钟周期都需要做两次N位的加法和一次右移操作;在最后一个时钟周期,需要做N位的减法和N位的比较判断。可见,Montgomery乘法器每次运算的操作数都是固定长度的,对于N位的Montgomery乘法器,它只能支持N位的RSA加密运算;同时乘法器每个周期需要处理两次N位的加法,数据通路的延迟非常大。
通过对Montgomery原始算法的分析研究,Montgomery乘法器操作数长度固定,不能任意扩展操作数长度;乘法器的数据通路延迟达到了2级N位加法器的延迟,极大地限制了系统时钟频率;同时乘法运算仍然非常消耗时钟周期数。Tenca-Todorov-提出了一种更为有效的Montgomery模乘算法,首先,它采用了基于字的运算,使得Montgomery模乘运算能扩展到支持任意位长的乘法;其次它采用了carry-save结构的加法器,使得关键路径延迟大大降低;最后采用了高基算法,大大节省了做一次加密的时钟周期数目。Tenca-Todorov-的改进算法,具体可参见下面的算法2。
Input:N、X、Y、M、r(r=2N)
Output:S=MM(X,Y)=XYr-1 mod M
1.S=0、x-1=0
2.For j=0 to N-1 Step k
3.qYj=Booth(xj+k-1…j-1)
4.(Ca,S(0))=S(0)+(qYj×Y)(0)
5.qMj=S(0) k-1…0×(2k-M(0)-1 k-1…0)mod 2k
6.(Cb,S(0))=S(0)+(qMj×M)(0)
7.For i=1 to NW-1
8.(Ca,S(i))=Ca+S(i)+(qYj×Y)(i)
9.(Cb,S(i))=Cb+S(i)+(qMj×M)(i)
10.S(i-1)=(S(i) k-1..0,S(i-1) BPW-1….k)
End For
11.Ca=Ca or Cb
12.S(NW-1)=sign ext(Ca,S(NW-1) BPW-1…k)
End For
13.If S>=M Then S=S-M
如算法2所示,k表示基,每次循环读入乘数X的k位,通过Booth编码得到qY,被乘数Y和模M按字读取(Y(i)表示Y的第i个字,如算法2),故该算法非常容易组织成流水线的结构。图1给出了Tenca-Todorov-提出的基为8的可扩展Montgomery乘法器结构。它包括了n个MM Cell运算单元,每个MM Cell运算单元做两次一个字长的加法(分别加Y(i)和M(i)),加法器采用carry-save的结构,运算结果传给下一级MM Cell运算单元。为了使数据通路能支持更高位数的模乘运算,可以通过加入2个N位的FIFO来实现,分别存储SS’和SC’。在第一个周期,S初始化为0,在模乘运算过程中如果不需要暂存中间结果,则将输出数据旁路给输入,如果需要暂存数据,则将输出数据输入到FIFO中。
具体地,在图1中,包括了N个MM Cell运算单元,每个MM Cell运算单元做两次一个字长的加法(分别加Y(i)和M(i)),加法器采用carry-save的结构,运算结果传给下一级MM Cell运算单元。为了使数据通路能支持更高位数的模乘运算,可以通过加入2个N位的FIFO来实现,分别存储SS’和SC’。在第一个周期,S初始化为0,在模乘运算过程中如果不需要暂存中间结果,则将输出数据旁路给输入,如果需要暂存数据,则将输出数据输入到FIFO中。在图1中,包含了2个N位的FIFO,如果N的数值非常大则FIFO会占用很大的面积。从算法2中可以发现,FIFO的作用是保存中间运算结果SS’和SC’的,所以可以通过预先计算SS’和SC’的和来压缩输入FIFO的数据。
在图2中,以w比特作为一个字长为例,它包含了2个w位的4-to-2加法器,一个普通加法器,3个6选1选择器,两个解码器及不少于8个w位的寄存器。qY解码器和qM解码器分别生成系数qY和qM。对于基为8的设计来说,做一次Montgomery模乘需要的时钟数为:
在公式(4)中,NS表示图1中的流水线级数,NW表示Y、M所包含的字的个数,N是所有操作数的长度。
Tenca-Todorov-的改进型Montgomery乘法器采用的基为8,并支持密钥长度可扩展,同时采用按字读取操作数和carry-save加法器,提高了整体的系统性能。可是,Tenca-Todorov-的设计也存在很多不足的方面。首先,采用的基不够合理;其次,MM Cell运算单元的结构没有达到最优化,从图2中可以发现,关键路径(图2中用较长的粗黑线标识)仍然很长,并且硬件开销比较大;最后,在FIFO设计上,为了存储临时数据SS’和SC’,需要采用2个存储单元(如图1),增加了存储器的开销。
综上所述,在实现本发明的过程中,发明人发现,现有技术中至少存在平均性能低、时钟频率低、硬件开销大与实用性差等缺陷。
发明内容
本发明的目的在于,针对上述问题,提出基为16的高速Montgomery模乘法器VLSI,以实现平均性能高、时钟频率高、硬件开销小与实用性好的优点。
为实现上述目的,本发明采用的技术方案是:基为16的高速Montgomery模乘法器VLSI,包括N个MM Cell运算单元、FIFO存储单元与2选1的数据选择单元,其中:在所述N个MM Cell运算单元中,每个MM Cell运算单元的乘数输入端均与乘数X(i)连接,第一MM Cell运算单元的控制信号输入端与控制信号连接、被乘数输入端与被乘数Y(i)连接、模数输入端与模数M(i)连接,N个MM Cell运算单元依次串接;第N MM Cell运算单元的输出端,依次经FIFO存储单元与2选1的数据选择单元后,反馈输入至第一MMCell运算单元;所述2选1的数据选择单元的控制信号输入端,与N个MMCell运算单元的控制信号连接;N与i均为整数,X、Y与M都是位长为N的整数。
进一步地,所述FIFO存储单元包括W位的加法器、2选1的选择器、1位的进位寄存器与N位的FIFO存储模块,其中:所述W位的加法器的第一输入端及第二输入端,分别与2选1的选择器的第一输入端及第二输入端连接;第一输出端与N位的FIFO存储模块的输入端连接,第二输出端经1位的进位寄存器、与W位的加法器的第三输入端连接;所述N位的FIFO存储模块的输出端,与2选1的选择器的第三输入端连接;2选1的选择器的第四输入端置0。
进一步地,在所述N个MM Cell运算单元中,每个MM Cell运算单元包括四个6选1数据选择器、两个4-to-2加法器、两个解码器与八个寄存器,其中:一个解码器、两个6选1数据选择器、一个4-to-2加法器与一个寄存器顺序设置。
进一步地,所述两个4-to-2加法器均为W位的4-to-2加法器,两个W位的4-to-2加法器设置在寄存器的两边,用以平衡路径延迟。
本发明各实施例的基为16的高速Montgomery模乘法器VLSI,由于包括N个MM Cell运算单元、FIFO存储单元与2选1的数据选择单元,可以在数据需要输入到FIFO存储单元的时候,先将输入数据相加,然后输入到FIFO存储单元中;若不需要暂存数据,则将数据直接旁路给输出。相比现有技术,有利于节省存储开销;从而可以克服现有技术中平均性能低、时钟频率低、硬件开销大与实用性差的缺陷,以实现平均性能高、时钟频率高、硬件开销小与实用性好的优点。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图3为根据本发明基为16的高速Montgomery模乘法器VLSI中FIFO模块的结构示意图;
图4为根据本发明基为16的高速Montgomery模乘法器VLSI中MM Cell运算单元的结构示意图;
图5为根据本发明基为16的高速Montgomery模乘法器VLSI中RSA协处理器的结构示意图;
图6a为根据本发明基为16的高速Montgomery模乘法器VLSI的测试芯片的外部结构示意图;
图6b为根据本发明基为16的高速Montgomery模乘法器VLSI的测试芯片的参数指标示意图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
根据本发明实施例,提供了基为16的高速Montgomery模乘法器VLSI。如图3-图6b所示,本实施例包括N个MM Cell运算单元、FIFO存储单元与2选1的数据选择单元,其中:在N个MM Cell运算单元中,每个MM Cell运算单元的乘数输入端均与乘数X(i)连接,第一MM Cell运算单元的控制信号输入端与控制信号连接、被乘数输入端与被乘数Y(i)连接、模数输入端与模数M(i)连接,N个MM Cell运算单元依次串接;第N MM Cell运算单元的输出端,依次经FIFO存储单元与2选1的数据选择单元后,反馈输入至第一MM Cell运算单元;2选1的数据选择单元的控制信号输入端,与N个MM Cell运算单元的控制信号连接;N与i均为整数,X、Y与M都是位长为N的整数。
进一步地,在上述实施例中,FIFO存储单元包括W位的加法器、2选1的选择器、1位的进位寄存器与N位的FIFO存储模块,其中:W位的加法器的第一输入端及第二输入端,分别与2选1的选择器的第一输入端及第二输入端连接;第一输出端与N位的FIFO存储模块的输入端连接,第二输出端经1位的进位寄存器、与W位的加法器的第三输入端连接;N位的FIFO存储模块的输出端,与2选1的选择器的第三输入端连接;2选1的选择器的第四输入端置0。
具体地,如图3所示,FIFO存储单元包含一个W位的加法器、一个2选1的选择器、一个1位的进位寄存器和一个N位的FIFO存储模块,在数据需要输入到FIFO存储模块的时候,先将输入数据相加,然后输入到FIFO存储模块中;若不需要暂存数据,则将数据直接旁路给输出。与图1所示的现有技术相比,这样可以节省近一半的存储开销。
进一步地,在上述实施例中,在N个MM Cell运算单元中,如图4所示,每个MM Cell运算单元包括四个6选1数据选择器、两个4-to-2加法器、两个解码器与八个寄存器,其中:一个解码器、两个6选1数据选择器、一个4-to-2加法器与一个寄存器顺序设置。
这里,与图2所示的现有技术不同的是,两个4-to-2加法器均为W位的4-to-2加法器,两个W位的4-to-2加法器设置在寄存器的两边,用以平衡路径延迟。对于基为16的高速Montgomery模乘法器VLSI来说,乘数X每次扫描4位,经Booth编码后得到5位的输入数据,被乘数Y和模M每次输入一个字。乘数X的Booth编码如公式(5)所示:
X(i)=(xi+3,xi+2,xi+1,xi,xi-1) (5)
在公式(5)中,xi-1是前一次扫描的数据最高位。乘数X(i)通过qY解码器得到qY的值,其值等于公式(6):
qY=-8xi+3+4xi+2+2xi+1+xi+xi-1 (6)
可以发现,qY在[-8,8]范围内,为了方便计算S(0)+(qYj×Y)(0)(算法2中第4步),可以将其分解为两个2的幂级数来实现,如图4中Y(i) P和Y(i) N所示。举例来说,假如qY等于3,可以将其分解为2和1,或者4和-1,这样3Y就可以通过2Y+Y或者4Y-Y来实现,而2Y、4Y不需要通过做乘法得到,可以由Y的移位来得到。对于4-to-2加法器来说,其输入是两个carry-save形式的操作数,其输出是一个carry-save形式的加法结果,所以可以将2Y、Y或者4Y、-Y直接输入到4-to-2加法器,而不需要去真正做一次加法或者减法。这样,可以通过对qY建立一张查找表来简化计算。qY查找表如表1所示。
表1:q
Y
解码表
在表1中,qY是Booth编码结果(参见公式3),qY1是数据选择信号,它决定Y(i) p的值(如图4所示),Y(i) p可以等于[0,Y,2Y,4Y,8Y,-Y];Y(i) n由qY2决定,它可以等于[0,-Y,-2Y,-4Y,-8Y,Y]。cin用来处理数据取补码时的最低位,若数据是正数,则cin等于0,输出数据不变;若数据是负数,则cin等于1,同时将数据取反输出。
对于qM来说,它取决于S和M的最低4位的值,如算法2中所示:
qM=S(0) k-1…0×(2k-M(0)-1 k-1…0)mod 2k (7)
在基为16的高速Montgomery模乘法器VLSI中,k等于4,qM的值在[0,15]。经分析,[0,15]中的数据11和13不能拆分为两个2的幂级数之和,这样就不能采用4-to-2的加法器来计算了,而需要另外再加上一级加法器来计算,这样会导致关键路径延迟大大增加,所以这里需要对qM做相应的处理以简化硬件设计。如算法2中第6步所示,系数qM的目的是确保S的低4位的值变为0,使得算法第10步能进行移位。经过研究分析发现,当qM在[-8,+8]范围内时,同样也能使得S的低4位的值变为0。系数qM([0,15])转化为系数qM([-8,8])如表2所示。qM’类似于qY,都可以通过表1用相应的数据选择器实现,如图4中所示。
表2:q
M
[0,15]到q
M
’[-8,+8]转换表
对于基为16的高速Montgomery模乘法器VLSI来说,它完成一次模乘运算所需要的时钟周期数目为:
在下面的表3中,将现有技术中Tenca-Todorov-提出的基为8的可扩展Montgomery乘法器同本实施例的基为16的高速Montgomery模乘法器VLSI进行比较,可以发现,在各种条件下,本实施例的基为16的高速Montgomery模乘法器VLSI在平均性能上可以比Tenca-Todorov-提出的基为8的可扩展Montgomery乘法器提高近26%;同时,通过调整数据通路结构,使得路径延迟得到极大地优化,并且相比图2所示的Tenca-Todorov-提出的基为8的可扩展Montgomery乘法器中MM Cell运算单元,可以省去很多的冗余逻辑,有利于节省硬件开销。
表3:基为16的高速Montgomery模乘法器VLSI和基为8的可扩展Montgomery
乘法器在不同的流水线级数(NS)和字长(NW)下的性能比较
为了测试本实施例的基为16的高速Montgomery模乘法器VLSI,可以采用如图5所示的2048bit的RSA协处理器芯片。在图5中,该RSA协处理器芯片包含一个Montgomery模乘运算部件(如图5中的MM乘法器)、一个32bit的控制寄存器、一个32bit的状态寄存器与4个2048bits的操作数存储器器,该RSA协处理器芯片的接口可以采用AMBA总线AHB接口。
在MM运算单元中,采用32级流水线,每字32bit。这样,NS=32,NW=2048/32=64,通过公式(8)可以发现,该MM运算单元不需要采用额外的FIFO存储单元来暂存数据。
本实施例的验证系统,可以采用基于ARM7的SOC验证平台来实现。在FPGA验证过程中,将本实施例作为一个IP模块嵌入到SOC平台中,采用的FPGA器件是Altera的Stratix系列器件(EP1S80956C6);芯片级验证方案采用类似FPGA的验证方法,将SOC平台用FPGA来实现,同时引出协处理器接口,以实现验证平台和待验证芯片的连接。
RSA协处理器芯片,可以采用华虹NEC 0.25μm CMOS标准单元库进行流片,采用Synopsys的EDA工具进行物理设计;该RSA协处理器芯片的外部结构和参数指标可以参见图6。在下面的表4中,列出了近年来国际上的同类研究与本实施例的比较。
表4:近年来国际上同类研究与本实施例的比较
在表4中,文献[4]是在32bit ARM处理器上的结果,文献[8]是台湾清华大学2004年的研究成果,采用基为2的可扩展设计,文献[9]是美国HarveyMudd学院和Intel电路研究实验室2005年的研究成果。
上述实施例的基为16的高速Montgomery模乘法器VLSI,是针对Tenca-Todorov-提出的基为8的可扩展Montgomery乘法器提出的改进方案。相比Tenca-Todorov-提出的基为8的可扩展Montgomery乘法器,在高性能上,一方面,通过采用基为16的高速Montgomery模乘法器VLSI,在没有增加硬件开销的基础上,达到了近26%的性能提升;另一方面,在MM Cell运算单元上,上述实施例采用更为优化的结构,使得关键路径延迟大大降低;在低成本设计上,上述实施例提出的FIFO存储单元的结构,可以节省近一半的存储器开销,同时还在MM Cell运算单元中降低了硬件冗余度。
另外,还通过RSA协处理器芯片,对上述实施例的基为16的高速Montgomery模乘法器VLSI进行验证,综合各个方面的技术指标并与国际上同类研究成果做比较,上述实施例的基为16的高速Montgomery模乘法器VLSI所达到的性能是领先的。
综上所述,本发明各实施例的基为16的高速Montgomery模乘法器VLSI,由于包括N个MM Cell运算单元、FIFO存储单元与2选1的数据选择单元,可以在数据需要输入到FIFO存储单元的时候,先将输入数据相加,然后输入到FIFO存储单元中;若不需要暂存数据,则将数据直接旁路给输出。相比现有技术,有利于节省存储开销;从而可以克服现有技术中平均性能低、时钟频率低、硬件开销大与实用性差的缺陷,以实现平均性能高、时钟频率高、硬件开销小与实用性好的优点。
最后应说明的是:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.基为16的高速Montgomery模乘法器VLSI,其特征在于,包括N个MM Cell运算单元、FIFO存储单元与2选1的数据选择单元,其中:
在所述N个MM Cell运算单元中,每个MM Cell运算单元的乘数输入端均与乘数X(i)连接,第一MM Cell运算单元的控制信号输入端与控制信号连接、被乘数输入端与被乘数Y(i)连接、模数输入端与模数M(i)连接,N个MM Cell运算单元依次串接;第N MM Cell运算单元的输出端,依次经FIFO存储单元与2选1的数据选择单元后,反馈输入至第一MM Cell运算单元;
所述2选1的数据选择单元的控制信号输入端,与N个MM Cell运算单元的控制信号连接;
N与i均为整数,X、Y与M都是位长为N的整数。
2.根据权利要求1所述的基为16的高速Montgomery模乘法器VLSI,其特征在于,所述FIFO存储单元包括W位的加法器、2选1的选择器、1位的进位寄存器与N位的FIFO存储模块,其中:
所述W位的加法器的第一输入端及第二输入端,分别与2选1的选择器的第一输入端及第二输入端连接;第一输出端与N位的FIFO存储模块的输入端连接,第二输出端经1位的进位寄存器、与W位的加法器的第三输入端连接;
所述N位的FIFO存储模块的输出端,与2选1的选择器的第三输入端连接;2选1的选择器的第四输入端置0。
3.根据权利要求1或2所述的基为16的高速Montgomery模乘法器VLSI,其特征在于,在所述N个MM Cell运算单元中,每个MM Cell运算单元包括四个6选1数据选择器、两个4-to-2加法器、两个解码器与八个寄存器,其中:一个解码器、两个6选1数据选择器、一个4-to-2加法器与一个寄存器顺序设置。
4.根据权利要求3所述的基为16的高速Montgomery模乘法器VLSI,其特征在于,所述两个4-to-2加法器均为W位的4-to-2加法器,两个W位的4-to-2加法器设置在寄存器的两边,用以平衡路径延迟。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105634537A CN101986261A (zh) | 2010-11-27 | 2010-11-27 | 基为16的高速Montgomery模乘法器VLSI |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010105634537A CN101986261A (zh) | 2010-11-27 | 2010-11-27 | 基为16的高速Montgomery模乘法器VLSI |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101986261A true CN101986261A (zh) | 2011-03-16 |
Family
ID=43710610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010105634537A Pending CN101986261A (zh) | 2010-11-27 | 2010-11-27 | 基为16的高速Montgomery模乘法器VLSI |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101986261A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102207847A (zh) * | 2011-05-06 | 2011-10-05 | 广州杰赛科技股份有限公司 | 基于蒙哥马利模乘运算的数据加解密处理方法及装置 |
CN109117114A (zh) * | 2018-08-16 | 2019-01-01 | 电子科技大学 | 一种基于查找表的低复杂度近似乘法器 |
CN109271137A (zh) * | 2018-09-11 | 2019-01-25 | 网御安全技术(深圳)有限公司 | 一种基于公钥加密算法的模乘装置及协处理器 |
CN109284085A (zh) * | 2018-09-25 | 2019-01-29 | 国网湖南省电力有限公司 | 一种基于fpga的高速模乘和模幂运算方法及模型 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470598A (zh) * | 2007-12-28 | 2009-07-01 | 航天信息股份有限公司 | 提高大整数Montgomery模乘运算速度的方法 |
-
2010
- 2010-11-27 CN CN2010105634537A patent/CN101986261A/zh active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101470598A (zh) * | 2007-12-28 | 2009-07-01 | 航天信息股份有限公司 | 提高大整数Montgomery模乘运算速度的方法 |
Non-Patent Citations (1)
Title |
---|
范益波等: "基为16的高速Montgomery模乘法器VLSI设计", 《通信学报》, vol. 27, no. 4, 30 April 2006 (2006-04-30), pages 107 - 113 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102207847A (zh) * | 2011-05-06 | 2011-10-05 | 广州杰赛科技股份有限公司 | 基于蒙哥马利模乘运算的数据加解密处理方法及装置 |
CN102207847B (zh) * | 2011-05-06 | 2013-12-04 | 广州杰赛科技股份有限公司 | 基于蒙哥马利模乘运算的数据加解密处理方法及装置 |
CN109117114A (zh) * | 2018-08-16 | 2019-01-01 | 电子科技大学 | 一种基于查找表的低复杂度近似乘法器 |
CN109271137A (zh) * | 2018-09-11 | 2019-01-25 | 网御安全技术(深圳)有限公司 | 一种基于公钥加密算法的模乘装置及协处理器 |
CN109284085A (zh) * | 2018-09-25 | 2019-01-29 | 国网湖南省电力有限公司 | 一种基于fpga的高速模乘和模幂运算方法及模型 |
CN109284085B (zh) * | 2018-09-25 | 2023-03-31 | 国网湖南省电力有限公司 | 一种基于fpga的高速模乘和模幂运算方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100552620C (zh) | 基于二次Booth编码的大数乘法器 | |
CN100435090C (zh) | 可扩展高基蒙哥马利模乘算法及其电路结构 | |
CN100470464C (zh) | 基于改进的蒙哥马利算法的模乘器 | |
CN106951211B (zh) | 一种可重构定浮点通用乘法器 | |
CN103761068A (zh) | 优化的蒙哥马利模乘方法、模平方方法和模乘硬件 | |
CN101986261A (zh) | 基为16的高速Montgomery模乘法器VLSI | |
Lin et al. | Scalable montgomery modular multiplication architecture with low-latency and low-memory bandwidth requirement | |
Pan et al. | Efficient digit‐serial modular multiplication algorithm on FPGA | |
Bosmans et al. | A tiny coprocessor for elliptic curve cryptography over the 256-bit NIST prime field | |
Patel et al. | Novel power-delay-area-efficient approach to generic modular addition | |
CN101295237A (zh) | 求商和余数的高速除法器 | |
Zeghid et al. | Speed/area-efficient ECC processor implementation over GF (2 m) on FPGA via novel algorithm-architecture co-design | |
Haritha et al. | Design of an enhanced array based approximate arithmetic computing model for multipliers and squarers | |
Namin et al. | A Fully Serial-In Parallel-Out Digit-Level Finite Field Multiplier in $\mathbb {F} _ {2^{m}} $ Using Redundant Representation | |
CN102646033B (zh) | 提供了加密和签名功能的rsa算法的实现方法和装置 | |
Mahapatra et al. | RSA cryptosystem with modified Montgomery modular multiplier | |
CN115658005A (zh) | 一种基于冗余的高精度低延时大整数除法加速装置 | |
Thampi et al. | Montgomery multiplier for faster cryptosystems | |
Wu et al. | Efficient High-Radix GF (p) Montgomery Modular Multiplication Via Deep Use Of Multipliers | |
Timarchi et al. | Area-time-power efficient maximally redundant signed-digit modulo 2 n− 1 adder and multiplier | |
Murugeswari et al. | An area efficient and low power multiplier using modified carry save adder for parallel multipliers | |
CN106775575B (zh) | 基于二次剩余的低成本rfid认证协议的乘法器 | |
Praveena et al. | Bus encoded LUT multiplier for portable biomedical therapeutic devices | |
Devika et al. | Efficient hardware prototype of ECDSA modules for blockchain applications | |
PRIYA T | A Review and Analysis on Decoder Based Approximate Multiplier (DeBAM) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20110316 |