CN101147182A - 数据加密装置及数据加密方法 - Google Patents

数据加密装置及数据加密方法 Download PDF

Info

Publication number
CN101147182A
CN101147182A CNA2006800090961A CN200680009096A CN101147182A CN 101147182 A CN101147182 A CN 101147182A CN A2006800090961 A CNA2006800090961 A CN A2006800090961A CN 200680009096 A CN200680009096 A CN 200680009096A CN 101147182 A CN101147182 A CN 101147182A
Authority
CN
China
Prior art keywords
random number
data
encryption
key
transformation
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
CNA2006800090961A
Other languages
English (en)
Other versions
CN101147182B (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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN101147182A publication Critical patent/CN101147182A/zh
Application granted granted Critical
Publication of CN101147182B publication Critical patent/CN101147182B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/0618Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation
    • H04L9/0631Substitution permutation network [SPN], i.e. cipher composed of a number of stages or rounds each involving linear and nonlinear transformations, e.g. AES algorithms
    • 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/002Countermeasures against attacks on cryptographic mechanisms
    • H04L9/003Countermeasures against attacks on cryptographic mechanisms for power analysis, e.g. differential power analysis [DPA] or simple power analysis [SPA]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/08Randomization, e.g. dummy operations or using noise

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

一种数据加密装置,能够阻止功率解析攻击,并且可比以往削减加密处理的速度下降及存储量增加,该装置对明文进行基于密钥的规定的加密处理,生成密文,包括:随机数生成部(410a),按每个循环生成一个核心随机数,将规定个数的所述核心随机数连结,以生成第1随机数;异或部(410b),进行所述明文和所述第1随机数之间的数据融合,生成中间数据;以及数据扰乱部(410f、410k),基于所述第1随机数和第2随机数,按每个循环对所述中间数据进行数据扰乱处理。

Description

数据加密装置及数据加密方法
技术领域
本发明涉及数据加密装置,特别涉及对于通过测量执行加密处理时的功率消耗量而解析嵌入在加密模块中的加密密钥的攻击方法来说安全的数据加密装置。
背景技术
近年来,有人在设想各种以硬件或软件方式实现的加密模块进行加密处理时的副信息为线索,进行加密密钥的解析的解码法。例如,在被称为定时攻击的解码方法中,利用加密模块在加密处理上需要的时间根据在加密处理中使用的加密密钥的值而有尽管很小但是确实存在的不同,来进行加密密钥的解析。即,在定时攻击中,利用进行加密处理时的处理时间这样的副信息,从而进行加密密钥的解码。即使在这样的解码法之中,作为将进行加密处理时的功率消耗量作为副信息进行解码的解码方法,也有人在设想所谓“简单功耗分析(SimplePower Analysis)”或“差分功耗分析(Differential Power Analysis)”的各种方法。近年来,已被报告这些解码法还有高性能的测量设备可便宜地获得的背景,即使对于IC(Integrated Circuit:集成电路)卡这样的被实施了加密的实际的产品,也能够进行解析。此外,有人在设想在进行加密处理时,将从加密模块产生的电磁波强度作为副信息来解码的方法等各种各样的解码方法。在以下的记述中,将以加密处理时的加密模块的功率消耗量为线索,从而对加密密钥进行解析的解码方法统称为‘功率解析攻击’。以下,以功率解析攻击为例进行说明,但对于使用副信息的其他解码方法,也可以同样进行说明。即,本发明不仅适用功率解析攻击,而且只要是利用在加密处理中由加密模块产生的副信息进行密钥的推定的解码方法,就都适用。
下面说明有关功率解析攻击的概要。这里,根据对AES(Advanced Encryption Standard:高级加密标准)加密(AEC加密的细节参照非专利文献1)采用功率解析攻击的例子进行说明。图1是说明AES加密的处理概要的方框图。AES加密支持加密密钥长度为128bit(位)、192bit、256bit的三种长度,在以下,以加密密钥长度为128bit时进行说明。此外,在AES加密中,根据128bit的加密密钥,生成128bit×l1个被称为轮回密钥(round key)K0、K1、…、K10的密钥,但这里作为轮回密钥已经被生成来说明。即使在图1中也未图示有关轮回密钥生成处理。
(AES加密的处理概要)
下面说明AES加密的加密处理概要。
AES加密的加密处理,对于128bit的明文P,进行与轮回密钥K0的每比特的异或运算10a、表变换处理(S)10b、线性变换(L1)10c。接着,用轮回密钥K1进行与上述同样的一系列的处理(11a~11c)。进而,依次用轮回密钥K2、K3、…、K9进行同样的一系列的处理。但是,对于用轮回密钥K9的一系列的处理,取代线性变换L1,进行线性变换L2(19c)。最后,进行与轮回密钥K10的每比特的异或运算(19d),将其结果的值作为密文C。
(表变换S(10b))
下面说明有关表变换10b的处理。再有,表变换11b、12b、…、19b也是相同的处理。
图2是表示表变换10b的处理的方框图。输入的128bit的数据从高位起被每8bit分割,成为8bit×16个的数据。然后,对于各8bit数据,进行利用表变换Tab的表变换处理(100a~100p)。这里,表变换Tab是表示输入8bit和输出8bit之间的对应关系的表,具体地说,由8bit×256元素的排列Tab[256]表示,输入8bit为X时,利用表变换的输出值Y可作为Y=Tab[X]获得。
具体地说,用于AES加密的表变换是Tab[256]={63h、7Ch、77h、7Bh、…、BBh、16h}的表。这里,63h的“h”表示“63”是用16进制数表示的。此时,对于输入03h的表变换的输出是Tab[2]=77h,对于输入FEh(10进制下为254)的表变换的输出成为Tab[254]=BBh。
这样,进行对于各8bit数据的表变换处理。然后,将各输出结果按与刚才分割时相同的顺序连结而形成128bit,并作为128bit的输出数据Y。
(线性变换L1(10c))
下面说明有关线性变换L1(10c)的处理。再有,线性变换11c、12c、…、18c的处理也是与其同样的处理。
线性变换L1按提及的顺序进行被称为ShiftRow的字节转置和被称为MixColumn的矩阵变换。首先,将输入数据从高位起进行每8bit的分割,从而形成A0、A1、…、A14、A15。字节转置ShiftRow对A0~A15进行排列转换而生成128bit数据。具体地说,从高位起以A0、A5、A10、A15、A4、A9、A14、A3、A8、A13、A2、A7、A12、A1、A6、A11的顺序连结数据而形成128bit数据。
接着,对于上述ShiftRow的结果,进行MixColumn处理。具体地说,将ShiftRow的结果再次从高位起进行每8bi的t分割,形成B0、B1、…、B14、B15。接着,X0=B0、X1=B4、X2=B8、X3=B12,根据下述式1进行矩阵运算,计算Y0、Y1、Y2、Y3,从而C0=Y0、C4=Y1、C8=Y2、C12=Y3。
[式1]
Y 0 Y 1 Y 2 Y 3 = 02 h 03 h 01 h 01 h 01 h 02 h 03 h 01 h 01 h 01 h 02 h 03 h 03 h 01 h 01 h 02 h × X 0 X 1 X 2 X 3
这里,矩阵运算所使用的加法运算和乘法运算作为扩大体GF(2^8)上的运算进行。此外,“2^8”表示“2的8次方”。而且,X0=B1、X1=B5、X2=B9、X3=B13,进行上述矩阵运算(式1所示的运算),计算Y0、Y1、Y2、Y3,从而C1=Y0、C5=Y1、C9=Y2、C13=Y3。同样地,X0=B2、X1=B6、X2=B10、X3=B14,进行矩阵运算(式1),计算Y0、Y1、Y2、Y3,从而C2=Y0、C6=Y1、C10=Y2、C14=Y3。然后,X0=B3、X1=B7、X2=B11、X3=B15,进行矩阵运算,计算Y0、Y1、Y2、Y3,从而C3=Y0、C7=Y1、C11=Y2、C15=Y3。从高位以这种顺序连结了上述这样获得的C0、C1、C2、…、C14、C15的128bit数据,成为MixColumn处理的输出数据,即线性变换L1的输出数据。
(线性变换L2(19c))
线性变换L2(19c)是从线性变换L1中省略了MixColumn处理后的线性变换。即,对于至L2的输入数据,将仅进行了ShiftRow处理的结果作为L2的输出数据。
(加密装置110的结构)
下面说明有关将AES加密作为加密装置安装的情况下的一结构例。
图3是表示将AES加密作为加密装置安装的情况下的一结构例的方框图。
加密装置110是将明文P加密并输出密文C的装置,包括:寄存器110a、加密密钥存储部110b、轮回密钥生成部110c、轮回密钥存储部110d、异或部110e、表保管部110f、表变换部110g、第1线性变换部110h和第2线性变换部110i。
寄存器110a是存储加密处理的中间数据的存储装置。加密密钥存储部110b是存储加密密钥的存储装置。轮回密钥生成部110c是在加密处理时,从加密密钥存储部110b读取加密密钥,生成轮回密钥K0~K10,并存储在轮回密钥存储部110d中的处理部。异或部110e是从轮回密钥存储部110d读取必要的轮回密钥,进行异或运算的处理部。表保管部110f是将上述8bit×256个的数据构成的变换表作为排列Tab[256]存储的存储装置。表变换部110g是从表保管部110f读取排列Tab[256],并执行表变换处理的处理部。第1线性变换部110h和第2线性变换部110i分别是执行上述线性变换L1和线性变换L2处理的处理部。
接着,说明有关加密装置110的动作。明文P被输入到加密装置110时,被临时存储在寄存器110a中。接着,异或部110e读取寄存器110a中所存储的数据,进行与轮回密钥的异或运算,将运算结果盖写存储在寄存器110a中。接着,表变换部110g读取寄存器110a中所存储的数据,从而进行表变换处理,将变换结果盖写存储在寄存器110a中。然后,第1线性变换部110h读取寄存器110a中所存储的数据,从而进行线性变换L1的处理,将变换结果盖写存储在寄存器110a中。
以下,根据刚才论述的AES加密的处理步骤,重复进行上述处理。但是,最后的重复中的线性变换处理取代第1线性变换部110h,进行利用第2线性变换部110i的表变换L2,进而,异或部110e进行与轮回密钥K10的异或运算,将运算结果盖写存储在寄存器110a中。然后,加密装置110将寄存器110a中所存储的数据作为密文C输出。
(对加密装置110的功率解析攻击)
下面说明有关对加密装置110的功率解析攻击的概要。在加密装置110中,进行AES加密处理的中途的数据(中间数据)被临时存储在寄存器110a中。即,在图1中,从某个处理块转送给其他处理块的数据都被临时存储在寄存器110a中后,进行利用其他处理块的处理。
在功率解析攻击中,着眼于上述那样加密处理的中间数据被临时存储在寄存器的情况。已知将数据存储在寄存器中时的功率消耗量依赖于存储的数据的内容。例如,存储的数据中“1”占据位的数越多,则存储时消耗的功率越大。而在对寄存器的盖写处理时,寄存器中存储的数据位的反转发生的位(例如,在位“1”被存储的状态下位“0”被盖写的位)越多,存储时消耗的功率越大。利用这些状况,对存储在寄存器中时的功率消耗量进行测量,从而对寄存器内的数据进行估计。然后,从估计出的数据值,确定在加密处理中所使用的加密密钥。例如,图3的异或部110e通过对存储在寄存器110a中时的功率消耗量进行解析,能够对进行了图1的异或10a的处理后的数据进行解析。将此时的数据作为D,解析人还知道明文P的值时,则轮回密钥K0通过
K0=D(+)P
来求。其中,“(+)”表示与“每个位的异或”。AES加密的情况下,已知轮回密钥K0与加密密钥相同,所以通过上述解析,加密密钥被求出。
如以上那样可知,从加密处理中的功率消耗量,寄存器中所临时存储的加密处理的中间值被推测,由此,推测出加密密钥。
(对于功率解析攻击的对策方法)
作为对于功率解析攻击的对策方法,公开了被称为掩码(masking)法的方法(例如,参照专利文献1)。在图3所示的加密装置110,由于将加密处理的中间值原样临时存储在寄存器110a中,所以在这种值被解析方面有问题。在掩码法中,具有在将加密处理的中间值存储在寄存器中之前,利用随机数进行随机化的特征。由此,即使寄存器的数据被利用功率解析来推测,由于其值用随机数而随机化,所以不知道实际的加密处理的中间值。因此,轮回密钥的值不能确定。
图4及图5是说明采用了对于AES加密的掩码法的情况下的处理步骤的方框图。在进行加密处理前,生成128bit的随机数R0~R10。然后,将使用了生成的随机数的异或运算20a、20c、20e、21b、…、29b、29d、29h如图4那样追加在原始的AES加密处理中。此时,异或运算21b、…、29b是与对随机数施加了线性变换L2的结果之间的异或运算。此时,通过异或运算20a,加密处理的中间值T受到随机数R0的影响而被随机化。但是,然后通过异或运算20c,再次进行与随机数R0的异或运算,这种影响被抵消。同样地,利用随机数R1、R2、…、R10的随机化的影响被抵消,所以最终获得的密文C成为与通过图1所示的原始的AES加密处理而获得的密文相同的密文。
此外,实际上在作为加密装置安装时,不是图4,而是作为图5的结构安装加密处理。图4和图5的不同在于,将图4中的‘与随机数的异或运算表变换与随机数的异或运算’的一系列处理置换为‘利用随机化过的变换表的表变换’。以下,对这方面进行说明。
图6是用于说明图5中的随机化表变换30c的内部结构的方框图。再有,对于其他的随机化表变换31b、32b、…、39b,仅使用的随机数有所不同,与随机化表变换30c是相同的。128bit的输入数据X从高位起进行每8bit分割,成为x0、x1、…、x15。此外,随机数R0和R1从高位起进行每8bit分割,分别成为R0a、R0b、…、R0p及R1a、R1b、…、R1p。首先,x0、x1、…、x15分别进行与R0a、R0b、…、R0p的异或运算。接着,对于上述结果(各8bit),分别进行使用了AES加密的变换表Tab的表变换。然后,对于各表变换结果,分别进行与R1a、R1b、…、R1p的异或运算,将其结果分别作为y0、y1、…、y15。将从高位起以这种顺序连结了y0、y1、…、y15的128bit数据作为Y输出。
这里,如果随机数R0(即,R0a~R0p)和随机数R1(即,R1a~Rlp)被决定,则x0和y0之间的对应关系、x1和y1之间的对应关系、…、x15和y15之间的对应关系能够作为分别由8bit×256个的数据构成的变换表来表示。即,图6的处理变成图7所示的利用16种类的变换表Tab0a、Tab0b、…、Tab0p的表变换处理303a、303b、…、303p组成的处理。
将以上归纳时,进行了对于掩码法解码的对策的AES加密的处理步骤变为图5所示。即,如以下那样。
(1)生成128bit×11个的随机数R0、R1、…、R10。
(2)根据随机数R0和R1,构成随机化表变换Sm0(30c)。具体地说,如图7所示,生成16种类由8bit×256个数据组成的变换表。同样地,根据随机数R1和R2、R2和R3、…、R9和R10,构成随机化表变换Sm1~Sm9。具体的构成方法与Sm0相同。
(3)根据图5,进行加密处理。与原始的AES加密处理不同之处是:与随机数R0的异或运算30a和对随机数R10的线性变换L2(39e);及追加与上述线性变换的结果的异或运算39f;以及取代原始的变换表Tab,表变换处理30C、31b、…、39b使用根据随机数R0~R10生成的随机化变换表。
非专利文献1:Federal Information ProcessingStandards Publication197,‘Specification for the ADVANCED ENCRYPTION STANDARD(AES)’,November 26,2001
专利文献1:美国专利第6295606号说明书
但是,在上述以往技术中,因功率解析攻击对策带来的加密处理量的增加,有加密装置的处理速度显著下降的技术问题。即,根据生成的随机数所生成的必要的随机化变换表(具有8bit×256个元素的表)对Sm0、Sm1、…、Sm9中的每个包含16种(例如,Sm0的情况下,为Taboa、Tabob、…、Tabop的16种)。即,在进行1次加密时,需要合计生成16×10=160种的随机化变换表。
此外,随机化变换表的生成所使用的随机数需要是对每次加密处理有所不同的随机数,上述表生成处理需要在每进行1次加密处理时加以执行。因此,因用于这种功率解析对策的追加处理,而有加密处理的处理速度显著地下降的技术问题。
此外,用于存储上述160种的随机化变换表的存储器在加密模块内是必须的,所以还有存储量也显著地增加的技术问题。
发明内容
本发明是用于解决上述技术问题而完成的发明,目的在于提供一种数据加密装置,能够阻止功率解析攻击,并且可比以往削减加密处理的速度降低及存储器量增加。
为了解决上述以往的课题,本发明的数据加密装置对明文进行基于密钥的规定的加密处理,生成密文,其特征在于,包括:随机数生成部,按每个循环生成一个核心随机数,将规定个数的所述核心随机数连结,以生成第1随机数;明文数据融合部,进行所述明文与所述第1随机数之间的数据融合,生成中间数据;以及数据扰乱部,基于所述第1随机数和第2随机数及所述密钥,按每个循环对所述中间数据进行数据扰乱处理。
根据该结构,第1随机数成为核心随机数的重复。因此,例如,在核心随机数的个数为16个的情况下,在进行数据扰乱处理的情况下,能够使以往必需为16个的随机化变换表的个数为一个。因此,能够削减加密处理的速度下降,并且削减加密处理必需的存储量。例如,所述数据扰乱部可以构成为,包括:变换表存储部,按每个循环存储一个变换表,该变换表对将明文以所述规定个数等分后的数据进行变换;变换表变形部,按每个循环,进行基于所述第1随机数和所述第2随机数将所述变换表变形的表变换,生成一个变形变换表;变形变换表存储部,存储所述变形变换表;以及数据变换部,按每个循环,对所述中间数据,基于所述密钥和所述变形变换表中存储的所述变形变换表,对于将所述中间数据以所述规定个数等分后的各数据,进行数据变换处理。
此外,也可以是数据加密装置还包括随机数变换部,该随机数变换部对所述第1随机数执行规定的随机数变换,生成所述第2随机数,也可以是所述数据扰乱部还包括线性变换部,该线性变换部对所述中间数据进行规定的线性变换,并输出其结果,所述随机数变换部将所述线性变换的逆变换作为所述随机数变换来执行。
而且,也可以构成为所述规定的加密处理是AES加密处理,所述线性变换部包括AES加密处理中的InvMixColumn处理和InvShiftRow处理,所述随机数变换部将所述第1随机数作为第2随机数输出。
而且,也可以是所述核心随机数在全部的循环中为相同的值。
通过使核心随机数在全部的循环中相同,能够使数据加密装置所使用的变形变换表为一个。因此,能够削减加密处理的速度下降,并且削减加密处理所需的存储器量。
再有,本发明不仅能够作为包括了这样的特征性部件的数据加密装置来实现,而且还能够作为以数据加密装置中所包含的特征性部件为步骤的数据加密方法来实现,也能够作为使计算机执行数据加密方法中所包含的特征性步骤的程序来实现。因而,不言而喻,这样的程序可以通过CD-ROM(Compact Disc-Read Only Memory)等记录媒体或因特网等通信网络而流通。
发明效果
根据本发明,能够提供可阻止功率解析攻击、并且与以往相比可削减加密处理的速度下降及存储量增加的数据加密装置。
根据本发明的加密装置,通过将用于对加密处理的中间数据及变换表进行随机化的随机数根据某个一定的格式、并且以使各表变换处理之前和之后被异或运算的各个随机数全部为相同的值而进行设足,从而具有对功率解析攻击那样的利用了从加密处理中加密模块产生的副信息的解析方法进行阻止、并且使因上述阻止对策造成的加密处理的速度下降和存储量增加与以往相比被削减的效果。
附图说明
图1是表示AES加密的处理步骤的方框图。
图2是表示AES加密的表变换处理10b的结构的方框图。
图3是表示AES加密的加密装置110的结构的方框图。
图4是表示现有技术的AES加密的处理步骤的方框图。
图5是表示现有技术的AES加密的处理步骤的方框图。
图6是表示现有技术的随机化表变换处理30c的结构的方框图。
图7是表示现有技术的随机化表变换处理30c的结构的变形例的方框图。
图8是表示本发明的实施方式的AES加密处理步骤的方框图。
图9是表示AES加密的处理步骤的流程图。
图10是表示本发明的实施方式的加密装置410的结构的方框图。
图11是表示本发明的实施方式的随机数生成部410a的结构的方框图。
图12是表示本发明的实施方式的随机化表变换处理的结构的方框图。
图13是表示本发明的实施方式的随机化表变换处理的第1变形例的方框图。
图14是表示本发明的实施方式的随机化表变换处理的第2变形例的方框图。
图15是说明AES解密的处理步骤的方框图。
图16是表示本发明的实施方式的解密装置510的结构的方框图。
标号说明
410加密装置
410a随机数生成部
410b异或部
410c加密密钥保管部
410d轮回密钥生成部
410e轮回密钥存储部
410f异或部
410g寄存器
410h第1线性逆变换部
410i表随机化部
410j随机表存储部
410k表变换部
401L表保管部
401m第1线性变换部
401n第2线性变换部
401o第2线性变换部
410p异或部
510解密装置
510a随机数生成部
510b异或部
510c加密密钥保管部
510d轮回密钥生成部
510e轮回密钥存储部
510f异或部
510g寄存器
510h第1线性逆变换部
510i逆表随机化部
510j逆随机表存储部
510k逆表变换部
501l逆表保管部
501m第1线性逆变换部
501n第2线性逆变换部
501O第2线性变换部
510p异或部
具体实施方式
以下,关于本发明的实施方式,参照附图进行说明。
(阻止功率解析攻击的AES加密处理步骤的概要)
图8是说明用于阻止功率解析攻击的AES加密的处理步骤的方框图。图9是表示AES加密的处理步骤的流程图。以下,用图8和图9说明加密处理。再有,设128bit×l1个的轮回密钥K0、K1、…、K10已经根据128bit的加密密钥生成。
(1)生成128bit的随机数(S2)。此外,求对随机数R实施了线性变换L1的逆变换L1i所得的值R1(S4)。进而,求对R1实施了线性变换L2所得的值R2(S6)。其中,线性变换L1及L2是与上述L1、L2相同的处理。
(2)对于128bit的明文P,进行与上述随机数R的异或运算(40a、S8)。
(3)以i=0、1、…、9的顺序,重复进行以下的处理((3-1)~(3-5))(循环A)。
(3-1)进行与轮回密钥Ki的异或运算(40b、41a、42a、…、49a、S10)。
(3-2)进行与随机数R的异或运算(40c、41b、42b、…、49b、S12)。
(3-3)进行表变换S(40d、41c、42c、…、49c、S14)。其中,表变换S与已经描述的表变换S相同。
(3-4)进行与随机数R1的异或运算(40e、41d、42d、…、49d、S16)。
(3-5)i=0~8的情况下(S18中为“是”),进行线性变换L1(40f、 41e、42e、…、48e、S20)。i=9的情况下(S18中为“否”),进行线性变换L2(49e、S22)。
(4)进行与轮回密钥K10的异或运算(49g、S24)。
(5)进行与R2的异或运算(49h、S26)。
将对明文P进行了上述(1)~(5)的处理之后的结果,作为密文C输出。此时,(1)、(2)、(3-2)及(5)的处理是从原始的AES加密处理所追加的处理。即使追加这样的处理,由以下也可知能获得与由原始的AES加密处理所获得的密文相同的密文。
(A)异或运算40a中在与明文P之间进行异或运算的随机数R的影响通过其后的异或运算40c而被除去。即,与轮回密钥K0的异或运算40b的处理后的值为P(+)K0(+)R,而利用异或运算40c的处理后的值变为P(+)K0(+)R(+)R=P(+)K0,R的影响被抵消。
(B)通过表变换40d、41c、42c、…、48c之后的异或运算40e、41d、42d、…、48d而被异或的随机数R的影响分别通过其后的表变换41c、42c、…、49c之前的异或运算41b、42b、…、49b而被除去。例如,异或运算40e后的中间值变为{原始AES加密的中间值}(+)R1,异或运算41b的输入值变为{原始AES加密的中间值}(+)L1(R1)。其中,L1(R1)表示实施了线性变换L1的结果,但由于R1本身是L1i(R),所以L1(R1)=R。即,异或运算40e的输入值变为{原始AES加密的中间值}(+)R,该R的影响在异或运算41b中,通过与R的异或运算而被除去。其他的情况也是同样。
(C)通过表变换49c之后的异或运算49d而被实施异或运算的随机数R1的影响通过其后的异或运算49h而被除去。即,异或运算49d后的加密处理中间值变为{原始AES加密的中间值}(+)R1,异或运算49h中所输入的值变为{原始AES加密的中间值}(+)L2(R1)。其中,由于L2(R1)=R2,所以通过利用异或运算49h的与R2的异或,上述L2(R1)的影响被除去。
(阻止功率解析攻击的AES加密装置410的结构)
图10是表示用于实现图8的AES加密处理步骤的加密装置410的一例结构的方框图。以下,对于加密装置410的处理步骤,参照图9所示的流程图进行说明。
加密密钥保管部410c保管128bit的加密密钥。轮回密钥生成部410d在加密处理时,根据加密密钥保管部410c中保管的加密密钥,按照AES加密的轮回密钥生成步骤,生成128bit×11个的轮回密钥K0、K1、…、K10。轮回密钥存储部410e存储上述轮回密钥K0、K1、…、K10。
接着,随机数生成部410a生成随机数R(图9的S2)。如图11所示,随机数生成部410a包括核心随机数生成部411a和随机数扩大部411b。在随机数R的生成时,首先,核心随机数生成部411a生成8bit的核心随机数,并传送到随机数扩大部411b。随机数扩大部411b将连结了十六个上述随机数r所得的值作为随机数R,随机数生成部410a输出该随机数R。即,随机数R变为
R=r||r||…||r(r的个数为16个)其中,“||”表示数据的连结。生成的128bit的随机数R传送到异或部410b、表随机化部410i、第1线性逆变换部410h。
第1线性逆变换部410h对上述随机数R实施线性变换L1的逆变换,从而求R1(图9的S4),传送到表随机化部410i及第2线性变换部410o。第1线性逆变换部410h的详细步骤如以下述那样。首先,将输入数据R从高位起进行每8bit分割,成为a0、a1、a2、…、a15。接着,x0=a0、x1=a1、x2=a2、x3=a3,进行以
[式2]
Y 0 Y 1 Y 2 Y 3 = 0 Eh 0 Bh 0 Dh 09 h 09 h 0 Eh 0 Bh 0 Dh 0 Dh 09 h 0 Eh 0 Bh 0 Bh 0 Dh 09 h 0 Eh × X 0 X 1 X 2 X 3
表示的GF(2^8)上的矩阵运算,求b0、b1、b2、b3。使它为y0=b0、y1=b1、y2=b2、y3=b3。同样地,x0=a4、x1=a5、x2=a6、x3=a7,通过上述矩阵运算,求b0、b1、b2、b3,获得y4=b0、y5=b1、y6=b2、y7=b3。而且,x0=a8、x1=a9、x2=a10、x3=a11,求y8=b0、y9=b1、y10=b2、y11=b3,获得x0=a12、x1=a13、x2=a14、x3=a15,求y12=b0、y13=b1、y14=b2、y15=b3。将这样求出的y0、y1、…、y15从高位起以y0、y13、y10、y7、y4、y1、y14、y11、y8、y5、y2、y15、y12、y9、y6、y3的顺序连结的128bit数据作为第1线性逆变换部410h的输出。其中,在上述矩阵运算中,x0=x1=x2=x3=r时,y0、y1、y2、y3被如下计算。但是,乘法运算、加法运算都是GF(2^8)上的运算。
y0=y1=y2=y3=0Eh×r+0Bh×r+0Dh×r+09h×r
=01h×r
=r
同样地,由于y4~y15也示出都与r相等,所以第1线性逆变换部410h的输出R1表示为R1=R=r||r||…||r。即,第1线性逆变换部410h实际上不进行任何处理即可。
接着,表随机化部410i根据随机数R和R1对表保管部4101中保管的原始AES加密的变换表Tab进行随机化。如果是现有技术,则如图6所示那样,在各表变换处理300a~300p之前与之后,被实施了利用各自不同的随机数的异或运算。由此,需要生成图7所示的各自不同的随机化变换表303a~300p。但是,在本实施方式中,如已经表示那样,随机数R及R1都为R1=R=r||r||…||r。由此,如图12所示,在各表变换处理412a~412p之前与之后,被实施全部利用相同随机数r的异或运算。因此,这些一系列的处理(利用随机数的异或表变换利用随机数的异或)如图13所示那样,变形为全部相同的随机化变换表mTab。即,图13能够如14那样通过一个随机化变换表mTab而实现。具体地说,如以下那样生成随机化变换表mTab。首先,表随机化部410i读取在表保管部4101中保管的原始AES加密的变换表Tab的排列数据Tab[0]~Tab[255]。接着,使用上述排列数据和随机数R及随机数R1中包含的核心随机数r生成以下那样的排列数据mTab[0]~mTab[255]。
mTab[i]=Tab[i(+)r](+)r
表随机化部410i将上述那样生成的随机化变换表mTab传送到随机表存储部410j,并将其存储。
进而,第2线性变换部410o对随机数R1实施线性变换L2,求R2,并传送到异或部410p(图9的S6)。这里,线性变换L2如已经描述的那样,是字节单位的置换,并且随机数R1如已经说明的那样,R1=R=r||r||…||r(r为8bit),所以L2(R1)=R1=R。即,实际上,第2线性变换部410o不进行任何处理即可。
以上是用于进行加密处理的前处理,在以下说明中,根据上述前处理结果,说明用于进行对明文P的加密处理的步骤。
对输入到加密装置410的明文P,异或部410b进行与上述随机数R的异或运算,将其结果传送到寄存器410g,并临时存储(图9的S8)。
接着,异或部410f读取寄存器410g内的数据,从而进行与轮回密钥存储部410e中存储的轮回密钥KO的异或运算,将结果写入寄存器410g(图9的S10)。此时,在写入前寄存器中存储的数据被盖写而删除。
接着,表变换部410k读取寄存器410g内的数据,基于随机表存储部410j中存储的随机化变换表mTab进行表变换处理(图9的S12~S16)。具体地说,如果从寄存器410g读取的数据为X,则表变换处理后的数据Y作为
Y=mTab[X]
而求出。变换处理后的数据盖写在寄存器410g中。盖写前的寄存器410g内的数据被删除。
接着,第1线性变换部410m读取寄存器410g的数据,从而实施线性变换L1,并盖写在寄存器410g中(图9的S18为“是”,S20)。
上述处理后,用轮回密钥K1、K2、K3、…、K9重复进行以上的异或部410f、表变换部410k、第1线性变换部410m的一系列的处理(图9的循环A)。但是,仅在用轮回密钥K9进行上述一系列的处理时,取代第1线性变换部410m的处理,进行第2线性变换部410n的线性变换L2的处理(图9的S18为“否”,S22)。
进而,异或部410f读取寄存器410g内的数据,从而进行与轮回密钥存储部410e中存储的轮回密钥K10的异或运算,将结果写入寄存器410g(图9的S24)。
然后,异或部410p读取在寄存器410g中存储的数据,从而进行与随机数R2的异或运算,将其结果作为密文C从加密装置410输出(图9的S26)。
(AES解密处理步骤的概要)
下面说明对由以上说明的阻止功率解析攻击的AES加密处理所生成的密文C进行解密的处理步骤。
图15是说明AES解密的处理步骤的方框图。与图8所示的加密处理步骤的不同是,为了从密文生成明文P,数据的流动变得相反。
此外,不同点在于,取代表变换S而实施表变换S的逆变换Si,取代线性变换L1而实施线性变换L1的逆变换L1i,取代线性变换L2而实施线性变换L2的逆变换L2i。但是,关于线性变换L2(48f),仍然不变。
(解密装置510的结构)
图16是表示对由加密装置410加密过的密文C进行解密而求明文P的解密装置510的结构的方框图。这里,仅说明与加密装置410的不同部分。
逆表保管部510保管与在表保管部4101中保管的变换表Tab为逆变换关系的逆变换表ITab。具体地说,ITab的排列元素ITab[0]~ITab[255]被如下定义。
ITab[Tab[i]]=i(i=0、1、…、255)
逆表随机化部510i根据逆变换表ITab求随机化逆变换表ImTab的方法与表随机化部410i中所述的方法相同,所以省略。
在解密装置510的解密处理中,首先,进行异或部510p的处理。该处理是与异或部410p相同的处理。接着,与异或部410f同样,异或部510f进行使用了轮回密钥K10的异或运算。然后,以轮回密钥K9、K8、…、K1、K0的顺序用轮回密钥重复进行第1线性逆变换部510m、逆表变换部510k、异或部510f的顺序组成的一系列处理。此时,在使用了轮回密钥K9的情况下的一系列处理中,取代第1线性逆变换部510m,进行第2线性逆变换部510n的处理。此时,第1线性逆变换部510m进行已描述的线性变换L1的逆变换处理L1i,第2线性逆变换部510n进行线性变换L2的逆变换处理L2i。上述处理之后,异或部510b进行异或运算,将其结果作为明文P输出。
如以上那样,在本实施方式中,仅生成并存储一个8bit×256个排列元素组成的随机化变换表即可。在现有技术中,由于需要生成160个8bit×256个排列元素组成的随机化变换表,所以用于生成随机化变换表的处理量与现有技术相比被削减到160分之一。
再有,在本实施方式中,将作为功率解析攻击对策的对象的加密作为AES加密,但不仅限于AES加密,只要是与轮回密钥的数据融合、表变换、线性变换这样的一系列处理组成的重复式的加密方式,就可以利用同样的方法来应用。作为这样的加密方式的例子,有Camellia加密、Hierocrypt加密等。
此外,在本实施方式中,作为将两个数据进行数据融合的方法,使用了异或运算,但运算也可以是算术加法运算。
此外,在本实施方式中,第1线性逆变换部410m及第2线性逆变换部410n实际上不进行任何处理也可以,所以也可以省略它们。
再有,基于上述实施方式说明了本发明,但本发明当然不限定于上述实施方式。以下的情况也包含在本发明中。
(1)上述各装置具体地说,是由微处理器、ROM、RAM、硬盘单元、显示单元、键盘、鼠标等构成的计算机系统。上述RAM或硬盘单元中,存储有计算机程序。上述微处理器通过按照上述计算机程序而动作,从而各装置实现其功能。这里,计算机程序是为了实现规定功能而将表示对计算机的指令的命令码组合多个而构成的程序。
(2)构成上述各装置的构成要素的一部分或全部也可以由一个系统LSI(Large Scale Integration:大规模集成电路)构成。系统LSI是将多个结构部集成在一个芯片上所制造的超多功能LSI,具体地说,是包含微处理器、ROM、RAM等而构成的计算机系统。上述RAM中,存储有计算机程序。上述微处理器通过按照上述计算机程序而动作,从而系统LSI实现其功能。
(3)构成上述各装置的结构要素的一部分或全部也可以由在各装置上可装拆的IC卡或单体模块构成。上述IC卡或上述模块是由微处理器、ROM、RAM等构成的计算机系统。上述IC卡或上述模块也可以包含上述超多功能LSI。微处理器通过按照计算机程序而动作,从而上述IC卡或上述模块实现其功能。这种IC卡或这种模块最好是具有抗篡改性。
(4)本发明也可以是上述所示的方法。此外,可以是将这些方法通过计算机来实现的计算机程序,也可以是上述计算机程序组成的数字信号。
此外,本发明也可以是,将上述计算机程序或上述数字信号记录在计算机可读取的记录媒体、例如软盘、硬盘、CD-ROM、MO、DVD、DVD-ROM、DVD-RAM、BD(Blu-ray Disc:蓝光光盘)、半导体存储器等中的形式。此外,也可以是这些记录媒体中所记录的上述数字信号。
此外,本发明也可以是,将上述计算机程序或上述数字信号经由电通信线路、无线或有线通信线路、以因特网为代表的网络、数据广播等而传输的形式。
此外,本发明也可以是包括微处理器和存储器的计算机系统,上述存储器存储有上述计算机程序,上述微处理器按照上述计算机程序而动作。
此外,也可以是通过将上述程序或上述数字信号记录在上述记录媒体中而转送,或将上述程序或上述数字信号经由上述网络等转送,由独立的其他计算机系统实施。
(5)也可以将上述实施方式及上述变形例分别组合。
工业上的可利用性
本发明的加密装置具有阻止功率解析攻击,并且与现有技术相比削减加密处理的处理量的特征,所以本发明可适用于高速处理或寻求以低成本实现的加密装置。

Claims (9)

1.一种数据加密装置,对明文进行基于密钥的规定的加密处理,生成密文,其特征在于,包括:
随机数生成部,按每个循环生成一个核心随机数,将规定个数的所述核心随机数连结,以生成第1随机数;
明文数据融合部,进行所述明文与所述第1随机数之间的数据融合,生成中间数据;以及
数据扰乱部,基于所述第1随机数和第2随机数及所述密钥,按每个循环对所述中间数据进行数据扰乱处理。
2.如权利要求1所述的数据加密装置,其特征在于,
所述数据扰乱部包括:
变换表存储部,按每个循环存储一个变换表,该变换表对将明文以所述规定个数等分后的数据进行变换;
变换表变形部,按每个循环,进行基于所述第1随机数和所述第2随机数将所述变换表变形的表变换,生成一个变形变换表;
变形变换表存储部,存储所述变形变换表;以及
数据变换部,按每个循环,对所述中间数据,基于所述密钥和所述变形变换表中存储的所述变形变换表,对于将所述中间数据以所述规定个数等分后的各数据,进行数据变换处理。
3.如权利要求2所述的数据加密装置,其特征在于,
所述数据加密装置还包括随机数变换部,该随机数变换部对所述第1随机数执行规定的随机数变换,生成所述第2随机数。
4.如权利要求3所述的数据加密装置,其特征在于,
所述数据扰乱部还包括线性变换部,该线性变换部对所述中间数据进行规定的线性变换,并输出其结果,
所述随机数变换部将所述线性变换的逆变换作为所述随机数变换来执行。
5.如权利要求4所述的数据加密装置,其特征在于,
所述规定的加密处理是AES加密处理,
所述线性变换部包括AES加密处理中的InvMixColumn处理和InvShiftRow处理,
所述随机数变换部将所述第1随机数作为第2随机数输出。
6.如权利要求5所述的数据加密装置,其特征在于,
所述核心随机数在全部的循环中为相同的值。
7.一种集成电路,对明文进行基于密钥的规定的加密处理,生成密文,其特征在于,包括:
随机数生成部,按每个循环生成一个核心随机数,将规定个数的所述核心随机数连结,以生成第1随机数;
明文数据融合部,进行所述明文与所述第1随机数之间的数据融合,生成中间数据;以及
数据扰乱部,基于所述第1随机数和第2随机数及所述密钥,按每个循环对所述中间数据进行数据扰乱处理。
8.一种数据加密方法,对明文进行基于密钥的规定的加密处理,生成密文,其特征在于,包括下列步骤:
按每个循环生成一个核心随机数,将规定个数的所述核心随机数连结,以生成第1随机数;
进行所述明文与所述第1随机数之间的数据融合,生成中间数据;以及
基于所述第1随机数和第2随机数及所述密钥,按每个循环对所述中间数据进行数据扰乱处理。
9.一种程序,对明文进行基于密钥的规定的加密处理,生成密文,其特征在于,所述程序使计算机执行下列步骤:
按每个循环生成一个核心随机数,将规定个数的所述核心随机数连结,以生成第1随机数;
进行所述明文与所述第1随机数之间的数据融合,生成中间数据;以及
基于所述第1随机数和第2随机数及所述密钥,按每个循环对所述中间数据进行数据扰乱处理。
CN2006800090961A 2005-03-31 2006-02-10 数据加密装置及数据加密方法 Expired - Fee Related CN101147182B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP102157/2005 2005-03-31
JP2005102157 2005-03-31
PCT/JP2006/302364 WO2006112114A1 (ja) 2005-03-31 2006-02-10 データ暗号化装置及びデータ暗号化方法

Publications (2)

Publication Number Publication Date
CN101147182A true CN101147182A (zh) 2008-03-19
CN101147182B CN101147182B (zh) 2010-09-01

Family

ID=37114856

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2006800090961A Expired - Fee Related CN101147182B (zh) 2005-03-31 2006-02-10 数据加密装置及数据加密方法

Country Status (5)

Country Link
US (1) US8094811B2 (zh)
EP (1) EP1865481A1 (zh)
JP (1) JP4823904B2 (zh)
CN (1) CN101147182B (zh)
WO (1) WO2006112114A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937705B (zh) * 2009-07-01 2012-05-09 慧帝科技(深圳)有限公司 数据储存装置以及数据存取方法
CN105745567A (zh) * 2013-11-12 2016-07-06 谷歌公司 利用外部设备来分担头戴式设备上的文本录入
CN109413051A (zh) * 2018-10-09 2019-03-01 深圳南方德尔汽车电子有限公司 数据加密方法、装置、计算机设备及存储介质
CN113537913A (zh) * 2020-04-16 2021-10-22 上海利云网络科技有限公司 一种高安全性的企业信息管理系统及方法

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005340892A (ja) * 2004-05-24 2005-12-08 Matsushita Electric Ind Co Ltd 暗号回路
US8538012B2 (en) * 2007-03-14 2013-09-17 Intel Corporation Performing AES encryption or decryption in multiple modes with a single instruction
DE102007035738A1 (de) 2007-07-30 2009-02-05 Robert Bosch Gmbh Übermittlungsvorrichtung und Verfahren zum Übermitteln einer aktuellen Position eines Fahrzeugs an eine Auswertezentrale
US8194854B2 (en) 2008-02-27 2012-06-05 Intel Corporation Method and apparatus for optimizing advanced encryption standard (AES) encryption and decryption in parallel modes of operation
KR20100094862A (ko) * 2009-02-19 2010-08-27 삼성전자주식회사 스토리지 장치 및 그것의 데이터 관리 방법
CA2754094C (en) * 2009-03-10 2017-08-15 Irdeto Corporate B.V. White-box cryptographic system with input dependent encodings
WO2011101994A1 (ja) 2010-02-22 2011-08-25 株式会社東芝 暗号化装置
JP5060570B2 (ja) * 2010-02-23 2012-10-31 株式会社東芝 暗号化装置および復号装置
JP5198526B2 (ja) * 2010-09-21 2013-05-15 株式会社東芝 暗号化装置および復号装置
US8966285B2 (en) * 2011-01-10 2015-02-24 Apple Inc. Securing implementation of a cryptographic process having fixed or dynamic keys
JP5779434B2 (ja) * 2011-07-15 2015-09-16 株式会社ソシオネクスト セキュリティ装置及びセキュリティシステム
JP5481455B2 (ja) * 2011-09-27 2014-04-23 株式会社東芝 暗号処理装置
US8924740B2 (en) * 2011-12-08 2014-12-30 Apple Inc. Encryption key transmission with power analysis attack resistance
JP5612007B2 (ja) * 2012-03-15 2014-10-22 株式会社東芝 暗号化鍵生成装置
ES2731775T3 (es) 2013-04-18 2019-11-19 Risoftdev Inc Sistema y procedimientos de cifrado de datos
CN104573544B (zh) * 2013-10-28 2017-09-12 上海复旦微电子集团股份有限公司 数据的防攻击方法及装置、rsa模幂运算方法、装置和电路
US11550982B2 (en) 2015-11-04 2023-01-10 Chronos Tech Llc Application specific integrated circuit interconnect
US9977853B2 (en) 2015-11-04 2018-05-22 Chronos Tech Llc Application specific integrated circuit link
US10073939B2 (en) 2015-11-04 2018-09-11 Chronos Tech Llc System and method for application specific integrated circuit design
US9977852B2 (en) 2015-11-04 2018-05-22 Chronos Tech Llc Application specific integrated circuit interconnect
US10789358B2 (en) 2015-12-17 2020-09-29 Cryptography Research, Inc. Enhancements to improve side channel resistance
CN105471894A (zh) * 2015-12-28 2016-04-06 国家电网公司 一种电力通信移动运维现场数据加密验证传输的方法
CN107547189A (zh) * 2016-06-28 2018-01-05 埃沙尔公司 免受侧信道分析的保护方法和设备
US10181939B2 (en) 2016-07-08 2019-01-15 Chronos Tech Llc Systems and methods for the design and implementation of an input and output ports for circuit design
US10331835B2 (en) 2016-07-08 2019-06-25 Chronos Tech Llc ASIC design methodology for converting RTL HDL to a light netlist
US10637592B2 (en) 2017-08-04 2020-04-28 Chronos Tech Llc System and methods for measuring performance of an application specific integrated circuit interconnect
US11863304B2 (en) * 2017-10-31 2024-01-02 Unm Rainforest Innovations System and methods directed to side-channel power resistance for encryption algorithms using dynamic partial reconfiguration
US11838402B2 (en) 2019-03-13 2023-12-05 The Research Foundation For The State University Of New York Ultra low power core for lightweight encryption
US11087057B1 (en) 2019-03-22 2021-08-10 Chronos Tech Llc System and method for application specific integrated circuit design related application information including a double nature arc abstraction
CN110166239B (zh) * 2019-06-04 2023-01-06 成都卫士通信息产业股份有限公司 用户私钥生成方法、系统、可读存储介质及电子设备
KR102072335B1 (ko) * 2019-08-14 2020-01-31 동서대학교 산학협력단 스크램블러를 이용한 aes 암호 알고리즘에 대한 전력분석공격 방어기술 적용방법
CN112769552B (zh) * 2020-12-30 2022-08-23 北京宏思电子技术有限责任公司 一种在嵌入式系统中加快线性对运算的实现方法及装置
CN112769557B (zh) * 2020-12-30 2022-10-18 北京宏思电子技术有限责任公司 嵌入式系统中加快sm9双线性对运算的实现方法及装置
JP2024053189A (ja) 2022-10-03 2024-04-15 キヤノン株式会社 暗号処理装置、暗号処理装置の暗号処理方法およびプログラム

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2262551C (en) 1996-08-16 2002-09-17 Bell Communications Research, Inc. Improved cryptographically secure pseudo-random bit generator for fast and secure encryption
EP1710951A3 (en) * 1997-07-17 2006-10-25 Matsushita Electric Industrial Co., Ltd. Elliptic curve calculation apparatus capable of calculating multiples at high speed
US6466668B1 (en) * 1998-01-28 2002-10-15 Hitachi, Ltd. IC card equipped with elliptical curve encryption processing facility
JP2000305453A (ja) * 1999-04-21 2000-11-02 Nec Corp 暗号化装置,復号装置,および暗号化・復号装置
US6295606B1 (en) * 1999-07-26 2001-09-25 Motorola, Inc. Method and apparatus for preventing information leakage attacks on a microelectronic assembly
US7068786B1 (en) * 1999-08-29 2006-06-27 Intel Corporation Dual use block/stream cipher
WO2001056221A2 (en) * 2000-01-31 2001-08-02 Vdg Inc. Block encryption method and schemes for data confidentiality and integrity protection
US6963976B1 (en) * 2000-11-03 2005-11-08 International Business Machines Corporation Symmetric key authenticated encryption schemes
JP4596686B2 (ja) * 2001-06-13 2010-12-08 富士通株式会社 Dpaに対して安全な暗号化
JP3851115B2 (ja) 2001-06-28 2006-11-29 富士通株式会社 暗号回路
US6838122B2 (en) * 2001-07-13 2005-01-04 Micron Technology, Inc. Chemical vapor deposition methods of forming barium strontium titanate comprising dielectric layers
US7142670B2 (en) * 2001-08-14 2006-11-28 International Business Machines Corporation Space-efficient, side-channel attack resistant table lookups
CN1672352A (zh) * 2002-05-23 2005-09-21 爱特梅尔股份有限公司 基于先进加密标准(aes)的硬件密码机
JP3862074B2 (ja) * 2002-06-20 2006-12-27 ソニー株式会社 データ通信システム、情報処理装置および方法、並びにプログラム
JP4357815B2 (ja) * 2002-09-11 2009-11-04 株式会社東芝 暗号演算回路
JP3503638B1 (ja) * 2002-09-26 2004-03-08 日本電気株式会社 暗号装置及び暗号プログラム
KR100813954B1 (ko) * 2003-01-16 2008-03-14 삼성전자주식회사 암호화 장치 및 암호화 방법
EP1496641A3 (en) * 2003-07-07 2005-03-02 Sony Corporation Cryptographic processing apparatus, cryptographic processing method and computer program
US8229108B2 (en) * 2003-08-15 2012-07-24 Broadcom Corporation Pseudo-random number generation based on periodic sampling of one or more linear feedback shift registers
JP3998616B2 (ja) 2003-09-10 2007-10-31 株式会社東芝 暗号化/復号モジュール
JP3803664B2 (ja) * 2003-09-30 2006-08-02 株式会社東芝 乱数生成回路、半導体集積回路、icカード及び情報端末機器
JP2005134478A (ja) * 2003-10-28 2005-05-26 Sony Corp 暗号処理装置、および暗号処理方法、並びにコンピュータ・プログラム
KR100564599B1 (ko) * 2003-12-24 2006-03-29 삼성전자주식회사 역원 계산 회로, 역원계산 방법 및 상기 역원계산 방법을실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수있는 기록매체
FR2867635B1 (fr) * 2004-03-11 2006-09-22 Oberthur Card Syst Sa Procede de traitement de donnees securise, base notamment sur un algorithme cryptographique
US7848514B2 (en) * 2004-05-24 2010-12-07 Research In Motion Limited Table masking for resistance to power analysis attacks
US8065532B2 (en) * 2004-06-08 2011-11-22 Hrl Laboratories, Llc Cryptographic architecture with random instruction masking to thwart differential power analysis
US7715555B2 (en) * 2004-09-07 2010-05-11 Broadcom Corporation Method and system for extending advanced encryption standard (AES) operations for enhanced security
US7496616B2 (en) * 2004-11-12 2009-02-24 International Business Machines Corporation Method, apparatus and system for resistance to side channel attacks on random number generators
KR100967880B1 (ko) * 2004-11-26 2010-07-05 삼성전자주식회사 M6 블록암호시스템
EP1836554B1 (en) * 2004-12-01 2008-04-16 Telecom Italia S.p.A. Method and related device for hardware-oriented conversion between arithmetic and boolean random masking
KR20060081847A (ko) * 2005-01-10 2006-07-13 삼성전자주식회사 비밀키를 보호하는 스마트 카드 및 그것의 방법
US7831833B2 (en) * 2005-04-22 2010-11-09 Citrix Systems, Inc. System and method for key recovery
KR100891323B1 (ko) * 2005-05-11 2009-03-31 삼성전자주식회사 이진 필드 ecc에서 랜덤 포인트 표현을 이용하여 파워해독의 복잡도를 증가시키기 위한 암호화 방법 및 장치
US8019802B2 (en) * 2005-08-24 2011-09-13 Qualcomm Incorporated Cryptographically secure pseudo-random number generator

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101937705B (zh) * 2009-07-01 2012-05-09 慧帝科技(深圳)有限公司 数据储存装置以及数据存取方法
CN105745567A (zh) * 2013-11-12 2016-07-06 谷歌公司 利用外部设备来分担头戴式设备上的文本录入
CN109413051A (zh) * 2018-10-09 2019-03-01 深圳南方德尔汽车电子有限公司 数据加密方法、装置、计算机设备及存储介质
CN113537913A (zh) * 2020-04-16 2021-10-22 上海利云网络科技有限公司 一种高安全性的企业信息管理系统及方法

Also Published As

Publication number Publication date
EP1865481A1 (en) 2007-12-12
CN101147182B (zh) 2010-09-01
WO2006112114A1 (ja) 2006-10-26
JPWO2006112114A1 (ja) 2008-12-04
US8094811B2 (en) 2012-01-10
US20080285743A1 (en) 2008-11-20
JP4823904B2 (ja) 2011-11-24

Similar Documents

Publication Publication Date Title
CN101147182B (zh) 数据加密装置及数据加密方法
CN105324956B (zh) 加密明文数据的方法及设备
CN100511331C (zh) 密码处理装置、密码处理方法及其计算机程序
US8340282B2 (en) Information processing apparatus
CN101542558A (zh) 加密装置、解密装置、加密方法及集成电路
TWI447683B (zh) Information processing device
CN102461058A (zh) 具有输入相关编码的白盒密码系统
CN107637010A (zh) 数据加密装置及方法和数据解密装置及方法
CN105959098A (zh) 基于多分割Feistel网络的保留格式加密算法
CN105637801B (zh) 多形态加密密钥矩阵
JP2020522753A (ja) ブロック暗号を演算するデバイス及び方法
JP2000182012A (ja) 情報処理装置、端タンパ処理装置
KR20200070121A (ko) 다변수 패킹을 이용하는 연산 장치 및 방법
CN107040366A (zh) 一种可携带有效业务信息传输且固定长度的数据加密方法
CN109726565A (zh) 在抗泄漏原语中使用白盒
WO2012131856A1 (ja) 情報処理装置、改ざん検出装置、情報処理方法、改ざん検出方法、情報処理プログラムおよび改ざん検出プログラム
CN104486758A (zh) 智能医疗系统中无线传感网络的加密方法
CN103824197A (zh) 防伪码生成装置
Li et al. A secure and efficient entropy coding based on arithmetic coding
JP2007334016A (ja) データ暗号化装置及びデータ暗号化方法
JP6890589B2 (ja) 計算デバイス及び方法
CN116664123A (zh) 一种基于区块链技术的数字钱包设计方法
Chan et al. On the resistance of new lightweight block ciphers against differential cryptanalysis
KR102062377B1 (ko) 전자서명을 은닉서명으로 변환하는 암호화 방법
WO2017135970A1 (en) Extended ciphertexts

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100901

Termination date: 20200210