CN101632255A - 密码方法及系统 - Google Patents

密码方法及系统 Download PDF

Info

Publication number
CN101632255A
CN101632255A CN200880008030A CN200880008030A CN101632255A CN 101632255 A CN101632255 A CN 101632255A CN 200880008030 A CN200880008030 A CN 200880008030A CN 200880008030 A CN200880008030 A CN 200880008030A CN 101632255 A CN101632255 A CN 101632255A
Authority
CN
China
Prior art keywords
mod
data value
crt
private key
modulus
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
CN200880008030A
Other languages
English (en)
Other versions
CN101632255B (zh
Inventor
米歇尔·杜盖
尼尔·M·麦基奈伊
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.)
Rumbas
Original Assignee
Atmel Corp
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 Atmel Corp filed Critical Atmel Corp
Publication of CN101632255A publication Critical patent/CN101632255A/zh
Application granted granted Critical
Publication of CN101632255B publication Critical patent/CN101632255B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/723Modular exponentiation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/30Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
    • H04L9/3006Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters
    • H04L9/302Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy underlying computational problems or public-key parameters involving the integer factorization problem, e.g. RSA or quadratic sieve [QS] schemes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/72Indexing scheme relating to groups G06F7/72 - G06F7/729
    • G06F2207/7219Countermeasures against side channel or fault attacks
    • G06F2207/7223Randomisation as countermeasure against side channel attacks
    • G06F2207/7233Masking, e.g. (A**e)+r mod n
    • G06F2207/7247Modulo masking, e.g. A**e mod (n*r)

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Computational Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mathematical Physics (AREA)
  • General Engineering & Computer Science (AREA)
  • Storage Device Security (AREA)
  • Complex Calculations (AREA)

Abstract

本发明揭示一种执行密码术的系统,其可操作以将包括至少一个秘密密钥指数及两个秘密密钥模数的秘密密钥值加载到电子处理硬件可存取的数据存储装置中且通过所述电子处理硬件选择变换因子。所述电子处理硬件可将所述秘密密钥模数乘以所述变换因子以产生经变换的模数且在执行模幂运算之前的任一时间将密文消息第一数据值加载到所述数据存储装置中,且通过所述电子处理硬件使用所述至少一个秘密密钥指数及所述经变换的模数对所述第一数据值执行模幂运算以获得中间数据值。所述电子处理硬件可按所述两个秘密密钥模数的乘积的模约化所述中间数据值以获得经解密的明文消息最终数据值。

Description

密码方法及系统
相关申请案交叉参考
本发明请求对2007年3月12日提出申请且标题为“用于密码系统的基于中国剩余定理的计算方法(CHINESE REMAINDER THEORUM-BASED COMPUTATIONMETHOD FOR CRYPTOSYSTEMS)”的美国专利申请案第11/684,842号的优先权权益,所述专利申请案以全文引用的方式并入本文中。
技术领域
本发明係关于在具有相关联软件的电子处理硬件中实施的密码方法及系统。
背景技术
发明内容
附图说明
图1是根据本发明的某些实施例用于执行密码术方法(包括基于CRT的模幂运算)的处理器硬件的实施例的示意性平面图;及
图2是图解说明根据本发明的例示性实施例用于模幂运算的一般步骤的流程图。
具体实施方式
许多密码算法基于类型m≡cd(mod n)的模幂计算,其中c及m可对应于各种种类的数据(明文及密文消息、签名、消息摘要、验证代码等)且其中d及n可对应于用于处理所述数据的公用或秘密密钥的元素。模数n通常是保持为秘密的两个非常大的素数p及q的乘积。RSA算法是使用模幂运算的加密系统(及相关数字签名方案)的一个实例。迪菲-赫尔曼(Diffie-Hellman)密钥一致协议是另一实例。
在RSA算法中,提供公用密钥{e,n}及对应的秘密密钥{d,p,q}用于加密及解密,其中d·e≡1(modφ(n)),n=p·q,φ(n)=(p-1)(q-1),且其中整数e与φ(n)是互素的。或者,经常使用函数λ(n)=LCM(p-1,q-1)来替代原始φ(n)。(RSA PKCS#1 v.2.1)对于加密来说,可根据关系c=me(mod n)使用公用密钥{e,n}来从明文消息m获得密文c。公用密钥指数e通常是出于加密的方便性及速度而选择的小值(例如,3、5、35或216+1=65537)。对于解密来说,可根据关系m≡cd(mod(p·q))使用秘密密钥{d,p,q}来从密文c恢复明文消息m。
经常使用中国剩余定理(CRT)来加速解密中所涉及的模幂计算,因为用户知道另外秘密的素因子p及q。所述定理通常表述:给出一组联立同余式x=ai(mod ni),其中i=1到r,且其中模数ni是两两互素,解是x≡[∑i ai·bi(N/ni)](mod N),其中N=n1·n2·...nr且根据bi(N/ni)≡1(mod ni)确定bi。对于两个互素的正整数p及q以及两个整数a及b(即,r=2的情况)来说,存在按p·q的模唯一地确定的整数m,使得m≡a(mod p)≡b(mod q)。也就是说,对于GCD(p,q)=1,每一对模p及q剩余类对应于简单的模p·q剩余类。所述解求得m≡[a·(q-1mod p)·q+b·(p-1 mod q)·p](mod p·q)。(界定整数x-1模z的模逆,使得x·x-1≡1(mod z)。对于素模数,不是所述模数的倍数的每一非零整数具有逆。)
RSA算法的CRT实施方案如下计算模幂m:=cd(mod(p·q))。首先界定一对秘密密钥导出的指数为d1:=d(mod(p-1))及d2:=d(mod(q-1))。然后,计算 m 1 : = c d 1 ( mod p ) m 2 : = c d 2 ( mod q ) . 最终,m=CRT(m1,m2):=m1+p·{[(m2-m1)·R](mod q)},其中R=p-1(mod q)。
CRT实施方案的最后公式(即m=CRT(m1,m2))具有许多变体。这些变体中的三个实例是:
CRT2(m1,m2):=(m1·R1·q+m2·R2·p)(mod p·q),其中R1≡q-1(mod p)且R2≡p-1(modq);
CRT3(m1,m2):={[(m1·R1)(mod p)]·q+[(m2·R2)(mod q)]·p]}(mod p·q),其中也是R1=q-1(mod p)且R2≡p-1(mod q);及
CRT4(m1,m2):=(q·{[(m1-m2)·R4](mod p)}+m2)(mod p·q),其中R4=p-1(mod q)。
变体CRT实施方案以经设计以阻止密码分析的方式执行模幂计算,尤其是在其中攻击者可以存取实施所述密码计算的硬件的票证(例如,智能卡)的背景下。攻击者可在计算过程期间采用对装置的电磁发射、功率消耗或其它可存取参数的非侵入性测量及计时分析以抽取关于秘密密钥的有用信息。所述变体实施方案通常在密码算法的各个阶段采用伪随机变量以掩盖基础数学运算而不影响最终结果。
举例来说,在模幂运算的CRT实施方案中,某些变体通过在计算过程中的某个较早阶段使消息变量m或其CRT成分m1及m2乘以随机值来变换所述消息变量m或其CRT成分m1及m2,然后在稍后的阶段使所述消息变量除以所述同一随机值或除以从所述随机值导出的相关值以获得真正的结果。其它变体可通过使秘密密钥指数d或其CRT成分d1及d2加上(p-1)或(q-1)的随机倍数来变换所述秘密密钥指数d或其CRT成分d1及d2,以获得所述秘密密钥成分的同余类的另一(随机)元。使用分别是(p-1)及(q-1)的对应随机倍数的模数同样可将所述秘密密钥指数d约化为经变换的CRT成分d1′及d2′。在所有这些情况下,变换的设计经选择以获得真正的最终结果,同时以利用同余算术中的等价性的方式来随机改变中间计算。遗憾的是,这些变体中的许多可能是相当复杂且计算密集的。
参照图1,本发明的实施例的密码方法可在各种各样的数字处理系统、逻辑电路或电子硬件中实施或通过在数据处理器或计算机中执行等效固件或软件程序来执行。根据本发明的实施例的计算处理器硬件可包括算术-逻辑单元(ALU)10或含有硬件乘法器以用于对所提供的数据执行数字运算(包括模幂运算)的类似计算电路。ALU 10通常可以存取存储器(RAM)12及各种工作寄存器14。运算定序器16包含用于根据用于密码算法的运算集合的固件或软件指令来控制ALU(包括向及从存储器12及寄存器14的数据传送)的逻辑电路。运算定序器16可存取存储在寄存器18中呈指针形式的运算参数,所述运算参数使得运算定序器16能够定位RAM 12内的操作数以及其它控制信息及中间结果的目的地地址。所述硬件还可包括执行计算并输出随机数值的伪随机数产生器(PRNG)电路20。ALU 10可如所述运算定序器根据密码算法且尤其是其模幂运算步骤所引导的那样存取此随机产生器20。
参照图2,通过前述硬件且根据本发明实施例的例示性基于CRT的模幂计算M:=cd(mod(p·q))通常通过将秘密密钥值{d,p,q}加载到处理硬件可存取的数据存储装置中(例如,加载到图1中的RAM 12中)来开始(步骤10)。此后,可如需地将所述值传送到工作寄存器14中供ALU 10使用。随机产生器(例如,图1中的PRNG电路20)产生变换因子s的随机值(步骤11),然后使用所述随机值来通过乘法变换的方式将秘密密钥模数值p及q随机化(步骤12):
p′:=p·s;
q′:=q·s。
处理硬件以类似于现有版本的基于CRT的模幂运算中已知的逆R:=p-1(mod q)的计算的方式计算逆值R′:=(p′)-1mod q(步骤14)。
将在稍后的步骤中使用这些经变换的值p′及q′以及逆R′。使用秘密密钥值{d,p,q}的每一解密会话将涉及不同的随机值s,且因此涉及模数p′及q′以及逆R′的不同随机化值,从而保护涉及模幂运算的密码运算免遭密码分析。(注意,随机值s与原始模数p及q必须是互素的,以使得针对互素性的标准整除性测试应是随机产生步骤11的一部分,以清除任何不合适的随机值。)如果需要,可将随机值s的大小选择为在所规定的范围内,以使得值p′、q′、d1及d2将是大致相同大小。
或者,变换因子s可以是来自有限预选固定值集合的随机选择,而不是从每一会话的痕迹中随机产生。此可节约大量处理时间,尤其是在也针对所述集合中s的每一可能选择预计算p′、q′及R′的情况下。如果因为任何原因,密码安全肯定不会是给定环境中的问题,那么因子s的选择且因此p′、q′及R′的选择可以是固定值。
以与现有版本的基于CRT的模幂运算中已知的相同方式来从秘密密钥指数d中计算CRT指数d1及d2(步骤14),即:
d1:=d(mod(p-1));
d2:=d(mod(q-1))。
如果需要,也可方便地将此步骤放置在p及q的随机化之前,即在步骤12之前。事实上,由于CRT指数d1及d2仅直接与秘密密钥值d、p及q相关,因此可预计算所述CRT指数d1及d2且将其加载到硬件数据存储装置中来代替秘密密钥指数d(在步骤10中),从而从会话计算中去除步骤16。
将用于模幂运算的变量C加载(步骤18)到处理硬件可存取的数据存储装置中,例如,加载到图1的RAM 12中。此后,可如需地将其(通常)作为根据密码程序的已知大小的块传送到工作寄存器14供ALU 10使用。变量C通常表示将要解密的密文消息,但也可表示其它密码数据,例如数字签名。至于CRT指数d1及d2的计算,此步骤在其中发生的程序序列中的特定位置可改变,只要其到在步骤20中需要其的时间时可用。
应用使用经变换的模数p′及q′以及经变换的逆R′的CRT步骤(步骤20及22),以便获得中间消息结果M′。特定来说,在步骤20中,处理硬件以与来自现有的基于CRT的模幂运算的方式类似的方式但使用p′及q′作为模数代替原始秘密密钥模数值p及q来计算CRT消息成分M1′及M2′。也就是说,
M 1 ′ : = C d 1 ( mod p ′ ) ;
M 2 ′ : = C d 2 ( mod q ′ ) .
然后,处理硬件使用中国剩余定理从CRT消息成分M1′及M2′中计算(在步骤22中)中间消息结果M′:
M′:=M1′+p′·{[(M2′-M1′)·R′](mod q′)}。
注意,由于针对每一解密会话将p′及q′随机化,因此同样在每一会话中将值M1′、M2′及M′随机化,从而阻止通过已知文本攻击(例如,攻击者重复使用已知值C)及可依赖于对硬件发射的参数(EM发射、时间相依功率消耗等)的偷听的其它密码分析技术的密码分析。所述计算每次以随机的方式而不同,此外计算并不比基于CRT的模幂运算的直接应用更密集。
已通过应用CRT(M1′,M2′)的适应CRT公式获得了中间结果M′。如果适应适当的变换,那么可改为应用其它变体CRT公式(例如,在背景技术部分中给出的三个实例)。为变换初始CRT公式,一般规则是总是设定p′:=p·s及q′:=q·s。对于所述公式的所有部分,像R1:=q-1(mod p)及R2:=p-1(mod q),我们变换为R1′:=(q′)-1(mod p)及R2′:=(p′)-1(mod q)。如果p或q作为所述公式中的倍增因子出现,那么分别将其改变为p′或q′。如果p或q并非作为模数((mod p)或(mod q))出现,那么我们将其改变为(modp′)或(mod q′)。举例来说,CRT指数d1及d2总是d1:=d(mod(p-1))及d2:=d(mod q-1)。然而,根据本发明的某些实施例,总是使用p′及s′作为模数来变换CRT消息成分M1′及M2′,如上文所说明。因此,对于所述三个例示性变体,我们获得:
M′=CRT2′(m1′,m2′):=(m1′·R1′·q′+m2′·R2′·p′)(mod p′·q′),
M′=CRT3′(m1′,m2′):={[(m1′·R1′)(mod p′)]·q′
+[(m2′·R2′)(mod q′)]·p′}(mod p′·q′),
M′=CRT4′(m1′,m2′):=q′·{[(m1′-m2′)·R4′(mod p′)}+m2′.
一旦获得中间消息结果M′,那么可容易地通过基本模约化运算将其约化为最终消息M(步骤24):
M:=M′(mod(p·q)):=M′(mod n)。
此最终约化模p·q适用于所有变体。注意,乘积p·q先前被作为密钥产生的部分来计算,且仅仅是所有方可用的公用密钥模数n。因此,在n也已被加载到硬件处理器可用的数据存储装置中(例如,与先前步骤10相关联)的情况下不需要对其进行重新计算。此外,由于公用密钥模数n的使用不显露关于秘密密钥的任何东西,因此可在没有随机变换的情况下计算最终约化且其仍安全地防止密码分析。最终消息M是相同的,即使p′、q′、M′等是随机的,因为使用作为原始模数的随机倍数s的经变换模数产生尽管是随机的但仍是与通过使用未经变换的模数求得的相同同余类的中间结果。
总结
本发明的实施例涉及使用中国剩余定理(CRT)实施的模运算的计算机硬件实施的密码术方法,其中变换用于计算的模数以隐蔽对中间结果的密码观察。特定来说,对于模幂运算,m=cd(mod p·q),使用变换因子s来将互素因子p及q变换为p1=s·p及q′=s·q。应用使用经变换的模数p′及q′的CRT步骤。在获得中间结果m′之后,通过最终约化模p·q来恢复最终结果m。所述变换因子s可以是随机值、来自有限预选固定值集合的随机选择,或如果安全在给定环境中不成问题,那么其甚至可以是固定值。与许多其它变体相比,所述方法相对简单且计算较不密集,此外仍是大致安全的而免遭密码分析。因此,其适用于智能卡及其它密码票证应用中。其可与依赖于使用CRT实施方案的模幂运算的任一密码算法一同使用。
可将所述方法的实施例实施为包含密码处理器单元、所述处理器单元可存取的数据存储装置及提供所述随机因子的伪随机数产生电路的数据处理硬件(例如,智能卡或其它票证)中的密码术程序。

Claims (20)

1、一种在电子处理系统中实施的密码方法,其包含:
将包括至少一个秘密密钥指数及两个秘密密钥模数的秘密密钥值加载到电子处理硬件可存取的数据存储装置中;
通过所述电子处理硬件选择变换因子;
通过所述电子处理硬件使所述秘密密钥模数乘以所述变换因子以产生经变换的模数;
在执行模幂运算之前的任一时间将密文消息第一数据值加载到所述数据存储装置中;
通过所述电子处理硬件使用所述至少一个秘密密钥指数及所述经变换的模数对所述第一数据值执行模幂运算以获得中间数据值;且通过所述电子处理硬件按所述两个秘密密钥模数的乘积的模约化所述中间数据值以获得经解密的明文消息最终数据值。
2、根据权利要求1所述的方法,其中所述变换因子是针对所述方法的每一执行在随机产生电路中产生的不同随机值。
3、根据权利要求1所述的方法,其中从有限预选固定值集合中随机地选择所述变换因子。
4、根据权利要求1所述的方法,其中所述选定变换因子是固定值。
5、根据权利要求1到4中任一所述的方法,其中执行模幂运算是使用所述中间数据值的中国剩余定理(CRT)计算来执行的。
6、根据权利要求1到5中任一所述的方法,其中作为所述执行所述模幂运算的部分从单个秘密密钥指数中计算一对CRT指数。
7、根据权利要求1到5中任一所述的方法,其中从单个秘密密钥指数中预计算一对CRT指数,将所述对CRT指数作为秘密密钥指数加载到所述数据存储装置中。
8、根据权利要求1到7中任一所述的方法,其中将所述两个秘密密钥模数的所述乘积预计算为公用密钥模数,也将所述公用密钥模数加载到所述数据存储装置中以随后在所述中间数据值的所述约化中使用。
9、根据权利要求1到8中任一所述的方法,其中作为加密程序的部分在所述电子处理硬件中执行所述模幂运算。
10、一种在电子处理系统中实施的用于执行模幂计算的密码方法,其包含:
将至少一个秘密密钥指数d及两个秘密密钥模数p及q加载到电子处理硬件可存取的数据存储装置中;
通过所述电子处理硬件选择变换因子s;
通过所述电子处理硬件使所述秘密密钥模数乘以所述变换因子以产生经变换的模数p′:=p·s及q′:=q·s;
通过所述电子处理硬件计算逆值R′:=(p′)-1(mod q);
在执行模幂运算之前的任一时间将第一数据值C加载到所述数据存储装置中;
使用所述至少一个秘密密钥指数d及所述经变换的模数p′及q′来对所述第一数据值C执行模幂运算以获得中间数据值M′,其中执行模幂运算是由所述电子处理硬件使用所述中间数据值的中国剩余定理(CRT)计算来执行的,其涉及:
(a)计算CRT指数d1:=d(mod p-1)及d2:=d(mod q-1),
(b)计算CRT消息成分 M 1 ′ : = C d 1 ( mod p ′ ) M 2 ′ : = C d 2 ( mod q ′ ) ,
(c)从所述CRT消息成分M1′及M2′中计算中间数据值M′;及
通过所述电子处理硬件按所述两个秘密密钥模数的乘积n=p·q的模约化所述中间数据值M′,以获得最终数据值M:=M′(mod n)。
11、根据权利要求10所述的方法,其中所述变换因子s是针对所述方法的每一执行而产生的不同随机值。
12、根据权利要求10所述的方法,其中从有限预选固定值集合中随机地选择所述变换因子s。
13、根据权利要求10所述的方法,其中所述选定变换因子s是固定值。
14、根据权利要求10到13中任一所述的方法,其中从所述秘密密钥指数d中预计算所述CRT指数且将其作为一对秘密密钥指数d1及d2加载到所述数据存储装置中。
15、根据权利要求10到14中任一所述的方法,其中M′:=M1′+p′·{[(M2′-M1′)·R′](mod q′)}且R′:=(p′)-1(mod q)。
16、根据权利要求10到14中任一所述的方法,其中M′:=(m1′·R1′·q′+m2′·R2′·p′)(mod p′·q′),R1′:=(q′)-1(mod p)且R2′:=(p′)-1(mod q)。
17、根据权利要求10到14中任一所述的方法,其中M′:={[(m1′·R1′)(mod p′)]·q′+[(m2′·R2′)(mod q′)]·p′}(mod p′·q′),R1′:=(q′)-1(mod p)且R2′:=(p′)-1(mod q)。
18、根据权利要求10到14中任一所述的方法,其中M′:=q′·{[(m1′-m2′)·R4′](modp′)}+m2′且R4′:=(p′)-1(mod q)。
19、根据权利要求10到18中任一所述的方法,其中预计算所述乘积n=p·q且将其加载到所述数据存储装置中以随后在所述中间数据值的所述约化期间使用。
20、根据权利要求10到19中任一所述的方法,其中所述第一数据值表示密文消息,作为加密程序的部分在所述电子处理硬件中执行所述模幂运算,且所述最终数据值表示经解密的明文消息。
CN200880008030.XA 2007-03-12 2008-03-12 密码方法 Active CN101632255B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/684,842 2007-03-12
US11/684,842 US8280041B2 (en) 2007-03-12 2007-03-12 Chinese remainder theorem-based computation method for cryptosystems
PCT/US2008/003324 WO2008112273A1 (en) 2007-03-12 2008-03-12 Cryptographic method and system

Publications (2)

Publication Number Publication Date
CN101632255A true CN101632255A (zh) 2010-01-20
CN101632255B CN101632255B (zh) 2014-03-05

Family

ID=39759855

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200880008030.XA Active CN101632255B (zh) 2007-03-12 2008-03-12 密码方法

Country Status (5)

Country Link
US (1) US8280041B2 (zh)
CN (1) CN101632255B (zh)
DE (1) DE112008000668B4 (zh)
TW (1) TWI448963B (zh)
WO (1) WO2008112273A1 (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103221917A (zh) * 2010-09-29 2013-07-24 纳格拉影像股份有限公司 加密运算中模幂的保护
CN104796250A (zh) * 2015-04-11 2015-07-22 成都信息工程学院 针对RSA密码算法M-ary实现的侧信道攻击方法
CN106416121A (zh) * 2014-06-10 2017-02-15 高通股份有限公司 用于签名产生和加密/解密的共模rsa密钥对
CN108599951A (zh) * 2018-08-10 2018-09-28 北京奇虎科技有限公司 加密方法及装置
CN109388955A (zh) * 2017-08-07 2019-02-26 英飞凌科技股份有限公司 用于实施加密运算的方法和设备及存储介质
CN109474428A (zh) * 2018-11-28 2019-03-15 北京杰睿中恒科技有限公司 基于数字信号数据的动态加密方法和装置

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8280041B2 (en) 2007-03-12 2012-10-02 Inside Secure Chinese remainder theorem-based computation method for cryptosystems
FR2916113B1 (fr) * 2007-05-07 2009-07-31 Oberthur Card Syst Sa Procede de traitement cryptographique d'un message.
US8170216B2 (en) * 2008-06-18 2012-05-01 Apple Inc. Techniques for validating and sharing secrets
KR101383690B1 (ko) * 2008-12-10 2014-04-09 한국전자통신연구원 안전한 멀티캐스트 통신을 위한 그룹키 관리방법
EP2401734B1 (en) * 2009-02-27 2016-04-20 Certicom Corp. System and method for performing exponentiation in a cryptographic system
CN101860434B (zh) * 2010-05-25 2012-05-02 北京握奇数据系统有限公司 一种数字签名的实现方法及装置
JP5848106B2 (ja) * 2011-11-28 2016-01-27 ルネサスエレクトロニクス株式会社 半導体装置及びicカード
US9613285B2 (en) 2012-03-22 2017-04-04 The Charles Stark Draper Laboratory, Inc. Compressive sensing with local geometric features
US8983198B2 (en) 2012-03-22 2015-03-17 The Charles Stark Draper Laboratory, Inc. Compressive sensing with local geometric features
US9026699B2 (en) 2013-09-23 2015-05-05 Seagate Technology Llc Command execution using existing address information
CN103580869B (zh) * 2013-11-06 2016-09-21 北京华大信安科技有限公司 一种crt-rsa签名方法及装置
US9906368B2 (en) 2014-12-23 2018-02-27 Nxp B.V. General encoding functions for modular exponentiation encryption schemes
US9531540B2 (en) * 2014-12-23 2016-12-27 Nxp B.V. Secure token-based signature schemes using look-up tables
US9904516B2 (en) 2014-12-23 2018-02-27 Nxp B.V. Modular exponentiation using look-up tables
US9985784B2 (en) 2014-12-23 2018-05-29 Nxp B.V. Efficient smooth encodings for modular exponentiation
EP3082033B1 (en) * 2015-04-17 2017-08-30 Nxp B.V. Modular exponentiation using look-up tables
IL239880B (en) * 2015-07-09 2018-08-30 Kaluzhny Uri Simplified montgomery multiplication
CN110380867B (zh) * 2019-08-14 2021-07-06 电子科技大学 一种基于身份的轻量签名方法及系统
CN112653706B (zh) * 2020-12-29 2022-11-04 杭州趣链科技有限公司 基于中国剩余定理的数据传输方法、装置和系统
WO2024003916A1 (en) * 2022-06-29 2024-01-04 B.G. Negev Technologies And Applications Ltd., At Ben Gurion University Method for performing polynomial communication-less perfect information theoretical smpc, based on crt and coordinated randomness

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US1964164A (en) * 1930-04-04 1934-06-26 Harold S Lamb Manifold
US4964164A (en) * 1989-08-07 1990-10-16 Algorithmic Research, Ltd. RSA computation method for efficient batch processing
US5144740A (en) * 1989-09-04 1992-09-08 Brother Kogyo Kabushiki Kaisha Numerically controlled machine tool with automatic tool exchange device and indexing device
US5289397A (en) * 1991-07-22 1994-02-22 Itt Corporation High-speed modulo exponentiator device
US5663896A (en) * 1994-09-22 1997-09-02 Intel Corporation Broadcast key distribution apparatus and method using Chinese Remainder
US5991415A (en) * 1997-05-12 1999-11-23 Yeda Research And Development Co. Ltd. At The Weizmann Institute Of Science Method and apparatus for protecting public key schemes from timing and fault attacks
ATE325478T1 (de) * 1998-01-02 2006-06-15 Cryptography Res Inc Leckresistentes kryptographisches verfahren und vorrichtung
US6144740A (en) * 1998-05-20 2000-11-07 Network Security Technology Co. Method for designing public key cryptosystems against fault-based attacks with an implementation
US6298442B1 (en) * 1998-06-03 2001-10-02 Cryptography Research, Inc. Secure modular exponentiation with leak minimization for smartcards and other cryptosystems
US6594761B1 (en) * 1999-06-09 2003-07-15 Cloakware Corporation Tamper resistant software encoding
KR100340102B1 (ko) * 2000-11-30 2002-06-10 조휘갑 알에스에이 공개키 암호 고속화 장치 및 방법
US6973470B2 (en) * 2001-06-13 2005-12-06 Corrent Corporation Circuit and method for performing multiple modulo mathematic operations
FR2828608B1 (fr) * 2001-08-10 2004-03-05 Gemplus Card Int Procede securise de realisation d'une operation d'exponentiation modulaire
FR2829335A1 (fr) * 2001-09-06 2003-03-07 St Microelectronics Sa Procede de brouillage d'un calcul a quantite secrete
DE10143728B4 (de) * 2001-09-06 2004-09-02 Infineon Technologies Ag Vorrichtung und Verfahren zum Berechnen eines Ergebnisses einer modularen Exponentiation
US20030065696A1 (en) * 2001-09-28 2003-04-03 Ruehle Michael D. Method and apparatus for performing modular exponentiation
FR2844891A1 (fr) * 2002-09-20 2004-03-26 St Microelectronics Sa Masquage de donnees decomposees dans un systeme de residus
US20040098435A1 (en) * 2002-11-20 2004-05-20 Moore Stephen F. Modular reduction of multi-precision numbers
FR2848753B1 (fr) * 2002-12-11 2005-02-18 Gemplus Card Int Procede de division entiere ou de reduction modulaire securise contre les attaques a canaux caches
US7177423B2 (en) * 2003-06-09 2007-02-13 Certicom Corp. Method and apparatus for exponentiation in an RSA cryptosystem
FR2884088B1 (fr) * 2005-03-31 2007-06-22 Gemplus Sa Procede et dispositif cryptographique permettant de proteger les logiques de cles publiques contre les attaques par faute
FR2888690A1 (fr) * 2005-07-13 2007-01-19 Gemplus Sa Procede cryptographique pour la mise en oeuvre securisee d'une exponentiation et composant associe
US20080104402A1 (en) * 2006-09-28 2008-05-01 Shay Gueron Countermeasure against fault-based attack on RSA signature verification
US8280041B2 (en) 2007-03-12 2012-10-02 Inside Secure Chinese remainder theorem-based computation method for cryptosystems

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103221917A (zh) * 2010-09-29 2013-07-24 纳格拉影像股份有限公司 加密运算中模幂的保护
CN106416121A (zh) * 2014-06-10 2017-02-15 高通股份有限公司 用于签名产生和加密/解密的共模rsa密钥对
CN106416121B (zh) * 2014-06-10 2019-12-20 高通股份有限公司 用于签名产生和加密/解密的共模rsa密钥对
CN104796250A (zh) * 2015-04-11 2015-07-22 成都信息工程学院 针对RSA密码算法M-ary实现的侧信道攻击方法
CN104796250B (zh) * 2015-04-11 2018-05-25 成都信息工程学院 针对RSA密码算法M-ary实现的侧信道攻击方法
CN109388955A (zh) * 2017-08-07 2019-02-26 英飞凌科技股份有限公司 用于实施加密运算的方法和设备及存储介质
CN109388955B (zh) * 2017-08-07 2023-11-07 英飞凌科技股份有限公司 用于实施加密运算的方法和设备及存储介质
CN108599951A (zh) * 2018-08-10 2018-09-28 北京奇虎科技有限公司 加密方法及装置
CN108599951B (zh) * 2018-08-10 2021-10-01 北京奇虎科技有限公司 加密方法、加密装置、计算设备及计算机存储介质
CN109474428A (zh) * 2018-11-28 2019-03-15 北京杰睿中恒科技有限公司 基于数字信号数据的动态加密方法和装置

Also Published As

Publication number Publication date
TWI448963B (zh) 2014-08-11
DE112008000668B4 (de) 2024-01-18
DE112008000668T5 (de) 2010-04-15
US8280041B2 (en) 2012-10-02
CN101632255B (zh) 2014-03-05
TW200844847A (en) 2008-11-16
US20080226064A1 (en) 2008-09-18
WO2008112273A1 (en) 2008-09-18

Similar Documents

Publication Publication Date Title
CN101632255B (zh) 密码方法
EP1467512B1 (en) Encryption process employing chaotic maps and digital signature process
Schindler A timing attack against RSA with the chinese remainder theorem
JP4632950B2 (ja) 個人鍵を用いた耐タンパ暗号処理
Joye et al. Efficient generation of prime numbers
EP1014617A2 (en) Method and apparatus for elliptic curve cryptography and recording medium therefor
Ambedkar et al. An efficient method to factorize the RSA public key encryption
CN101194457A (zh) 随机模数化多项式约简方法及其硬件
MXPA01009498A (es) Procedimiento de contramedida en un componente electronico que implementa un algoritmo de criptografia de clave publica de tipo curva eliptica.
US20010048742A1 (en) Countermeasure method in an electronic component using a public key cryptography algorithm on an elliptic curve
KR20100113130A (ko) 비대칭 암호화를 위한 대응조치 방법 및 디바이스
CN1883155B (zh) 随机化模数约简方法以及用于该方法的硬件
EP2334006A1 (en) Side-channel resistant modular exponentiation
JP2004304800A (ja) データ処理装置におけるサイドチャネル攻撃防止
EP0952697B1 (en) Elliptic curve encryption method and system
Joye et al. Fast generation of prime numbers on portable devices: An update
JP2011510579A (ja) 署名ダイアグラムを用いた非対称暗号方式のための対策方法およびデバイス
EP1305907B1 (en) Cryptography private key storage and recovery method and apparatus
CN101107807B (zh) 用于执行密码学计算的方法和装置
Reddy RM-RSA algorithm
CN1985458B (zh) 增强的自然蒙哥马利指数掩蔽和恢复的方法和装置
EP3226120B1 (en) Non-modular multiplier, method for non-modular multiplication and computational device
Schmid ECDSA-application and implementation failures
CN104125061A (zh) 使用rsa加密算法的电子部件中的防攻击方法
Grobler et al. Fast decryption methods for the RSA cryptosystem

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: ATMEL ROUSSEAU CO., LTD.

Free format text: FORMER OWNER: ATMEL CO., LTD.

Effective date: 20100617

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: CALIFORNIA, USA TO: ROUSSE, FRANCE

TA01 Transfer of patent application right

Effective date of registration: 20100617

Address after: French ruse

Applicant after: Atmel Rousset S. A. S.

Address before: American California

Applicant before: Atmel Corp.

ASS Succession or assignment of patent right

Owner name: INSIDE SECURE CORPORATION

Free format text: FORMER OWNER: ATMEL ROUSSET SAS

Effective date: 20130118

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20130118

Address after: Provence

Applicant after: Inside Secure

Address before: French ruse

Applicant before: Atmel Rousset S. A. S.

GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address

Address after: Fa Guomeileyi

Patentee after: Weimei Anshi Co., Ltd

Address before: Fa Guopuluowangsi

Patentee before: Inside Secure

CP03 Change of name, title or address
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20200306

Address after: California, USA

Patentee after: Rumbas

Address before: Fa Guomeileyi

Patentee before: Weimei Anshi Co., Ltd