一种加密方法、解密方法及终端技术

技术编号:21145912 阅读:20 留言:0更新日期:2019-05-18 06:37
本发明专利技术涉及电子通信技术领域,具体公开一种加密方法、解密方法及终端,所述加密方法包括:通过若干随机参数组将基本数据分割成若干一级数据块;根据每个一级数据块对应的随机参数组将每个一级数据块分割成若干二级数据块,每个所述二级数据块均可填满一环形存储空间,同属一个一级数据块的所有二级数据块可填满一矩形阵列存储模块;将每个一级数据块均填入一所述矩形阵列存储模块中;依次读取同属一所述矩形阵列存储模块的存储单元中的数据以形成加密信息主体,将所述加密信息主体连同与之对应的所述随机参数组打包对外发送。本发明专利技术提供一种加密方法、解密方法及终端,能有效提高文件传输时的安全性。

A Method of Encryption, Decryption and Terminal

【技术实现步骤摘要】
一种加密方法、解密方法及终端
本专利技术涉及电子通信
,尤其涉及一种加密方法、解密方法及终端。
技术介绍
随着社会的发展,人们的日常工作和生活已经无法离开电子设备的使用。在电子设备带来各种便捷的同时,文件传输的安全问题也成为了人们关注的焦点。在现有技术中,电子设备在文件传输的时候所采用的加密方法过于简单,安全性较差,如若电子设备遭到入侵或者数据包在文件传输的过程中被拦截,一些有价值的个人隐私信息或者机密文件很可能就会外泄。因此,需要一种加密方法,可以有效提高文件传输时的安全性。
技术实现思路
本专利技术的一个目的在于,提供一种加密方法、解密方法及终端,能有效提高文件传输时的安全性。为达以上目的,第一方面,本专利技术提供一种加密方法,包括:通过若干随机参数组将基本数据分割成若干一级数据块;根据每个一级数据块对应的随机参数组将每个一级数据块分割成若干二级数据块,每个所述二级数据块均可填满一环形存储空间,同属一个一级数据块的所有二级数据块可填满一矩形阵列存储模块;所述矩形阵列存储模块包括若干呈矩形阵列排布的存储单元,所述矩形阵列存储模块从外向里包括若干从大到小排布的所述环形存储空间;将每个一级数据块均填入一所述矩形阵列存储模块中;依次读取同属一所述矩形阵列存储模块的存储单元中的数据以形成加密信息主体,将所述加密信息主体连同与之对应的所述随机参数组打包对外发送。优选地,所述随机参数组包括第一随机数Am和第二随机数Bm,所述通过若干随机参数组将基本数据分割成若干一级数据块,包括:通过加密库中的库存加密算法将原始数据转换为所述基本数据;读取所述基本数据的数据长度L;将所述基本数据分割成若干所述一级数据块,各所述一级数据块的字符长度Lm分别为:L1=A1·B1,其中,A1·B1≤L;L2=A2·B2,其中,A2·B2≤L-L1;L3=A3·B3,其中,A3·B3≤L-L1-L2;……Lm-1=Am-1·Bm-1,其中,Am-1·Bm-1≤L-L1-L2-……-Lm-2;Lm=Am·Bm,其中,Am·Bm=L-L1-L2-……-Lm-1;其中:m:为一级数据块的编号,m∈N;Am和Bm:均为随机产生的整数。优选地,所述根据每个一级数据块对应的随机参数组将每个一级数据块分割成若干二级数据块,每个所述二级数据块均可填满一环形存储空间,同属一个一级数据块的所有二级数据块可填满一矩形阵列存储模块,包括:确定每个所述一级数据块所包含的二级数据块的数量g(m)=Min(Am,Bm)/2+Min(Am,Bm)&1;确定每个二级数据块的字符长度f(mi):其中:i:为二级数据块的编号,1≤i≤g(m);Ami=Am-2(i-1);Bmi=Bm-2(i-1)。优选地,所述将每个一级数据块均填入一所述矩形阵列存储模块中,包括:确定各环形存储空间的存储空间起点的地址(Xmi,Ymi);其包括:为每个所述一级数据块均配置与之对应的Lm个存储单元,所述存储单元呈Am×Bm排布以形成所述矩形阵列存储模块;每个所述环形存储空间均设有四个顶点,沿顺时针分别标记为第1顶点、第2顶点、第3顶点和第4顶点;在[1,4]中生成随机整数cmi,并以第cmi个顶点为与第m个一级数据块中的第i个二级数据块对应的环形存储空间的存储空间标定点;在[0,1]中生成随机整数dmi,并根据所述dmi确定各环形存储空间的存储空间起点相对与之对应的存储空间标定点沿环形存储空间的偏移方向;在[0,f(mi)]中生成随机整数hmi,并以第hmi为各环形存储空间的存储空间起点相对与之对应的存储空间标定点沿环形存储空间的偏移距离;根据各所述存储空间标定点的地址、偏移方向dmi以及偏移距离hmi,确定各环形存储空间的存储空间起点地址(Xmi,Ymi);确定与各二级数据块的首字符对应的存储单元的地址,记为填充起点地址(X'mi,Y'mi);其包括:在[0,1]中生成随机整数d'mi,并根据所述d'mi确定各填充起点地址相对与之对应的存储空间起点地址沿环形存储空间的偏移方向;在[0,f(mi)]中生成随机整数h'mi,并以h'mi为各填充起点地址相对与之对应的存储空间起点地址沿环形存储空间的偏移距离;根据所述存储空间起点地址(Xmi,Ymi)、偏移方向d'mi和偏移距离h'mi,确定各所述填充起点地址(X'mi,Y'mi);根据各所述填充起点地址(X'mi,Y'mi)和预设填充方向依次将各二级数据块填入相应的环形存储空间中。优选地,所述依次读取同属一所述矩形阵列存储模块的存储单元中的数据以形成加密信息主体,将所述加密信息主体连同与之对应的所述随机参数组打包对外发送,包括:依次读取同属一所述矩形阵列存储模块的存储单元中的数据以形成加密信息主体;在所述加密信息主体的尾部加上解密参数后进行打包处理,然后将打包文件对外发送。优选地,所述解密参数包括:一级数据块的编号m、库存加密算法序号n、第一随机数Am、第二随机数Bm、各环形存储空间的存储空间标定点编号cmi、各环形存储空间的存储空间起点相对与之对应的存储空间标定点的偏移方向dmi、各环形存储空间的存储空间起点相对与之对应的存储空间标定点沿环形存储空间的偏移距离hmi;各填充起点地址相对与之对应的存储空间起点地址沿环形存储空间的偏移方向d'mi、各填充起点地址相对与之对应的存储空间起点地址沿环形存储空间的偏移距离h'mi。优选地,所述解密参数包括:一级数据块的编号m、库存加密算法序号n、第一随机数Am、第二随机数Bm、各所述填充起点地址(X'mi,Y'mi)。第二方面,本专利技术提供一种解密方法,包括:依次接收各打包文件,并读取每个打包文件中的加密信息主体和随机参数组;根据所述随机参数组提供矩形阵列存储模块,并将所述加密信息主体依次填入所述矩形阵列存储模块的存储单元中;结合所述随机参数组,依次从所述矩形阵列存储模块的各环形存储空间中读取各二级数据块;将所有所述二级数据块按次序连接以得到一级数据块;将所有所述一级数据块按次序连接以得到基本数据。第三方面,本专利技术提供一种加密终端,包括:第一数据分割模块,用于通过若干随机参数组将基本数据分割成若干一级数据块;第二数据分割模块,用于根据每个一级数据块对应的随机参数组将每个一级数据块分割成若干二级数据块,每个所述二级数据块均可填满一环形存储空间,同属一个一级数据块的所有二级数据块可填满一矩形阵列存储模块;所述矩形阵列存储模块包括若干呈矩形阵列排布的存储单元,所述矩形阵列存储模块从外向里包括若干从大到小排布的所述环形存储空间;加密填入模块,用于将每个一级数据块均填入一所述矩形阵列存储模块中;外发模块,用于依次读取同属一所述矩形阵列存储模块的存储单元中的数据以形成加密信息主体,将所述加密信息主体连同与之对应的所述随机参数组打包对外发送。第四方面,本专利技术提供一种解密终端,包括:接收模块,用于依次接收各打包文件,并读取每个打包文件中的加密信息主体和随机参数组;解密填入模块,用于根据所述随机参数组提供矩形阵列存储模块,并将所述加密信息主体依次填入所述矩形阵列存储模块的存储单元中;第一数据还原模块,用于结合所述随机参数组,依次从所述矩形阵列存储模块的各环形存储空间中读取各二级数据块;第二数据还原模块,用于将所有本文档来自技高网...

【技术保护点】
1.一种加密方法,其特征在于,包括:通过若干随机参数组将基本数据分割成若干一级数据块;根据每个一级数据块对应的随机参数组将每个一级数据块分割成若干二级数据块,每个所述二级数据块均可填满一环形存储空间,同属一个一级数据块的所有二级数据块可填满一矩形阵列存储模块;所述矩形阵列存储模块包括若干呈矩形阵列排布的存储单元,所述矩形阵列存储模块从外向里包括若干从大到小排布的所述环形存储空间;将每个一级数据块均填入一所述矩形阵列存储模块中;依次读取同属一所述矩形阵列存储模块的存储单元中的数据以形成加密信息主体,将所述加密信息主体连同与之对应的所述随机参数组打包对外发送。

【技术特征摘要】
1.一种加密方法,其特征在于,包括:通过若干随机参数组将基本数据分割成若干一级数据块;根据每个一级数据块对应的随机参数组将每个一级数据块分割成若干二级数据块,每个所述二级数据块均可填满一环形存储空间,同属一个一级数据块的所有二级数据块可填满一矩形阵列存储模块;所述矩形阵列存储模块包括若干呈矩形阵列排布的存储单元,所述矩形阵列存储模块从外向里包括若干从大到小排布的所述环形存储空间;将每个一级数据块均填入一所述矩形阵列存储模块中;依次读取同属一所述矩形阵列存储模块的存储单元中的数据以形成加密信息主体,将所述加密信息主体连同与之对应的所述随机参数组打包对外发送。2.根据权利要求1所述的加密方法,其特征在于,所述随机参数组包括第一随机数Am和第二随机数Bm,所述通过若干随机参数组将基本数据分割成若干一级数据块,包括:通过加密库中的库存加密算法将原始数据转换为所述基本数据;读取所述基本数据的数据长度L;将所述基本数据分割成若干所述一级数据块,各所述一级数据块的字符长度Lm分别为:L1=A1·B1,其中,A1·B1≤L;L2=A2·B2,其中,A2·B2≤L-L1;L3=A3·B3,其中,A3·B3≤L-L1-L2;……Lm-1=Am-1·Bm-1,其中,Am-1·Bm-1≤L-L1-L2-……-Lm-2;Lm=Am·Bm,其中,Am·Bm=L-L1-L2-……-Lm-1;其中:m:为一级数据块的编号,m∈N;Am和Bm:均为随机产生的整数。3.根据权利要求2所述的加密方法,其特征在于,所述根据每个一级数据块对应的随机参数组将每个一级数据块分割成若干二级数据块,每个所述二级数据块均可填满一环形存储空间,同属一个一级数据块的所有二级数据块可填满一矩形阵列存储模块,包括:确定每个所述一级数据块所包含的二级数据块的数量g(m)=Min(Am,Bm)/2+Min(Am,Bm)&1;确定每个二级数据块的字符长度f(mi):其中:i:为二级数据块的编号,1≤i≤g(m);Ami=Am-2(i-1);Bmi=Bm-2(i-1)。4.根据权利要求3所述的加密方法,其特征在于,所述将每个一级数据块均填入一所述矩形阵列存储模块中,包括:确定各环形存储空间的存储空间起点的地址(Xmi,Ymi);其包括:为每个所述一级数据块均配置与之对应的Lm个存储单元,所述存储单元呈Am×Bm排布以形成所述矩形阵列存储模块;每个所述环形存储空间均设有四个顶点,沿顺时针分别标记为第1顶点、第2顶点、第3顶点和第4顶点;在[1,4]中生成随机整数cmi,并以第cmi个顶点为与第m个一级数据块中的第i个二级数据块对应的环形存储空间的存储空间标定点;在[0,1]中生成随机整数dmi,并根据所述dmi确定各环形存储空间的存储空间起点相对与之对应的存储空间标定点沿环形存储空间的偏移方向;在[0,f(mi)]中生成随机整数hmi,并以第hmi为各环形存储空间的存储空间起点相对与之对应的存储空间标定点沿环形存储空间的偏移距离;根据各所述存储空间标定点的地址、偏移方向dmi以及偏移距离hmi,确定各环形存储空间的存储空间起点地址(Xmi,Ymi);确定与各二级数据块的首字符对应的存储单元的地址,记为填充起点地址(X'mi,Y'mi);其包括:在[0,1]中生成随机整数d'mi,并根据所述d'mi确定各填充起点地址相对与之对应的存储空间起点地址沿环形存储空间的偏移方向;在[...

【专利技术属性】
技术研发人员:刘晓润许信雄夏涛魏文旭江德伟
申请(专利权)人:广东虹勤通讯技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1