CN1549105A - 一种在智能卡中用串行硬件实现aes算法的方法 - Google Patents
一种在智能卡中用串行硬件实现aes算法的方法 Download PDFInfo
- Publication number
- CN1549105A CN1549105A CNA031168884A CN03116888A CN1549105A CN 1549105 A CN1549105 A CN 1549105A CN A031168884 A CNA031168884 A CN A031168884A CN 03116888 A CN03116888 A CN 03116888A CN 1549105 A CN1549105 A CN 1549105A
- Authority
- CN
- China
- Prior art keywords
- key
- serial
- keyni
- iteration
- temp1
- 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
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明涉及一种在智能卡中用串行硬件实现AES算法的方法,其特征在于:设置了控制寄存器、状态寄存器、数据寄存器等通用寄存器与微处理器接口,支持全部3种密钥128位、192位、256位,对单次加解密迭代采用了串行结构,并且在加解密过程中实现了密钥的串行生成,大大简化了电路,降低了成本,提高了智能卡芯片的竞争能力。
Description
技术领域:
本发明涉及一种在智能卡中实现AES(高级加密标准)算法的方法,具体地说是一种在智能卡中用串行硬件实现AES算法的方法。
背景技术:
智能化的IC卡是当今世界日新月异发展的信息化社会中的一颗耀眼的新星,它被公认为世界上最小的个人计算机。智能化IC的概念最初由法国的新闻工作者罗兰.莫雷诺(Roland Moreno)在1972年首先提出,此后法国布尔(Bull)公司率先投入了对这一潜力无穷的高新技术产品的研究与开发。1976年,布尔公司的高级研究员于贡(Ugon)先生所领导的研究小组首先研制了世界上第一张由双晶片(微处理器和存储器)组成的智能卡,接着又于1978年制成了单晶片智能卡,取得了技术专利。在此后的十几年间,除了法国的布尔公司之外,世界上先后有Motorola,Thomson,Hitachi,OKI,Toshiba,Sharp,Atmel,Gemplus,Schlumberger,Phillips等十几家公司相继投入了智能卡芯片和卡片成品的开发和生产,形成了一个世界性的新兴技术产业。
智能IC卡是把具有存储、加密及数据处理能力的芯片镶嵌于塑料基片中,这种既具有智能性,又便于携带的卡片,为现代信息的处理和传递提供了一种全新的手段,它一出现就倍受重视。1987年起,国际标准化组织ISO专门为IC制订了国际标准,ISO/IEC7816-1,2,3,4,5,6。这些标准为IC卡在全世界范围内的推广和应用,创造了规范化的前提和条件。
智能化的IC卡具有突出的3S特点,即Standard(国际标准化)、Smart(灵巧智能化)和Security(安全性)。因而发展迅速,在金融、通信、交通等众多领域中后来居上,即使在那些磁卡已经普及应用的范围也将被取而代之。无怪一些企业家把IC卡称作开创市场之卡,也就是说,IC卡不仅改进了现有多种卡的使用方法和功能作用,它还不断开创出新的应用领域。
现在,智能卡在国内已经被越来越广泛的应用在如金融、社保、通讯等领域。但是,与此同时,对智能卡的安全性也受到极大关注。要想使今卡工程获得成功,智能化IC卡得以广泛流行,就必须解决安全性和可靠性的问题。所谓安全性的实质就是如何确保当事人以外的客体不得介入;而可靠性的实质是如何鉴定当事人的真伪,以及所传递信息的真伪和完整性。当前,安全性的保障靠加密,以确保他人不得读取或窜改所传递的信息;可靠性靠数字签名技术。因此在智能卡的硬件中越来越多的集成了各种加密协处理器以实现当前广泛采用了的安全技术,如加密、签名和鉴别、认证等。
目前使用最广泛的加密方法都基于1977年被美国标准局(National Bureau of Standards,现在的美国标准与技术协会,NIST)作为第46号联邦信息处理标准而采用的数据加密标准DES。在DES中数据以64bit分组进行加密,密钥长度为56bit。加密算法经过一系列的步骤把64bit的输入变换成64bit的输出,解密过程中使用同样的步骤和同样的密钥。
虽然在目前对称加密体制中较为流行算法是DES算法,但是DES算法也面临很大的安全威胁。DES加密算法也有不足之处,普遍的看法是:
1)S盒子的设计虽然是非线性的,但还不是随机性的
2)由于以前尚无有效的破译DES的方法,Diffie和Hellman提出对密钥进行穷举搜索,鉴于DES互补性使得对密钥的穷举搜索量减少了一半。DES的密钥长度为56位,密钥空间容量为256,现仅需搜索其1/2,这是一弱点
3)DES存在着4个弱密钥和12个半弱密钥,应当避免使用
4)DES的加密算法是在一维空间中进行的
5)DES信息包密文不是时间的函数
6)密钥长度太短
7)加密后的密钥和明文之间的痕迹还应减少
鉴于以上原因,美国国家标准和技术协会建议放弃使用单重DES,而3重DES也只将继续被保留若干年。紧跟着,2001年11月美国国家标准和技术协会通过了AES(Advanced EncryptionStandard)高级加密标准。AES采用Rijndael加密算法,一种对称的块加密算法,支持128位、192位、256位的密钥和128位的数据。针对3种密钥长度,数据和密钥需要分别迭代10次、12次、14次,得到最后结果,迭代次数用Nr表示。同时每次迭代的密钥由输入的初始密钥经过运算产生。
Rijndael是一个有10、12、14次迭代的线性变换,其迭代次数依赖于密钥的长度。一个被Rijndael处理的数据块被分为一个字节阵列,每次加密操作就是一个字节的导向。Rijndael的轮函数分为4层。在第一层,每个字节用一个8×8 S-box。第二和第三层是线性混合层,阵列行被移位,列被混叠。在第四层,子密钥字节是执行异或操作到阵列中的每一个字节的。在最后一轮中,不采用列的混叠。
全方位考虑,Rijndael汇聚了安全、性能、效率,易用和灵活等优点,使它成为AES最合适的选择,尤其是Rijndael在无论有无反馈模式的计算环境下的硬、软件中都能显示出其非常好的性能。它的密钥安装时间很好,也具有好的灵敏度。Rijndael的非常低的内存需求也使它很适合用于受限环境中,在这样的环境下它仍可以表现出出色的性能。Rijndael的操作简单,并可抵御强大和实时的攻击。此外,它还有许多未被特别强调的防御性能。另外,在提供这些保护的同时也没有影响Rijndael的性能。从分组长度和密钥长度的观点来看,Rijndael设计带有灵活性,同时这种算法也允许一定循环次数的修正,但这个特点还需进一步研究,在现在还不被认同。最后要说的,Rijndael内部循环结构使得它表现出有益于并行水平结构的很好的潜能。
Rijndael在数据块和密钥长度的设计上也很灵活,算法可提供不同的迭代次数,虽然这些特征还需更深入的研究,短期内不可能被利用,但最终,Rijndael内在的迭代结构会显示有好的潜能来防御入侵行为。
AES被开发用于替代DES,但NIST预测3重DES仍将在未来的一段时间内作为一种实用的算法(如用于美国政府),而单DES将退出历史舞台。
AES将被设计有三个密钥长度:128,192,256bits,在十进制里,这表示:
1)3.4×1038约为128-bit密钥
2)6.2×1057约为192-bit密钥
3)1×1077约为256-bit密钥
比较一下,AES的128-bit密钥就比DES的56-bit密钥强1021倍。
1990年以来,特制的“DES Cracker”的机器可以在几个小时内找出一个DES密钥。换句话说,通过测试所有可能的密钥值,此硬件可以确定用于加密信息的是哪个密钥。假设一台一秒内可找出DES密钥的机器(如,每秒试255个密钥),如果用它来找出128-bitAES的密钥,大约需要149万亿年。
NIST会继续检测此算法的安全性,并将在未来时间内处理可能产生的安全问题。NIST会持续关注Rijndael的加密分析的发展,一旦AES成为正式的标准,此标准将会每隔五年重新进行评估,对标准的维护也会持续下去。
没人知道AES或其它的加密算法会持续多久,NIST的数据加密标准(DES)是一个美国政府标准,知道被庞大的并行网络电脑攻击和特定的“DES-Cracking”硬件攻克时,它已连续使用了20年。AES比DES支持更长的密钥。除非一些对AES的攻击速度比密钥耗尽(key exhaustion)还要快,否则AES可保持超过20年之久的安全。
目前在AES算法的实现方法中,大多数是采用软件方法实现,而硬件实现方法存在硬件开销大,成本过高等缺点:如在AES算法中单次迭代包含数据变换、行移位、列混叠、密钥运算等操作,而目前的硬件实现方法在一个时钟周期内完成单次迭代,这样数据变换和列混叠的硬件开销很大,约为4万门左右;同时在AES算法中的每次迭代需要的密钥生成也是在一个时钟周期完成,硬件开销很大,约为1万门左右;另外在解密过程中,由于密钥是逆序的,因此所有迭代密钥需要一次生成,再逆序使用,硬件开销更大。若要支持全部3种密钥,硬件实现会将近10万门,如此则无法在智能卡等对芯片面积有一定要求、限制的场合运用。
发明内容:
本发明的目的在于在加解密过程中实现了密钥的串行生成,大大简化了电路,降低了成本,提高了智能卡芯片的竞争能力。
为了实现上述目的,本发明的技术方案是:一种在智能卡中用串行硬件实现AES算法的方法,包括采用通用的微处理器接口,加解密步骤如下:
1)初始化数据和密钥寄存器
2)设定密钥长度
3)装载密钥
4)装载数据
5)设定加密或解密
6)启动加解密
其特征在于:加密过程进行Nr次的加密迭代,同时进行相应的密钥串行生成;解密过程分为两个步骤,先进行密钥预生成(与加密过程的密钥串行生成一致),随后进行Nr次解密迭代的解密过程,同时进行密钥串行生成(逆向);
其中,串行处理方法实现单次加密迭代的步骤为:
1)数据变换
2)数据行移位
3)数据列混叠
4)密钥运算
在第一次迭代前先进行密钥运算,在最后一次迭代时省略步骤3。
串行处理方法实现单次解密迭代的步骤为:
1)数据逆变换
2)数据行逆移位
3)密钥运算
4)数据列逆混叠
在第一次迭代前先进行密钥运算,在最后一次迭代时省略步骤4。
Nr可以是10、12或14,密钥串行生成使用8字作为迭代密钥存储器,即i=0,1,2,3,4,5,6,7。
密钥串行生成的正向公式如下:
Nr=10,即密钥长度为128位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3
Temp1=Subword(Rotword(key3))^Rcon;
Nr=12,即密钥长度为192位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3,4,5
KeyNi=KeyNi-1,i=6,7
其中Temp1=SubWord(RotWord(Key5))^Rcon;
Nr=14,即密钥长度为256位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3
KeyNi=Keyi^Keyi-1^…^Key4^Temp2,i=4,5,6,7
其中Temp1=SubWord(RotWord(Key7)^Rcon,
Temp2=SubWord(Key3^Key2^Key1^Key0^Temp1);
密钥串行生成的逆向公式如下:
Nr=10,即密钥长度为128位
KeyN0=Key0^Temp1;
KeyNi=KeyNi^KeyNi-1,i=1,2,3
其中Temp1=SubWord(RotWord(Key3^Key2))^Rcon;
Nr=12,即密钥长度为192位
KeyN0=Key0^Temp1;
KeyNi=KeyNi^KeyNi-1,i=1,2,3,4,5
其中Temp1=SubWord(RotWord(Key5^Key4)^Rcon;
Nr=14,即密钥长度为256位
KeyNi=KeyNi^KeyNi-1,i=1,2,3,5,6,7
KeyN4=Key4^Temp1;
KeyN0=Key0^Temp2;
其中Temp1=SubWord(RotWord(Key7^Key6))^Rcon,
Temp2=SubWord^(Key6);
密钥串行生成包含以下步骤:
1)4个时钟周期的数据变换,得到Temp1;若密钥长度不为256位,进入第3步
2)4个时钟周期的数据变换,得到Temp2
3)1个时钟周期的密钥更新,密钥更新参照密钥串行生成的公式在Nr=10时,每次迭代前,均需进行密钥的串行生成并输出,在Nr=12时,即密钥长度为192位时,每3次迭代需2次的密钥串行生成,并应合理选择输出,在Nr=14时,即密钥长度为256位时,每2次迭代需1次的密钥串行生成,并应合理选择输出。
本发明提供一种在智能卡中用串行硬件实现AES算法的加、解秘方法,大大简化了电路,降低了成本,提高了智能卡芯片的竞争能力。
具体实施方式:
下面结合附图和实施例对本发明作进一步的描述,
附图1为本发明的AES串行硬件实现的模块示意图,
附图2为本发明的加密过程示意图,
附图3为本发明的解密过程示意图,
附图4为本发明的加密过程单次迭代串行实现示意图,
附图5为本发明的密钥串行生成示意图,
附图6为本发明的密钥生成算法(128位)流程示意图,
附图7为本发明的密钥串行生成的硬件连接示意图,
附图8为本发明的控制模块的状态转移示意图,
本发明为一种在智能卡中用串行硬件实现AES算法的方法,包括采用通用的微处理器接口,加解密步骤如下:
1)初始化数据和密钥寄存器
2)设定密钥长度
3)装载密钥
4)装载数据
5)设定加密或解密
6)启动加解密其主要特征在于:加密过程进行Nr次的加密迭代,同时进行相应的密钥串行生成,如图2所示;解密过程分为两个步骤,先进行密钥预生成(与加密过程的密钥串行生成一致),随后进行Nr次解密迭代的解密过程,同时进行密钥串行生成(逆向),如图3所示;
其中,串行处理方法实现单次加密迭代的步骤(以128位为例)如图4所示:
1)128位的数据经过16个时钟周期的数据变换
2)数据经过1个时钟周期的行移位
3)数据经过4个周期的列混叠
4)数据经过1个时钟周期的密钥运算
在第一次迭代前先进行密钥运算,在最后一次迭代时省略步骤3;
串行处理方法实现单次解密迭代的步骤为:
1)128位的数据经过16个时钟周期的数据逆变换
2)数据经过1个时钟周期的行逆移位
3)数据经过1个时钟周期的密钥运算
4)数据经过4个周期的列逆混叠
在第一次迭代前先进行密钥运算,在最后一次迭代时省略步骤4;
加密迭代次数Nr可以是10、12或14,密钥串行生成使用8字作为迭代密钥存储器,密钥串行生成的正向公式如下:
Nr=10,即密钥长度为128位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3
Temp1=Subword(Rotword(key3))^Rcon;
Nr=12,即密钥长度为192位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3,4,5
KeyNi=KeyNi-1,i=6,7
其中Temp1=SubWord(RotWord(Key5))^Rcon;
Nr=14,即密钥长度为256位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3
KeyNi=Keyi^Keyi-1^…^Key4^Temp2,i=4,5,6,7
其中Temp1=SubWord(RotWord(Key7)^Rcon,
Temp2=SubWord(Key3^Key2^Key1^Key0^Temp1);
密钥串行生成的逆向公式如下:
Nr=10,即密钥长度为128位
KeyN0=Key0^Temp1;
KeyNi=KeyNi^KeyNi-1,i=1,2,3
其中Temp1=SubWord(RotWord(Key3^Key2)^Rcon;
Nr=12,即密钥长度为192位
KeyN0=Key0^Temp1;
KeyNi=KeyNi^KeyNi-1,i=1,2,3,4,5
其中Temp1=SubWord(RotWord(Key5^Key4))^Rcon;
Nr=14,即密钥长度为256位
KeyNi=KeyNi^KeyNi-1,i=1,2,3,5,6,7
KeyN4=Key4^Temp1;
KeyN0=Key0^Temp2;
其中Temp1=SubWord(RotWord(Key7^Key6)^Rcon,
Temp2=SubWord^(Key6);
密钥串行生成如图5所示,包含以下步骤:
1)4个时钟周期的数据变换,得到Temp1;若密钥长度不为256位,进入第3步
2)4个时钟周期的数据变换,得到Temp2
3)1个时钟周期的密钥更新,密钥更新参照密钥串行生成的公式AES算法输入的密钥长度可为4/6/8字。对应地,需要经过10/12/14次的迭代,每一次迭代需要4字的密钥,共需产生44/52/60字的密钥。以密钥长度为128位为例,其中Nk=4,表示密钥字长;Nr=10,表示迭代次数;Nb=4,表示迭代过程中的块大小。AES算法采用加密密钥K执行密钥生成程序以产生一张密钥列表。密钥生成程序共产生Nb(Nr+1)个字:算法需要一组由Nb个字组成的初始密钥,而且在Nr次迭代过程中每一次均需要由Nb个字组成的密钥数据。由此产生的密钥列表包含一个长度为4字的线性矩阵,用[wi],其中,0≤i≤Nb(Nr+1)。密钥生成程序流程如图6所示,首先扩展密钥的前Nk个字由加密密钥K填充。每一个紧接着的字w[i]都等于前一个字w[i-1]和Nk个以前的字w[i-Nk]的异或。对于那些从顺序上来说是Nk倍数的字,在异或之前要对w[i-1]进行一次变换,然后才与迭代常数矩阵Rcon[i]进行异或。这个变换包含一个在字中以字节方式进行的循环移位RotWord();及一个四字节查表SubWord()。当迭代次数Nr=10,即密钥长度为128位时:
Key0<=Key0^(Temp^Rcon);
Key1<=Key1^Key0^(Temp^Rcon);
Key2<=Key2^Key1^Key0^(Temp^Rcon);
Key3<=Key3^Key2^Key1^Key0^(Temp^Rcon);
其中Temp=Subword(Rotword(key3))。
密钥输入、输出形式为:KEY={Key0,Key1,Key2,Key3}。
由于迭代运算的密钥长度仅需128位,因此在Nr=10时,每次迭代前,均需进行密钥的串行生成并输出;在Nr=12时,每3次迭代需2次的密钥串行生成,并应合理选择输出;在Nr=14时,每2次迭代需1次的密钥串行生成,并应合理选择输出。
为了便于与微处理器接口,设置了控制寄存器、状态寄存器、数据寄存器等通用寄存器,利用通用寄存器实现加解密步骤如下:
1)初始化数据和密钥寄存器
2)设定密钥长度
3)装载密钥
4)装载数据
5)设定加密或解密
6)启动加解密
读取状态寄存器可以判断操作是否结束;在操作结束后可以读取结果。
密钥串行生成的实现电路如图7所示,当前的迭代密钥是由上一次迭代密钥与控制模块运算后串行地生成。
图8为本发明的控制模块的状态转移示意图,左半部分详细描述了串行实现单次加解密迭代过程的步骤,右半部分则是对应加解密迭代的密钥串行生成的步骤。
综上所述,通过设置控制寄存器、状态寄存器、数据寄存器等通用寄存器与微处理器接口,完成装载密钥、数据并确定加、解密方式;启动加解密后进入AES算法的加、解密过程,经过Nr次的串行迭代过程,以及对应的密钥串行生成过程,得到最后的加解密的数据。完成了在智能卡中的以串行硬件的方式实现AES算法。
Claims (3)
1、一种在智能卡中用串行硬件实现AES算法的方法,包括采用通用的微处理器接口,加解密步骤如下:
1)初始化数据和密钥寄存器
2)设定密钥长度
3)装载密钥
4)装载数据
5)设定加密或解密
6)启动加解密
其特征在于:加密过程进行Nr次的加密迭代,同时进行相应的密钥串行生成;解密过程分为两个步骤,先进行密钥预生成,随后进行Nr次解密迭代的解密过程,同时进行密钥串行逆向生成。
其中,串行处理方法实现单次加密迭代的步骤为:
1)数据变换
2)数据行移位
3)数据列混叠
4)密钥运算
在第一次迭代前先进行密钥运算,在最后一次迭代时省略步骤3。串行处理方法实现单次解密迭代的步骤为:
1)数据逆变换
2)数据行逆移位
3)密钥运算
4)数据列逆混叠
在第一次迭代前先进行密钥运算,在最后一次迭代时省略步骤4。迭代次数Nr可以是10、12或14,密钥串行生成使用8字作为迭代密钥存储器,即i=0,1,2,3,4,5,6,7。
密钥串行生成的正向公式如下:
Nr=10,即密钥长度为128位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3
Temp1=Subword(Rotword(key3))^Rcon;
Nr=12,即密钥长度为192位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3,4,5
KeyNi=KeyNi-1,i=6,7
其中Temp1=SubWord(RotWord(Key5))^Rcon;
Nr=14,即密钥长度为256位
KeyNi=Keyi^Keyi-1^…^Key0^Temp1,i=0,1,2,3
KeyNi=Keyi^Keyi-1^…^Key4^Temp2,i=4,5,6,7
其中Temp1=SubWord(RotWord(Key7))^Rcon,
Temp2=SubWord(Key3^Key2^Key1^Key0^Temp1);
密钥串行生成的逆向公式如下:
Nr=10,即密钥长度为128位
KeyN0=Key0^Temp1;
KeyNi=KeyNi^KeyNi-1,i=1,2,3
其中Temp 1=SubWord(RotWord(Key3^Key2))^Rcon;
Nr=12,即密钥长度为192位
KeyN0=Key0^Temp1;
KeyNi=KeyNi^KeyNi-1,i=1,2,3,4,5
其中Temp1=SubWord(RotWord(Key5^Key4))^Rcon;
Nr=14,即密钥长度为256位
KeyNi=KeyNi^KeyNi-1,i=1,2,3,5,6,7
KeyN4=Key4^Temp1;
KeyN0=Key0^Temp2;
其中Temp1=SubWord(RotWord(Key7^Key6))^Rcon,
Temp2=SubWord^(Key6);
2、根据权利要求1所述的一种在智能卡中用串行硬件实现AES算法的方法,其特征在于:密钥串行生成包含以下步骤:
1)4个时钟周期的数据变换,得到Temp1;若密钥长度不为256位,进入第3步
2)4个时钟周期的数据变换,得到Temp2
3)1个时钟周期的密钥更新,密钥更新参照密钥串行生成的公式
3、根据权利要求1、2所述的一种在智能卡中用串行硬件实现AES算法的方法,其特征在于:在Nr=10时,每次迭代前,均需进行密钥的串行生成并输出,在Nr=12时,即密钥长度为192位时,每3次迭代需2次的密钥串行生成,并应合理选择输出,在Nr=14时,即密钥长度为256位时,每2次迭代需1次的密钥串行生成,并应合理选择输出。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA031168884A CN1549105A (zh) | 2003-05-13 | 2003-05-13 | 一种在智能卡中用串行硬件实现aes算法的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA031168884A CN1549105A (zh) | 2003-05-13 | 2003-05-13 | 一种在智能卡中用串行硬件实现aes算法的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1549105A true CN1549105A (zh) | 2004-11-24 |
Family
ID=34320514
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA031168884A Pending CN1549105A (zh) | 2003-05-13 | 2003-05-13 | 一种在智能卡中用串行硬件实现aes算法的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1549105A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921382B (zh) * | 2006-09-06 | 2010-05-12 | 华为技术有限公司 | 一种基于aes算法的加解密方法及加解密器 |
CN101478392B (zh) * | 2009-01-19 | 2010-12-08 | 山东大学 | 利用vlsi实现128位密钥长度aes算法的装置 |
CN101958790A (zh) * | 2010-10-09 | 2011-01-26 | 中国人民解放军信息工程大学 | 无线通信网络数字信息加密或解密方法 |
CN101184339B (zh) * | 2007-12-07 | 2011-11-30 | 中兴通讯股份有限公司 | 一种密钥长度协商方法 |
CN101588233B (zh) * | 2008-05-19 | 2013-10-09 | 北京大学深圳研究生院 | 一种无线传感器网络节点应用中aes协处理器中的模块复用方法 |
CN104683097A (zh) * | 2015-03-04 | 2015-06-03 | 深圳中科讯联科技有限公司 | 一种轮密钥动态生成对称密码的电路及方法 |
-
2003
- 2003-05-13 CN CNA031168884A patent/CN1549105A/zh active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1921382B (zh) * | 2006-09-06 | 2010-05-12 | 华为技术有限公司 | 一种基于aes算法的加解密方法及加解密器 |
CN101184339B (zh) * | 2007-12-07 | 2011-11-30 | 中兴通讯股份有限公司 | 一种密钥长度协商方法 |
CN101588233B (zh) * | 2008-05-19 | 2013-10-09 | 北京大学深圳研究生院 | 一种无线传感器网络节点应用中aes协处理器中的模块复用方法 |
CN101478392B (zh) * | 2009-01-19 | 2010-12-08 | 山东大学 | 利用vlsi实现128位密钥长度aes算法的装置 |
CN101958790A (zh) * | 2010-10-09 | 2011-01-26 | 中国人民解放军信息工程大学 | 无线通信网络数字信息加密或解密方法 |
CN101958790B (zh) * | 2010-10-09 | 2012-10-17 | 中国人民解放军信息工程大学 | 无线通信网络数字信息加密或解密方法 |
CN104683097A (zh) * | 2015-03-04 | 2015-06-03 | 深圳中科讯联科技有限公司 | 一种轮密钥动态生成对称密码的电路及方法 |
CN104683097B (zh) * | 2015-03-04 | 2018-12-14 | 深圳中科讯联科技有限公司 | 一种轮密钥动态生成对称密码的电路及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1172244C (zh) | 著作权保护系统、记录设备及解密设备 | |
CN1136692C (zh) | 数据变换装置及数据变换方法 | |
CN1729645A (zh) | 保密通信 | |
CN1663172A (zh) | 为aes rijndael分组密码产生轮次密钥 | |
CN101040275A (zh) | 内容加密方法、系统和利用该加密方法通过网络提供内容的方法 | |
CN1656733A (zh) | 块密码实现方式中的s-box加密 | |
CN1746941A (zh) | 信息处理设备和方法、程序、和记录介质 | |
CN1528068A (zh) | 用于计算机网络中分布式数据处理的集成式保护的方法与系统 | |
CN1310464C (zh) | 一种基于公开密钥体系的数据安全传输的方法及其装置 | |
JP6137173B2 (ja) | 暗号化データベースシステム、クライアント端末およびデータベースサーバ、結合方法およびプログラム | |
CN101061661A (zh) | 加密方法 | |
CN1682483A (zh) | 用于数据处理系统的有效加密和认证 | |
CN1251715A (zh) | 有限域离散对数密码系统的割圆多项式结构 | |
CN1909023A (zh) | 发送/接收系统和方法、发送/接收装置和方法及所用程序 | |
CN101040474A (zh) | 为提高安全性的置换数据变换 | |
CN1758591A (zh) | 在加密系统中处理已屏蔽数据的方法、电路和程序产品 | |
CN1697369A (zh) | 分组密码加密解密的方法及其加密解密器 | |
Thangapalani et al. | Securing Medical Image Transmission using Memetic Algorithm | |
CN1518269A (zh) | 数据加密设备和方法 | |
CN1549105A (zh) | 一种在智能卡中用串行硬件实现aes算法的方法 | |
CN1258148C (zh) | 高安全等级对称密钥算法的加密、解密方法及加密器 | |
Oh et al. | Depth-optimized implementation of ASCON quantum circuit | |
CN1108040C (zh) | 解密方法及电子装置 | |
CN1806410A (zh) | 加密通信系统 | |
CN1180351C (zh) | 强化错乱的分组密码加密方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |