CN106681691A - 基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置 - Google Patents

基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置 Download PDF

Info

Publication number
CN106681691A
CN106681691A CN201510753019.8A CN201510753019A CN106681691A CN 106681691 A CN106681691 A CN 106681691A CN 201510753019 A CN201510753019 A CN 201510753019A CN 106681691 A CN106681691 A CN 106681691A
Authority
CN
China
Prior art keywords
result
value
memory
montgomery
multiplication
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.)
Granted
Application number
CN201510753019.8A
Other languages
English (en)
Other versions
CN106681691B (zh
Inventor
单伟君
王立辉
闫守礼
张志敏
李清
张纲
俞军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Fudan Microelectronics Group Co Ltd
Original Assignee
Shanghai Fudan Microelectronics Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shanghai Fudan Microelectronics Group Co Ltd filed Critical Shanghai Fudan Microelectronics Group Co Ltd
Priority to CN201510753019.8A priority Critical patent/CN106681691B/zh
Publication of CN106681691A publication Critical patent/CN106681691A/zh
Application granted granted Critical
Publication of CN106681691B publication Critical patent/CN106681691B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/72Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
    • G06F7/722Modular multiplication

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Complex Calculations (AREA)

Abstract

一种基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置。所述基于蒙哥马利模乘的数据处理方法包括:采用如下步骤计算所述第一值s2:获取第一存储器的初始值s10,所述初始值s10的位长为n,且高n-c位为0,低c位为1;将所述初始值s10与模数N的差再与1求和,得到计算结果s11,并将所述计算结果s11写入所述第一存储器;对所述第一存储器的值s11执行n-c次模加运算,得到计算结果s1n-c+1;将计算结果s1n-c+1对N取模后的结果s1写入至所述第一存储器;调用所述蒙哥马利模乘器对所述第二存储器的初始值执行n-1次模乘运算,并将第n-1次模乘运算的结果R2mod N作为所述第一值s2输出。应用所述方法可以降低蒙哥马利模乘器运算的计算量,提高计算效率。

Description

基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置
技术领域
本发明涉及数据加密的技术领域,具体涉及一种基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置。
背景技术
RSA、ECC和SM2是目前广泛使用的公钥密码算法。其中,RSA算法中的模幂运算、ECC和SM2算法中的点乘运算,都会大量使用到大数模乘。可以说,大数模乘是上述公钥加密算法中的核心运算,直接决定了上述公钥加密算法的性能。
蒙哥马利模乘是目前主流的大数模乘实现方法。相对于对输入数据直接进行模乘运算,蒙哥马利模乘不仅可以节省一倍的存储空间,还可以避免除法运算,通过移位的方式达到取模的效果,有效提高数据的处理效率。
然而,目前在实现任意长度的蒙哥马利模乘运算时,计算量仍然较大,导致计算效率较低。
发明内容
本发明解决的技术问题是如何降低蒙哥马利模乘器运算的计算量,提高计算效率。
为解决上述技术问题,本发明实施例提供一种基于蒙哥马利模乘的数据处理方法,所述方法包括:
当接收到模数N时,计算第一值s2,以根据所述第一值s2,调用蒙哥马利模乘器,对待处理的数据执行模乘运算;采用如下步骤计算所述第一值s2:
获取第一存储器的初始值s10,所述初始值s10的位长为n,且高n-c位为0,低c位为1,w为所述蒙哥马利模乘器的位长,k为满足k*w≥c的最小整数,n=k*w,c为所述模数N的位长,c、k及N均为正整数;
将所述初始值s10与模数N的差再与1求和,得到计算结果s11,并将所述计算结果s11写入所述第一存储器;对所述第一存储器的值s11执行n-c次模加运算,得到计算结果s1n-c+1;将计算结果s1n-c+1对N取模后的结果s1写入至所述第一存储器;
对所述第一存储器的值s1执行一次模加运算,获得计算结果s21,并将所述计算结果s21作为第二存储器的初始值写入至所述第二存储器;调用所述蒙哥马利模乘器对所述第二存储器的初始值执行n-1次模乘运算,并将第n-1次模乘运算的结果R2mod N作为所述第一值s2输出,其中R=2n
本发明实施例还提供了一种模乘运算方法,所述方法包括:
按照上述的基于蒙哥马利模乘的数据处理方法计算获得第一值s2;
当接收到待处理的数据A及B时,根据所述第一值s2,对所述待处理的数据A与R2执行蒙哥马利模乘运算,获得运算结果y1,以及计算所述待处理的数据B与R2执行蒙哥马利模乘运算,获得运算结果y2;
对运算结果y1和y2执行蒙哥马利模乘运算,获得运算结果y3;
对运算结果y3与数值1执行蒙哥马利模乘运算,获得所述待处理的数据A及B的模乘运算结果y。
本发明实施例还提供了一种基于蒙哥马利模乘的数据处理装置,所述装置包括:
第一计算单元,适于当接收到模数N时,计算第一值s2,以根据所述第一值s2,调用蒙哥马利模乘器,对待处理的数据执行模乘运算,所述第一计算单元包括:
获取子单元,适于获取第一存储器的初始值s10,所述初始值s10的位长为n,且高n-c位为0,低c位为1,w为所述蒙哥马利模乘器的位长,k为满足k*w≥c的最小整数,n=k*w,c为所述模数N的位长,c、k及N均为正整数;
第一计算子单元,适于将所述初始值s10与模数N的差再与1求和,得到计算结果s11,并将所述计算结果s11写入所述第一存储器;对所述第一存储器的值s11执行n-c次模加运算,得到计算结果s1n-c+1;将计算结果s1n-c+1对N取模后的结果s1写入至所述第一存储器;
第二计算子单元,适于对所述第一存储器的值s1执行一次模加运算,获得计算结果s21,并将所述计算结果s21作为第二存储器的初始值写入至所述第二存储器;调用所述蒙哥马利模乘器对所述第二存储器的初始值执行n-1次模乘运算,并将第n-1次模乘运算的结果R2mod N作为所述第一值s2输出,其中R=2n
本发明实施例还提供了一种模乘运算装置,所述装置包括:
上述的基于蒙哥马利模乘的数据处理装置,通过所述数据处理装置获得所述第一值s2;
第二计算单元,适于当接收到待处理的数据A及B时,根据所述第一值s2,对所述待处理的数据A与R2执行蒙哥马利模乘运算,获得运算结果y1,以及计算所述待处理的数据B与R2执行蒙哥马利模乘运算,获得运算结果y2;
第三计算单元,适于对运算结果y1和y2执行蒙哥马利模乘运算,获得运算结果y3;
第四计算单元,适于对运算结果y3与数值1执行蒙哥马利模乘运算,获得所述待处理的数据A及B的模乘运算结果y。
与现有技术相比,本发明实施例的技术方案具有以下有益效果:
在基于蒙哥马利模乘计算s1时,通过设置第一存储器的初始值s10的位长为n,且高n-c位为0,低c位为1,进而可以在获得s11后,仅通过n-c次模加运算即能获得s1的值,由此可以根据s1获得第一值s2。相对于现有技术中的方案,可以有效减少计算量,提高计算效率。并且,由于c为任意值,因此,应用所述方法可以实现任意长度的蒙哥马利模乘运算。
附图说明
图1是本发明实施中一种模乘运算方法的流程图;
图2是本发明实施例中一种基于蒙哥马利模乘的数据处理方法的流程图;
图3是本发明实施中一种基于蒙哥马利模乘的数据处理装置的结构示意图;
图4是本发明实施中一种模乘运算装置的结构示意图。
具体实施方式
目前,在基于蒙哥马利模乘计算s1时,通常令s10=0xFF…F-N+1,其中,0xFF…F的位长为n,n为机器字长的整数倍,N为模数,进而可以通过0xFF…F与模数N之间的模减运算来获得s1的值,此时s1的位长为n。因此,上述方法仅能实现机器字长整数倍的蒙哥马利模乘运算。并且,由于硬件实现模减运算时,如果两数相减的结果超过硬件的位长即溢出,则需要对两数相减的结果再与模数N相减,直至与模数相减后的结果没有溢出,并将此时与模数相减后的结果作为两数模减运算的结果,因此,在基于蒙哥马利模乘计算s1时,通常需要进行2n-c次减法运算,才能获得s1的值,导致模乘运算的计算量仍然较大,计算效率较低。
针对上述问题,本发明实施例提供了一种基于蒙哥马利模乘的数据处理方法,所述方法在基于蒙哥马利模乘计算s1时,通过设置第一存储器的初始值s10的位长为n,且高n-c位为0,低c位为1,进而可以在对s11执行n-c次模加运算后,获得位长为n的s11,从而可以根据s11获得s1的值,最终根据s1的值对待处理的数据进行后续的模乘运算。由于c为任意值,因此,利用所述方法可以帮助实现任意位长的蒙哥马利模乘运算。并且,相对于现有技术中的方案,仅通过n-c次模加运算即可获得s1的值,因此,在实现任意位长的蒙哥马利模乘运算过程中,可以有效减少计算量,提高计算效率。
为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。
如图1所示,本发明实施例提供了一种模乘运算方法,所述方法可以包括如下步骤:
步骤11,计算第一值s2。
在具体实施中,所述第一值s2的值为R2mod N,位长为c。其中,R=2n,w通常为机器字长的蒙哥马利模乘器的位长,例如,w的值通常为8bit,16bit或32bit等。k为满足k*w≥c的最小整数,n=k*w,c为所述模数N的位长,c、k及N均为正整数。
需要说明的是,在接收到模数N的值时,即可计算第一值s2。这样,在接收到待处理的数据时,即可根据所述第一值s2将待处理的数据由实数域转换为蒙哥马利域,以对待处理的数据进行模乘运算。
步骤12,当接收到待处理的数据A及B时,根据所述第一值s2,对所述待处理的数据A与R2执行蒙哥马利模乘运算,获得运算结果y1,以及计算所述待处理的数据B与R2执行蒙哥马利模乘运算,获得运算结果y2。
在具体实施中,当接收到待处理的数据A时,对所述待处理的数据A与R2执行蒙哥马利模乘运算,即计算M(A,R2,R,N),获得运算结果y1=A*R2*R-1mod N=A*R mod N。当接收到待处理的数据B时,对所述待处理的数据B与R2执行蒙哥马利模乘运算,即计算M(B,R2,R,N),获得运算结果y2=B*R2*R-1mod N=B*R mod N。
步骤13,对运算结果y1和y2执行蒙哥马利模乘运算,获得运算结果y3。
在具体实施中,对运算结果y1和y2执行蒙哥马利模乘运算,即计算M(A*R,B*R,R,N),获得运算结果y3=(A*R)*(B*R)*R-1mod N=A*B*R mod N。
步骤14,对运算结果y3与数值1执行蒙哥马利模乘运算,获得所述待处理的数据A及B的模乘运算结果y。
在具体实施中,对运算结果y3与数值1执行蒙哥马利模乘运算,即计算M(A*B*R,1,R,N)mod N,获得运算结果y=A*B*R*1*R-1mod N=A*B mod N,且y的位长为c。
在具体实施中,可以采用多种方法计算第一值s2,以根据所述第一值s2,调用蒙哥马利模乘器,对待处理的数据执行模乘运算。为了降低计算量,在本发明的一实施例中,可以采用如图2所示的方法计算第一值s2。具体地,所述方法可以包括如下步骤:
步骤21,获取第一存储器的初始值s10,所述初始值s10的位长为n,且高n-c位为0,低c位为1。
也就是说,当获得n以及模数N的位长c后,根据所述n及c的值,可以获得s10。例如,当n=5,c=3时,s10=00111。当n=8,c=7时,s10=01111111。
步骤22,将所述初始值s10与模数N的差再与1求和,得到计算结果s11,并将所述计算结果s11写入所述第一存储器;对所述第一存储器的值s11执行n-c次模加运算,得到计算结果s12;将计算结果s12对N取模后的结果s1写入至所述第一存储器。
在具体实施中,令s11=s10-N+1。
对s11执行1次模加运算后,获得s12=(s11+s11)mod N;
对s12执行1次模加运算后,获得s13=(s12+s12)mod N;
对s13执行1次模加运算后,获得s14=(s13+s13)mod N;
……
依此类推,直至执行模加运算的次数为n-c次,获得第n-c次模加运算的结果s1n-c+1=(s1n-c+s1n-c)mod N。令s1=s1n-c+1mod N,将s1写入至所述第一存储器。由于s1是根据s10获得的,因此所述s1的位长为c。
步骤23,对所述第一存储器的值s1执行一次模加运算,获得计算结果s21,并将所述计算结果s21作为第二存储器的初始值写入至所述第二存储器;调用所述蒙哥马利模乘器对所述第二存储器的初始值执行n-1次模乘运算,并将第n-1次模乘运算的结果R2mod N作为所述第一值s2输出。
在具体实施中,令s21=(s1+s1)mod N,并将s21作为第二存储器的初始值。
调用蒙哥马利模乘器对s21执行1次模乘运算,获得计算结果s22=M(s21,s21,R,N);
调用蒙哥马利模乘器对s22执行1次模乘运算,获得计算结果s23=M(s22,s22,R,N);
调用蒙哥马利模乘器对s23执行1次模乘运算,获得计算结果s24=M(s23,s23,R,N);
……
依此类推,直至执行蒙哥马利模乘运算的次数为n-1次,获得计算结果s2=s2n=M(s2n-1,s2n-1,R,N)=R2mod N,即获得第一值。此时可以将所述第一值s2输出。
由于所述s2也是根据s10获得的,因此s2的位长也为n。
由上述内容可知,采用图2中所示实施例的方法计算s1时,通过设置s10的位长为n,且高n-c位为0,低c位为1,因此,对s11执行n-c次模加运算后,即可获得位长为c的s1,并可以利用位长为c的s1直接进行后续的模乘运算。相对于通过执行2n-c次减法运算来获得s1的值,可以有效减少计算量,尤其在n>c时,效果更加明显。并且,由于c为任意值,因此应用上述方法可以实现任意位长的蒙哥马利模乘运算。
为了使本领域技术人员更好地理解和实现本发明,以下对上述方法对应的装置进行详细描述。
如图3所示,本发明实施例提供了一种基于蒙哥马利模乘的数据处理装置,所述装置可以包括:第一计算单元31。其中,所述第一计算单元31适于当接收到模数N时,计算第一值s2,以根据所述第一值s2,调用蒙哥马利模乘器,对待处理的数据执行模乘运算。
在具体实施中,所述第一计算单元31可以包括:获取子单元310,第一计算子单元311以及第二计算子单元312。其中:
所述获取子单元310适于获取第一存储器的初始值s10,所述初始值s10的位长为n,且高n-c位为0,低c位为1,n为蒙哥马利模乘的位长,且n=k*w,w为所述蒙哥马利模乘器的位长,k为满足k*w≥c的最小整数,c为所述模数N的位长,c、k及N均为正整数。
所述第一计算子单元311适于将所述初始值s10与模数N的差再与1求和,得到计算结果s11,并将所述计算结果s11写入所述第一存储器;对所述第一存储器的值s11执行n-c次模加运算,得到计算结果s1n-c+1;将计算结果s1n-c+1对N取模后的结果s1写入至所述第一存储器。
所述第二计算子单元312适于对所述第一存储器的值s1执行一次模加运算,获得计算结果s21,并将所述计算结果s21作为第二存储器的初始值写入至所述第二存储器;调用所述蒙哥马利模乘器对所述第二存储器的初始值执行n-1次模乘运算,并将第n-1次模乘运算的结果R2mod N作为所述第一值s2输出,其中R=2n
如图4所示,本发明实施例还提供了一种模乘运算装置40,所述装置40可以包括上述基于蒙哥马利模乘的数据处理装置,第二计算单元41,第三计算单元42,第四计算单元43。其中:
通过所述第一计算单元31获得所述第一值s2后,所述第二计算单元41当接收到待处理的数据A及B时,根据所述第一值s2,对所述待处理的数据A与R2执行蒙哥马利模乘运算,获得运算结果y1,以及计算所述待处理的数据B与R2执行蒙哥马利模乘运算,获得运算结果y2。
所述第三计算单元42适于对运算结果y1和y2执行蒙哥马利模乘运算,获得运算结果y3。
所述第四计算单元43适于对运算结果y3与数值1执行蒙哥马利模乘运算,获得所述待处理的数据A及B的模乘运算结果y。
由上述内容可以看出,通过本发明实施例中基于蒙哥马利模乘的数据处理装置,可以在实现任意位长的蒙哥马利模乘运算的同时,有效降低计算量,提高计算效率。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

Claims (4)

1.一种基于蒙哥马利模乘的数据处理方法,其特征在于,包括:
当接收到模数N时,计算第一值s2,以根据所述第一值s2,调用蒙哥马利模乘器,对待处理的数据执行模乘运算;采用如下步骤计算所述第一值s2:
获取第一存储器的初始值s10,所述初始值s10的位长为n,且高n-c位为0,低c位为1,w为所述蒙哥马利模乘器的位长,k为满足k*w≥c的最小整数,n=k*w,c为所述模数N的位长,c、k及N均为正整数;
将所述初始值s10与模数N的差再与1求和,得到计算结果s11,并将所述计算结果s11写入所述第一存储器;对所述第一存储器的值s11执行n-c次模加运算,得到计算结果s1n-c+1;将计算结果s1n-c+1对N取模后的结果s1写入至所述第一存储器;
对所述第一存储器的值s1执行一次模加运算,获得计算结果s21,并将所述计算结果s21作为第二存储器的初始值写入至所述第二存储器;调用所述蒙哥马利模乘器对所述第二存储器的初始值执行n-1次模乘运算,并将第n-1次模乘运算的结果R2mod N作为所述第一值s2输出,其中R=2n
2.一种模乘运算方法,其特征在于,包括:
按照权利要求1所述的基于蒙哥马利模乘的数据处理方法计算获得第一值s2;
当接收到待处理的数据A及B时,根据所述第一值s2,对所述待处理的数据A与R2执行蒙哥马利模乘运算,获得运算结果y1,以及计算所述待处理的数据B与R2执行蒙哥马利模乘运算,获得运算结果y2;
对运算结果y1和y2执行蒙哥马利模乘运算,获得运算结果y3;
对运算结果y3与数值1执行蒙哥马利模乘运算,获得所述待处理的数据A及B的模乘运算结果y。
3.一种基于蒙哥马利模乘的数据处理装置,其特征在于,包括:
第一计算单元,适于当接收到模数N时,计算第一值s2,以根据所述第一值s2,调用蒙哥马利模乘器,对待处理的数据执行模乘运算,所述第一计算单元包括:
获取子单元,适于获取第一存储器的初始值s10,所述初始值s10的位长为n,且高n-c位为0,低c位为1,w为所述蒙哥马利模乘器的位长,k为满足k*w≥c的最小整数,n=k*w,c为所述模数N的位长,c、k及N均为正整数;
第一计算子单元,适于将所述初始值s10与模数N的差再与1求和,得到计算结果s11,并将所述计算结果s11写入所述第一存储器;对所述第一存储器的值s11执行n-c次模加运算,得到计算结果s1n-c+1;将计算结果s1n-c+1对N取模后的结果s1写入至所述第一存储器;
第二计算子单元,适于对所述第一存储器的值s1执行一次模加运算,获得计算结果s21,并将所述计算结果s21作为第二存储器的初始值写入至所述第二存储器;调用所述蒙哥马利模乘器对所述第二存储器的初始值执行n-1次模乘运算,并将第n-1次模乘运算的结果R2mod N作为所述第一值s2输出,其中R=2n
4.一种模乘运算装置,其特征在于,包括:
如权利要求3所述的基于蒙哥马利模乘的数据处理装置,通过所述数据处理装置获得所述第一值s2;
第二计算单元,适于当接收到待处理的数据A及B时,根据所述第一值s2,对所述待处理的数据A与R2执行蒙哥马利模乘运算,获得运算结果y1,以及计算所述待处理的数据B与R2执行蒙哥马利模乘运算,获得运算结果y2;
第三计算单元,适于对运算结果y1和y2执行蒙哥马利模乘运算,获得运算结果y3;
第四计算单元,适于对运算结果y3与数值1执行蒙哥马利模乘运算,获得所述待处理的数据A及B的模乘运算结果y。
CN201510753019.8A 2015-11-07 2015-11-07 基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置 Active CN106681691B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510753019.8A CN106681691B (zh) 2015-11-07 2015-11-07 基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510753019.8A CN106681691B (zh) 2015-11-07 2015-11-07 基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置

Publications (2)

Publication Number Publication Date
CN106681691A true CN106681691A (zh) 2017-05-17
CN106681691B CN106681691B (zh) 2019-01-29

Family

ID=58862903

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510753019.8A Active CN106681691B (zh) 2015-11-07 2015-11-07 基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置

Country Status (1)

Country Link
CN (1) CN106681691B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669670A (zh) * 2018-12-26 2019-04-23 贵州华芯通半导体技术有限公司 用于蒙哥马利模乘中的不均等分块的数据处理方法及装置
CN114706557A (zh) * 2022-04-01 2022-07-05 华控清交信息科技(北京)有限公司 一种asic芯片及蒙哥马利模乘的实现方法和装置
CN115113848A (zh) * 2022-08-30 2022-09-27 北京象帝先计算技术有限公司 签名/验签电路、装置、设备、方法及坐标还原电路
US11521129B2 (en) 2020-11-10 2022-12-06 Clustar Technology Co., Ltd. Processing device, accelerator, and method for federated learning

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0656709A2 (en) * 1993-11-30 1995-06-07 Canon Kabushiki Kaisha Encryption device and apparatus for encryption/decryption based on the Montgomery method using efficient modular multiplication
EP0712071A1 (fr) * 1994-11-08 1996-05-15 STMicroelectronics S.A. Procédé de mise en oeuvre de multiplication modulaire selon la méthode de montgomery
CN1731345A (zh) * 2005-08-18 2006-02-08 上海微科集成电路有限公司 可扩展高基蒙哥马利模乘算法及其电路结构
CN102999313A (zh) * 2012-12-24 2013-03-27 飞天诚信科技股份有限公司 一种基于蒙哥马利模乘的数据处理方法
CN104750457A (zh) * 2013-12-31 2015-07-01 上海复旦微电子集团股份有限公司 一种基于模幂运算的数据处理方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0656709A2 (en) * 1993-11-30 1995-06-07 Canon Kabushiki Kaisha Encryption device and apparatus for encryption/decryption based on the Montgomery method using efficient modular multiplication
EP0712071A1 (fr) * 1994-11-08 1996-05-15 STMicroelectronics S.A. Procédé de mise en oeuvre de multiplication modulaire selon la méthode de montgomery
CN1731345A (zh) * 2005-08-18 2006-02-08 上海微科集成电路有限公司 可扩展高基蒙哥马利模乘算法及其电路结构
CN102999313A (zh) * 2012-12-24 2013-03-27 飞天诚信科技股份有限公司 一种基于蒙哥马利模乘的数据处理方法
CN104750457A (zh) * 2013-12-31 2015-07-01 上海复旦微电子集团股份有限公司 一种基于模幂运算的数据处理方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BY PETER L.ET AL.: "Modular Multiplication Without Trial Division", 《MATHEMATICS OF COMPUTATION》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109669670A (zh) * 2018-12-26 2019-04-23 贵州华芯通半导体技术有限公司 用于蒙哥马利模乘中的不均等分块的数据处理方法及装置
US11521129B2 (en) 2020-11-10 2022-12-06 Clustar Technology Co., Ltd. Processing device, accelerator, and method for federated learning
CN114706557A (zh) * 2022-04-01 2022-07-05 华控清交信息科技(北京)有限公司 一种asic芯片及蒙哥马利模乘的实现方法和装置
CN114706557B (zh) * 2022-04-01 2023-03-10 华控清交信息科技(北京)有限公司 一种asic芯片及蒙哥马利模乘的实现方法和装置
CN115113848A (zh) * 2022-08-30 2022-09-27 北京象帝先计算技术有限公司 签名/验签电路、装置、设备、方法及坐标还原电路
CN115113848B (zh) * 2022-08-30 2022-12-13 北京象帝先计算技术有限公司 签名/验签电路、装置、设备、方法及坐标还原电路

Also Published As

Publication number Publication date
CN106681691B (zh) 2019-01-29

Similar Documents

Publication Publication Date Title
US9813224B2 (en) Digital processor having instruction set with complex angle function
CN106681690B (zh) 基于蒙哥马利模乘的数据处理方法、模乘运算方法及装置
CN106681691A (zh) 基于蒙哥马利模乘的数据处理方法、模乘运算方法和装置
US11626970B2 (en) Multiplicative masking for cryptographic operations
CN102999313B (zh) 一种基于蒙哥马利模乘的数据处理方法
WO2015164996A1 (zh) 椭圆域曲线运算方法和椭圆域曲线运算器
JP2016062404A (ja) 演算処理方法及び演算処理装置
CN111399803B (zh) 除法运算方法、装置、存储介质及电子设备
WO2017012351A1 (zh) 一种并行计算的方法及终端
CN108595146B (zh) 除法运算方法、装置及设备
CN103339665B (zh) 用于多位数除法或模变换的方法
CN104750455A (zh) 一种基于蒙哥马利模乘的数据处理方法和装置
CN106371803B (zh) 用于蒙哥马利域的计算方法和计算装置
CN104506316A (zh) 一种基于sm2基点的点乘运算方法
CN109460535B (zh) 一种基于云的有限域矩阵求逆装置及求逆方法
CN103164185A (zh) 用纯组合电路实现除法计算的电路
Vestias et al. Parallel decimal multipliers and squarers using Karatsuba-Ofman's algorithm
CN114611150A (zh) 隐私数值的安全模转换方法及装置
CN103389965A (zh) 一种实现sm2密码体制的大整数求乘逆方法
CN109947393B (zh) 基于求余器的运算方法及装置
CN104750457B (zh) 一种基于模幂运算的数据处理方法和装置
CN109992242B (zh) 基于乘法器的运算方法及装置
JP5816383B2 (ja) インターリーバーインデックス生成装置及び方法
CN110970008A (zh) 一种嵌入式混音方法、装置、嵌入式设备及存储介质
CN115511047B (zh) Softmax模型的量化方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant