System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及数据传输,尤其涉及一种串口数据的加密传输方法、设备及存储介质。
技术介绍
1、串口文件传输技术通常是指使用文件处理技术进行文件的流处理后,使用串口编程技术对处理后流数据进行传输的技术。串口文件传输技术可以实现两个没有网络连接的设备之间的数据传输。
2、串口文件传输技术有两种传输模式,第一种传输模式是最基础的串口文件传输协议,采用crc校验方式,具有简单、可靠、兼容性强等特点。第二种传输模式是比第一种传输模式更高级的数据传输协议,可以传输大于128字节的数据块,支持数据压缩和校验,能够提供更高效、更稳定的数据传输。
3、但是,这两种串口文件传输模式注重的是数据传输的易用性和兼容性,并未考虑在数据传输过程中的安全性、文件传输完成之后的完整性。因此,串口文件传输技术在传输机密文件时,安全风险较大。
技术实现思路
1、为了提高串口文件传输技术在传输机密文件时的安全性,第一方面,本申请提供一种串口数据的加密传输方法,包括:
2、获取待传输的串口数据;
3、根据由所述串口数据建立的传输任务生成密钥对,所述密钥对包括公钥和私钥,其中,所述公钥位于所述串口数据的发送端,所述私钥位于所述串口数据的接收端;
4、在所述发送端通过所述公钥对所述串口数据执行加密,得到加密数据;
5、将所述加密数据从所述发送端发送至所述接收端,以通过所述私钥对所述加密数据执行解密,以根据解密结果得到解密数据;
6、在所述接收端计算
7、在一些实施例中,在所述发送端通过所述公钥对所述串口数据执行加密的步骤,包括:
8、根据预设位数的数据流对所述串口数据执行分包处理,得到分包数据;
9、通过所述公钥,使用非对称加密算法对所述分包数据执行加密处理,得到分包加密数据;
10、将所述分包加密数据执行合并,得到加密数据。
11、在一些实施例中,将所述分包加密数据执行合并的步骤前,还包括:
12、通过所述公钥,使用数字签名算法计算所述分包加密数据的第一数字签名;
13、将所述第一数字签名添加至所述分包加密数据中,以更新分包加密数据。
14、在一些实施例中,通过所述私钥对所述加密数据执行解密的步骤,包括:
15、通过所述私钥,将所述加密数据分解为分包加密数据;
16、对所述分包加密数据执行解密,获得分包解密数据以及第二数字签名;
17、根据所述第一数字签名对所述第二数字签名执行验证,如果得到验证成功的验证结果,则输出所述解密结果;
18、如果得到验证失败的验证结果,则重新获取所述串口数据。
19、在一些实施例中,在所述接收端计算所述解密数据和所述串口数据的重合度的步骤,包括:
20、通过信息摘要算法获取所述串口数据的第一哈希值和所述解密数据的第二哈希值;
21、根据所述第一哈希值和所述第二哈希值计算所述重合度。
22、在一些实施例中,根据所述第一哈希值和所述第二哈希值计算所述重合度的步骤后,还包括:
23、设定所述重合度阈值;
24、如果所述重合度大于所述重合度阈值,则输出所述解密数据;
25、如果所述重合度小于或者等于所述重合度阈值,则重新通过公钥对所述串口数据执行加密。
26、在一些实施例中,通过信息摘要算法获取所述串口数据的第一哈希值的步骤,包括:
27、通过所述信息摘要算法,根据分组参数对所述串口数据执行分组处理,得到第一分组数据;
28、根据预设条件对所述第一分组数据执行合并处理,得到第二分组数据;
29、将所述第二分组数据执行级联操作,得到散列值;
30、根据所述散列值计算所述第一哈希值。
31、在一些实施例中,所述第一数字签名包括秘密数字和随机数字,以及,将所述加密数据从所述发送端发送至所述接收端的步骤,包括:
32、从所述加密数据中获取第一数字签名的关键数字,所述关键数字包括秘密数字和随机数字;
33、对所述秘密数字和所述随机数字执行幂模运算,得到幂模运算结果;
34、对所述幂模运算结果执行离散对数运算,得到数字加密结果;
35、根据所述数字加密结果,发送所述加密数据至所述串口数据的接收端。
36、第二方面,本申请提供一种串口数据的加密传输设备,包括传输模块,所述传输模块被配置为:
37、获取待传输的串口数据;
38、根据由所述串口数据建立的传输任务生成密钥对,所述密钥对包括公钥和私钥,其中,所述公钥位于所述串口数据的发送端,所述私钥位于所述串口数据的接收端;
39、通过所述公钥对所述串口数据执行加密,得到加密数据;
40、将所述加密数据发送至所述串口数据的接收端,以通过所述私钥对所述加密数据执行解密,以根据解密结果得到解密数据;
41、计算所述解密数据和所述串口数据的重合度,以根据所述重合度生成传输结果。
42、第三方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质中包括计算机指令,所述计算机指令用于指示计算机执行第一方面所述的串口数据的加密传输方法。
43、由以上技术方案可知,本申请提供一种串口数据的加密传输方法、设备及存储介质,通过获取待传输的串口数据,并根据由串口数据建立的传输任务生成密钥对,在发送端通过公钥对串口数据执行加密,得到加密数据。然后将加密数据从发送端发送至接收端,以通过私钥对加密数据执行解密,根据解密结果得到解密数据,最后在接收端计算解密数据和串口数据的重合度,根据重合度生成传输结果。本申请通过在串口数据的传输过程中,使用公钥对串口数据执行加密,并在接收端使用私钥对加密数据执行解密,然后计算解密数据和串口数据的重合度输出传输结果,提高串口数据传输的安全性。
本文档来自技高网...【技术保护点】
1.一种串口数据的加密传输方法,其特征在于,包括:
2.根据权利要求1所述的串口数据的加密传输方法,其特征在于,在所述发送端通过所述公钥对所述串口数据执行加密的步骤,包括:
3.根据权利要求2所述的串口数据的加密传输方法,其特征在于,将所述分包加密数据执行合并的步骤前,还包括:
4.根据权利要求3所述的串口数据的加密传输方法,其特征在于,通过所述私钥对所述加密数据执行解密的步骤,包括:
5.根据权利要求1所述的串口数据的加密传输方法,其特征在于,在所述接收端计算所述解密数据和所述串口数据的重合度的步骤,包括:
6.根据权利要求5所述的串口数据的加密传输方法,其特征在于,根据所述第一哈希值和所述第二哈希值计算所述重合度的步骤后,还包括:
7.根据权利要求5所述的串口数据的加密传输方法,其特征在于,通过信息摘要算法获取所述串口数据的第一哈希值的步骤,包括:
8.根据权利要求2所述的串口数据的加密传输方法,其特征在于,所述第一数字签名包括秘密数字和随机数字,以及,将所述加密数据从所述发送端发送至所述接收
9.一种串口数据的加密传输设备,其特征在于,包括传输模块,所述传输模块被配置为:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中包括计算机指令,所述计算机指令用于指示计算机执行权利要求1-8任一项所述的串口数据的加密传输方法。
...【技术特征摘要】
1.一种串口数据的加密传输方法,其特征在于,包括:
2.根据权利要求1所述的串口数据的加密传输方法,其特征在于,在所述发送端通过所述公钥对所述串口数据执行加密的步骤,包括:
3.根据权利要求2所述的串口数据的加密传输方法,其特征在于,将所述分包加密数据执行合并的步骤前,还包括:
4.根据权利要求3所述的串口数据的加密传输方法,其特征在于,通过所述私钥对所述加密数据执行解密的步骤,包括:
5.根据权利要求1所述的串口数据的加密传输方法,其特征在于,在所述接收端计算所述解密数据和所述串口数据的重合度的步骤,包括:
6.根据权利要求5所述的串口数据的加密传输方法,其特征在于,根据所...
【专利技术属性】
技术研发人员:吕梅柏,张磊,张步红,刘晓东,张京博,
申请(专利权)人:西北工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。