一种加密方法、解密方法、通信方法及其系统和装置制造方法及图纸

技术编号:28947929 阅读:93 留言:0更新日期:2021-06-18 22:04
本发明专利技术提供了一种加密方法、解密方法、通信方法及其系统和装置,包括:初始化状态向量K;将算法密钥进行二进制转换形成第一字节流,并生成索引编号;根据索引编号对算法密钥的帧头信息进行标记;对第一字节流进行轮转,形成新的密码状态向量Q;将状态向量K、密码状态向量Q以及原始字符串进行失量异或计算形成第二字节流;将第二字节流存放于数组中形成字符加密串;根据实时的时间戳、索引编号以及数据密钥,利用base64对字符加密串进行加密得到加密字符串。本发明专利技术中的加解密方法基于矩阵的失量对称转换,形成结果复杂,切无规则可循,同时生成串为二进制密码流无法被模拟,很难被暴力破解,安全等级较高。

【技术实现步骤摘要】
一种加密方法、解密方法、通信方法及其系统和装置
本专利技术属于数据通信加密
,具体涉及一种加密方法、解密方法、通信方法及其系统和装置。
技术介绍
常见的用于网络通信加密的算法如RSA、大多运用于云系统中的网络安全校检,流程复杂,非对称加密,加解密速度慢,算法的使用以及算法库的加载也比较麻烦,也做不到数据通信的实时性校验,不适用于局域网络数据的实时快速交互。
技术实现思路
本专利技术所要解决的技术问题是:提供一种加密方法、解密方法、通信方法及其系统和装置,利用两级密钥对数据进行加解密,进一步提高数据传输的安全性。本专利技术是这样实现的:一种加密方法,包括如下步骤:初始化状态向量K;将算法密钥进行二进制转换形成第一字节流,并生成索引编号;根据索引编号对所述算法密钥的帧头信息进行标记;对所述第一字节流进行轮转,形成新的密码状态向量Q;将所述状态向量K、密码状态向量Q以及原始字符串进行失量异或计算形成第二字节流;将所述第二字节流存放于数组中形成字符加密串;根据实时的时间戳、索引编号以及数据密钥,利用base64对所述字符加密串进行加密得到加密字符串。进一步地,所述状态向量K和密码状态向量Q均包含256个字节。进一步地,所述算法密钥采用伪随机数方法生成,所述数据密钥根据算法密钥和索引编号利用base64加密生成。本专利技术还提供了一种解密方法,包括如下步骤:利用base64提取加密字符串中的时间戳、索引编号、数据密钥及字符加密串;判断所述索引编号是否与预设帧头信息相匹配,若是则利用base64对所述数据密钥解密得到算法密钥;初始化状态向量K;将所述算法密钥进行二进制转换形成第一字节流,并生成索引编号;对所述第一字节流进行轮转,形成新的密码状态向量Q;将所述状态向量K、密码状态向量Q以及字符加密串进行失量异或计算得到原始字符串。进一步地,所述状态向量K和密码状态向量Q均包含256个字节。进一步地,在利用base64提取加密字符串中的时间戳、索引编号、数据密钥及字符加密串之后,判断所述索引编号是否与预设帧头信息相匹配之前,还包括:判断所述时间戳与当前时间的差值是否不超过预设值,若是则转向判断所述索引编号是否与预设帧头信息相匹配的步骤。进一步地,所述预设值为3秒。本专利技术还提供了一种通信方法,包括如下步骤:进程一采用上述加密方法对原始字符串加密,得到加密字符串;进程一将加密字符串发送给进程二;进程二接收到加密字符串后,采用上述解密方法对加密字符串解密得到原始字符串。本专利技术还提供了一种加密系统,包括:初始化模块,用于初始化状态向量K;转换模块,用于将算法密钥进行二进制转换形成第一字节流,并生成索引编号;标记模块,用于根据索引编号对所述算法密钥的帧头信息进行标记;轮转模块,用于对所述第一字节流进行轮转,形成新的密码状态向量Q;计算模块,用于将所述状态向量K、密码状态向量Q以及原始字符串进行失量异或计算形成第二字节流;字符加密串生成模块,用于将所述第二字节流存放于数组中形成字符加密串;加密模块,用于根据实时的时间戳、索引编号以及数据密钥,利用base64对所述字符加密串进行加密得到加密字符串。本专利技术还提供了一种解密系统,包括:提取模块,用于利用base64提取加密字符串中的时间戳、索引编号、数据密钥及字符加密串;判断模块,用于判断所述索引编号是否与预设帧头信息相匹配,若是则启动解密模块;解密模块,用于利用base64对所述数据密钥解密得到算法密钥;初始化模块,用于初始化状态向量K;转换模块,用于将所述算法密钥进行二进制转换形成第一字节流,并生成索引编号;轮转模块,用于对所述第一字节流进行轮转,形成新的密码状态向量Q;计算模块,用于将所述状态向量K、密码状态向量Q以及字符加密串进行失量异或计算得到原始字符串。进一步地,在利用base64提取加密字符串中的时间戳、索引编号、数据密钥及字符加密串之后,判断所述索引编号是否与预设帧头信息相匹配之前,还包括:匹配模块,用于判断所述时间戳与当前时间的差值是否不超过预设值,若是则启动判断模块。本专利技术还提供了一种通信系统,其特征在于,包括:加密模块,用于采用上述加密方法对原始字符串加密,得到加密字符串;发送模块,用于发送加密字符串;接收模块,用于接收加密字符串;解密模块,用于采用上述解密方法对加密字符串解密得到原始字符串。本专利技术还提供了一种加密装置,包括处理器和存储器;所述存储器存储有计算机程序,所述处理器执行计算机程序时实现上述加密方法的步骤。本专利技术还提供了一种解密装置,包括处理器和存储器;所述存储器存储有计算机程序,所述处理器执行计算机程序时实现上述解密方法的步骤。本专利技术还提供了一种通信装置,包括处理器和存储器;所述存储器存储有计算机程序,所述处理器执行计算机程序时实现上述通信方法的步骤。本专利技术带来的有益效果是:1.本专利技术中的加解密方法基于数据字符串失量化,并经过对此进行异或转换,形成结果复杂,切无规则可循,同时生成串为二进制密码流无法被模拟,所以该算法很难被暴力破解,安全等级较高。2.本专利技术中的加解密方法能够由C语言实现,形成的代码量较少,且不依赖任何底层库,能够移植到任一平台,提高了平台间的通用性。3.本专利技术中的加解密方法中密钥增加了时间戳校验过程,提高了数据传输的实时安全性。附图说明图1为本专利技术中的加密方法的流程图;图2为本专利技术中的解密方法的流程图。具体实施方式下面结合附图对本专利技术作进一步描述。以下实施例仅用于更加清楚地说明本专利技术的技术方案,而不能以此来限制本专利技术的保护范围。本专利技术提供了一种通信方法,包括如下步骤:对于一段原始字符串“HardwareType#1#1004”,进程一将该原始字符串进行加密,得到加密字符串0YFhpus01y98UpMg1bAs0fICp9vHY7DEExd8p1XcQeE42Riuu6Iv。进程一将加密字符串发送给进程二。进程二接收到加密字符串后,将加密字符串进行解密得到原始字符串HardwareType#1#1004。基于同样的专利技术构思,本专利技术还提供了一种通信系统,包括加密模块、发送模块、接收模块和解密模块。基于同样的专利技术构思,本专利技术还提供了一种通信装置,包括处理器和存储器;所述存储器存储有计算机程序,所述处理器执行计算机程序时实现上述通信方法的步骤。加密模块用于将该原始字符串进行加密,得到加密字符串;发送模块用于发送加密字符串;接收模块用于接收加密字符串;解密模块用于将加密字符串进行解密得到原始字符串。如图1所示,将该原始字符本文档来自技高网...

【技术保护点】
1.一种加密方法,其特征在于,包括如下步骤:/n初始化状态向量K;/n将算法密钥进行二进制转换形成第一字节流,并生成索引编号;/n根据索引编号对所述算法密钥的帧头信息进行标记;/n对所述第一字节流进行轮转,形成新的密码状态向量Q;/n将状态向量K、密码状态向量Q以及原始字符串进行失量异或计算形成第二字节流;/n将所述第二字节流存放于数组中形成字符加密串;/n根据实时的时间戳、索引编号以及数据密钥,利用base64对所述字符加密串进行加密得到加密字符串。/n

【技术特征摘要】
1.一种加密方法,其特征在于,包括如下步骤:
初始化状态向量K;
将算法密钥进行二进制转换形成第一字节流,并生成索引编号;
根据索引编号对所述算法密钥的帧头信息进行标记;
对所述第一字节流进行轮转,形成新的密码状态向量Q;
将状态向量K、密码状态向量Q以及原始字符串进行失量异或计算形成第二字节流;
将所述第二字节流存放于数组中形成字符加密串;
根据实时的时间戳、索引编号以及数据密钥,利用base64对所述字符加密串进行加密得到加密字符串。


2.根据权利要求1所述的一种加密方法,其特征在于,所述状态向量K和密码状态向量Q均包含256个字节。


3.根据权利要求1所述的一种加密方法,其特征在于,所述算法密钥采用伪随机数方法生成,所述数据密钥根据算法密钥和索引编号利用base64加密生成。


4.一种解密方法,其特征在于,包括如下步骤:
利用base64提取加密字符串中的时间戳、索引编号、数据密钥及字符加密串;
判断所述索引编号是否与预设帧头信息相匹配,若是则利用base64对所述数据密钥解密得到算法密钥;
初始化状态向量K;
将所述算法密钥进行二进制转换形成第一字节流,并生成索引编号;
对所述第一字节流进行轮转,形成新的密码状态向量Q;
将所述状态向量K、密码状态向量Q以及字符加密串进行失量异或计算得到原始字符串。


5.根据权利要求4所述的一种解密方法,其特征在于,所述状态向量K和密码状态向量Q均包含256个字节。


6.根据权利要求4所述的一种解密方法,其特征在于,在利用base64提取加密字符串中的时间戳、索引编号、数据密钥及字符加密串之后,判断所述索引编号是否与预设帧头信息相匹配之前,还包括:
判断所述时间戳与当前时间的差值是否不超过预设值,若是则转向判断所述索引编号是否与预设帧头信息相匹配的步骤。


7.根据权利要求6所述的一种解密方法,其特征在于,所述预设值为3秒。


8.一种通信方法,其特征在于,包括如下步骤:
进程一采用如权利要求1至3任一所述的加密方法对原始字符串加密,得到加密字符串;
进程一将加密字符串发送给进程二;
进程二接收到加密字符串后,采用如权利要求4至7任一所述的一种解密方法对加密字符串解密得到原始字符串。


9.一种加密系统,其特征在于,包括:
初始化模块,用于初始化状态向量K;
转换模块,用于...

【专利技术属性】
技术研发人员:张洁王刚周维杰
申请(专利权)人:南京铉盈网络科技有限公司南京智盈人工智能研究院有限公司
类型:发明
国别省市:江苏;32

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

1