CN101938739A - 一种应用于无线局域网的加密方法 - Google Patents

一种应用于无线局域网的加密方法 Download PDF

Info

Publication number
CN101938739A
CN101938739A CN2010102724207A CN201010272420A CN101938739A CN 101938739 A CN101938739 A CN 101938739A CN 2010102724207 A CN2010102724207 A CN 2010102724207A CN 201010272420 A CN201010272420 A CN 201010272420A CN 101938739 A CN101938739 A CN 101938739A
Authority
CN
China
Prior art keywords
group
key
word
expressly
take turns
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
CN2010102724207A
Other languages
English (en)
Other versions
CN101938739B (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.)
CCore Technology Suzhou Co Ltd
Original Assignee
CCore Technology Suzhou 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 CCore Technology Suzhou Co Ltd filed Critical CCore Technology Suzhou Co Ltd
Priority to CN201310176066.1A priority Critical patent/CN103236923B/zh
Priority to CN201010272420.7A priority patent/CN101938739B/zh
Publication of CN101938739A publication Critical patent/CN101938739A/zh
Application granted granted Critical
Publication of CN101938739B publication Critical patent/CN101938739B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

一种应用于无线局域网的加密方法,将第一组明文编码以字为单位分为4个编码字,将第一组主密钥编码以字为单位分为4个密钥字;将所述第一组主密钥编码中第1位密钥字至第3位密钥字与第0位密钥字运算生成一个字长的第1轮子密钥,再将第1位密钥字至第3位密钥字前移至第0位至第2位密钥字的位置,将所述第1轮子密钥移至第3位密钥字的位置;送入第二组明文编码,该第二组明文编码与其上一组明文编码间隔至少4轮时钟周期;同时,送入第二组主密钥编码,该第二组主密钥编码与其上一组主密钥编码的时间间隔与所述第二组明文编码与第一组明文编码的时间间隔相同。该方法大大提高了加解密速度和单位时间的数据吞吐量,且数据的安全性强。

Description

一种应用于无线局域网的加密方法
技术领域
本发明涉及分组加密算法的实现方法,尤其涉及一种用于无线局域网的加密方法。
背景技术
随着无线局域网的广泛应用,其安全性问题越来越突出。对于无线局域网来说,在安全性方面非常脆弱,这是由于传输速率能达到11M,而且覆盖范围达100米。正是其传输速度快,覆盖范围广,才使它在安全方面非常脆弱。因为数据在传输的过程中都曝露在空中,很容易被别有用心的人截取数据包。
目前,在现有算法的实现方式中,大多还是采用软件方法实现,其实现方式简单方便,但其运算速度却不是太理想,很难满足实时的需要,而硬件实现的方式存在硬件开销大,成本过高,电路实现面积和功耗大等不足。而且随着社会对信息安全的需要越来越高,因此对加密算法的电路实现以及对密钥的管理也都提出了很大的挑战,在实际应用中,相对于解密的相关性能来说用户往往更加关注加密的性能指标,因此如何在满足加密数据安全性的同时,并提高密码算法的加密速度,这又是一个新的难题。
发明内容
本发明目的是提供一种应用于无线局域网的加密方法,该方法大大提高了加解密速度和单位时间的数据吞吐量,且数据的安全性强。
为达到上述目的,本发明采用的技术方案是:
一种应用于无线局域网的加密方法,包括以下步骤:
步骤一.将第一组明文编码以字为单位分为4个编码字,将第一组主密钥编码以字为单位分为4个密钥字;
步骤二.将所述第一组主密钥编码中第1位密钥字至第3位密钥字与一常量异或运算后,再作可逆变换,再与第0位密钥字异或运算生成一个字长的第1轮子密钥,再将第1位密钥字至第3位密钥字前移至第0位至第2位密钥字的位置,将所述第1轮子密钥移至第3位密钥字的位置,并保留该轮子密钥;
步骤三.重复步骤二生成第一组主密钥编码的31个子密钥;
步骤四.将所述第1轮子密钥与所述第一组明文编码第1位编码字至第3位编码字异或运算后,再作可逆变换,再与第0位编码字异或运算生成一个字长的第一轮密文字,再将第1位编码字至第3位编码字前移至第0位至第2位编码字的位置,将所述第一轮密文字移至第3位编码字的位置;
步骤五.送入第二组明文编码,该第二组明文编码以字为单位分为4个编码字,该第二组明文编码与其上一组明文编码间隔至少4轮时钟周期;同时,送入第二组主密钥编码,第二组主密钥编码以字为单位分为4个密钥字,该第二组主密钥编码与其上一组主密钥编码的时间间隔与所述第二组明文编码与第一组明文编码的时间间隔相同;
步骤六.重复步骤二生成第二组主密钥编码的31个子密钥;
步骤七.对所述第一组明文编码依次按顺序使用第一组主密钥编码的第2轮子密钥至第32轮子密钥重复步骤三进行31轮加密;同理,对所述第二组明文编码依次按顺序使用第二组主密钥编码的第1轮子密钥至第32轮子密钥重复步骤三进行32轮加密;
步骤八.当一组明文编码经过32轮加密后,将其第0位至第3位编码字作反序变换,获得密文编码。
上述技术方案中的有关内容解释如下:
1.上述方案中,所述第一组明文编码与其上一组明文编码间隔为4轮时钟周期。
2.上述方案中,所述加密过程中可逆变换为:T为加密过程中可逆变换,其中T为Z32 2到Z32 2的一个可逆变换,由非线性变换τ和线性变化L复合而成,
即T(.)=L(τ(.))。其中:非线性变换τ:它是由4个并行的S盒构成。设输入为A=(a1,a2,a3,a4)∈(Z8 2)4,输出为B=(b1,b2,b3,b4)∈(Z8 2)4,则有:
(b1,b2,b3,b4)=τ(A)=(Sbox(a1),Sbox(a2),Sbox(a3),Sbox(a4))
线性变换L:非线性变换τ的输出也即为线性变换L的输入。设输入为B∈Z32 2,则有:
Figure BSA00000256629500021
其中<<i为32比特循环左移i位。
由于上述技术方案运用,本发明与现有技术相比具有下列优点和效果:
(1)本发明设计简洁,加解密方式相同,密钥扩展方式和加解密方式类似,加解密中和密钥扩展中的S盒也相同,该算法实现时硬件的利用率更高,且有利于整个算法在更小的电路面积上实现;其次,安全性高,对于我国的信息安全有更加可靠的保证。通过对密钥的实时更新,使得数据的安全性更好,可以阻止更多攻击。
(2)加解密速度快,本发明通过分别寄存加解密算法过程中所产生的每一轮的轮密文和由密钥扩展算法过程中所产生的每一轮的子密钥,再由一个数据输入指示信号data_input和主密钥输入指示信号key_input来分别控制数据的输入和主密钥的输入,从而可在经过32个时钟单元获得第一组128比特数据的密文之后,每隔4个时钟周期即可获得第二组,第三组,直到所有数据的密文,从而不用分别等待32个时钟单元才能获得相应的明文数据的密文,也即4个时钟单元即可处理一组128比特的明文数据,因此大大的提高了数据的加解密速度和数据的吞吐量,从而可以大批量的处理数据,使得加解密处理速度获得了极大的提高。
(3)电路实现简单,通过定义不同的寄存器用于寄存每一轮所产生的轮密文和子密钥,从而使得电路实现相对简单,不需要过多的考虑加解密算法和密钥扩展算法的逻辑实现。
(4)适用面更广,通过大幅的提高了加解密处理速度和数据吞吐量,从而使得能适用于对速度要求更高的应用领域,从而使得其的使用范围扩大了,能适用不同的应用环境。
附图说明
附图1为本发明整体电路结构示意图;
附图2为本发明密钥扩展电路每一轮的运算内部框架示意图;
附图3为本发明加解密电路整体框架示意图;
附图4为本发明加解密算法中每一轮的运算的内部框架示意图。
具体实施方式
下面结合附图及实施例对本发明作进一步描述:
实施例:一种应用于无线局域网的加密方法,
包括以下步骤:
步骤一.将第一组明文编码以字为单位分为4个编码字,将第一组主密钥编码以字为单位分为4个密钥字。
步骤二.将所述第一组主密钥编码中第1位密钥字至第3位密钥字与一常量异或运算后,再作可逆变换,再与第0位密钥字异或运算生成一个字长的第1轮子密钥,再将第1位密钥字至第3位密钥字前移至第0位至第2位密钥字的位置,将所述第1轮子密钥移至第3位密钥字的位置,并保留该轮子密钥。
步骤三.重复步骤二生成第一组主密钥编码的31个子密钥。
步骤四.将所述第1轮子密钥与所述第一组明文编码第1位编码字至第3位编码字异或运算后,再作可逆变换,再与第0位编码字异或运算生成一个字长的第一轮密文字,再将第1位编码字至第3位编码字前移至第0位至第2位编码字的位置,将所述第一轮密文字移至第3位编码字的位置。
步骤五.送入第二组明文编码,该第二组明文编码以字为单位分为4个编码字,该第二组明文编码与其上一组明文编码间隔至少4轮时钟周期;同时,送入第二组主密钥编码,第二组主密钥编码以字为单位分为4个密钥字,该第二组主密钥编码与其上一组主密钥编码的时间间隔与所述第二组明文编码与第一组明文编码的时间间隔相同。
步骤六.重复步骤二生成第二组主密钥编码的31个子密钥。
步骤七.对所述第一组明文编码依次按顺序使用第一组主密钥编码的第2轮子密钥至第32轮子密钥重复步骤三进行31轮加密;同理,对所述第二组明文编码依次按顺序使用第二组主密钥编码的第1轮子密钥至第32轮子密钥重复步骤三进行32轮加密。
步骤八.当一组明文编码经过32轮加密后,将其第0位至第3位编码字作反序变换,获得密文编码。
所述第一组明文编码与其上一组明文编码间隔为4轮时钟周期。
所述加密过程中可逆变换为:T为加密过程中可逆变换,其中T为Z32 2到Z32 2的一个可逆变换,由非线性变换τ和线性变化L复合而成,
即T(.)=L(τ(.))。其中:非线性变换τ:它是由4个并行的S盒构成。设输入为A=(a1,a2,a3,a4)∈(Z8 2)4,输出为B=(b1,b2,b3,b4)∈(Z8 2)4,则有:
(b1,b2,b3,b4)=τ(A)=(Sbox(a1),Sbox(a2),Sbox(a3),Sbox(a4))
线性变换L:非线性变换τ的输出也即为线性变换L的输入。设输入为B∈Z32 2,则有:
Figure BSA00000256629500041
其中<<i为32比特循环左移i位。
本实施例上述内容解释如下。
附图1中各信号的功能描述如下:
输入信号:
clk:系统时钟输入,
rst:复位信号,低电平有效,
crypt:加解密模式,0为解密,1为加密,
key[127:0]:算法的主密钥,位宽为128比特,
new_key:更新主密钥指示信号,
sms4_in[127:0]:明文输入,位宽为128比特。
data_input:明文输入指示信号。
Key_input:密钥输入指示信号。
输出信号:
sms4_out[127:0]:密文输出,位宽为128比特,
cryptdone:加解密结束指示信号,
roundcipher[31:0]:轮密文,位宽为32比特。
内部信号:
round[5:0]:轮选择控制信号,位宽为6比特,
roundkey[31:0]:轮密钥,位宽为32比特。
加密密钥长度为128比特,表示为MK=(MK0,MK1,MK2,MK3),其中MKi(i=0,1,2,3)为字,轮密钥表示为(rk0,rk1,...,rk31),其中rki(i=0,1,...,31)为字。轮密钥由加密密钥生成。FK=(FK0,FK1,FK2,FK3)为系统参数,CK=(CK0,CK1,...,CK31)为固定参数,用于密钥扩展算法,其中FKi(i=0,1,2,3),CKi(i=0,1,...,31)为字。本算法采用非线性迭代结构,以字为单位进行加密运算,称一次迭代运算为一轮变换.一共有32轮迭代变换。设输入为(X0,X1,X2,X3)∈(Z32 2)4,轮密钥为rk∈Z32 2,则轮函数F为:
F ( X 0 , X 1 , X 2 , X 3 , rk ) = X 0 ⊕ T ( X 1 ⊕ X 2 ⊕ X 3 ⊕ rk )
定义反序变换R为:R(A0,A1,A2,A3)=(A3,A2,A1,A0),Ai∈Z32 2,i=0,1,2,3。设明文输入为(X0,X1,X2,X3)∈(Z32 2)4,密文输出为(Y0,Y1,Y2,Y3)∈(Z32 2)4,轮密钥为rki∈Z32 2,i=0,1,...,31。则本算法的加密变换为:对于i=0,1,...,31有
X i + 4 = F ( X i , X i + 1 , X i + 2 , X i + 3 , r k i ) = X i ⊕ T ( X i + 1 ⊕ X i + 2 ⊕ X i + 3 ⊕ r k i )
(Y0,Y1,Y2,Y3)=R(X32,X33,X34,X35)=(X35,X34,X33,X32)
本发明算法硬件实现方法包含算法中的密钥扩展算法的硬件实现和加解密算法的硬件实现,而用快速的算法硬件实现方法实现后的电路包括密钥扩展电路,加解密电路和轮控制电路。所述密钥扩展电路是指用128比特的主密钥产生算法中32轮加解密所需的子密钥的电路,其中每一轮子密钥长度为32比特。所述加解密电路是指128比特明文和由密钥扩展电路产生的32轮子密钥经过算法32轮的加解密过程得到128比特密文的电路。所述轮控制电路是指选择和控制密钥扩展电路以及加解密电路中的轮数。
所述的加解密电路,定义32个32比特的寄存器,分别寄存由加解密算法所产生的32轮的轮密文,其中每一轮的轮密文为32比特,数据输入长度为128比特,而由一个数据输入指示信号data_input来确定何时送入新的128比特数据,指示信号data_input是一个周期为4个时钟单元的指示信号,也即每4个时钟单元后送入新的128比特数据。
所述的加解密电路,当指示信号data_input指示信号有效时,第一组128比特数据送入加解密电路中,经过32个时钟单元可获得第一组128比特数据的密文,再经4个时钟单元即可获得第二组128比特数据的密文,再经4个时钟单元即可获得第三组128比特数据的密文,依次类推,直到所有的数据处理完成。
所述的密钥扩展电路,定义32个32比特的寄存器,分别寄存密钥扩展算法所产生的32轮的子密钥,其中每一轮的子密钥长度为32比特,主密钥为128比特,而由一个主密钥输入指示信号key_input来确定何时送入新的128比特主密钥。指示信号key_input是一个周期为4个时钟单元的指示信号。在主密钥不变的情况下,则指示信号key_input一直无效;在主密钥随输入的明文数据变化而变化时,指示信号key_input的时钟周期等同于数据输入指示信号data_input的时钟周期。
上述实施例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人士能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所作的等效变化或修饰,都应涵盖在本发明的保护范围之内。

Claims (3)

1.一种应用于无线局域网的加密方法,其特征在于:包括以下步骤:
步骤一.将第一组明文编码以字为单位分为4个编码字,将第一组主密钥编码以字为单位分为4个密钥字;
步骤二.将所述第一组主密钥编码中第1位密钥字至第3位密钥字与一常量异或运算后,再作可逆变换,再与第0位密钥字异或运算生成一个字长的第1轮子密钥,再将第1位密钥字至第3位密钥字前移至第0位至第2位密钥字的位置,将所述第1轮子密钥移至第3位密钥字的位置,并保留该轮子密钥;
步骤三.重复步骤二生成第一组主密钥编码的31个子密钥;
步骤四.将所述第1轮子密钥与所述第一组明文编码第1位编码字至第3位编码字异或运算后,再作可逆变换,再与第0位编码字异或运算生成一个字长的第一轮密文字,再将第1位编码字至第3位编码字前移至第0位至第2位编码字的位置,将所述第一轮密文字移至第3位编码字的位置;
步骤五.送入第二组明文编码,该第二组明文编码以字为单位分为4个编码字,该第二组明文编码与其上一组明文编码间隔至少4轮时钟周期;同时,送入第二组主密钥编码,第二组主密钥编码以字为单位分为4个密钥字,该第二组主密钥编码与其上一组主密钥编码的时间间隔与所述第二组明文编码与第一组明文编码的时间间隔相同;
步骤六.重复步骤二生成第二组主密钥编码的31个子密钥;
步骤七.对所述第一组明文编码依次按顺序使用第一组主密钥编码的第2轮子密钥至第32轮子密钥重复步骤三进行31轮加密;同理,对所述第二组明文编码依次按顺序使用第二组主密钥编码的第1轮子密钥至第32轮子密钥重复步骤三进行32轮加密;
步骤八.当一组明文编码经过32轮加密后,将其第0位至第3位编码字作反序变换,获得密文编码。
2.根据权利要求1所述的方法,其特征在于:所述第一组明文编码与其上一组明文编码间隔为4轮时钟周期。
3.根据权利要求1所述的方法,其特征在于:所述加密过程中可逆变换为:T为加密过程中可逆变换,其中T为Z32 2到Z32 2的一个可逆变换,由非线性变换τ和线性变化L复合而成,
即T(.)=L(τ(.))。其中:非线性变换τ:它是由4个并行的S盒构成。设输入为A=(a1,a2,a3,a4)∈(Z8 2)4,输出为B=(b1,b2,b3,b4)∈(Z8 2)4,则有:
(b1,b2,b3,b4)=τ(A)=(Sbox(a1),Sbox(a2),Sbox(a3),Sbox(a4))
线性变换L:非线性变换τ的输出也即为线性变换L的输入。设输入为B∈Z32 2,则有:
Figure FSA00000256629400021
其中<<i为32比特循环左移i位。
CN201010272420.7A 2010-09-06 2010-09-06 一种应用于无线局域网的加密方法 Active CN101938739B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201310176066.1A CN103236923B (zh) 2010-09-06 2010-09-06 用于无线局域网的安全加密方法
CN201010272420.7A CN101938739B (zh) 2010-09-06 2010-09-06 一种应用于无线局域网的加密方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010272420.7A CN101938739B (zh) 2010-09-06 2010-09-06 一种应用于无线局域网的加密方法

Related Child Applications (2)

Application Number Title Priority Date Filing Date
CN201310176066.1A Division CN103236923B (zh) 2010-09-06 2010-09-06 用于无线局域网的安全加密方法
CN2013101740780A Division CN103269482A (zh) 2010-09-06 2010-09-06 无线局域网用加密方法

Publications (2)

Publication Number Publication Date
CN101938739A true CN101938739A (zh) 2011-01-05
CN101938739B CN101938739B (zh) 2013-09-25

Family

ID=43391822

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010272420.7A Active CN101938739B (zh) 2010-09-06 2010-09-06 一种应用于无线局域网的加密方法

Country Status (1)

Country Link
CN (1) CN101938739B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103679061A (zh) * 2013-11-22 2014-03-26 北京民芯科技有限公司 国密sm4算法的可扩展高吞吐率的实现方法及装置
CN104601321A (zh) * 2013-10-31 2015-05-06 上海复旦微电子集团股份有限公司 密钥扩展方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1527531A (zh) * 2003-03-07 2004-09-08 华为技术有限公司 一种数据加密标准或三重数据加密标准的实现方法
US20070016769A1 (en) * 2003-05-21 2007-01-18 Gentry Craig B Broadcast encryption using rsa
CN101013938A (zh) * 2007-01-12 2007-08-08 广州市诚毅科技软件开发有限公司 一种分组密码加密方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1527531A (zh) * 2003-03-07 2004-09-08 华为技术有限公司 一种数据加密标准或三重数据加密标准的实现方法
US20070016769A1 (en) * 2003-05-21 2007-01-18 Gentry Craig B Broadcast encryption using rsa
CN101013938A (zh) * 2007-01-12 2007-08-08 广州市诚毅科技软件开发有限公司 一种分组密码加密方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104601321A (zh) * 2013-10-31 2015-05-06 上海复旦微电子集团股份有限公司 密钥扩展方法和装置
CN104601321B (zh) * 2013-10-31 2017-09-29 上海复旦微电子集团股份有限公司 密钥扩展方法和装置
CN103679061A (zh) * 2013-11-22 2014-03-26 北京民芯科技有限公司 国密sm4算法的可扩展高吞吐率的实现方法及装置

Also Published As

Publication number Publication date
CN101938739B (zh) 2013-09-25

Similar Documents

Publication Publication Date Title
CN102185692B (zh) 基于aes加密算法的多模式可重构加密方法
CN105490802B (zh) 基于gpu的改进sm4并行加解密通信方法
CN101739889B (zh) 密码处理装置
CN105959107B (zh) 一种新型高安全的轻量级sfn分组密码实现方法
CN103516512A (zh) 基于aes算法的加解密方法及加解密器
CN101814985B (zh) 应用多混沌映射多动态s盒的分组密码系统
CN110474761A (zh) 一种16轮sm4-256白盒密码实现方法
CN104333446A (zh) 一种新型超轻量级qtl分组密码实现方法
CN102523365A (zh) 一种基于元胞自动机的图像加密和解密方法
CN104751065A (zh) 一种基于地理信息产品文件的加密方法
CN101924630B (zh) 一种应用于无线局域网的快速加解密方法
JunLi et al. Email encryption system based on hybrid AES and ECC
CN105049204A (zh) 基于ctr模式和分组密码vh的轻量级流密码技术vhc
CN101938739B (zh) 一种应用于无线局域网的加密方法
CN101582170B (zh) 一种基于椭圆曲线密码体制的遥感图像加密方法
CN101945383B (zh) 一种用于无线局域网的面积紧凑的算法硬件实现方法
CN107707352B (zh) 一种嵌入式加密方法
CN100393026C (zh) 二进制数据块加密变换方法
CN105162580A (zh) 基于ofb模式和分组密码vh的轻量级流密码技术vho
CN103269480A (zh) 无线局域网用高速加解密方法
CN103236923A (zh) 用于无线局域网的高效安全加密方法
CN103338449A (zh) 用于提高网络安全性的算法硬件实现方法
CN103269482A (zh) 无线局域网用加密方法
Mahantesh et al. Design of secured block ciphers present and hight algorithms and its fpga implementation
CN103346879A (zh) 面积紧凑型加解密算法实现方法

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
CP01 Change in the name or title of a patent holder

Address after: Room C2031, Suzhou Pioneer Park, 209 Zhuyuan Road, Suzhou High-tech Zone, Jiangsu Province

Patentee after: Suzhou Guoxin Technology Co., Ltd.

Address before: Room C2031, Suzhou Pioneer Park, 209 Zhuyuan Road, Suzhou High-tech Zone, Jiangsu Province

Patentee before: C*Core Technology (Suzhou) Co., Ltd.

CP01 Change in the name or title of a patent holder