CN107395592A - 一种网络协议数据包的安全处理方法和*** - Google Patents
一种网络协议数据包的安全处理方法和*** Download PDFInfo
- Publication number
- CN107395592A CN107395592A CN201710592618.5A CN201710592618A CN107395592A CN 107395592 A CN107395592 A CN 107395592A CN 201710592618 A CN201710592618 A CN 201710592618A CN 107395592 A CN107395592 A CN 107395592A
- Authority
- CN
- China
- Prior art keywords
- packet
- protocol data
- data bag
- internet protocol
- appointment
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/126—Applying verification of the received information the source of the received data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/168—Implementing security features at a particular protocol layer above the transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
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
本发明公开了一种网络协议数据包的安全处理方法,包括:从客户端接收网络协议数据包P1,对网络协议数据包P1进行解析,判断解析后的数据包中是否含有应用层协议的关键字标识,如果找到,则判断网络协议数据包P1的包头内容中是否存在有预先约定的关键字,如果有,则先根据预先约定的关键字的类型对网络协议数据包P1的包头或者包体中的内容进行对应处理,以生成处理后的对应结果Q2,再根据SSL记录协议对网络协议数据包P1和对应结果Q2进行处理,并将处理后生成的网络协议数据包S3发送到远程服务器。本发明可以抵御不同层次的网络攻击,从而加强了数据包传输的安全性、完整性和不可抵赖性。
Description
技术领域
本发明属于信息安全技术领域和互联网通信领域,更具体地,涉及一种网络协议数据包的安全处理方法和***。
背景技术
随着信息化程度的不断提高,各政府部门或企事业单位都已经在互联网上部署了大量的业务***,并通过互联网与其他各地的分支机构或者合作伙伴进行业务数据往来,这些业务数据是政府部门或企事业单位的重要数字资产,信息化建设过程中需要保证其机密性、真实性、完整性和不可否认性。
在这些业务数据中,出于安全上的考虑,往往其不能被直接发送给远程服务器,它们需要安全互联网关设备进行相应的安全处理后,才能被最终发送到远程服务器,并被远程服务器接收、处理和响应。同时,有的发送者为了有效证明客户端发送的签名消息或者验证签名信息的真实性,需要在安全互联网关设备上进行签名或者验证签名操作,以此来确定消息确实是由发送方签名并发出来的,以此确定消息的完整性。
然而,现有的安全互联网关设备存在几个方面的技术问题:第一、只在设备的客户端和设备的服务端通道内部进行了数据包的加密转发,数据包本身没有携带签名值,等待数据包到达后台业务***时,不能保证业务数据的完整性和不可抵赖性;第二、所有的数据包统一处理,没有区分类型,也不能分类型进行不同类型的签名和携带签名值。
发明内容
针对现有技术的以上缺陷或改进需求,本发明提供了一种网络协议数据包的安全处理方法和***,其目的在于,能够区分不同类型的数据包,通过将数据包进行签名或验证签名,并且携带对应处理结果安全地转发到远程服务器,可以抵御不同层次的网络攻击,从而加强了数据包传输的安全性、完整性和不可抵赖性。
为实现上述目的,按照本发明的一个方面,提供了一种网络协议数据包的安全处理方法,是应用在安全互联网关设备中,所述安全互联网关设备分别与客户端和远程服务器通信连接,所述方法包括:
(1)从客户端接收网络协议数据包P1,并判断网络协议数据包P1的包头或包体中是否存在有预先约定的关键字标识或预先约定格式的数据包;
(2)在网络协议数据包P1的包头或包体中存在有预先约定的关键字标识或预先约定格式的数据包时,根据预先约定的关键字的类型或预先约定的格式对网络协议数据包P1包头或包体中的内容进行处理,以生成对应结果,根据SSL记录协议对网络协议数据包P1和对应结果进行处理,并将处理后得到的网络协议数据包发送到远程服务器。
优选地,根据SSL记录协议对网络协议数据包和对应结果进行处理具体为,根据SSL记录协议对网络协议数据包和对应结果进行分段、压缩、增加MAC信息、加密、以及添加SSL记录处理。
优选地,所述方法进一步包括在判断网络协议数据包P1的包头或包体中是否存在有预先约定的关键字标识或预先约定格式的数据包之前,判断解析后的数据包中是否含有应用层协议的关键字标识的步骤。
优选地,对网络协议数据包P1进行解析,判断解析后的数据包中是否含有应用层协议的关键字标识具体为,首先解析网络协议数据包P1包头的第一行,然后查找该行内容中是否有关键字,如果有,则说明该网络协议数据包P1就是应用层协议的数据包,否则表示其不是应用层协议的数据包。
优选地,所述方法进一步包括:当网络协议数据包P1的包头中不存在有预先约定格式的数据包时,进一步判断网络协议数据包P1的包体中的内容中是否存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中是否存在有预先约定格式的数据包的步骤。
优选地,所述方法进一步包括:当网络协议数据包P1的包体中的内容中不存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中不存在有预先约定格式的数据包,根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包发送到远程服务器的步骤。
优选地,预先约定的关键字可以为安全互联网关设备与客户端双方预先约定的字符,预先约定格式的数据包可以为安全互联网关设备与客户端双方预先约定规则的XML数据或TLV数据或其他数据包类型。
优选地,如果关键字的类型是用于签名操作的关键字,则对包体中的内容进行处理就是对其进行签名操作,如果关键字的类型是用于验证签名操作的关键字,则对包体中的内容进行处理就是验证签名操作。
优选地,所述方法进一步包括:当网络协议数据包P1的包头和包体中不存在有预先约定格式的数据包时,根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包发送到远程服务器。
按照本发明的另一方面,提供了一种网络协议数据包的安全处理***,是应用在安全互联网关设备中,所述安全互联网关设备分别与客户端和远程服务器通信连接,所述***包括:
第一模块,用于从客户端接收网络协议数据包P1,并判断网络协议数据包P1的包头或包体中是否存在有预先约定的关键字标识或预先约定格式的数据包;
第二模块,用于在网络协议数据包P1的包头或包体中存在有预先约定的关键字标识或预先约定格式的数据包时,根据预先约定的关键字的类型或预先约定的格式对网络协议数据包P1包头或包体中的内容进行处理,以生成对应结果,根据SSL记录协议对网络协议数据包P1和对应结果进行处理,并将处理后得到的网络协议数据包发送到远程服务器。
总体而言,通过本发明所构思的以上技术方案与现有技术相比,能够取得下列有益效果:
1、本发明能够在数据包的包头或包体中添加签名值或者验证签名值,因此能够解决现有安全互联网关设备中存在的不能保证业务数据的完整性和不可抵赖性的技术问题;
2、本发明能够区分多种类型对不同的数据包进行添加签名值或者验证签名值。因此能够解决现有安全互联网关设备中存在的由于所有的数据包在没有区分类型的情况下被统一处理,从而导致不能根据类型进行不同类型的签名和携带签名值的技术问题。
3、本发明的方法实现简单,效率高,数据包处理灵活,可以快速响应不同的客户需求。
附图说明
图1是本发明网络协议数据包的安全处理方法的总体流程图。
图2是本发明网络协议数据包的安全处理方法的细化流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。
根据本发明的一个方面,提供了一种网络协议数据包的安全处理方法,其是应用在安全互联网关设备中,该安全互联网关设备一端与客户端通信连接,另一端和远程服务器通信连接。
在本实施方式中,客户端为能够发送基于TCP协议以上网络协议数据包的应用程序或业务***,具体包括但不限于浏览器、应用程序、浏览器/服务器(Browser/server,简称B/S)业务***、客户端/服务器(Client/server,简称C/S)业务***等***。远程服务器能够提供服务器端SSL记录协议的通信,包括但不局限于国际标准安全套接层(SecureSockets Layer,简称SSL)协议服务器、国家密码SSL协议服务端等***。
如图1所示,本发明提供了一种网络协议数据包的安全处理方法,是应用在安全互联网关设备中,所述安全互联网关设备分别与客户端和远程服务器通信连接,所述方法包括:
(1)从客户端接收网络协议数据包P1,并判断网络协议数据包P1的包头或包体中是否存在有预先约定的关键字标识或预先约定格式的数据包;
(2)在网络协议数据包P1的包头或包体中存在有预先约定的关键字标识或预先约定格式的数据包时,根据预先约定的关键字的类型或预先约定的格式对网络协议数据包P1包头或包体中的内容进行处理,以生成对应结果,根据SSL记录协议对网络协议数据包P1和对应结果进行处理,并将处理后得到的网络协议数据包发送到远程服务器。
具体而言,如图2所示,本发明网络协议数据包的安全处理方法包括以下步骤:
(1)从客户端接收网络协议数据包P1;
应该注意的是,本步骤接收到的数据包P1在到达安全互联网关设备之前,经过了0个到多个中间设备,如交换机、集线器等设备;
(2)对网络协议数据包P1进行解析,判断解析后的数据包中是否含有应用层协议的关键字标识,如果包含,则说明网络协议数据包P1是应用层协议的数据包,然后进入步骤(4),否则说明网络协议数据包P1不是应用层协议的数据包,然后进入步骤(3);
本步骤具体为,首先解析网络协议数据包P1包头的第一行,然后查找该行内容中是否有诸如“HTTP/1.0”或者“HTTP/1.1”的关键字,如果有,说明该网络协议数据包P1就是应用层协议的数据包,否则则表示其不是应用层协议的数据包。
在本实施方式中,应用层协议为超文本传输协议(HyperText TransferProtocol,简称HTTP),应该理解的是,本发明并不局限于此,其它应用层协议,例如简单邮件传送协议(Simple Mail Transfer Protocol,简称SMTP)、文件传输协议(File TransferProtocol,简称FTP)、简单网络管理协议(simple Network Management Protocol,简称SNMP)、域名***(Domain Name System,简称DNS)等也在本发明的保护范围内。
(3)判断网络协议数据包P1的包体中的内容中是否存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中是否存在有预先约定格式的数据包,如果有,则说明网络协议数据包P1是自定义的数据包,然后进入步骤(5),如果没有,则说明网络协议数据包P1不是自定义的数据包,然后进入步骤(6);
在本实施方式中,预先约定的关键字可以为安全互联网关设备与客户端双方预先约定的字符。
预先约定格式的数据包可以为安全互联网关设备与客户端双方预先约定规则的XML数据或TLV数据或其他数据包类型。
举例而言,可以预先将关键字“<origin_data>”设为用于签名操作的关键字,将关键字“<signed_data>”设为用于验证签名操作的关键字。
可以预先将数据包“<?xml version="1.0"encoding="GBK"?><QLBankSignData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankSignData>”设为用于签名操作的数据包,将数据包“<?xmlversion="1.0"encoding="GBK"?><QLBankVerifyData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankVerifyData>”设为用于验证签名操作的数据包。
(4)判断网络协议数据包P1的包头内容中是否存在有预先约定的关键字,如果有,则说明网络协议数据包P1是自定义格式的数据包,然后进入步骤(7),如果没有,则说明网络协议数据包P1是应用层协议的数据包,然后进入步骤(8);
举例而言,可以预先将关键字“内容-签名(即Content-Sign)”设为用于签名操作的关键字,将关键字“内容-验证(即Content-Verify)”设为用于验证签名操作的关键字。
(5)根据预先约定的关键字的类型对网络协议数据包P1的包体中的内容进行处理,以生成对应结果Q1,根据SSL记录协议对网络协议数据包P1和对应结果Q1进行处理,并将处理后得到的网络协议数据包S2发送到远程服务器,过程结束;
具体而言,如果关键字的类型是用于签名操作的关键字,则本步骤对包体中的内容进行处理就是对其进行签名操作;如果关键字的类型是用于验证签名操作的关键字,则本步骤对包体中的内容进行处理就是验证签名操作;
根据SSL记录协议对网络协议数据包P1和对应结果Q1进行处理具体为,根据SSL记录协议对网络协议数据包P1和对应结果Q1进行分段、压缩、增加MAC信息、加密、以及添加SSL记录处理。
(6)根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包S1发送到远程服务器,过程结束;
具体而言,本步骤是根据SSL记录协议对网络协议数据包P1进行分段、压缩、增加MAC信息、加密、以及增加SSL记录处理。
(7)根据预先约定的关键字的类型对网络协议数据包P1的包体或包头中的内容进行处理,以生成对应结果Q2,根据SSL记录协议对网络协议数据包P1和对应结果Q2进行处理,并将处理后得到的网络协议数据包S3发送到远程服务器,过程结束;
具体而言,如果关键字是用于签名操作的关键字,则本步骤中对包体或包头中的内容进行处理是签名操作,如果关键字是用于验证签名操作的关键字,则本步骤对包体或者包头中的内容进行处理是验证签名操作,处理生成的对应结果Q2可以被添加到包头中的请求行中、包头中的请求头部中、或包体中的任意位置。
根据SSL记录协议对网络协议数据包P1和对应结果Q2进行处理具体为,根据SSL记录协议对网络协议数据包P1和对应结果Q2进行分段、压缩、增加MAC信息、加密、以及增加SSL记录处理。
(8)判断网络协议数据包P1的包体中的内容中是否存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中是否存在有预先约定格式的数据包,如果有,则说明网络协议数据包P1是自定义的数据包,然后进入步骤(9),如果没有,则说明网络协议数据包P1不是自定义的数据包,然后进入步骤(10);
在本实施方式中,预先约定的关键字类型包括用于签名操作的关键字,以及用于验证签名操作的关键字,预先约定格式的数据包类型包括用于签名操作的数据包,以及用于验证签名操作的数据包。
具体而言,可以预先将关键字“<origin_data>”设为用于签名操作的关键字,将关键字“<signed_data>”设为用于验证签名操作的关键字。
可以预先将数据包“<?xml version="1.0"encoding="GBK"?><QLBankSignData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankSignData>”设为用于签名操作的数据包。将数据包“<?xmlversion="1.0"encoding="GBK"?><QLBankVerifyData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankVerifyData>”设为用于验证签名操作的数据包。
(9)根据预先约定的关键字的类型对网络协议数据包P1的包体或包头中的内容进行处理,以生成对应结果Q3,根据SSL记录协议对网络协议数据包P1和对应结果Q3进行处理,并将处理后得到的网络协议数据包S4发送到远程服务器,过程结束;
具体而言,如果关键字是用于签名操作的关键字,则本步骤对包体或者包头中的内容进行处理是签名操作,如果关键字是用于验证签名操作的关键字,则本步骤对包体或者包头中的内容进行处理是验证签名操作;生成的对应结果Q3可以被添加到包头中的请求行中或者请求头部中,或者包体中的任意位置。
根据SSL记录协议对网络协议数据包P1和对应结果Q3进行处理具体是根据SSL记录协议对网络协议数据包P1和对应结果Q3进行分段、压缩、增加MAC信息、加密、以及增加SSL记录处理。
(10)根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包S5发送到远程服务器,过程结束;
具体而言,本步骤是根据SSL记录协议对网络协议数据包P1进行分段、压缩、增加MAC信息、加密、以及增加SSL记录处理。
需要注意的是,在上述步骤(5)、步骤(6)、步骤(10)中,加密时使用的加密算法可以为AES算法、DES算法、3DES算法、SM1算法、SM4算法等,但应该理解的是,本发明绝不局限于上述的数据加密算法,任何本领域公知的对称加密算法都可以被使用;此外,MAC算法可以为SHA-1、SM3算法等,但本发明绝不局限于上述的数据加密算法,任何本领域公知的散列算法(摘要算法)都可以被使用。
在上述步骤(7)和步骤(9)中,签名操作和验证签名操作时采用的加密算法可以为SM2算法、RSA算法等,但本发明绝不局限于上述的数据加密算法,任何本领域公知的非对称加密算法都可以被使用。
应该注意的是,本发明方法的上述步骤中所使用的解密算法是与其对应的加密算法对应的逆算法。
根据本发明的另一个方面,提供了一种网络协议数据包的安全处理***,是应用在安全互联网关设备中,所述安全互联网关设备分别与客户端和远程服务器通信连接,所述***包括:
第一模块,用于从客户端接收网络协议数据包P1;
应该注意的是,接收到的数据包P1在到达安全互联网关设备之前,经过了0个到多个中间设备,如交换机、集线器等设备;
第二模块,用于对网络协议数据包P1进行解析,判断解析后的数据包中是否含有应用层协议的关键字标识,如果包含,则说明网络协议数据包P1是应用层协议的数据包,然后进入第四模块,否则说明网络协议数据包P1不是应用层协议的数据包,然后进入第三模块;
具体而言,首先解析网络协议数据包P1包头的第一行,然后查找该行内容中是否有诸如“HTTP/1.0”或者“HTTP/1.1”的关键字,如果有,说明该网络协议数据包P1就是应用层协议的数据包,否则则表示其不是应用层协议的数据包。
在本实施方式中,应用层协议为超文本传输协议(HyperText TransferProtocol,简称HTTP),应该理解的是,本发明并不局限于此,其它应用层协议,例如简单邮件传送协议(Simple Mail Transfer Protocol,简称SMTP)、文件传输协议(File TransferProtocol,简称FTP)、简单网络管理协议(simple Network Management Protocol,简称SNMP)、域名***(Domain Name System,简称DNS)等也在本发明的保护范围内。
第三模块,用于判断网络协议数据包P1的包体中的内容中是否存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中是否存在有预先约定格式的数据包,如果有,则说明网络协议数据包P1是自定义的数据包,然后进入第五模块,如果没有,则说明网络协议数据包P1不是自定义的数据包,然后进入第六模块;
在本实施方式中,预先约定的关键字类型包括用于签名操作的关键字,以及用于验证签名操作的关键字;预先约定格式的数据包类型包括用于签名操作的数据包,以及用于验证签名操作的数据包。
举例而言,可以预先将关键字“<origin_data>”设为用于签名操作的关键字,将关键字“<signed_data>”设为用于验证签名操作的关键字。
可以预先将数据包“<?xml version="1.0"encoding="GBK"?><QLBankSignData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankSignData>”设为用于签名操作的数据包,将数据包“<?xmlversion="1.0"encoding="GBK"?><QLBankVerifyData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankVerifyData>”设为用于验证签名操作的数据包。
第四模块,用于判断网络协议数据包P1的包头内容中是否存在有预先约定的关键字,如果有,则说明网络协议数据包P1是自定义格式的数据包,然后进入第七模块,如果没有,则说明网络协议数据包P1是应用层协议的数据包,然后进入第八模块;
举例而言,可以预先将关键字“内容-签名(即Content-Sign)”设为用于签名操作的关键字,将关键字“内容-验证(即Content-Verify)”设为用于验证签名操作的关键字。
第五模块,用于根据预先约定的关键字的类型对网络协议数据包P1的包体中的内容进行处理,以生成对应结果Q1,根据SSL记录协议对网络协议数据包P1和对应结果Q1进行处理,并将处理后得到的网络协议数据包S2发送到远程服务器,过程结束;
具体而言,如果关键字的类型是用于签名操作的关键字,则对包体中的内容进行处理就是对其进行签名操作;如果关键字的类型是用于验证签名操作的关键字,则对包体中的内容进行处理就是验证签名操作;
根据SSL记录协议对网络协议数据包P1和对应结果Q1进行处理具体为,根据SSL记录协议对网络协议数据包P1和对应结果Q1进行分段、压缩、增加MAC信息、加密、以及添加SSL记录处理。
第六模块,用于根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包S1发送到远程服务器,过程结束;
具体而言,是根据SSL记录协议对网络协议数据包P1进行分段、压缩、增加MAC信息、加密、以及增加SSL记录处理。
第七模块,用于根据预先约定的关键字的类型对网络协议数据包P1的包体或包头中的内容进行处理,以生成对应结果Q2,根据SSL记录协议对网络协议数据包P1和对应结果Q2进行处理,并将处理后得到的网络协议数据包S3发送到远程服务器,过程结束;
具体而言,如果关键字是用于签名操作的关键字,则对包体或包头中的内容进行处理是签名操作,如果关键字是用于验证签名操作的关键字,则对包体或者包头中的内容进行处理是验证签名操作,处理生成的对应结果Q2可以被添加到包头中的请求行中、包头中的请求头部中、或包体中的任意位置。
根据SSL记录协议对网络协议数据包P1和对应结果Q2进行处理具体为,根据SSL记录协议对网络协议数据包P1和对应结果Q2进行分段、压缩、增加MAC信息、加密、以及增加SSL记录处理。
第八模块,用于判断网络协议数据包P1的包体中的内容中是否存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中是否存在有预先约定格式的数据包,如果有,则说明网络协议数据包P1是自定义的数据包,然后进入第九模块,如果没有,则说明网络协议数据包P1不是自定义的数据包,然后进入第十模块;
在本实施方式中,预先约定的关键字类型包括用于签名操作的关键字,以及用于验证签名操作的关键字,预先约定格式的数据包类型包括用于签名操作的数据包,以及用于验证签名操作的数据包。
具体而言,可以预先将关键字“<origin_data>”设为用于签名操作的关键字,将关键字“<signed_data>”设为用于验证签名操作的关键字。
可以预先将数据包“<?xml version="1.0"encoding="GBK"?><QLBankSignData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankSignData>”设为用于签名操作的数据包。将数据包“<?xmlversion="1.0"encoding="GBK"?><QLBankVerifyData><opReq><bsnCode>CBE001</bsnCode><cstNo>1000046447</cstNo><serialNo>11445489</serialNo><reqTime>20161221114454</reqTime><ReqParam><accountNo>86611741101423000010</accountNo><currencyType>CNY</currencyType><ReceiptNo></ReceiptNo><ReqReserved1></ReqReserved1><ReqReserved2></ReqReserved2></ReqParam></opReq></QLBankVerifyData>”设为用于验证签名操作的数据包。
第九模块,用于根据预先约定的关键字的类型对网络协议数据包P1的包体或包头中的内容进行处理,以生成对应结果Q3,根据SSL记录协议对网络协议数据包P1和对应结果Q3进行处理,并将处理后得到的网络协议数据包S4发送到远程服务器,过程结束;
具体而言,如果关键字是用于签名操作的关键字,则对包体或者包头中的内容进行处理是签名操作,如果关键字是用于验证签名操作的关键字,则对包体或者包头中的内容进行处理是验证签名操作;生成的对应结果Q3可以被添加到包头中的请求行中或者请求头部中,或者包体中的任意位置。
根据SSL记录协议对网络协议数据包P1和对应结果Q3进行处理具体是根据SSL记录协议对网络协议数据包P1和对应结果Q3进行分段、压缩、增加MAC信息、加密、以及增加SSL记录处理。
第十模块,用于根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包S5发送到远程服务器,过程结束。
总而言之,本发明能够区分不同类型的数据包,通过将数据包进行对应处理并且携带对应结果安全地转发到远程服务器,可以抵御不同层次的网络攻击,从而加强了数据包传输的安全性、完整性和不可抵赖性。
本领域的技术人员容易理解,以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种网络协议数据包的安全处理方法,是应用在安全互联网关设备中,所述安全互联网关设备分别与客户端和远程服务器通信连接,其特征在于,所述方法包括:
(1)从客户端接收网络协议数据包P1,并判断网络协议数据包P1的包头或包体中是否存在有预先约定的关键字标识或预先约定格式的数据包;
(2)在网络协议数据包P1的包头或包体中存在有预先约定的关键字标识或预先约定格式的数据包时,根据预先约定的关键字的类型或预先约定的格式对网络协议数据包P1包头或包体中的内容进行处理,以生成对应结果,根据SSL记录协议对网络协议数据包P1和对应结果进行处理,并将处理后得到的网络协议数据包发送到远程服务器。
2.根据权利要求1所述的安全处理方法,其特征在于,根据SSL记录协议对网络协议数据包和对应结果进行处理具体为,根据SSL记录协议对网络协议数据包和对应结果进行分段、压缩、增加MAC信息、加密、以及添加SSL记录处理。
3.根据权利要求1所述的安全处理方法,其特征在于,所述方法进一步包括在判断网络协议数据包P1的包头或包体中是否存在有预先约定的关键字标识或预先约定格式的数据包之前,判断解析后的数据包中是否含有应用层协议的关键字标识的步骤。
4.根据权利要求3所述的安全处理方法,其特征在于,对网络协议数据包P1进行解析,判断解析后的数据包中是否含有应用层协议的关键字标识具体为,首先解析网络协议数据包P1包头的第一行,然后查找该行内容中是否有关键字,如果有,则说明该网络协议数据包P1就是应用层协议的数据包,否则表示其不是应用层协议的数据包。
5.根据权利要求1所述的安全处理方法,其特征在于,所述方法进一步包括:当网络协议数据包P1的包头中不存在有预先约定格式的数据包时,进一步判断网络协议数据包P1的包体中的内容中是否存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中是否存在有预先约定格式的数据包的步骤。
6.根据权利要求5所述的安全处理方法,其特征在于,所述方法进一步包括:当网络协议数据包P1的包体中的内容中不存在有预先约定的关键字,或者网络协议数据包P1的包体中的内容中不存在有预先约定格式的数据包,根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包发送到远程服务器的步骤。
7.根据权利要求5或6所述的安全处理方法,其特征在于,
预先约定的关键字可以为安全互联网关设备与客户端双方预先约定的字符;
预先约定格式的数据包可以为安全互联网关设备与客户端双方预先约定规则的XML数据或TLV数据或其他数据包类型。
8.根据权利要求7所述的安全处理方法,其特征在于,
如果关键字的类型是用于签名操作的关键字,则对包体中的内容进行处理就是对其进行签名操作;
如果关键字的类型是用于验证签名操作的关键字,则对包体中的内容进行处理就是验证签名操作。
9.根据权利要求1所述的安全处理方法,其特征在于,所述方法进一步包括:当网络协议数据包P1的包头和包体中不存在有预先约定格式的数据包时,根据SSL记录协议对网络协议数据包P1进行处理,并将处理后得到的网络协议数据包发送到远程服务器。
10.一种网络协议数据包的安全处理***,是应用在安全互联网关设备中,所述安全互联网关设备分别与客户端和远程服务器通信连接,其特征在于,所述***包括:
第一模块,用于从客户端接收网络协议数据包P1,并判断网络协议数据包P1的包头或包体中是否存在有预先约定的关键字标识或预先约定格式的数据包;
第二模块,用于在网络协议数据包P1的包头或包体中存在有预先约定的关键字标识或预先约定格式的数据包时,根据预先约定的关键字的类型或预先约定的格式对网络协议数据包P1包头或包体中的内容进行处理,以生成对应结果,根据SSL记录协议对网络协议数据包P1和对应结果进行处理,并将处理后得到的网络协议数据包发送到远程服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710592618.5A CN107395592A (zh) | 2017-07-19 | 2017-07-19 | 一种网络协议数据包的安全处理方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710592618.5A CN107395592A (zh) | 2017-07-19 | 2017-07-19 | 一种网络协议数据包的安全处理方法和*** |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107395592A true CN107395592A (zh) | 2017-11-24 |
Family
ID=60335820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710592618.5A Pending CN107395592A (zh) | 2017-07-19 | 2017-07-19 | 一种网络协议数据包的安全处理方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107395592A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109698831A (zh) * | 2018-12-28 | 2019-04-30 | 中电智能科技有限公司 | 数据防护方法和装置 |
CN111935081A (zh) * | 2020-06-24 | 2020-11-13 | 武汉绿色网络信息服务有限责任公司 | 一种数据包脱敏方法和装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231709A (zh) * | 2011-07-04 | 2011-11-02 | 清华大学 | 虚拟路由装置的控制平面结构及其控制方法 |
CN102497265A (zh) * | 2011-11-24 | 2012-06-13 | 飞天诚信科技股份有限公司 | 一种脉冲光信号识别的方法及装置 |
CN102821101A (zh) * | 2012-07-27 | 2012-12-12 | 北京中科晶上科技有限公司 | Ip数据包识别方法及网关 |
CN105306536A (zh) * | 2015-09-22 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 基于WiFi的智能终端远程执行服务命令的方法 |
CN106254355A (zh) * | 2016-08-10 | 2016-12-21 | 武汉信安珞珈科技有限公司 | 一种网络协议数据包的安全处理方法和*** |
-
2017
- 2017-07-19 CN CN201710592618.5A patent/CN107395592A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102231709A (zh) * | 2011-07-04 | 2011-11-02 | 清华大学 | 虚拟路由装置的控制平面结构及其控制方法 |
CN102497265A (zh) * | 2011-11-24 | 2012-06-13 | 飞天诚信科技股份有限公司 | 一种脉冲光信号识别的方法及装置 |
CN102821101A (zh) * | 2012-07-27 | 2012-12-12 | 北京中科晶上科技有限公司 | Ip数据包识别方法及网关 |
CN105306536A (zh) * | 2015-09-22 | 2016-02-03 | 上海斐讯数据通信技术有限公司 | 基于WiFi的智能终端远程执行服务命令的方法 |
CN106254355A (zh) * | 2016-08-10 | 2016-12-21 | 武汉信安珞珈科技有限公司 | 一种网络协议数据包的安全处理方法和*** |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109698831A (zh) * | 2018-12-28 | 2019-04-30 | 中电智能科技有限公司 | 数据防护方法和装置 |
CN109698831B (zh) * | 2018-12-28 | 2021-07-02 | 中电智能科技有限公司 | 数据防护方法和装置 |
CN111935081A (zh) * | 2020-06-24 | 2020-11-13 | 武汉绿色网络信息服务有限责任公司 | 一种数据包脱敏方法和装置 |
CN111935081B (zh) * | 2020-06-24 | 2022-06-21 | 武汉绿色网络信息服务有限责任公司 | 一种数据包脱敏方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8495736B2 (en) | Method and apparatus for providing information assurance attributes through a data providence architecture | |
US9456002B2 (en) | Selective modification of encrypted application layer data in a transparent security gateway | |
US8379638B2 (en) | Security encapsulation of ethernet frames | |
KR100910818B1 (ko) | 비-macsec 노드들을 통해 macsec 패킷들을터널링하기 위한 방법 및 시스템 | |
CN106254355B (zh) | 一种网络协议数据包的安全处理方法和*** | |
CN106357690A (zh) | 一种数据传输方法、数据发送装置及数据接收装置 | |
US20170272353A1 (en) | Communication protocol testing method, and tested device and testing platform thereof | |
CN106941491A (zh) | 用电信息采集***的安全应用数据链路层设备及通信方法 | |
US11240318B1 (en) | Systems and methods for virtual multiplexed connections | |
CN114050921B (zh) | 一种fpga实现的基于udp的高速加密数据传输*** | |
CN106815511A (zh) | 信息处理装置和方法 | |
CN103618726A (zh) | 一种基于https协议实现移动数据业务识别的方法 | |
CN103227742B (zh) | 一种IPSec隧道快速处理报文的方法 | |
CN107395592A (zh) | 一种网络协议数据包的安全处理方法和*** | |
CN107276996A (zh) | 一种日志文件的传输方法及*** | |
Büttner et al. | Real-world evaluation of an anonymous authenticated key agreement protocol for vehicular ad-hoc networks | |
CN116015943B (zh) | 一种基于多级隧道混淆的隐私保护方法 | |
US20220407722A1 (en) | Method for detecting anomalies in ssl and/or tls communications, corresponding device, and computer program product | |
JP2004194196A (ja) | パケット通信認証システム、通信制御装置及び通信端末 | |
CN101938428A (zh) | 一种报文的传输方法和设备 | |
Ravi et al. | Formal methods to verify authentication in TACACS+ protocol | |
Kammueller et al. | Engineering security protocols with model checking-Radius-SHA256 and secured simple protocol | |
Ecarot et al. | Sensitive data exchange protocol suite for healthcare | |
US11979503B2 (en) | Method for a secure transmission, and method for a secure bidirectional exchange of electronic data packets in a network | |
Lackorzynski | Practical Encryption Gateways to Integrate Legacy Industrial Machinery |
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: 20171124 |
|
RJ01 | Rejection of invention patent application after publication |