CN102142957A - 数据加密的方法、装置及具有数据加密功能的通信设备 - Google Patents

数据加密的方法、装置及具有数据加密功能的通信设备 Download PDF

Info

Publication number
CN102142957A
CN102142957A CN2010102897988A CN201010289798A CN102142957A CN 102142957 A CN102142957 A CN 102142957A CN 2010102897988 A CN2010102897988 A CN 2010102897988A CN 201010289798 A CN201010289798 A CN 201010289798A CN 102142957 A CN102142957 A CN 102142957A
Authority
CN
China
Prior art keywords
data
matrix
conformality
key
module
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
Application number
CN2010102897988A
Other languages
English (en)
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN2010102897988A priority Critical patent/CN102142957A/zh
Publication of CN102142957A publication Critical patent/CN102142957A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Mobile Radio Communication Systems (AREA)

Abstract

本发明公开了一种数据加密的方法、装置及具有数据加密功能的通信设备,属于通信领域。所述数据加密的方法包括:根据预先确定的哈达玛正形矩阵对密钥进行扩展;对待加密数据进行字节置换,并将字节置换后的数据进行行变换;将行变换后的数据进行列混淆,并根据扩展的密钥对列混淆后的数据加密;将加密后的数据承载在数据帧,并通过通信网络将该数据帧发送给对端通信设备。本发明利用哈达玛正形矩阵对密钥进行扩展,通过根据循环正形矩阵进行列混淆,不仅能够保证数据加密的平衡性,还可优化分支数,从而提高数据加密的安全性。

Description

数据加密的方法、装置及具有数据加密功能的通信设备
技术领域
本发明涉及通信领域,特别涉及一种数据加密的方法、装置及具有数据加密功能的通信设备。
背景技术
AES(Advanced Encryption Standard,高级加密标准)是一种用于保护通信数据安全的加密技术,密钥扩展是AES加密技术的一个环节,其主要用于加强密钥安全性能。
现有AES加密技术中的密钥扩展包括循环移位、字节置换和轮常数变换三个步骤,且在循环移位步骤时,128位密钥被分为四个32位,其中每个32位进行一次循环左移。
不过,采用现有AES技术进行数据加密时,密钥扩展中采用的循环移位无法达到较优的分支数,且根据现有AES加密处理后得到的密文有可能得到原来的明文属于哪个极大子群,从而导致加密后的数据仍然存在一定的安全隐患。
发明内容
为了优化分支数,提高加密的安全性,本发明实施例提供了一种数据加密的方法、装置及具有数据加密功能的通信设备。所述技术方案如下:
一方面,提供了一种数据加密的方法,所述方法包括:
根据预先确定的哈达玛正形矩阵对密钥进行扩展;
对待加密数据进行字节置换,并将字节置换后的数据进行行变换;
将行变换后的数据进行列混淆,并根据扩展的密钥对列混淆后的数据加密;
将加密后的数据承载在数据帧,并通过通信网络将该数据帧发送给对端通信设备。
另一方面,提供了一种数据加密的装置,所述装置包括:
密钥扩展模块,用于根据预先确定的哈达玛正形矩阵对密钥进行扩展;
字节置换模块,用于对待加密数据进行字节置换;
行变换模块,用于将所述字节置换模块置换后的数据进行行变换;
列混淆模块,用于将所述行变换模块变换后的数据进行列混淆;
加密模块,用于根据所述密钥扩展模块扩展的密钥对所述列混淆模块混淆后的数据加密。
本发明实施例还提供了一种具有数据加密功能的通信设备,包括:
数据加密装置,用于对接收到的待加密数据进行加密处理;
成帧装置,用于将加密后的数据承载在数据帧;
发送装置,用于通过所述通信设备所应用的通信网络,将所述数据帧发送给对端通信设备;
其中,所述数据加密装置包括:密钥扩展模块,用于根据预先确定的哈达玛正形矩阵对密钥进行扩展;字节置换模块,用于对待加密数据进行字节置换;行变换模块,用于将所述字节置换模块置换后的数据进行行变换;列混淆模块,用于将所述行变换模块变换后的数据进行列混淆;加密模块,用于根据所述密钥扩展模块扩展的密钥对所述列混淆模块混淆后的数据加密。
在本发明实施例提供的各种方案通过哈达玛正形矩阵对密钥进行扩展,并通过循环正形矩阵进行列混淆,由于正形矩阵具有完全平衡性的特点,不仅能够保证数据加密的平衡性,还可优化分支数,从而提高加密的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的点到多点的网络系统结构示意图;
图2是本发明实施例一提供的数据加密的方法流程图;
图3是本发明实施例二提供的数据加密的装置结构示意图;
图4是本发明实施例二提供的密钥扩展模块结构示意图;
图5是本发明实施例三提供的数据加密的方法流程图;
图6是本发明实施例四提供的数据加密的装置结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
通常来讲,AES加密技术主要包括以下几个部分:
(1)密钥扩展(Key Expansion),即扩展出每一轮不同的128位密钥(AddRoundKey);
(2)10轮的字节变换中包括:a、字节置换(SubBytes);b、行变换(ShiftRows);c、列混淆(MixColumns);d、添加新一轮密钥(AddRoundKey);
(3)最后一轮包括:a、字节置换(SubBytes);b、行变换(ShiftRows);c、添加新一轮密钥(AddRoundKey)。
由此得出:AES加密主要由密钥扩展(AddRoundKey)、字节置换(SubBytes)、行变换(ShiftRows)和列混淆(MixColumns)四个部分组成。
在一种具体实现方案中,上述密钥扩展可以分三个步骤完成:
a、循环移位(Rotate word):将128位的密钥K分为四个32位,将每个32位做一次循环左移;
b、字节置换(Substitution Bytes):将循环移位后的数据与S_box中的值做置换;
c、轮常数变换(Round constant):将置换后的值与轮常数做异或。即代码中的r=rcon((i-1)/4,:);temp=bitxor(temp,r);
针对步骤a循环移位rot_word中的具体实现方式是将temp中的4个字节做一次循环左移,如:1d2c3a4f->2c3a4f1d。
由于分组密码中线性变换P一般定义为:如果分组密码中的混淆层是由n个m×m的S盒并置而成,则P一般设计成GF(2m)n->GF(2m)n的一个线性置换。线性变换的分支数的定义为:令P:GF(2m)n->GF(2m)n是一个置换,a=(a1,a2,...,an)∈GF(2m)n,WH(a)表示非零ai(1≤i≤n)的个数,则称D(P)=min(WH(a)+WH(P(a)))为P的分支数,其中a不等于0。可以证明D(P)的理论最大值是n+1,并且对一个具体的分组密码算法来说,D(P)的值越大,则利用差分或者线性密码分析所需要的已知明文更多。结合如下定义:
如果分组密码中的混淆层是由m个n×n的S盒并置而成,则线性变换P一般设计成
Figure BSA00000281603700041
的一个线性置换,
Figure BSA00000281603700042
表示GF(2)域的n维向量空间;以及,
令P:
Figure BSA00000281603700043
是一个置换,
Figure BSA00000281603700044
WH(a)表示非零ai(0≤i≤m-1)的个数,则称
Figure BSA00000281603700045
为P的分支数,如果AES中的rot_word(以下简称Rotl)运算对应的n=8,m=4:则Rotl(B)=B<<<8,对照分支数的定义,所以:
D(L)=min(WH(B)+WH(Rotl(B))=min(WH(B)+WH(B<<<8)),其中且B≠0。也就是说,B要取遍
Figure BSA00000281603700047
中除去0元素的所有其他元素,然后计算出表达式(WH(B)+WH(B<<<8))的最小值,这个最小值就是D(L),可以计算得出D(L)=2,由此看出:上述密钥扩展实现方案中,D(L)没有达到理论最优,因此,上述AES加密的循环移位可能无法达到最优的分支数,同时也没有考虑完全平衡性。
实施例一
本实施例提供了一种数据加密的方法,该方法可以应用在有线网络系统,比如PON(Passive Optical Network,无源光网络)系统,或者无线网络系统,用于实现对待发送数据的加密传输;本实施例提供的方法通过引入哈达玛正形矩阵来优化分支数和平衡性,从而提升AES加密安全性能。
为更好理解本发明,本实施例以GPON(Gigabit-capable Passive OpticalNetworks,吉比特无源光网络)系统作为一种具体的应用场景为例进行描述,应当理解,关于在GPON系统的应用仅是本实施例提供的数据加密方法的一种可选的应用场景,在实际应用上,该数据加密方法还可适用于在其他具体应用场景,比如应用在XGPON(10Gigabit-capable Passive Optical Network,10G无源光网络)系统或者其他有线网络系统,或者应用在无线网络系统。当在其他应用场景下,只需将本实施例中涉及的通信主体(包括本端和对端通信设备)、传输媒介以及传输数据封装格式进行对应地更改便可。
以下简单描述PON系统的结构,请参见图1,其为点到多点的网络系统,包括位于中心局的OLT(Optical Line Terminal,光线路终端)设备、位于用户侧的多个ONU(Optical Network Unit,光网络单元)和用于连接OLT设备和ONU设备的ODN(Optical Distributed Network,光分配网络)。光分配网络包括POS(Passive Optical Splitter,无源分光器),无源分光器通过主干光纤连接到OLT设备,并通过多个分支光纤分别连接到多个ONU设备。其中,在下行方向(OLT设备到ONU设备),OLT设备利用时分复用技术将下行信号发送给各个ONU设备;而在上行方向(ONU设备到OLT设备),各个ONU设备采用时分多址技术将上行信号发送给OLT设备。在GPON系统中,OLT设备和ONU设备之间的数据采用GEM格式进行封装,即,二者之间的通信数据承载在GEM帧的净荷部分并通过GPON系统传输给对端设备。
为了便于说明,本实施例以四阶哈达玛正形矩阵为例进行描述,参见图2,本实施例提供的方法流程具体如下:
101:根据预先确定的哈达玛正形矩阵对密钥进行扩展;
具体地,根据预先确定的哈达玛正形矩阵对密钥进行扩展的过程如下:
将密钥进行字节置换;
求取字节置换后的密钥与预先确定的哈达玛正形矩阵的乘积,并将乘积结果与轮常数做异或,得到扩展的密钥。
其中,将密钥进行字节置换,是指依据S置换表对密钥进行字节置换,可依据现有技术的实现方式实现,本实施例对此不作具体限定。求取字节置换后的密钥与确定的哈达玛正形矩阵的乘积,以及将乘积结果与轮常数做异或均为常用的运算,此处不再赘述。
关于Hadamard正形矩阵的确定方式,从哈达玛Hadamard矩阵的定义:设a0,a1,…,an-1∈GF(2m),其中n=2k,称n阶方阵是有限域GF(2m)上的Hadamard矩阵,其中0≤i,j<n,k≥0,可以看出Hadamard矩阵完全由第一行决定,标记为A=Had(a0,a1,…,an-1)。因为
Figure BSA00000281603700052
所以A的每一行和每一列都是a0,a1,…,an-1的一个排列。根据矩阵乘法公式
Figure BSA00000281603700053
当i=j时,当i≠j时,考虑任意一个
Figure BSA00000281603700055
则存在
Figure BSA00000281603700056
使得则可以得到
Figure BSA00000281603700058
从而
Figure BSA00000281603700059
即对任意的一个
Figure BSA000002816037000510
总存在一个l2使得又由于n=2k,则当k=0时,可以得出A可逆的充分必要条件是
Figure BSA000002816037000512
并且
Figure BSA000002816037000513
当k>0时为偶数,所以当i≠j时,
Figure BSA00000281603700061
综上可得由于In为n阶单位矩阵,
Figure BSA00000281603700063
所以A可逆的充要条件是
Figure BSA00000281603700064
并且
Figure BSA00000281603700065
因此,A-1也是一个GF(2m)上的n阶Hadamard矩阵。
根据正形矩阵的定义:设A为GF(2m)上的一个n阶可逆矩阵,如果A+In仍为GF(2m)上的一个n阶可逆矩阵(In为GF(2m)上的n阶单位矩阵),则称A为GF(2m)上的一个n阶正形矩阵。由于
Figure BSA00000281603700066
Figure BSA00000281603700067
所以当且仅当
Figure BSA00000281603700068
时,A=Had(a0,a1,…,an-1)是正形矩阵。
通过上述分析,哈达玛正形矩阵的确定方式包括:
在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断a0,a1,a2,a3是否满足
Figure BSA00000281603700069
且a1a2≠a0a3,a0a1≠a2a3,a0a2≠a1a3的条件;
如果否,则重新在有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足条件,将A=Had(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶哈达玛正形矩阵,其中,m为自然数。
根据最大分支数的确定方式可以得出该GF(2m)上的四阶Hadamard矩阵A=Had(a0,a1,a2,a3)达到的最大分支数应为5。由于
Figure BSA000002816037000610
a0a1a2a3≠0,则可知A的一阶子式≠0。又由于A可逆,且A的二阶子式有如下形式:
Figure BSA000002816037000611
(0≤i1<i2<4,0≤j1<j2<4),共
Figure BSA000002816037000612
个二阶子式,
Figure BSA000002816037000613
化简后a0,a1,a2,a3互不相同且a1a2≠a0a3,a0a1≠a2a3,a0a2≠a1a3,计算所有的三阶子式发现三阶子式不为零的条件和一阶子式相同,也是
Figure BSA000002816037000614
a0a1a2a3≠0。也就是说,A的各阶子式≠0,所以A能够达到分支数最大。例如,当m=8时,四阶哈达玛正形矩阵具体为:
A = Had ( 01,02,03,04 ) = 01 02 03 04 02 01 04 03 03 04 01 02 04 03 02 01 .
结合上述过程,该步骤提供的密钥扩展的部分更新为:
temp=sub_bytes(tmep,s_box);
temp=had_word(temp);
r=rcon((i-1)/4,:);
temp=bitxor(temp,r);
其中,had_word()函数由原有的循环移位更新为Hadamard矩阵乘法运算,并将字节置换与Hadamard正形矩阵变换的顺序进行交换,详细过程如下:
x 0 x 1 x 2 x 3 = 01 02 03 04 02 01 04 03 03 04 01 02 04 03 02 01 a 0 a 1 a 2 a 3
上式中,a0,a1,a2,a3为had_word()函数的输入参数,x0,x1,x2,x3为had_word()函数的输出参数,
Figure BSA00000281603700073
为Hadamard正形矩阵。
102:对待加密数据进行字节置换,并将字节置换后的数据进行行变换;
针对该步骤,对待加密数据进行字节置换,是指依据S置换表对待加密数据进行字节置换,该过程及后续将字节置换后的数据进行行变换的过程均可依据现有技术的实现方式实现,本实施例对此不作具体限定。
103:将行变换后的数据进行列混淆,并根据扩展的密钥对列混淆后的数据加密。
具体地,将行变换后的数据进行列混淆时,可以采用现有技术的实现方式实现,例如,采用矩阵
Figure BSA00000281603700074
表示,由中间的常数矩阵直接决定列混淆的效果。
优选地,为了使列混淆的过程同样能够保证具有完全平衡性,在将行变换后的数据进行列混淆时,还可以根据循环正形矩阵对行变换后的数据进行列混淆,例如,采用循环正形矩阵
Figure BSA00000281603700081
来代替上述的循环矩阵
Figure BSA00000281603700082
关于如何确定循环正形矩阵,在后续实施例三中将进行详细描述,详见后续实施例三。
104:将加密后的数据承载在数据帧,并通过通信网络将该数据帧发送给对端通信设备。
具体而言,在本实施例中,所述加密后的数据可以承载在GEM帧的净荷(Payload)部分,并通过所述GPON系统的光分配网络将所述承载有加密数据的GEM帧发送给对端通信设备。比如,如果所述待加密数据为OLT设备发送给ONU设备的下行数据,则该OLT设备可以将加密后的数据承载在下行GEM帧的净荷部分,并通过时分复用的方式将该下行GEM帧发送到所述ONU设备;如果所述待加密数据为ONU设备发送给OLT设备的上行数据,则该ONU设备可以将加密后的数据承载在上行GEM帧的净荷部分,并通过时分多址的方式将该上行GEM帧发送到所述ONU设备。
进一步地,在其他实施例中,比如,如果数据加密方法应用在XGPON系统,则在本步骤中,加密后的数据可以承载在XGEM帧的净荷部分,并通过XGPON系统的光分配网络将承载有加密数据的XGEM帧发送给对端通信设备。又如,如果数据加密方法应用在无线通信系统,则在本步骤中,加密后的数据可以承载在无线数据帧的净荷部分,并通过无线传输媒介将所述承载有加密数据的无线数据帧发送给对端通信设备。
针对该步骤,本实施例提供的方法,由于哈达玛正形矩阵具有完全平衡性的特点,通过根据哈达玛正形矩阵对密钥进行扩展,不仅能够保证数据加密的平衡性,还可使优化分支数,进而提高了加密的安全性。
实施例二
参见图3,本实施例提供了一种数据加密的装置,该装置包括:
密钥扩展模块201,用于根据预先确定的哈达玛正形矩阵对密钥进行扩展;
字节置换模块202,用于对待加密数据进行字节置换;
行变换模块203,用于将字节置换模块202置换后的数据进行行变换;
列混淆模块204,用于将行变换模块203变换后的数据进行列混淆;
加密模块205,用于根据密钥扩展模块201扩展的密钥对列混淆模块204混淆后的数据加密。
参见图4,在一种实施例中,所述密钥扩展模块201可以具体包括:
字节置换单元201a,用于将密钥进行字节置换;
乘积单元201b,用于求取字节置换单元201a置换后的密钥与哈达玛正形矩阵的乘积;
轮常数变换单元201c,用于将乘积单元201b得到的乘积结果与轮常数做异或,得到扩展的密钥。
其中,哈达玛正形矩阵的确定方式包括:在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断a0,a1,a2,a3是否满足
Figure BSA00000281603700091
且a1a2≠a0a3,a0a1≠a2a3,a0a2≠a1a3的条件;如果否,则重新在有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足条件,将A=Had(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶哈达玛正形矩阵,其中,m为自然数。
优选地,列混淆模块204,具体用于根据循环正形矩阵对行变换后的数据进行列混淆。
例如,可采用循环正形矩阵
Figure BSA00000281603700092
来代替循环矩阵
Figure BSA00000281603700093
关于如何确定循环正形矩阵,在后续实施例三中将进行详细描述。
基于图3所示的数据加密装置,本实施例还进一步提供一种具有数据加密功能的通信设备,比如无源光网络系统的光线路终端设备或光网络单元设备,或者无线网络系统的无线通信设备,其可包括数据加密装置、成帧装置和发送装置,其中数据加密装置用于将待加密数据进行加密,其具体的结构可以采用图3所示的数据加密装置;成帧装置用于将加密后的数据承载在数据帧;发送装置用于通过通信网络将数据帧发送给对端通信设备。
本实施例提供的数据加密装置和具有数据加密功能的通信设备,由于哈达玛正形矩阵具有完全平衡性的特点,通过根据哈达玛正形矩阵对密钥进行扩展,不仅能够保证数据加密的平衡性,还可优化分支数,进而提高了加密的安全性。
实施例三
本实施例提供了一种数据加密的方法,该方法同样可以应用在有线网络系统(如无源光网络系统)或者无线网络系统,用于实现对待发送数据的加密传输。该方法通过引入循环正形矩阵来优化分支数和平衡性。为了便于说明,本实施例以四阶循环正形矩阵为例进行描述,参见图5,本实施例提供的方法流程具体如下:
401:对密钥进行扩展,并对待加密数据进行字节置换;
其中,对密钥扩展时,可采用循环左移、字节置换和轮常数变换这三个现有的步骤实现。优选地,为了使分支数达到最大,并保证完全平衡性,还可以采用实施例一提供的根据哈达玛正形矩阵对密钥进行扩展的方式来实现。例如,由原有的循环移位更新为Hadamard矩阵乘法运算,并将原密钥扩展中的字节置换与Hadamard正形矩阵变换的顺序进行交换。确定Hadamard正形矩阵的方法详见上述实施例一中的描述。
在对待加密数据进行字节置换时,是指依据S置换表对待加密数据进行字节置换,该过程可依据现有技术的实现方式实现,本实施例对此不作具体限定。
402:将字节置换后的数据进行行变换;
针对该步骤,将字节置换后的数据进行行变换可依据现有技术的实现方式实现,本实施例对此不作具体限定。
403:根据预先确定的循环正形矩阵对行变换后的数据进行列混淆,并根据扩展的密钥对列混淆后的数据加密。
具体地,循环矩阵的定义为:设a0,a1,…,an-1∈Fq(其中q=pm,p为素数),称n阶方阵
Figure BSA00000281603700111
为由a0,a1,…,an-1组成的循环矩阵。由该定义可以发现:
(1)循环矩阵A完全由第一行或第一列决定,将其记为A=circ(a0,a1,…,an-1)。
(2)当a0=0,a1=1,a2=a3=…=an-1=0时,称为基本循环矩阵,也即
Figure BSA00000281603700112
则Pn=In
Figure BSA00000281603700113
这里In,Ik,In-k分别是n阶,k阶和(n-k)阶单位矩阵。
(3)用循环矩阵A的第一行做多项式的系数,得到(n-1)次多项式c(λ)=a0+a1λ+…an-1λn-1,与循环矩阵A=circ(a0,a1,…,an-1)一一对应,且A=c(P)=a0I+a1P+…+an-1Pn-1
根据循环矩阵的如下性质:
性质1基本循环矩阵P的特征方程为f(λ)=λn-1,从而P的特征值是由全部的n次单位根组成。
性质2设λ为方阵A的特征值,则c(λ)是c(A)=b0I+b1A+…+bkAk的特征值。
性质3循环矩阵的逆矩阵仍是循环矩阵。
性质4可逆循环矩阵A的逆矩阵由方程
Figure BSA00000281603700114
决定第一列,从而决定整个逆矩阵。其逆矩阵的第一列为
Figure BSA00000281603700115
(其中Ai(0≤i≤n-1)是矩阵A的第一行ai的代数余子式)。
引理1设GF(q)的特征为p,那么f(λ)=λn-1的根为:
(1)若gcd(p,n)=1,则f(λ)=λn-1无重根(即有n个不同的根,但不一定全在GF(q)上)。
(2)若gcd(p,n)≠1,此时必有n=prs,gcd(p,s)=1,则f(λ)=λn-1有pr重根。
可以推导循环矩阵的如下一些重要定理:
定理1设有A=circ(a0,a1,…,an-1)和多项式c(λ)=a0+a1λ+…+an-1λn-1,则A可逆的充分必要条件是c(ω)≠0,ω是任一n次单位根。特别地当n=pr时A=circ(a0,a1,…,an-1)可逆当且仅当a0+a1+…an-1≠0。
证明:由性质1知P的全部特征值是GF(q)上的n次单位根ωi(1≤i≤n)。由性质2知c(ωi)(1≤i≤n)是A的全部特征根。要A可逆,即要
Figure BSA00000281603700121
从而c(ω)≠0,ω是n次单位根。作为特殊情况,当n=pr时P有n重根单位根1,所以A可逆等价于c(1)=a0+a1+…+an-1≠0。
定理2设有A=circ(a0,a1,…,an-1)和多项式c(λ)=a0+a1λ+…+an-1λn-1,则A可逆的充分必要条件是gcd(λn-1,c(λ))=1。
证明:由于gcd(λn-1,c(λ))=1
Figure BSA00000281603700122
对任意n次单位根ω有c(ω)≠0。再由定理1知此定理是正确的。
则根据上述循环矩阵的定理,计算循环矩阵的逆矩阵的方式包括如下步骤:
第一步:输入矩阵A=circ(a0,a1,…,an-1),判断利用欧几里得算法计算gcd(λn-1,c(λ))=d(x),当d(x)≠1时,输出“A不可逆”,当d(x)=1时转到第二步。
第二步:利用高斯消元法在有限域GF(q)中求解线性方程组
Figure BSA00000281603700123
第三步、令b0←x0,bn-1←x1,bn-2←x2,…,b1←xn-1
第四步、输出B=circ(b0,b1,…,bn-1)。
由上述定理1,当且仅当c(ω)≠0,ω是任一n次单位根,A可逆。而
Figure BSA00000281603700124
由引理1有ω是任一n次单位根。当n=pr时,n次单位根有n重,也即此时单位根只有1。因此,当且仅当时,A=circ(a0,a1,…,an-1)是正形矩阵。
通过上述分析,循环正形矩阵的确定方式包括:
在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断a0,a1,a2,a3是否满足
Figure BSA00000281603700127
且a0≠a2
Figure BSA00000281603700128
Figure BSA00000281603700129
a1≠a3
Figure BSA00000281603700131
Figure BSA00000281603700132
a1a2≠a0a3,a0a1≠a2a3的第一条件;
如果否,则重新在有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足第一条件,再判断a0,a1,a2,a3是否满足
Figure BSA00000281603700133
Figure BSA00000281603700134
Figure BSA00000281603700135
的第二条件;
如果否,则重新在有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足第一条件及第二条件,则将A=circ(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶循环正形矩阵,其中,m为自然数。
进一步地,根据最大分支数的确定方式可以得出GF(2m)上的四阶循环矩阵A=circ(a0,a1,a2,a3)达到最大分支数应为5。由于
Figure BSA00000281603700137
a0a1a2a3≠0,则知A的一阶子式≠0;由定理1可知A可逆,而A的二阶子式有如下形式:
Figure BSA00000281603700138
(0≤i<i+l≤3,s≠0 mod 4)下标加法在剩余类环Z4进行。共有
Figure BSA00000281603700139
个二阶子式,而
Figure BSA000002816037001310
化简后得到a0≠a2
Figure BSA000002816037001311
Figure BSA000002816037001312
a1≠a3
Figure BSA000002816037001313
a1a2≠a0a3,a0a1≠a2a3,由性质4可知
Figure BSA000002816037001315
恰为四个三阶子式之积,也就是说,A的各阶子式≠0,所以A能够达到分支数最大。例如,当m=8时,确定的四阶循环正形矩阵具体为:
A = circ ( 02,05,01,01 ) = 02 05 01 01 01 02 05 01 01 01 02 05 05 01 01 02 , 其逆矩阵为 A 7 29 DA 85 85 A 7 29 DA DA 85 A 7 29 29 DA 85 A 7 .
确定了循环正形矩阵之后,根据循环正形矩阵对行变换后的数据进行列混淆,并根据扩展的密钥对列混淆后的数据加密。比如,将循环正形矩阵
Figure BSA000002816037001318
代替现有AES中的列混淆矩阵
Figure BSA000002816037001319
同时利用它的逆矩阵来
Figure BSA00000281603700141
代替现有AES中的逆矩阵
Figure BSA00000281603700142
404:将加密后的数据承载在数据帧,并通过通信网络将该数据帧发送给对端通信设备。
本实施例提供的方法,由于循环正形矩阵具有完全平衡性的特点,通过循环正形矩阵进行列混淆,不仅能够保证数据加密的平衡性,还可优化分支数,进而提高了加密的安全性。
实施例四
参见图6,本实施例提供了一种数据加密的装置,该装置包括:
密钥扩展模块501,用于对密钥进行扩展,比如,采用哈达玛正形矩阵对密钥进行扩展;
字节置换模块502,用于对待加密数据进行字节置换;
行变换模块503,用于将字节置换模块502置换后的数据进行行变换;
列混淆模块504,用于根据预先确定的循环正形矩阵对行变换模块503变换后的数据进行列混淆;
加密模块505,用于根据密钥扩展模块501扩展的密钥对列混淆模块504混淆后的数据加密。
其中,循环正形矩阵的确定方式包括:在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断a0,a1,a2,a3是否满足
Figure BSA00000281603700143
且a0≠a2
Figure BSA00000281603700144
a1≠a3
Figure BSA00000281603700147
a1a2≠a0a3,a0a1≠a2a3的第一条件;如果否,则重新在有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足第一条件,再判断a0,a1,a2,a3是否满足
Figure BSA00000281603700148
Figure BSA00000281603700149
Figure BSA000002816037001410
Figure BSA000002816037001411
的第二条件;如果否,则重新在有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足第一条件及第二条件,则将A=circ(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶循环正形矩阵,其中,m为自然数。
优选地,密钥扩展模块501,具体用于根据预先确定的哈达玛正形矩阵对密钥进行扩展。例如,采用Hadamard正形矩阵
Figure BSA00000281603700151
来代替现有AES密钥扩展中的循环移位变换,并交换S盒操作与Hadamard正形矩阵变换的顺序。关于如何确定Hadamard正形矩阵,详见上述实施例一中的描述,此处不再赘述。
相类似地,基于图5所示的数据加密装置,本实施例还进一步提供一种具有数据加密功能的通信设备,比如无源光网络系统的光线路终端设备或光网络单元设备,或者无线网络系统的无线通信设备,其可包括数据加密装置、成帧装置和发送装置,其中数据加密装置用于将待加密数据进行加密,其具体的结构可以采用图5所示的数据加密装置;成帧装置用于将加密后的数据承载在数据帧;发送装置用于通过通信网络将数据帧发送给对端通信设备。
本实施例提供的装置,由于循环正形矩阵具有完全平衡性的特点,通过循环正形矩阵进行列混淆,不仅能够保证数据加密的平衡性,还可优化分支数,进而提高加密的安全性。
需要说明的是:上述实施例二和实施例四提供的数据加密的装置在进行数据加密时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例二提供的数据加密的装置与实施例一提供的数据加密的方法实施例属于同一构思,上述实施例四提供的数据加密的装置与实施例三提供的数据加密的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。本发明实施例提供的方法除了适用于GPON和XGPON上的数据加密,还适用于无线网络的加密处理,方法类似,仅需将待加密的数据修改为无线数据的帧格式即可,此处不再赘述。
本发明实施例中的全部或部分步骤,可以利用软件实现,相应的软件程序可以存储在可读取的存储介质中,如光盘或硬盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (14)

1.一种数据加密的方法,其特征在于,所述方法包括:
根据预先确定的哈达玛正形矩阵对密钥进行扩展;
对待加密数据进行字节置换,并将字节置换后的数据进行行变换;
将行变换后的数据进行列混淆,并根据扩展的密钥对列混淆后的数据加密;
将加密后的数据承载在数据帧,并通过通信网络将该数据帧发送给对端通信设备。
2.根据权利要求1所述的方法,其特征在于,所述根据预先确定的哈达玛正形矩阵对密钥进行扩展,具体包括:
将密钥进行字节置换;
求取字节置换后的密钥与预先确定的哈达玛正形矩阵的乘积,并将乘积结果与轮常数做异或,得到扩展的密钥。
3.根据权利要求2所述的方法,其特征在于,所述哈达玛正形矩阵的确定方式包括:
在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断所述a0,a1,a2,a3是否满足
Figure FSA00000281603600011
且a1a2≠a0a3,a0a1≠a2a3,a0a2≠a1a3的条件;
如果否,则重新在所述有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足所述条件,将A=Had(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶哈达玛正形矩阵,其中,m为自然数。
4.根据权利要求1所述的方法,其特征在于,所述将行变换后的数据进行列混淆,具体包括:
根据预先确定的循环正形矩阵对行变换后的数据进行列混淆。
5.根据权利要求4所述的方法,其特征在于,所述循环正形矩阵的确定方式包括:
在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断所述a0,a1,a2,a3是否满足且a0≠a2
Figure FSA00000281603600013
Figure FSA00000281603600014
a1≠a3
Figure FSA00000281603600021
Figure FSA00000281603600022
a1a2≠a0a3,a0a1≠a2a3的第一条件;
如果否,则重新在所述有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足所述第一条件,再判断所述a0,a1,a2,a3是否满足
Figure FSA00000281603600024
Figure FSA00000281603600025
Figure FSA00000281603600026
的第二条件;
如果否,则重新在所述有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足所述第一条件及所述第二条件,则将A=circ(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶循环正形矩阵,其中,m为自然数。
6.如权利要求1所述的方法,其特征在于,所述通信网络为吉比特无源光网络GPON网络或10吉比特无源光网络XGPON网络,所述数据帧为GEM帧,且所述加密后的数据被封装在所述GEM帧的净荷部分。
7.一种数据加密的装置,其特征在于,所述装置包括:
密钥扩展模块,用于根据预先确定的哈达玛正形矩阵对密钥进行扩展;
字节置换模块,用于对待加密数据进行字节置换;
行变换模块,用于将所述字节置换模块置换后的数据进行行变换;
列混淆模块,用于将所述行变换模块变换后的数据进行列混淆;
加密模块,用于根据所述密钥扩展模块扩展的密钥对所述列混淆模块混淆后的数据加密。
8.根据权利要求7所述的装置,其特征在于,所述密钥扩展模块,具体包括:
字节置换单元,用于将密钥进行字节置换;
乘积单元,用于求取所述字节置换单元置换后的密钥与哈达玛正形矩阵的乘积;
轮常数变换单元,用于将所述乘积单元得到的乘积结果与轮常数做异或,得到扩展的密钥。
9.根据权利要求8所述的装置,其特征在于,所述哈达玛正形矩阵的确定方式包括:在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断所述a0,a1,a2,a3是否满足且a1a2≠a0a3,a0a1≠a2a3,a0a2≠a1a3的条件;如果否,则重新在所述有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足所述条件,将A=Had(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶哈达玛正形矩阵,其中,m为自然数。
10.根据权利要求7所述的装置,其特征在于,所述列混淆模块,具体用于根据预先确定的循环正形矩阵对行变换后的数据进行列混淆。
11.根据权利要求10所述的装置,其特征在于,所述循环正形矩阵的确定方式包括:在有限域GF(2m)中任取四个非零的互异元素a0,a1,a2,a3∈GF(2m),并判断所述a0,a1,a2,a3是否满足且a0≠a2
Figure FSA00000281603600033
Figure FSA00000281603600034
a1≠a3
Figure FSA00000281603600035
Figure FSA00000281603600036
a1a2≠a0a3,a0a1≠a2a3的第一条件;如果否,则重新在所述有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足所述第一条件,再判断所述a0,a1,a2,a3是否满足
Figure FSA00000281603600037
Figure FSA00000281603600038
Figure FSA00000281603600039
Figure FSA000002816036000310
的第二条件;如果否,则重新在所述有限域GF(2m)中任取四个非零的互异元素,直至任取的四个非零的互异元素满足所述第一条件及所述第二条件,则将A=circ(a0,a1,a2,a3)确定为有限域GF(2m)上的四阶循环正形矩阵,其中,m为自然数。
12.一种具有数据加密功能的通信设备,包括:
数据加密装置,用于对接收到的待加密数据进行加密处理;
成帧装置,用于将加密后的数据承载在数据帧;
发送装置,用于通过所述通信设备所应用的通信网络,将所述数据帧发送给对端通信设备;
其特征在于,所述数据加密装置包括:
密钥扩展模块,用于根据预先确定的哈达玛正形矩阵对密钥进行扩展;
字节置换模块,用于对待加密数据进行字节置换;
行变换模块,用于将所述字节置换模块置换后的数据进行行变换;
列混淆模块,用于将所述行变换模块变换后的数据进行列混淆;
加密模块,用于根据所述密钥扩展模块扩展的密钥对所述列混淆模块混淆后的数据加密。
13.如权利要求12所述的通信设备,其特征在于,所述密钥扩展模块,具体包括:字节置换单元,用于将密钥进行字节置换;乘积单元,用于求取所述字节置换单元置换后的密钥与哈达玛正形矩阵的乘积;轮常数变换单元,用于将所述乘积单元得到的乘积结果与轮常数做异或,得到扩展的密钥。
14.根据权利要求12所述的通信设备,其特征在于,所述列混淆模块利用预先确定的循环正形矩阵,对所述行变换模块行变换后得到数据进行列混淆。
CN2010102897988A 2010-09-17 2010-09-17 数据加密的方法、装置及具有数据加密功能的通信设备 Pending CN102142957A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2010102897988A CN102142957A (zh) 2010-09-17 2010-09-17 数据加密的方法、装置及具有数据加密功能的通信设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2010102897988A CN102142957A (zh) 2010-09-17 2010-09-17 数据加密的方法、装置及具有数据加密功能的通信设备

Publications (1)

Publication Number Publication Date
CN102142957A true CN102142957A (zh) 2011-08-03

Family

ID=44410205

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2010102897988A Pending CN102142957A (zh) 2010-09-17 2010-09-17 数据加密的方法、装置及具有数据加密功能的通信设备

Country Status (1)

Country Link
CN (1) CN102142957A (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103684749A (zh) * 2013-11-26 2014-03-26 衡阳师范学院 一种基于面积与性能平衡优化的klein加密实现方法
CN103701584A (zh) * 2013-12-10 2014-04-02 中国船舶重工集团公司第七0九研究所 一种对称密码中二进制线性扩散结构的设计方法
CN106157961A (zh) * 2015-04-09 2016-11-23 展讯通信(上海)有限公司 语音信号处理方法及装置
CN108418810A (zh) * 2018-02-08 2018-08-17 中国人民解放军国防科技大学 一种基于Hadamard矩阵的秘密分享方法
CN109765825A (zh) * 2019-01-30 2019-05-17 山西天科信息安全科技有限公司 一种物联网多链路安全控制终端和安全控制方法
CN110324427A (zh) * 2019-07-09 2019-10-11 晏保华 一种异步数据交互系统、方法及装置
CN112115461A (zh) * 2020-11-20 2020-12-22 腾讯科技(深圳)有限公司 设备认证方法、装置、计算机设备和存储介质
CN113891313A (zh) * 2021-10-21 2022-01-04 四川华能嘉陵江水电有限责任公司 用于灯泡贯流式机组与巡检监控设备的通信接入方法
CN117978367A (zh) * 2024-03-28 2024-05-03 青岛青软晶尊微电子科技有限公司 一种基于risc-v架构的加密方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
SECRETARY OF COMMERCE: "《Federal Information Processing Standards Publication 197, Announcing the ADVANCED ENCRYPTION STANDARD (AES)》", 《HTTP://CSRC.NIST.GOV/PUBLICATIONS/FIPS/FIPS197/FIPS-197.PDF》 *
夏戈明等: "《基于对称平衡不完全区组设计的无线传感器网络密钥预分配方案》", 《计算机研究与发展》 *

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103684749A (zh) * 2013-11-26 2014-03-26 衡阳师范学院 一种基于面积与性能平衡优化的klein加密实现方法
CN103684749B (zh) * 2013-11-26 2016-06-29 衡阳师范学院 一种基于面积与性能平衡优化的klein加密实现方法
CN103701584A (zh) * 2013-12-10 2014-04-02 中国船舶重工集团公司第七0九研究所 一种对称密码中二进制线性扩散结构的设计方法
CN103701584B (zh) * 2013-12-10 2017-01-18 中国船舶重工集团公司第七0九研究所 一种对称密码中二进制线性扩散结构的设计方法
CN106157961A (zh) * 2015-04-09 2016-11-23 展讯通信(上海)有限公司 语音信号处理方法及装置
CN108418810A (zh) * 2018-02-08 2018-08-17 中国人民解放军国防科技大学 一种基于Hadamard矩阵的秘密分享方法
CN109765825A (zh) * 2019-01-30 2019-05-17 山西天科信息安全科技有限公司 一种物联网多链路安全控制终端和安全控制方法
CN109765825B (zh) * 2019-01-30 2023-09-29 山西天科信息安全科技有限公司 一种物联网多链路安全控制终端和安全控制方法
CN110324427A (zh) * 2019-07-09 2019-10-11 晏保华 一种异步数据交互系统、方法及装置
CN112115461A (zh) * 2020-11-20 2020-12-22 腾讯科技(深圳)有限公司 设备认证方法、装置、计算机设备和存储介质
CN113891313A (zh) * 2021-10-21 2022-01-04 四川华能嘉陵江水电有限责任公司 用于灯泡贯流式机组与巡检监控设备的通信接入方法
CN113891313B (zh) * 2021-10-21 2024-03-19 四川华能嘉陵江水电有限责任公司 用于灯泡贯流式机组与巡检监控设备的通信接入方法
CN117978367A (zh) * 2024-03-28 2024-05-03 青岛青软晶尊微电子科技有限公司 一种基于risc-v架构的加密方法

Similar Documents

Publication Publication Date Title
CN102142957A (zh) 数据加密的方法、装置及具有数据加密功能的通信设备
US20200252215A1 (en) Streaming authentication and multi-level security for communications networks using quantum cryptography
US10291399B2 (en) Quantum-secured communications overlay for optical fiber communications networks
KR100675837B1 (ko) 고속 gcm-aes 블록 암호화 장치 및 방법
US20030072059A1 (en) System and method for securing a communication channel over an optical network
CN104718720B (zh) 光传送网络中的时隙加密
US20140044262A1 (en) Low Latency Encryption and Authentication in Optical Transport Networks
CN104980228A (zh) 一种光信号传输方法和装置
Li et al. Related-tweak statistical saturation cryptanalysis and its application on QARMA
US11057193B2 (en) Enhanced randomness for digital systems
CN111416701B (zh) 基于矢量扰动的高安全正交模分复用接入方法和系统
Bardeh A key-independent distinguisher for 6-round AES in an adaptive setting
CN116980194A (zh) 一种基于云边端协同的安全高效数据传输方法及其系统
CN116318669A (zh) 一种基于窄带物联网的轻量级加密方法
Yin et al. A novel encryption scheme based on timestamp in gigabit Ethernet passive optical network using AES-128
Gaur et al. A comparative study and analysis of cryptographic algorithms: RSA, DES, AES, BLOWFISH, 3-DES, and TWOFISH
CN101902664A (zh) 一种提高无源光网络加解密速度的方法和系统
KR20080052092A (ko) 이동통신 시스템에서 사용자 비밀키 생성방법 및 그 장치
CN113644985A (zh) 基于细胞自动机和dna编码的超长距传输方法及系统
WO2003023980A2 (en) System and method for securing a communication channel
Ghosh et al. Performance analysis of AES, DES, RSA and AES-DES-RSA hybrid algorithm for data security
US20240039703A1 (en) Methods, systems, and modules for key exchange in point-to-multipoint transport networks
Abdallah et al. An all optical configurable and secure OCDMA system implementation using loop based optical delay lines
Engelmann et al. Improving security in optical networks with random forwarding and parallel transmission
Ji et al. Square attack on reduced-round Zodiac cipher

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: 20110803