【技术实现步骤摘要】
和DNA加密规则生成轮密钥k;
[0013]5)用公式P1=bitxor((plain+w)mod256,z)将(plain)
10
中的整数限制在0
‑
255这256个数之间;用部分X2中序列构成的位置序列T3打乱P1中数据的位置P2=P1(T3),再用部分X1中序列构成的位置序列T4打乱P2中数据的位置;P3=P2(T4);随后将P3中所有整数化为8位二进制数P4,并分成每64bit一组记为Plain_block(i);
[0014]6)类Feistel密码结构加密步骤为:首先将明文分组Plain_block(i)与初始向量IV进行异或操作,再经过P置乱后划分为4个等长的运算单元L1,L2,R1,R2;其次对这4个运算单元进行round轮运算,每轮调用两次F函数;最后对4个运算单元进行P置乱后串联构成该组明文的类Feistel输出,即密文Ciphered_block(i);
[0015]7)经过类Feistel密码结构输出的密文Ciphered_block(i)通过密文分组组链接(Cipher Block Chaining,CBC)模式进行链接,得到最终的二进制密文输出Ciphered_data;
[0016]8)最后,利用函数bin2dec(
·
),将每8位二进制数转化为整数,再根据ASCII码表翻译成最终的密文。
[0017]进一步的,所述F函数的表示方法为
[0018][0019]其中,l表示16bit序列,k代表该轮中16bit轮密钥,DNA_al ...
【技术保护点】
【技术特征摘要】
1.一种基于2D
‑
LCLM的能源互联网数据分组加密算法,其特征在于:包括以下步骤:1)读取待加密的文本或图像数据,用plain来表示;计算所有明文数据的十进制和,并记为Sum_Pt,即Sum_Pt=∑(plain)
10
;2)设用于加密算法的2D
‑
LCLM的初值为(x'1(1),x'2(1),x'3(1)):其中(x1(1),x2(1),x3(1))为原始2D
‑
LCLM的初值,Sum_Pt
×
10
‑9为明文对初值的微小扰动;将混沌映射迭代生成的伪随机序列记为X1,X2,X3;利用X1和X3中的部分序列分别生成两个整数序列w和z:3)用实数序列X2构造位置序列T1,利用X2、T1和Baker离散化映射共同构造8
×
8的S盒;4)在给定十六进制初始密钥Key的前提下,截取X2中部分序列构造位置序列T2;T2和DNA加密规则生成轮密钥k;5)用公式P1=bitxor((plain+w)mod256,z)将(plain)
10
中的整数限制在0
‑
255这256个数之间;用部分X2中序列构成的位置序列T3打乱P1中数据的位置P2=P1(T3),再用部分X1中序列构成的位置序列T4打乱P2中数据的位置;P3=P2(T4);随后将P3中所有整数化为8位二进制数P4,并分成每64bit一组记为Plain_block(i);6)类Feistel密码结构加密步骤为:首先将明文分组Plain_block(i)与初始向量IV进行异或操作,再经过P置乱后划分为4个等长的运算单元L1,L2,R1,R2;其次对这4个运算单元进行round轮运算,每轮调用两次F函数;最后对4个运算单元进行P置乱后串联构成该组明文的类Feistel输出,即密文Ciphered_block(i);7)经过类Feistel密码结构输出的密文Ciphered_block(i)通过密文分组组链接模式进行链接,得到最终的二进制密文输出Ciphered_data;8)最后,利用函数bin2dec(
·
),将每8位二进制数转化为整数,再根据ASCII码表翻译成最终的密文。2.根据权利要求1所述的基于2D
‑
LCLM的能源互联网数据分组加密算法,其特征在于:所述F函数的表示方法为:其中,l表示16bit序列,k代表该轮中16bit轮密钥,DNA_algorithm(
·
)表示DNA加密规则,S_box(
·
)代表动态S盒,为按位异或操作,QF是一个非线性方程。3.根据权利要求1所述的基于2...
【专利技术属性】
技术研发人员:张芳芳,寇磊,张雪,孙凯,李峰,叶波,李明轩,颜培培,
申请(专利权)人:国网新疆电力有限公司电力科学研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。