System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及协议传输技术,具体为一种基于tcp协议的多客户端情况下的安全传输方法。
技术介绍
1、在现代计算机的网络中,tcp协议是最常用的传输层协议,并且被广泛应用于各种应用场景,例如web浏览、文件传输、电子邮件等。然而,由于tcp协议的本质,使它在传输的过程中无法提供足够的安全保障,使得数据容易遭受中间人攻击,数据窃听等安全威胁,为了保护tcp传输的安全性,通常采用传输层安全协议(tls)或虚拟专用网络(vpn)等安全保护措施,然而,这些安全措施的实现方式和应用场景可能存在一些局限性,不一定适用所有的tcp传输请求。例如,使用tls或vpv需要额外的配置和管理,需要安装证书、配置加密算法、处理秘钥等,对于普通用户而言可能难以理解和操作。另外,加密和解密的过程会消耗计算资源,并可能会降低网络传输的性能和效率性。
2、因此,在多客户端的情况下,需要一种基于tcp协议的安全传输方法,可以更加有效的解决tcp传输的安全问题。
技术实现思路
1、为解决上述问题,本专利技术的目的是提供一种基于tcp协议的多客户端情况下的安全传输方法,通过使用基于国密算法加密以及唯一标识符验证tcp协议的安全传输方法,解决传统加密方法中消耗计算资源的问题。
2、本专利技术提供一种基于tcp协议的多客户端情况下的安全传输方法,包括:
3、s1,tcp发送客户端、tcp接收客户端分别与tcp服务端建立连接后预设用于加密和解密的salt值;若连接失败则直接结束,若连接成功则
4、s2,tcp发送客户端构建消息体并进行打包,通过sm4国密算法利用所述salt值对消息体加密;
5、s3,在所述消息体前拼接消息头并进行打包后向tcp服务端发送消息;
6、s4,tcp服务端接收所述消息并解析消息头,判断消息头中是否包含接
7、收者唯一标识符,若否,则直接执行步骤s5;若是,则将消息发送给tcp接收客户端,由接收客户端执行步骤s5;
8、s5,通过sm4国密算法对消息体解密后进行处理。
9、优选的,步骤s2,包括:
10、s21,tcp发送客户端通过uuid/uuid.h库获取唯一标识符,并通过linkhelp::fillbody()函数构造消息体,所述唯一标识符存放于消息体中;
11、s22,通过sm4库中的ysm4::ecb_encrypt()函数使用salt值将消息体加密,并返回加密后的消息体和消息体长度。
12、优选的,步骤s3,包括:
13、s31,使用qjsonobject封装消息头,所述消息头由消息体长度、消息体类型、接收者唯一标识符以及发送者唯一标识符进行构建;
14、s32,将所述消息头和消息体拼接到一起,并使用qt的事件机制通过qcoreapplication::postevent()函数向tcp服务端发送消息。
15、优选的,步骤s5,包括:
16、s51,通过sm4国密算法根据salt值将消息体进行解密;
17、s52,通过消息体中的唯一标识符查询是否处理过消息,若否,则执行步骤s53;
18、s53,处理消息。
19、本专利技术的有益效果:
20、在进行数据传输时,对消息体进行了加密,由此消息头中仅暴露了消息体的长度信息。解密后消息体通唯一标识符有效保证了数据安全问题,提高了消息传输的安全性和可靠性。
本文档来自技高网...【技术保护点】
1.一种基于TCP协议的多客户端情况下的安全传输方法,其特征在于,包括下列步骤:
2.根据权利要求1所述的一种基于TCP协议的多客户端情况下的安全传输方法,其特征在于,步骤S2,包括:
3.根据权利要求1所述的一种基于TCP协议的多客户端情况下的安全传输方法,其特征在于,步骤S3,包括:
4.根据权利要求1所述的一种基于TCP协议的多客户端情况下的安全传输方法,其特征在于,步骤S5,包括:
【技术特征摘要】
1.一种基于tcp协议的多客户端情况下的安全传输方法,其特征在于,包括下列步骤:
2.根据权利要求1所述的一种基于tcp协议的多客户端情况下的安全传输方法,其特征在于,步骤s2,包括:
3....
【专利技术属性】
技术研发人员:尚都,王帅,杨瑞林,王皓,康秦潇,
申请(专利权)人:麒麟软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。