CN102246456A - 用于对抗对基于循环群的加密的侧通道攻击的系统和方法 - Google Patents
用于对抗对基于循环群的加密的侧通道攻击的系统和方法 Download PDFInfo
- Publication number
- CN102246456A CN102246456A CN2009801501955A CN200980150195A CN102246456A CN 102246456 A CN102246456 A CN 102246456A CN 2009801501955 A CN2009801501955 A CN 2009801501955A CN 200980150195 A CN200980150195 A CN 200980150195A CN 102246456 A CN102246456 A CN 102246456A
- Authority
- CN
- China
- Prior art keywords
- integer
- key
- privacy key
- mould
- cyclic group
- 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
- 125000004122 cyclic group Chemical group 0.000 title claims abstract description 53
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000000873 masking effect Effects 0.000 claims description 29
- 238000004891 communication Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 5
- 230000010354 integration Effects 0.000 claims 1
- 239000000872 buffer Substances 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 3
- 230000008485 antagonism Effects 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000005670 electromagnetic radiation Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/002—Countermeasures against attacks on cryptographic mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3006—Public 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/302—Public 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/30—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy
- H04L9/3066—Public key, i.e. encryption algorithm being computationally infeasible to invert or user's encryption keys not requiring secrecy involving algebraic varieties, e.g. elliptic or hyper-elliptic curves
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/04—Masking or blinding
- H04L2209/046—Masking or blinding of operations, operands or results of the operations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
公开了一种使用具有阶数的循环群针对密码系统来执行数据加密的技术。所述技术包括:使用编码密钥将秘密密钥编码为已编码秘密密钥,其中秘密密钥与编码密钥和已编码秘密密钥的乘积相对于以循环群的阶数为模来说是同余;使用已编码秘密密钥和编码密钥连续地将消息加密为已加密消息;以及将已加密消息传输到目的地。
Description
本发明实施例总体上涉及密码系统,具体涉及一种用于基于循环群来加密数据的系统和方法。
密码系统执行诸如秘密密钥编码和消息加密之类的密码操作,以产生已加密的消息和隐藏秘密值。对密码系统的一个关注点在于,侧通道分析(SCA)可用于通过在于当密码系统执行密码操作时测量和分析密码系统的物理属性来获取关于秘密值的信息。例如,功率分析和电磁辐射分析可用于通过测量和分析功率损耗和密码系统的电磁辐射的放射来获取关于秘密值的信息。
公开了一种使用具有阶数的循环群针对密码系统而执行数据加密的技术,所述技术包括:使用编码密钥将秘密密钥编码为已编码秘密密钥,其中,以循环群的阶数为模,所述秘密密钥与编码密钥和已编码秘密密钥的乘积是同余的;使用已编码秘密密钥和编码密钥来连续地将消息加密为已加密消息;以及将已加密消息传输至目的地。
在实施例中,一种使用具有阶数的循环群针对密码系统而执行数据加密的方法包括:使用编码密钥将秘密密钥编码为已编码秘密密钥,其中,以循环群的阶数为模,所述秘密密钥与已编码秘密密钥和编码密钥的乘积是同余的;使用已编码秘密密钥和编码密钥来连续地将消息加密为已加密消息;以及将已加密消息传输到目的地。
在实施例中,另一种使用具有阶数的循环群针对密码系统而执行数据加密的方法包括:将秘密密钥编码为已编码秘密密钥,使用已编码秘密密钥和编码密钥连续地将消息加密为已加密消息,以及将已加密消息传输至目的地,其中,对秘密密钥编码包括:获取第一整数,其中第一整数与循环群的阶数互质;获取第二整数,其中,以循环群的阶数为模,1与第二整数和第一整数的乘积是同余的;获取已编码秘密密钥,其中,以循环群的阶数为模,所述已编码秘密密钥与第二整数和秘密密钥的乘积是同余的;以及获取编码密钥,其中,以循环群的阶数为模,编码密钥与第一整数是同余的。
在实施例中,一种用于使用具有阶数的循环群来执行数据加密的系统包括:秘密密钥产生器、秘密密钥编码器、消息产生器、消息加密器和通信设备。所述秘密密钥产生器配置来产生秘密密钥。所述秘密密钥编码器配置来使用编码密钥将秘密密钥编码为已编码秘密密钥,其中,以循环群的阶数为模,所述秘密密钥与已编码秘密密钥和编码密钥的乘积是同余的。消息产生器配置来产生消息。消息加密器配置来连续地使用已编码秘密密钥和编码密钥将来自于消息产生器的消息加密为已加密消息。所述通信设备配置来将已加密消息传输至目的地。
以本发明原理的示例的方式,通过以下结合附图的详细描述,本发明实施例的其他方面和优点将变得显而易见。
图1示出了经由通信网络在密码系统和目的地之间的通信。
图2a-2c描述了用于对密钥进行编码的系统的三个实施例。
图3a-3b描述了用于使用已编码秘密密钥和编码密钥来加密消息的系统的两个实施例。
图4示出了使用已编码秘密密钥和一个或者多个编码密钥来反复加密消息的系统的一个实施例,所述已编码秘密密钥和一个或者多个编码密钥由如图2a-2c所描述的用于对秘密密钥进行编码的系统产生。
图5是用于将秘密密钥编码为已编码秘密密钥并使用已编码秘密密钥来加密消息的系统的一个实施例的示意框图。
图6是使用具有阶数的循环群针对密码系统而执行数据加密的方法的流程图。
贯穿全文,类似的参考编码可用于标识类似的元件。
图1示出了经由通信网络104在密码系统100和目的地102之间的通信。密码系统使用本文公开的系统将消息加密为已加密消息,并且通过通信网络将已加密消息传输到目的地。目的地接收已加密消息,并且通过通信网络向密码系统发送响应。
在一些实施例中,所述密码系统100将秘密密钥编码为已编码秘密密钥和编码密钥;利用本文公开的系统,使用已编码秘密密钥和编码密钥来对消息执行加密,以产生已加密消息(未示出);以及通过通信网络104将已加密消息传输至目的地102。术语加密可以涉及包括私钥的任何密码操作,比如,对消息进行数字签名,对已加密消息进行解密,在Diffie-Hellman协议中根据秘密密钥来计算公钥,以及在计算Diffie-Hellman协议中根据公钥来计算共享的秘密。术语加密还可以涉及包括公钥的任何密码操作,例如,验证消息的数字签名和对消息进行加密。
以下参考图2a-2c、图3a-3b和图4描述了用于对消息进行加密的多种系统。具体地,图2a-2c描述了用于对秘密密钥进行编码的系统的三个实施例。图3a-3b描述了用于使用已编码秘密密钥和编码密钥来对消息进行加密的系统的两个实施例。图4示出了用于使用已编码秘密密钥和一个或者多个编码密钥来反复地对消息进行加密的系统的实施例,所述已编码秘密密钥和一个或者多个编码密钥由图2a-2c所描述的用于对秘密密钥进行编码的系统产生。
图2a描述了可以在图1的密码系统100中实现的用于对秘密密钥sk进行编码的系统200的实施例。该系统包括随机选择器模块202,数值存储模块204、模逆单元206、随机数产生器模块208、五个加性掩码单元210、212、214、216和217以及模乘单元218。在参考图2a描述的实施例中,随机选择器模块从存储在数值存储模块中的整数集合中随机选取第一整数n1,所述第一整数n1不为零,并且与循环群的阶数互质。
在一些实施例中,整数集合可以被选择为使得使消息加密可以由较少数目的操作来实现。在一些实施例中,第一整数n1的长度可以被选择为使得得到在安全和性能之间最佳的权衡。例如,第一整数n1可以包括多于或者等于32位和少于或者等于64位。
在参考图2a描述的实施例中,加性掩码单元217从随机选择器模块202接收第一整数n1,并对第一整数n1执行掩码操作来产生已掩码第一整数n1’。例如,加性掩码单元可以接收循环群的阶数和来自于随机数产生器模块的大于零的整数,并计算第一整数n1与所述整数和循环群的阶数的乘积之和,作为已掩码第一整数n1’。在一些实施例中,可以不存在对第一整数执行掩码操作的加性掩码单元,其中第一整数n1直接被输入到模逆单元206中。
模逆单元206接收来自于加性掩码单元217的已掩码第一整数n1’、循环群的阶数和第三整数n3,其中,所述第三整数n3由随机数产生器模块208产生,不为零,并且与已掩码第一整数n1’互质。模逆单元产生第二整数n2,所述第二整数n2小于第三整数n3与循环群的阶数的乘积,使得以第三整数n3和循环群的阶数的乘积为模,1与第二整数n2和已掩码第一整数n1’的乘积是同余的,该操作可以表示为:
n2=(n1’)-1 mod(n3×φ) (1)
相对于以第三整数n3与循环群的阶数的乘积为模来说,第二整数n2为已掩码第一整数n1’的模逆,其中,第一整数I1以整数N为模的模逆是第二整数I2,使得1与第一整数I1和第二整数I2的乘积关于模N同余,并且I2小于N且大于零。例如,模逆可以表示为
在一些实施例中,第三整数n3设为1。
加性掩码单元210从随机选择模块202中接收第一整数I1,并对第一整数I1执行掩码操作以产生编码密钥。例如,加性掩码单元可以接收循环群的阶数和来自于随机数产生器模块的大于零的整数,并计算第一整数与所述整数和循环群的阶数的乘积之和以作为编码密钥。在一些实施例中,可以不存在对第一整数执行掩码操作的加性掩码单元,其中编码密钥为第一整数n1。
加性掩码单元212接收第二整数n2,并对n2执行掩码来产生已掩码第二整数n2’。如图2a所示,加性掩码单元接收由随机数产生器模块208产生的第四整数n4,并生成已掩码第二整数n2’,已掩码第二整数n2’等于第二整数n2与第四整数n4和循环群的阶数的乘积之和。该操作可以表示为:
n2’=n2+n4×φ (3)
在一些实施例中,可以不存在对第二整数n2执行掩码操作的加性掩码单元,其中第二整数n2被直接输入到模乘单元218中。
加性掩码单元214接收秘密密钥sk,并对秘密密钥sk执行掩码操作来产生已掩码秘密密钥sk’。如图2a所示,加性掩码单元接收由随机数产生器模块208产生的第七整数n7,并生成已掩码秘密密钥sk’,已掩码秘密密钥sk’等于秘密密钥sk与第七整数n7和循环群的阶数的乘积之和。该操作可以表示为:
sk’=sk+n7×φ (4)
在一些实施例中,可以不存在对秘密密钥sk执行掩码的加性掩码单元,其中秘密密钥sk被直接输入到模乘单元218中。
模乘单元218接收已掩码第二整数n2’、已掩码秘密密钥sk’、由随机数产生器模块产生的大于零的第六整数n6以及循环群的阶数模乘单元产生已编码秘密密钥esk,所述已编码秘密密钥esk等于以第六整数和循环群的阶数的乘积为模对已掩码第二整数n2’和掩码秘密密钥sk’的乘积取模。该操作可以表示为:
esk=(n2’×sk’)mod(n6×φ) (5)
在一些实施例中,第六整数n6设为1。
加性掩码单元216对已编码秘密密钥esk执行掩码操作。如图2a所示,加性掩码单元产生掩码后的已编码秘密密钥esk’,所述掩码后的已编码秘密密钥esk’等于由随机数产生器模块208产生的第五整数n5和循环群的阶数的乘积与来自于模乘单元218的已编码秘密密钥esk之和,该操作可以表示为:
esk’=esk+(n5×φ) (6)
在一些实施例中,可以不存在对已编码秘密密钥esk执行掩码操作的加性掩码单元,其中已编码秘密密钥esk被直接输入到如图3所示用于使用已编码秘密密钥和编码密钥对消息进行加密的系统中。
图3a描述了用于使用已编码秘密密钥和编码密钥对消息进行加密的系统300的实施例,可以在图1的密码系统100中实现该系统300。系统包括消息产生器302和两个加密单元304和306。在参考图3a所描述的实施例中,消息产生器产生消息。可以采用软件、硬件或者软硬件结合的方式来实现消息产生器。加密单元304接收来自于消息产生器的消息和来自于图2a的加性掩码单元的编码密钥,并使用编码密钥对消息进行加密。加密单元306接收来自于图2a的加性掩码单元216的掩码后的已编码秘密密钥esk’和来自加密单元304的加密结果,并使用掩码已编码秘密密钥esk’对来自于加密单元304的加密结果进行加密,以生成已加密消息。
图2a描述的系统200和图3a描述的系统300通过使用随机编码密钥将秘密密钥编码为已编码秘密密钥来执行编码操作,以及通过利用已编码秘密密钥和随机编码密钥对消息进行加密来执行加密操作,这相当于通过使用秘密密钥对消息进行加密来执行加密操作。因此,图2a描述的系统和图3a描述的系统以较低的开销提高了密码系统100在对抗侧通道分析方面的安全性。图2a描述的系统和图3a描述的系统可以与随机选择加密操作的其他系统相结合。
图2b描述了用于对秘密密钥sk进行编码的系统230的另一实施例,可以在图1的密码系统100中实现系统230。所述系统包括模逆单元206、随机数产生器模块208、五个加性掩码单元210、212、214、216和217以及模乘单元218。图2b所描述的系统230与图2a所描述的系统200之间的不同在于:在图2b所描述系统中,第一整数n1由随机数产生器模块随机产生,而在图2a所描述系统中,第一整数n1由随机选择器模块202从存储在数值存储模块204中的整数集合中随机选取。在图2a描述的系统中,随机选取第一整数n1涉及随机选择器模块和编码存储模块。在图2b描述的系统中,随机产生第一整数n1仅涉及随机数产生器模块,随机数产生器模块还用于为系统产生其他参数。在参考图2b而描述的系统中,用于对秘密密钥进行编码的其他操作与参考图2a而描述的系统中用于对秘密密钥进行编码的相应操作相同。在一些实施例中,第一整数n1的长度可以被选择为使得得到在安全和性能之间的最优权衡。例如,第一整数n1可以包括多于或者等于32位和少于或者等于64位。
图3b描述了用于使用已编码秘密密钥和编码密钥对消息进行加密的系统330的另一实施例,可以在图1的密码系统中实现系统330。系统330包括消息产生器302和两个加密单元304和306。在参考图3b描述的实施例中,消息产生器产生消息。加密单元304接收来自于消息产生器的消息和来自于图2b的加性掩码单元的掩码后的已编码秘密密钥esk’,并使用掩码后的已编码秘密密钥esk’对消息进行加密。加密单元306接收来自于加密单元304的加密结果和来自于图2b的加性掩码单元210的编码密钥,并使用编码密钥对来自于加密单元304的加密结果进行加密。
图2c描述了用于对秘密密钥sk进行编码的系统260的另一实施例,可以在图1的密码系统100中实现系统260。系统包括秘密数值存储模块240、随机数产生器模块208、四个加性掩码单元210、212、214和216以及模乘单元218。参考图2c所描述的系统260与参考图2a所描述的系统200的不同在于:在参考图2c所描述系统中,第一整数n1和第二整数n2是从秘密数值存储模块获取的,而在参考图2a所描述系统中,第一整数n1是随机选择器模块从存储在秘密数值存储模块中的整数集合中随机选取的,第二整数n2是基于第一整数n1计算得到的。在参考图2c描述的系统中,先计算由第二整数n2和第一整数n1组成的对。与参考图2a描述的系统相比,参考图2c描述的系统具有更低的计算开销。图2c描述的系统中用于对秘密密钥进行编码的其他操作与参考图2a描述的系统中用于对秘密密钥进行编码的相应操作相同。在一些实施例中,第一整数n1的长度可以被选择为使得得到在安全和性能之间的最优权衡。例如,第一整数n1可以包括多于或者等于32位和少于或者等于64位。
图4描述了用于使用已编码秘密密钥和一个或者多个编码密钥来反复地对消息进行加密的系统400的一个实施例,其中所述已编码秘密密钥和一个或者多个编码密钥使用图2a-2c描述的用于对秘密密钥进行编码的系统产生的。图4所示系统可以用于提高密码系统的秘密密钥的安全性。与图3a描述的系统300和图3b描述的系统330相比,图4示出的系统提高了在对抗侧通道分析方面对密码系统的保护。所述系统包括消息产生器302、四个加密单元404、406、408和410以及图2a-2c描述的用于对秘密密钥进行编码的三个系统。
在参考图4描述的实施例中,消息产生器302产生消息。加密单元404接收来自于消息产生器的消息和利用图2a-2c描述的系统而产生的第一编码密钥,并使用第一编码密钥对消息进行加密。加密单元406接收来自于加密单元404的加密结果和利用图2a-2c描述的系统而产生的第二编码密钥,并使用第二编码密钥对来自于加密单元404的加密结果进行加密。加密单元408接收来自于加密单元406的加密结果和利用图2a-2c描述的系统而产生的第三编码密钥,并使用第三编码密钥对来自于加密单元406的加密结果进行加密。加密单元410接收来自于加密单元408的加密结果和利用图2a-2c描述的系统而产生的已编码秘密密钥,并使用已编码秘密密钥对来自于加密单元408的加密结果进行加密。在一些实施例中,在使用已编码秘密密钥的消息加密之后,执行使用编码密钥的消息加密。虽然图4中的消息加密执行了四次,但是加密可以执行少于四次或者多于四次。在一些实施例中,可调整对消息加密的次数,以获得预定的性能因数。
图5为用于将秘密密钥编码为已编码秘密密钥和使用已编码秘密密钥对消息进行加密的系统500的实施例的示意框图,可以在图1的密码系统100中实现系统500。系统包括:通信设备502,用于与目的地(未示出)通信;通信缓冲器504;消息解密器506,用于对来自于目的地的消息进行解密;消息产生器302,用于产生消息;消息加密器508,用于对消息进行加密;秘密密钥产生器510,用于产生秘密密钥;以及秘密密钥编码器512,用于对秘密密钥进行编码。虽然图5描述的系统包括若干个本文描述的功能模块,但是其他实施例可以包括更少或者更多功能模块以实现更多或更少的功能。
在一些实施例中,系统500利用循环群来表示已加密消息。在一些实施例中,所述系统被集成到Rivest,Shamir and Adleman(RSA)密码系统中。在一些实施例中,所述系统被集成到椭圆曲线密码学(ECC)密码系统中。在一些实施例中,所述系统被集成到超椭圆曲线密码学(HECC)密码系统中。
通信设备502包括用于将已加密消息发送到目的地的至少一个发射器(未示出),以及用于接收来自于目的地的消息的至少一个接收器(未示出),通信设备可以实现有线或者无线技术。通信缓冲器504可以分成两个缓冲器,例如,发送缓冲器(未示出)和接收缓冲器(未示出)。通信缓冲器可以以诸如RAM等硬件或者软件或者软硬结合的方式实现。
消息产生器302产生消息,消息加密器508将由消息产生器产生的消息加密为已加密消息。消息加密器可以使用编码密钥和来自秘密密钥编码器512的已编码秘密密钥,来连续地将由消息产生器产生的消息加密为已加密消息,其中,已编码秘密密钥是秘密密钥和编码密钥来产生的。在一些实施例中,例如,当系统500被集成到RSA密码系统中时,消息加密器可以利用已编码秘密密钥和编码密钥,连续地对消息产生器产生的消息执行取幂操作。在一些实施例中,当系统被集成到ECC密码系统或者HECC密码系统中时,消息加密器可以利用已编码秘密密钥和编码密钥来连续地倍乘由消息产生器产生的消息。
秘密密钥产生器510产生秘密密钥,秘密密钥编码器512对秘密密钥进行编码。在参考图5所描述的实施例中,秘密密钥编码器包括:数值存储模块402,用于存储编码密钥的数值;随机选择器模块202,用于从数值存储模块选择编码密钥;秘密数值存储模块240,用于存储多个秘密的密钥集合;随机数产生器模块208,用于随机产生编码密钥的;以及处理模块514,用于处理秘密密钥和编码密钥并产生已编码秘密密钥。在一些实施例中,秘密密钥编码器可以不包括数值存储模块和随机选择器模块。在一些实施例中,秘密密钥编码器可以不包括秘密数值存储模块。
处理模块514包括:模逆单元206,用于执行模逆操作;模乘单元218,用于执行模乘操作;以及五个加性掩码单元210、212、214、216和217,用于执行掩码操作。在一些实施例中,处理模块可以不包括模逆单元。在一些实施例中,处理单元可以不包括加性掩码单元。虽然图5中处理单元包括五个加性掩码单元,但是处理模块可以包括少于五个的加性掩码单元或者多于五个的加性掩码单元。
图6为使用具有阶数的循环群针对密码系统来执行数据加密的方法的流程图。在块602,将秘密密钥编码为已编码秘密密钥,其中,获取第一整数,其中第一整数和循环群的阶数互质;获取第二整数,其中1与第二整数和第一整数的乘积相对于以循环群的阶数为模来说同余;获取已编码秘密密钥,其中已编码秘密密钥与第二整数和秘密密钥的乘积相对于以循环群的阶数为模来说同余;以及获取编码密钥,其中,编码密钥与第一整数相对于以循环群的阶数为模来说同余。在块604,使用已编码秘密密钥和编码密钥连续地将消息加密为已加密消息。在块606,已加密消息被传输到目的地。
尽管按照特定的顺序示出和描述了方法的操作,然而可以改变方法的操作顺序,使得可以按照相反的顺序来执行特定的操作,或者使得可以至少部分地与其他操作同时执行所述特定的操作。在另一实施例中,可以按照间歇的和/或交替的方式来实现不同操作的指令或子操作。
基于循环群来加密数据的系统和方法的实施例可以应用于RSA密码系统、ECC密码系统和HECC密码系统。基于循环群来加密数据的系统和方法的实施例还可以应用于对加密数据使用循环群的任何加密系统。
虽然已经描述和示出了本发明的特定实施例,但是本发明并不局限于这样描述和示出的部分的特定形式或者布局。本发明的范围由本文所附的权利要求及其等同物来限定。
Claims (20)
1.一种使用具有阶数的循环群针对密码系统来执行数据加密的方法,所述方法包括:
使用编码密钥将秘密密钥编码为已编码秘密密钥,其中以循环群的阶数为模,秘密密钥与已编码秘密密钥和编码密钥的乘积是同余的;
使用已编码秘密密钥和编码密钥连续地将消息加密为已加密消息;
将已加密消息传输到目的地。
2.根据权利要求1所述的方法,其中编码密钥和循环群的阶数互质。
3.根据权利要求1所述的方法,其中编码密钥是从编码密钥集合中随机选取的。
4.根据权利要求1所述的方法,其中编码密钥是随机产生的。
5.根据权利要求1所述的方法,其中编码密钥是从预先计算和存储的秘密的整数集合中选取的。
6.根据权利要求1所述的方法,其中使用编码密钥将秘密密钥编码为已编码秘密密钥的步骤被执行多次,连续地对消息加密的步骤被执行相应的多次。
7.一种使用具有阶数的循环群针对密码系统来执行数据加密的方法,所述方法包括:
将秘密密钥编码为已编码秘密密钥,其中对秘密密钥编码包括:
获取第一整数,其中第一整数和循环群的阶数互质;
获取第二整数,其中以循环群的阶数为模,1与第二整数和第一整数的乘积是同余的;
获取已编码秘密密钥,其中以循环群的阶数为模,已编码秘密密钥与第二整数和秘密密钥的乘积是同余的;以及
获取编码密钥,其中以循环群的阶数为模,编码密钥和第一整数是同余的;
使用已编码秘密密钥和编码密钥连续地将消息加密为已加密消息;以及
将所述已加密消息传输到目的地。
8.根据权利要求7所述的方法,其中第二整数是如下获取的:以第三整数与循环群的阶数的乘积为模的第一整数的函数的模逆,其中第一整数的函数和第三整数互质。
9.根据权利要求8所述的方法,其中第一整数的函数为第一整数与第四整数和循环群的阶数的乘积之和。
10.根据权利要求7所述的方法,其中已编码秘密密钥是如下获取的:以第六整数和循环群的阶数的乘积为模,对第二整数的函数和秘密密钥的乘积与第五整数和群的阶数的乘积之和取模,其中第五整数小于第六整数。
11.根据权利要求7所述的方法,其中获取第一整数包括:从整数集合中随机选择第一整数。
12.根据权利要求7所述的方法,其中获取第一整数包括:随机产生第一整数。
13.根据权利要求7所述的方法,其中获取第一整数和获取第二整数包括:从秘密的整数集合中选择第一整数和第二整数,其中所述秘密的整数集合是预先计算和存储的。
14.根据权利要求7所述的方法,其中对秘密密钥编码的步骤被执行多次,连续地对消息加密的步骤被执行相应的多次。
15.一种使用具有阶数的循环群来执行数据加密的系统,所述系统包括:
秘密密钥产生器,配置来产生秘密密钥;
秘密密钥编码器,配置来使用编码密钥将秘密密钥编码为已编码秘密密钥,其中以循环群的阶数为模,秘密密钥与已编码秘密密钥和编码密钥的乘积是同余的;
消息产生器,配置来产生消息;
消息加密器,配置来使用已编码秘密密钥和编码密钥连续地将来自于消息产生器的消息加密为已加密消息;以及
通信设备,配置来将已加密消息传输到目的地。
16.根据权利要求15所述的系统,其中所述秘密密钥编码器包括随机数产生器模块和处理模块,其中处理模块包括配置来执行模逆操作的模逆单元和配置来执行模乘操作的模乘单元。
17.根据权利要求16所述的系统,其中所述处理模块包括配置来执行掩码操作的至少一个加性掩码单元。
18.根据权利要求15所述的系统,其中所述秘密密钥编码器包括:秘密数值存储模块,配置来存储多个秘密的整数集合;以及处理模块,其中处理模块包括配置来执行模逆操作的模逆单元和配置来执行模乘操作的模乘单元。
19.根据权利要求15所述的系统,其中秘密密钥编码器包括:数值存储模块,配置来存储多个编码密钥;随机选择器模块,配置来从数值存储模块中选择编码密钥;以及处理器模块,其中处理模块包括配置来执行模逆操作的模逆单元和配置来执行模乘操作的模乘单元。
20.根据权利要求15所述的系统,其中所述系统集成于Rivest,Shamir和Adleman密码系统、或者椭圆曲线密码学密码系统、或者超椭圆曲线密码学密码系统中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/334,847 | 2008-12-15 | ||
US12/334,847 US20100150343A1 (en) | 2008-12-15 | 2008-12-15 | System and method for encrypting data based on cyclic groups |
PCT/IB2009/055746 WO2010070579A1 (en) | 2008-12-15 | 2009-12-15 | System and method for countering side-channel attacks against encryption based on cyclic groups |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102246456A true CN102246456A (zh) | 2011-11-16 |
Family
ID=42111776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009801501955A Pending CN102246456A (zh) | 2008-12-15 | 2009-12-15 | 用于对抗对基于循环群的加密的侧通道攻击的系统和方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20100150343A1 (zh) |
EP (1) | EP2377265A1 (zh) |
CN (1) | CN102246456A (zh) |
WO (1) | WO2010070579A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2941343B1 (fr) * | 2009-01-20 | 2011-04-08 | Groupe Des Ecoles De Telecommunications Get Ecole Nat Superieure Des Telecommunications Enst | Circuit de cryptographie, protege notamment contre les attaques par observation de fuites d'information par leur chiffrement. |
US20140082358A1 (en) * | 2012-09-17 | 2014-03-20 | General Instrument Corporation | Efficient key generator for distribution of sensitive material from mulitple application service providers to a secure element such as a universal integrated circuit card (uicc) |
US9774591B2 (en) * | 2014-10-15 | 2017-09-26 | Airbnb, Inc. | Password manipulation for secure account creation and verification through third-party servers |
DE102014222825A1 (de) * | 2014-11-07 | 2016-05-12 | Ihp Gmbh - Innovations For High Performance Microelectronics / Leibniz-Institut Für Innovative Mikroelektronik | Vorrichtung und Verfahren zur Multiplikation zur Erschwerung von Seitenkanalangriffen |
US10171234B2 (en) * | 2015-12-16 | 2019-01-01 | Nxp B.V. | Wide encoding of intermediate values within a white-box implementation |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2818846A1 (fr) * | 2000-12-22 | 2002-06-28 | Gemplus Card Int | Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie |
CN1415147A (zh) * | 1999-12-28 | 2003-04-30 | 德国捷德有限公司 | 具有通过密钥再分进行存取保护的便携式数据存储介质 |
US20060098819A1 (en) * | 2004-11-10 | 2006-05-11 | Nec (China) Co., Ltd. | Methods, devices and systems for generating anonymous public keys in a secure communication system |
US20080059787A1 (en) * | 2006-02-03 | 2008-03-06 | Hohenberger Susan R | Unidirectional proxy re-encryption |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110014630A (ko) * | 2008-05-07 | 2011-02-11 | 이르데토 비.브이. | 지수 불명료화 |
-
2008
- 2008-12-15 US US12/334,847 patent/US20100150343A1/en not_active Abandoned
-
2009
- 2009-12-15 EP EP09798963A patent/EP2377265A1/en not_active Withdrawn
- 2009-12-15 WO PCT/IB2009/055746 patent/WO2010070579A1/en active Application Filing
- 2009-12-15 CN CN2009801501955A patent/CN102246456A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1415147A (zh) * | 1999-12-28 | 2003-04-30 | 德国捷德有限公司 | 具有通过密钥再分进行存取保护的便携式数据存储介质 |
FR2818846A1 (fr) * | 2000-12-22 | 2002-06-28 | Gemplus Card Int | Procede de contre-mesure dans un composant electronique mettant en oeuvre un algorithme de cryptographie |
US20060098819A1 (en) * | 2004-11-10 | 2006-05-11 | Nec (China) Co., Ltd. | Methods, devices and systems for generating anonymous public keys in a secure communication system |
US20080059787A1 (en) * | 2006-02-03 | 2008-03-06 | Hohenberger Susan R | Unidirectional proxy re-encryption |
Non-Patent Citations (1)
Title |
---|
ELENA TRICHINA等: "《Cryptographic Hardware and Embedded Systems - CHES 2002》", 15 August 2002, SPRINGER BERLIN HEIDELBERG * |
Also Published As
Publication number | Publication date |
---|---|
WO2010070579A1 (en) | 2010-06-24 |
US20100150343A1 (en) | 2010-06-17 |
EP2377265A1 (en) | 2011-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Saarinen | HILA5: On reliability, reconciliation, and error correction for Ring-LWE encryption | |
CN101040474B (zh) | 为提高安全性的置换数据变换 | |
CN102396011B (zh) | 加密装置、解密装置、加密方法、解密方法、安全方法、程序以及记录介质 | |
Iyer et al. | A novel idea on multimedia encryption using hybrid crypto approach | |
CN102868518A (zh) | 为提高安全性的置换数据变换 | |
Agrawal et al. | Elliptic curve cryptography with hill cipher generation for secure text cryptosystem | |
CN103490883A (zh) | 一种多变量公钥加密/解密系统及加密/解密方法 | |
CN110784314A (zh) | 无证书的加密信息处理方法 | |
CN102246456A (zh) | 用于对抗对基于循环群的加密的侧通道攻击的系统和方法 | |
Saarinen | The BlueJay ultra-lightweight hybrid cryptosystem | |
RU2411666C1 (ru) | Способ шифрования | |
Ganapathy et al. | Add-on security model for public-key cryptosystem based on magic square implementation | |
Pal et al. | Design of strong cryptographic schemes based on Latin squares | |
JP7023584B2 (ja) | 公開鍵暗号システム、公開鍵暗号方法、公開鍵暗号プログラム | |
EP2571192A1 (en) | Hybrid encryption schemes | |
Prasanthi et al. | Hybrid approach for securing the IoT devices | |
Mahmoud | Development of Matrix Cipher Modifications and Key Exchange Protocol | |
Huang et al. | Fast scalar multiplication for elliptic curve cryptography in sensor networks with hidden generator point | |
CN104837131B (zh) | 一种基于批处理指数运算乘积的批Cramer-Shoup密码方法 | |
JP2004246350A (ja) | 暗号化装置および復号化装置、並びにこれらを備えた暗号システム、暗号化方法および復号化方法 | |
Ghehioueche et al. | Performance Evaluation and Analysis of Encryption Schemes for Wireless Sensor Networks | |
Kumar et al. | A comparative analysis of encryption algorithms for better utilization | |
CN1258051A (zh) | 一种公开密钥加密体制和装置 | |
Mohapatra | Signcryption schemes with forward secrecy based on elliptic curve cryptography | |
Moldovyan et al. | Randomized pseudo-probabilistic encryption algorithms |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20111116 |