解密装置、方法及电路制造方法及图纸

技术编号:15198390 阅读:470 留言:0更新日期:2017-04-21 14:50
一种解密方法包括:接收加密资料,其中加密资料是经RSA公钥加密;以及根据RSA私钥与加密资料进行至少一乘法运算以及至少一平方运算,以获得解密资料;其中在进行所述至少一乘法运算的一者的同时,根据加密资料进行一伪平方运算,或在进行所述至少一平方运算的一者的同时,根据加密资料进行一伪乘法运算。

Deciphering device, method and circuit

Including a decryption method: receive encrypted data, which is the data encryption RSA encryption; and at least one multiplication and at least one square operation according to the RSA data to obtain the private key and encryption, decryption data; in one of the at least one multiplication operation at the same time, a pseudo square operation according to the encryption the data, or in one of the at least one square operation at the same time, a pseudo multiplication based on data encryption.

【技术实现步骤摘要】

本案涉及一种装置、方法及电路。具体而言,本案涉及一种解密装置、方法及电路。
技术介绍
RSA加密算法是一种非对称加密算法。加密装置可利用RSA公钥对讯息进行加密,且解密装置在接收到加密后的讯息后,可利用RSA私钥对此加密后的讯息进行解密。然而,在解密装置进行解密时,攻击者可藉由量测解密装置的相关讯号(如电压或功率)来判断解密装置所进行的运算,进而得知解密装置所使用的RSA私钥。因此,一种可防御量测攻击的解密方法当被提出。
技术实现思路
为解决上述问题,本案的一实施例涉及一种解密方法,包括:接收加密资料,其中加密资料是经RSA公钥加密;以及根据RSA私钥与加密资料进行至少乘法运算以及至少一平方运算,以获得解密资料;其中,在进行至少一乘法运算的一者的同时,根据加密资料进行至少一第一伪平方运算,或在进行至少一平方运算的一者的同时,根据加密资料进行第一伪乘法运算。本案的另一实施例涉及一种解密装置,包括通讯模块以及解密元件。解密元件用以:透过通讯模块接收加密资料,其中加密资料是经RSA公钥加密;以及根据RSA私钥与加密资料进行至少一乘法运算以及至少一平方运算,以获得解密资料。在进行至少一乘法运算的一者时,根据加密资料进行第一伪平方运算,或在进行至少一平方运算的一者时,根据加密资料进行第一伪乘法运算。本案的另一实施例涉及一种解密电路,包括平方器、乘法器、多工器及暂存器。平方器用以接收输入数值,并对输入数值进行平方运算,以产生平方器输出。乘法器用以接收输入数值以及加密资料,并对输入数值以及加密资料进行乘法运算,以产生乘法器输出。多工器用以接收平方器输出以及乘法器输出,并用以根据RSA私钥输出平方器输出及乘法器输出中的一者,作为多工器输出。暂存器用以暂存多工器输出,并提供多工器输出至平方器与乘法器,作为新的输入数值。平方运算与乘法运算是同时进行。透过应用上述一实施例,解密装置即可在进行解密运算时防御量测攻击。附图说明图1为根据本案一实施例所绘示的解密系统的示意图;图2为根据本案一实施例所绘示的解密方法的流程图;图3为根据本案一实施例所绘示的解密方法的示意图;图4为根据本案另一实施例所绘示的解密方法的示意图;图5为根据本案另一实施例所绘示的解密方法的示意图;图6为根据本案一实施例所绘示的解密电路的示意图;以及图7为根据本案一实施例所绘示的解密电路的示意图。符号说明10:解密系统20:加密装置100:解密装置110:解密元件112:解密电路114:解密电路120:通讯模块200:解密方法S1-S2:步骤2、4、6、8、22、24、26:序列SQ、MT、SQ’、MT’、SQ\、MT\:运算a1、a2:特征值MUX:多工器MTC:乘法器SQC:平方器REG:暂存器CTL:控制器N:加密资料CS:控制讯号T1-T8、P1-P5、Q1-Q4:期间具体实施方式图1为根据本案一实施例所绘示的解密系统10的示意图。解密系统10包括解密装置100与加密装置20。加密装置20用以利用RSA公钥对讯息加密,以产生加密资料N,解密装置100用以接收加密资料N,并对其进行解密。解密装置100包括相互电性连接的解密元件110及通讯模块120。通讯模块120用以接收来自加密装置20的加密资料N,并将加密资料N传送至解密元件110。解密元件110用以对加密资料N进行解密。解密元件110可用处理器或其它适当计算元件执行特定指令或程序所实现,或可用电路实现。在一实施例中,通讯模块120可用有线或无线的通讯元件实现。一并参照图2,图2中的解密方法200可应用于相同或相似于图1中所示的解密装置100。以下将以图1中的解密装置100为例进行对解密方法200叙述。步骤S1:解密元件110透过通讯模块120接收来自加密装置20的加密资料N,加密资料N是经RSA公钥加密。步骤S2:解密元件110对加密资料N进行解密操作。解密元件110是根据对应于前述RSA公钥的RSA私钥与加密资料N,进行至少一乘法运算以及至少一平方运算,以对加密资料N进行解密,并获得解密资料。举例而言,参照表一,在前述RSA私钥的数值为123时,其二进位形式为2’b1111011。因此,在进行解密时,是依序进行对应于每一位元的乘法运算及/或平方运算。以图3的运算序列2为例,在期间T1,解密元件110进行平方运算SQ。在期间T2、T3,由于RSA私钥的二进位形式左数第二位元为1,解密元件110依序进行乘法运算MT与平方运算SQ。在期间T8,由于RSA私钥的二进位形式左数第五位元为0,解密元件110进行平方运算MT。二进位形式1111011乘法运算-ˇˇˇ-ˇˇ平方运算ˇˇˇˇˇˇ-表一在解密操作中,前述乘法运算所进行的次数是相应于RSA私钥的二进位形式中数值为1的数量。例如,在表一中,除了左数第一位元外,数值为1的位元的数量为5,故进行5次乘法运算。此外,前述平方运算所进行的次数相应于前述RSA私钥的二进位位元长度(bitlength)。例如,前述RSA私钥的二进位位元长度为7位元,解密元件110需执行7-1=6次平方运算。值得注意的是,在进行乘法运算的同时,解密元件110更根据加密资料N进行第一伪平方运算;在进行平方运算的同时,解密元件110更根据加密资料N进行第一伪乘法运算。其中,第一伪平方运算或第一伪乘法运算的运算结果不用来产生解密资料。由于在进行乘法运算或平方运算时,同时进行相应的第一伪平方运算或第一伪乘法运算,攻击者即无法藉由量测解密装置100的相关讯号(如功率、电流、电压、温度、频率等),得知解密装置100于解密时所进行的操作及其对应的RSA私钥。在一实施例中,第一伪乘法运算所进行的次数可相同于或小于进行前述平方运算的次数。相似地,前述第一伪平方运算所进行的次数可相同于或小于进行前述乘法运算的次数。以下将搭配图3提供一操作例,在本操作例中,RSA私钥的数值为123,其二进位形式为2’b1111011。在解密元件110进行平方运算SQ时,解密装置100的相关讯号的对应波形具有特征值(如振幅)a1,且在解密元件110进行乘法运算MT时,解密装置100的相关讯号的对应波形具有特征值a2。此外,在本操作例中,在解密元件110依序执行运算序列2的同时,解密元件110依序执行运算序列4中的第一伪乘法运算MT’与第一伪平方运算SQ’,以使得每一平方运算SQ与第一伪乘法运算MT’同时进行,并使每一乘法运算MT与第一伪平方运算SQ’同时进行。其中,在解密元件110进行第一伪平方运算SQ’时,解密装置100的相关讯号的对应波形具有特征值a1,且在解密元件110进行第一伪乘法运算MT’时,解密装置100的相关讯号的对应波形的具有特征值a2。如此一来,在解密操作中,即便攻击者量测解密装置100的相关讯号,攻击者仅能得到加总运算序列2与运算序列4的对应讯号的序列6,而难以从量测结果中辨识出RSA私钥。再者,在本案的一些实施例中,在进行前述的乘法运算或前述的平方运算之前或之后,解密元件110更可根据加密资料N进行至少一第二伪平方运算或至少一第二伪乘法运算。其中,第二伪平方运算与第二伪乘法运算是无效运算,用以插入于原始运算序列(如图3中的运算序列2)之前、本文档来自技高网...
解密装置、方法及电路

【技术保护点】
一种解密方法,包括:接收一加密资料,其中该加密资料是经一RSA公钥加密;以及根据一RSA私钥与该加密资料进行至少一乘法运算以及至少一平方运算,以获得一解密资料;其中在进行该至少一乘法运算的一者的同时,根据该加密资料进行一第一伪平方运算,或在进行该至少一平方运算的一者的同时,根据该加密资料进行一第一伪乘法运算。

【技术特征摘要】
1.一种解密方法,包括:接收一加密资料,其中该加密资料是经一RSA公钥加密;以及根据一RSA私钥与该加密资料进行至少一乘法运算以及至少一平方运算,以获得一解密资料;其中在进行该至少一乘法运算的一者的同时,根据该加密资料进行一第一伪平方运算,或在进行该至少一平方运算的一者的同时,根据该加密资料进行一第一伪乘法运算。2.根据权利要求1所述的解密方法,其中进行该第一伪平方运算的运算结果或进行该第一伪乘法运算的运算结果不用以产生该解密资料。3.根据权利要求1所述的解密方法,更包括:在进行该至少一乘法运算的一者或该至少一平方运算的一者之前或之后,根据该加密资料进行一第二伪平方运算或一第二伪乘法运算。4.根据权利要求3所述的解密方法,其中在进行两次该第二伪乘法运算、两次该乘法运算的间、或一次该第二伪乘法运算与一次该乘法运算的间,进行该平方运算或该第二伪平方运算。5.一种解密装置,包括:一通讯模块;以及一解密元件,用以:透过该通讯模块,接收一加密资料,其中该加密资料是经一RSA公钥加密;以及根据一RSA私钥与该加密资料进行至少一乘法运算以及至少一平方运算,以获得一解密资料;其中在进行该至少一乘法运算的一者的同时,根据该加密资料进行一第一伪平方运算,或在进行该至少一平方运算的一者的同时,根据该加密资料进行一第一伪乘法...

【专利技术属性】
技术研发人员:吴宗叡
申请(专利权)人:瑞昱半导体股份有限公司
类型:发明
国别省市:中国台湾;71

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1