CN110505240A - 一种基于服务器和客户端通信协议实现方法 - Google Patents

一种基于服务器和客户端通信协议实现方法 Download PDF

Info

Publication number
CN110505240A
CN110505240A CN201910861989.8A CN201910861989A CN110505240A CN 110505240 A CN110505240 A CN 110505240A CN 201910861989 A CN201910861989 A CN 201910861989A CN 110505240 A CN110505240 A CN 110505240A
Authority
CN
China
Prior art keywords
message
data
server
key
client
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910861989.8A
Other languages
English (en)
Inventor
李文龙
于晓艳
刘强
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Inspur Artificial Intelligence Research Institute Co Ltd
Original Assignee
Shandong Inspur Artificial Intelligence Research Institute Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shandong Inspur Artificial Intelligence Research Institute Co Ltd filed Critical Shandong Inspur Artificial Intelligence Research Institute Co Ltd
Priority to CN201910861989.8A priority Critical patent/CN110505240A/zh
Publication of CN110505240A publication Critical patent/CN110505240A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及计算机系统领域,具体提供了一种基于服务器和客户端通信协议实现方法。与现有技术相比,本发明的应用层的消息报文由协议报头和数据消息组成,所述协议报头采取明文报头加密文报头组合且包含用于解析数据消息的部分密钥;所述数据消息分为控制类型消息和文本类型消息,文本类型消息为加密的字符数据。通过对通信数据加密,使数据在传输的过程中更加安全,具有良好的推广价值。

Description

一种基于服务器和客户端通信协议实现方法
技术领域
本发明涉及计算机系统领域,具体提供一种基于服务器和客户端通信协议实现方法。
背景技术
通信协议是指通信双方对数据传送控制的一种约定。通过通信通道和设备互联起来的多个不同地理位置的数据通信系统,要使其能协同工作实现信息交换和资源共享,它们之间必须具有遵循同种通信协议。TCP/IP参考模型是首先由ARPANET所使用的网络体系结构,共分为四层:网络接口层、网络层、传输层和应用层,每一层都呼叫它的下一层所提供的网络来完成自己的需求。
在现有技术中,使用UI软件中使用get、post方法请求和发送数据,数据的保密性以及有效性未能得到很好的保护,因此,如何使服务器和客户端数据的保密性和有效性增强,保证信息不被窃取,是现有技术中亟需解决的问题。
发明内容
本发明是针对上述现有技术的不足,提供一种设计合理,安全适用、实用性强的基于服务器和客户端通信协议实现方法。
本发明解决其技术问题所采用的技术方案是:
一种基于服务器和客户端通信协议实现方法,其特征在于:应用层的消息报文由协议报头和数据消息组成,所述协议报头采取明文报头加密文报头组合且包含用于解析数据消息的部分密钥;
所述数据消息分为控制类型消息和文本类型消息,文本类型消息为加密的数据。
进一步的,发送数据消息时,根据系统应用层协议组织成协议报头,协议报头加数据消息组成消息报文,通信协议遵循传输层和网络层TCP/IP协议,软件编程实现系统C/S架构的软件之间通信。
进一步的,客户端和服务器通信数据格式为json格式,命令数据消息格式为json格式,key为命令功能字段,对应的value中记录参数,将需要发送的命令数据消息组合成json数据后,该部分消息转换为字符数据时直接加密,再与协议报头组成消息报文,发送至服务器。
进一步的,服务器和客户端各持一段相同的密钥,在对数据加密之前客户端先自动生成一部分密钥,同时将这个密钥密文形式记录在Encrypt-Encoding对应的标志位中发送至客户端;客户端将两段密钥组合在一起作为一个完整的密钥加密数据消息。
进一步的,当解析数据密钥完整时,即服务器使用Encrypt-Encoding中记录一段密钥与自身拥有的一段密钥组合为一个密钥,接收到消息报文中协议报头进行解密,则服务器接受消息报文能够满足解析要求。
进一步的,当解析数据密钥不完整时,即消息报文中协议报头不正确时,抛弃协议报文并通知客户端重新发送协议报头;当接收到的数据信息不正确时抛弃消息报文通知客户端重新发送消息报文。
作为优选,所述的协议报头中Type、Host、Referer、Encrypt-Encoding和Length参数由软件自动生成。
进一步的,协议报头中的Type、Host和Length记录的数据为明文消息,Referer和Encrypt-Encoding记录的数据为密文消息,服务器解析后即可使用。
进一步的,Type主要记录发送消息类型;Host为主机域名+主机能够识别的标识符,当标识符不是主机能识别表示则抛弃接收到的消息报文;Referer记录发送指令或请求消息的客户端设备的IP地址;Encrypt-Encoding记录服务器解密数据消息所需要的部分密钥;Length记录消息报文长度。
本发明的一种基于服务器和客户端通信协议实现方法及系统和现有技术相比,具有以下突出的有益效果:
该软件模块通过改进客户端和服务器之间应用层的通信方式,对应用层的数据进行加密,使数据传输更加的安全可靠。该方法定义应用层通信协议,保证数据在传输过程中安全性、可靠性以及有效性,保证消息不被盗取。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
附图1是一种基于服务器和客户端通信协议实现方法的流程图(一);
附图3是一种基于服务器和客户端通信协议实现方法的流程图(二);
附图2是一种基于服务器和客户端通信协议系统中消息报文的示意图。
具体实施方式
为了使本技术领域的人员更好的理解本发明的方案,下面结合具体的实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例都属于本发明保护的范围。
下面给出一个最佳实施例:
如图1、2、3所示,本实施例中的基于服务器和客户端通信协议实现方法是:
首先,发送数据消息时,根据系统应用层协议组织成协议报头,协议报头加数据消息组成消息报文。其中,协议报头采取明文报头加密文报头组合且包含用于解析数据消息的部分密钥。数据消息分为控制类型消息和文本类型消息,文本类型消息为加密的数据。
协议报头自动生成Type、Host、Referer、Encrypt-Encoding和Length参数。协议报头中的Type、Host和Length记录的数据为明文消息,Referer和Encrypt-Encoding记录的数据为密文消息,服务器解析后即可使用。
参数Type主要记录发送消息类型,例如:command/information等;
参数Host为主机域名+主机能够识别的标识符,当标识符不是主机能识别表示则抛弃接收到的消息报文;
参数Referer为记录发送指令或请求消息的客户的端设备的IP地址;
参数Encrypt-Encoding为记录服务器解密数据消息所需要的部分密钥,缺少此部分密钥,接收到的消息无法解析,只能抛弃并通知Referer记录的IP地址设备重新发送协议报头或者送消息报文;
参数Length为记录消息报文长度,当消息报文长度与Length中记录的不一致,表示消息报文出现错误,则抛弃接收到的数据,并通知Referer记录的IP地址设备重新发送消息报文等其他标识参数。
然后,通信协议遵循传输层和网络层TCP/IP协议,软件编程实现系统C/S架构的软件之间通信,最后由网络层将消息报文前边加上自己机器的地址以及目的地址,加上地址的数据成为帧,网络接口层最后用对应的物理设备将这个帧以比特流的方式发送至网络上。
客户端和服务器通信数据格式为json格式,命令数据消息格式为json格式,key为命令功能字段,对应的value中记录参数,将需要发送的命令数据消息组合成json数据后,该部分消息转换为字符数据时直接加密,再与协议报头组成消息报文,发送至服务器。
在加密时,服务器和客户端各持一段相同的密钥,在对数据加密之前客户端先自动生成一部分密钥,同时将这个密钥密文形式记录在Encrypt-Encoding对应的标志位中发送至客户端;客户端将两段密钥组合在一起作为一个完整的密钥加密数据消息。
在解密时,分以下两种情况:
1、当解析数据密钥完整时,即服务器使用Encrypt-Encoding中记录一段密钥与自身拥有的一段密钥组合为一个密钥,接收到消息报文中协议报头进行解密,则服务器接受消息报文能够满足解析要求。
2、当解析数据密钥不完整时,即消息报文中协议报头不正确时,抛弃协议报文并通知客户端重新发送协议报头;当接收到的数据信息不正确时抛弃消息报文通知客户端重新发送消息报文。
当接收到的消息报文可以正确无误的解析时,服务器向客户端发送响应通知客户端消息正确,满足解析要求,等待客户端响应;当接收到客户端响应后结束此次通信。
上述具体的实施方式仅是本发明具体的个案,本发明的专利保护范围包括但不限于上述具体的实施方式,任何符合本发明的基于服务器和客户端通信协议实现方法及系统权利要求书的且任何所述技术领域普通技术人员对其做出的适当变化或者替换,皆应落入本发明的专利保护范围。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。

Claims (9)

1.一种基于服务器和客户端通信协议实现方法,其特征在于:应用层的消息报文由协议报头和数据消息组成,所述协议报头采取明文报头加密文报头组合且包含用于解析数据消息的部分密钥;
所述数据消息分为控制类型消息和文本类型消息,文本类型消息为加密的数据。
2.根据权利要求1所述的一种基于服务器和客户端通信协议实现方法,其特征在于:发送数据消息时,根据系统应用层协议组织成协议报头,协议报头加数据消息组成消息报文,通信协议遵循传输层和网络层TCP/IP协议,软件编程实现系统C/S架构的软件之间通信。
3.根据权利要求1或2所述的一种基于服务器和客户端通信协议实现方法,其特征在于:客户端和服务器通信数据格式为json格式,命令数据消息格式为json格式,key为命令功能字段,对应的value中记录参数,将需要发送的命令数据消息组合成json数据后,该部分消息转换为字符数据时直接加密,再与协议报头组成消息报文,发送至服务器。
4.根据权利要求3所述的一种基于服务器和客户端通信协议实现方法,其特征在于:服务器和客户端各持一段相同的密钥,在对数据加密之前客户端先自动生成一部分密钥,同时将这个密钥以密文形式记录在Encrypt-Encoding对应的标志位中发送至客户端;客户端将两段密钥组合在一起作为一个完整的密钥加密数据消息。
5.根据权利要求4所述的一种基于服务器和客户端通信实现方法,其特征在于:当解析数据密钥完整时,即服务器使用Encrypt-Encoding中记录一段密钥与自身拥有的一段密钥组合为一个密钥,接收到消息报文中协议报头进行解密,则服务器接受消息报文能够满足解析要求。
6.根据权利要求5所述的一种基于服务器和客户端通信实现方法,其特征在于:当解析数据密钥不完整时,即消息报文中协议报头不正确时,抛弃协议报文并通知客户端重新发送协议报头;当接收到的数据信息不正确时抛弃消息报文通知客户端重新发送消息报文。
7.根据权利要求1所述的一种基于服务器和客户端通信协议实现方法,其特征在于:所述的协议报头中Type、Host、Referer、Encrypt-Encoding和Length参数由软件自动生成。
8.根据权利要求7所述的一种基于服务器和客户端通信协议实现方法,其特征在于:协议报头中的Type、Host和Length记录的数据为明文消息,Referer和Encrypt-Encoding记录的数据为密文消息,服务器解析后即可使用。
9.根据权利要求7或8所述的一种基于服务器和客户端通信协议系统,其特征在于:Type主要记录发送消息类型;Host为主机域名+主机能够识别的标识符,当标识符不是主机能识别表示则抛弃接收到的消息报文;Referer记录发送指令或请求消息的客户端设备的IP地址;Encrypt-Encoding记录服务器解密数据消息所需要的部分密钥;Length记录消息报文长度。
CN201910861989.8A 2019-09-12 2019-09-12 一种基于服务器和客户端通信协议实现方法 Pending CN110505240A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910861989.8A CN110505240A (zh) 2019-09-12 2019-09-12 一种基于服务器和客户端通信协议实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910861989.8A CN110505240A (zh) 2019-09-12 2019-09-12 一种基于服务器和客户端通信协议实现方法

Publications (1)

Publication Number Publication Date
CN110505240A true CN110505240A (zh) 2019-11-26

Family

ID=68591777

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910861989.8A Pending CN110505240A (zh) 2019-09-12 2019-09-12 一种基于服务器和客户端通信协议实现方法

Country Status (1)

Country Link
CN (1) CN110505240A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111654470A (zh) * 2020-05-13 2020-09-11 北京理工大学 一种机器人系统状态监测方法、设备及存储介质
CN111740949A (zh) * 2020-05-13 2020-10-02 北京理工大学 一种机器人系统加密控制方法、设备及存储介质
CN112468513A (zh) * 2020-12-14 2021-03-09 南京中孚信息技术有限公司 一种企业网的终端管理通信协议架构
CN112995138A (zh) * 2021-02-03 2021-06-18 上海钧正网络科技有限公司 一种数据通信方法、装置、电子设备及可读存储介质
CN114448652A (zh) * 2020-10-16 2022-05-06 腾讯科技(深圳)有限公司 进行加密通信的方法、装置、设备和存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1457166A (zh) * 2002-05-09 2003-11-19 日本电气株式会社 加密/解密系统和加密/解密方法
US20040117320A1 (en) * 2002-10-01 2004-06-17 Ntt Docomo, Inc. Method of authentication and payment, operation method of an authentication and payment system, terminal device, service providing device, authentication and payment device, and control information providing device
CN1893417A (zh) * 2005-07-06 2007-01-10 邓学锋 内外网信息安全传递系统与方法
CN101031968A (zh) * 2004-09-28 2007-09-05 皇家飞利浦电子股份有限公司 用于在记录介质上存储数据和用于传送信息的方法和设备
US20120030769A1 (en) * 2008-10-24 2012-02-02 Manufacturing Resources International, Inc. System and Method for Securely Transmitting Video Data
CN104063334A (zh) * 2014-07-11 2014-09-24 中国人民公安大学 一种基于数据属性的加密方法和系统
CN106230585A (zh) * 2016-07-22 2016-12-14 安徽皖通邮电股份有限公司 一种量子密钥快速同步更新的方法
CN108009440A (zh) * 2017-11-23 2018-05-08 重庆金融资产交易所有限责任公司 数据存储方法、查询方法、装置、存储介质和计算机设备
CN109450854A (zh) * 2018-10-11 2019-03-08 珠海许继芝电网自动化有限公司 一种配电终端通信安全防护方法及系统

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1457166A (zh) * 2002-05-09 2003-11-19 日本电气株式会社 加密/解密系统和加密/解密方法
US20040117320A1 (en) * 2002-10-01 2004-06-17 Ntt Docomo, Inc. Method of authentication and payment, operation method of an authentication and payment system, terminal device, service providing device, authentication and payment device, and control information providing device
CN101031968A (zh) * 2004-09-28 2007-09-05 皇家飞利浦电子股份有限公司 用于在记录介质上存储数据和用于传送信息的方法和设备
CN1893417A (zh) * 2005-07-06 2007-01-10 邓学锋 内外网信息安全传递系统与方法
US20120030769A1 (en) * 2008-10-24 2012-02-02 Manufacturing Resources International, Inc. System and Method for Securely Transmitting Video Data
CN104063334A (zh) * 2014-07-11 2014-09-24 中国人民公安大学 一种基于数据属性的加密方法和系统
CN106230585A (zh) * 2016-07-22 2016-12-14 安徽皖通邮电股份有限公司 一种量子密钥快速同步更新的方法
CN108009440A (zh) * 2017-11-23 2018-05-08 重庆金融资产交易所有限责任公司 数据存储方法、查询方法、装置、存储介质和计算机设备
CN109450854A (zh) * 2018-10-11 2019-03-08 珠海许继芝电网自动化有限公司 一种配电终端通信安全防护方法及系统

Cited By (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111654470A (zh) * 2020-05-13 2020-09-11 北京理工大学 一种机器人系统状态监测方法、设备及存储介质
CN111740949A (zh) * 2020-05-13 2020-10-02 北京理工大学 一种机器人系统加密控制方法、设备及存储介质
CN111740949B (zh) * 2020-05-13 2021-08-24 北京理工大学 一种机器人系统加密控制方法、设备及存储介质
CN111654470B (zh) * 2020-05-13 2021-08-24 北京理工大学 一种机器人系统状态监测方法、设备及存储介质
CN114448652A (zh) * 2020-10-16 2022-05-06 腾讯科技(深圳)有限公司 进行加密通信的方法、装置、设备和存储介质
CN114448652B (zh) * 2020-10-16 2023-12-05 腾讯科技(深圳)有限公司 进行加密通信的方法、装置、设备和存储介质
CN112468513A (zh) * 2020-12-14 2021-03-09 南京中孚信息技术有限公司 一种企业网的终端管理通信协议架构
CN112468513B (zh) * 2020-12-14 2022-09-23 南京中孚信息技术有限公司 一种企业网的终端管理通信方法
CN112995138A (zh) * 2021-02-03 2021-06-18 上海钧正网络科技有限公司 一种数据通信方法、装置、电子设备及可读存储介质
CN112995138B (zh) * 2021-02-03 2022-12-27 上海钧正网络科技有限公司 一种数据通信方法、装置、电子设备及可读存储介质

Similar Documents

Publication Publication Date Title
CN110505240A (zh) 一种基于服务器和客户端通信协议实现方法
CN108881224A (zh) 一种配电自动化系统的加密方法及相关装置
CN101667916B (zh) 一种基于分离映射网络使用数字证书验证用户身份的方法
Bersani et al. The EAP-PSK protocol: A pre-shared key extensible authentication protocol (EAP) method
CN101309273B (zh) 一种生成安全联盟的方法和装置
CN208986966U (zh) 一种加密终端以及相应的数据传输系统
US9872175B2 (en) Packet processing method, apparatus, and system
CN101247407A (zh) 网络认证服务系统和方法
New et al. Reliable Delivery for syslog
CN108966174A (zh) 一种无人机与地面站的通讯加密方法
WO2012083828A1 (zh) 本地路由业务的实现方法、基站及系统
CN111914291A (zh) 消息处理方法、装置、设备及存储介质
CN104506554B (zh) 一种手机终端访问云存储服务器的安全方法
CN112422560A (zh) 基于安全套接层的轻量级变电站安全通信方法及系统
CN104753937A (zh) 基于sip的安全认证注册的方法
CN110430203A (zh) 一种面向敏感数据的改进型安全json传输方法
CN105592073B (zh) 密钥更新方法、密钥服务器及组成员设备
CN111555879B (zh) 一种卫星通信网管信道报文加解密方法及系统
CN106161386A (zh) 一种实现IPsec分流的方法和装置
CN107104888A (zh) 一种安全的即时通信方法
CN108337089A (zh) 信令传输加密、解密方法、装置及终端
WO2020140929A1 (zh) 一种密钥生成方法、ue及网络设备
CN111125655A (zh) 一种针对oss-api接口安全通信的方法
CN115733683A (zh) 采用量子密钥分发的以太链路自组织加密隧道实现方法
CN116016529A (zh) IPSec VPN设备负载均衡管理方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20191126

RJ01 Rejection of invention patent application after publication