一种数据加密方法和装置的制造方法_3

文档序号:8285001阅读:来源:国知局
行说明,在本发明的其他实施例中,所述第一分组和第二分组可以为可适用的任意个数。另外,在本发明的上述实施例中,仅以两轮加密运算为例进行说明,在本发明的其他实施例中,所述加密方法可以包括任意可适用轮数的加密运算。
[0046]本发明的实施例还提供了一种数据加密装置。请参考图6,所述数据加密装置200包括:第一处理单元201,用于将原始数据的η个第一分组分别和η个掩码进行异或,获得第一数据的η个第二分组,所述η个掩码为η个不同的随机数分别进行预设线性变换后的值,其中,第k个所述第二分组对应第k个掩码,所述第k个掩码对应第k个随机数,l^k^n ;第二处理单元202,用于将所述第一数据的第2个第二分组至第η个第二分组和第一轮密钥进行异或后的值,第一数据的第I个第二分组对应的所述随机数和新增第一随机数进行异或后的值作为预设非线性变换的输入进行所述预设非线性变换,并将所述非线性变换后的值进行所述预设线性变换;第三处理单元203,用于将所述预设线性变换后的值和所述第一数据的第I个第二分组异或后的值作为第二数据的第η个第二分组,并将所述新增第一随机数经过所述预设线性变换后的值作为所述第二数据的第η个第二分组对应的掩码;第四处理单元204,用于将所述第一数据的第j个第二分组的值作为所述第二数据的第j-1个第二分组的值,并将所述第一数据的第j个第二分组对应的掩码作为所述第二数据的第j-Ι个第二分组对应的掩码,Kj^n0
[0047]请参考图7,在本发明的实施例中,所述装置200还可以包括:第五处理单元205,用于将所述第二数据的第2个第二分组至第η个第二分组和第二轮密钥进行异或后的值,第二数据的第I个第二分组对应的随机数和新增第二随机数进行异或后的值作为预设非线性变换的输入进行所述预设非线性变换,并将所述非线性变换后的值进行所述预设线性变换;第六处理单元206,用于将所述预设线性变换后的值和所述第二数据的第I个第二分组异或后的值作为第三数据的第η个第二分组,并将所述新增第二随机数经过所述预设线性变换后的值作为所述第三数据的第η个第二分组对应的掩码;第七处理单元207,用于将所述第二数据的第j个第二分组的值作为所述第三数据的第j-1个第二分组的值,并将所述第二数据的第j个第二分组对应的掩码作为所述第三数据的第j-1个第二分组对应的掩码,I < j < η。
[0048]本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:ROM、RAM、磁盘或光盘等。
[0049]虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,
[0050]在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。
【主权项】
1.一种数据加密方法,其特征在于,包括: 将原始数据的η个第一分组分别和η个掩码进行异或,获得第一数据的η个第二分组,所述η个掩码为η个不同的随机数分别进行预设线性变换后的值,其中,第k个所述第二分组对应第k个掩码,所述第k个掩码对应第k个随机数,I ^k^n; 将所述第一数据的第2个第二分组至第η个第二分组和第一轮密钥进行异或后的第一值,第一数据的第I个第二分组对应的所述随机数和新增第一随机数进行异或后的第二值作为预设非线性变换的输入进行所述预设非线性变换,并将所述非线性变换后的值进行所述预设线性变换; 将所述预设线性变换后的值和所述第一数据的第I个第二分组异或后的值作为第二数据的第η个第二分组,并将所述新增第一随机数经过所述预设线性变换后的值作为所述第二数据的第η个第二分组对应的掩码; 将所述第一数据的第j个第二分组的值作为所述第二数据的第j-ι个第二分组的值,并将所述第一数据的第j个第二分组对应的掩码作为所述第二数据的第j-ι个第二分组对应的掩码,I < j彡η。
2.如权利要求1所述的方法,其特征在于,还包括: 将所述第二数据的第2个第二分组至第η个第二分组和第二轮密钥进行异或后的第三值,第二数据的第I个第二分组对应的随机数和新增第二随机数进行异或后的第四值作为预设非线性变换的输入进行所述预设非线性变换,并将所述非线性变换后的值进行所述预设线性变换; 将所述预设线性变换后的值和所述第二数据的第I个第二分组异或后的值作为第三数据的第η个第二分组,并将所述新增第二随机数经过所述预设线性变换后的值作为所述第三数据的第η个第二分组对应的掩码; 将所述第二数据的第j个第二分组的值作为所述第三数据的第j-ι个第二分组的值,并将所述第二数据的第j个第二分组对应的掩码作为所述第三数据的第j-ι个第二分组对应的掩码,I < j彡η。
3.一种数据加密装置,其特征在于,包括: 第一处理单元,用于将原始数据的η个第一分组分别和η个掩码进行异或,获得第一数据的η个第二分组,所述η个掩码为η个不同的随机数分别进行预设线性变换后的值,其中,第k个所述第二分组对应第k个掩码,所述第k个掩码对应第k个随机数,l^k^n; 第二处理单元,用于将所述第一数据的第2个第二分组至第η个第二分组和第一轮密钥进行异或后的第一值,第一数据的第I个第二分组对应的所述随机数和新增第一随机数进行异或后的第二值作为预设非线性变换的输入进行所述预设非线性变换,并将所述非线性变换后的值进行所述预设线性变换; 第三处理单元,用于将所述预设线性变换后的值和所述第一数据的第I个第二分组异或后的值作为第二数据的第η个第二分组,并将所述新增第一随机数经过所述预设线性变换后的值作为所述第二数据的第η个第二分组对应的掩码; 第四处理单元,用于将所述第一数据的第j个第二分组的值作为所述第二数据的第j-Ι个第二分组的值,并将所述第一数据的第j个第二分组对应的掩码作为所述第二数据的第j_l个第二分组对应的掩码,Kj^n0
4.如权利要求3所述的装置,其特征在于,还包括: 第五处理单元,用于将所述第二数据的第2个第二分组至第η个第二分组和第二轮密钥进行异或后的第三值,第二数据的第I个第二分组对应的随机数和新增第二随机数进行异或后的第四值作为预设非线性变换的输入进行所述预设非线性变换,并将所述非线性变换后的值进行所述预设线性变换; 第六处理单元,用于将所述预设线性变换后的值和所述第二数据的第I个第二分组异或后的值作为第三数据的第η个第二分组,并将所述新增第二随机数经过所述预设线性变换后的值作为所述第三数据的第η个第二分组对应的掩码; 第七处理单元,用于将所述第二数据的第j个第二分组的值作为所述第三数据的第j-Ι个第二分组的值,并将所述第二数据的第j个第二分组对应的掩码作为所述第三数据的第j_l个第二分组对应的掩码,I < j < η。
【专利摘要】本发明提供了一种数据加密方法和装置。其中,所述方法包括:将原始数据的n个第一分组分别和n个掩码进行异或,获得第一数据的n个第二分组,所述n个掩码为n个不同的随机数分别进行预设线性变换后的值,1≤k≤n;将所述第一数据的第2个第二分组至第n个第二分组和第一轮密钥进行异或后的第一值,第一数据的第1个第二分组对应的所述随机数和新增第一随机数进行异或后的第二值作为预设非线性变换的输入进行所述预设非线性变换,并将所述非线性变换后的值进行所述预设线性变换;将所述预设线性变换后的值和所述第一数据的第1个第二分组异或后的值作为第二数据的第n个第二分组。所述方法和装置能够提高数据的安全性。
【IPC分类】H04L9-00, H04L9-28
【公开号】CN104601319
【申请号】CN201310534560
【发明人】刘珊珊, 王立辉, 单伟君, 魏长征, 张志敏, 李清, 张纲
【申请人】上海复旦微电子集团股份有限公司
【公开日】2015年5月6日
【申请日】2013年10月31日
当前第3页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1