CN114826637A - 密文的发送方法及装置、系统、存储介质、电子设备 - Google Patents
密文的发送方法及装置、系统、存储介质、电子设备 Download PDFInfo
- Publication number
- CN114826637A CN114826637A CN202110134317.4A CN202110134317A CN114826637A CN 114826637 A CN114826637 A CN 114826637A CN 202110134317 A CN202110134317 A CN 202110134317A CN 114826637 A CN114826637 A CN 114826637A
- Authority
- CN
- China
- Prior art keywords
- master key
- ciphertext
- master
- client
- target server
- 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
- 238000000034 method Methods 0.000 title claims abstract description 75
- 238000004891 communication Methods 0.000 claims abstract description 26
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000008569 process Effects 0.000 claims description 35
- 238000004590 computer program Methods 0.000 claims description 14
- 238000007781 pre-processing Methods 0.000 claims description 12
- 238000012360 testing method Methods 0.000 abstract description 43
- 238000010586 diagram Methods 0.000 description 12
- 230000005540 biological transmission Effects 0.000 description 11
- 238000011056 performance test Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000003993 interaction Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0892—Network architectures or network communication protocols for network security for authentication of entities by using authentication-authorization-accounting [AAA] servers or protocols
-
- 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/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network 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
-
- 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/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- 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/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
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)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Computer And Data Communications (AREA)
Abstract
本公开提出了一种密文的发送方法及装置、系统、存储介质、电子设备,属于通信领域。其中,该方法包括:向目标服务器并发多个第一连接请求消息,其中,每个所述第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。通过本公开,解决了相关技术测试服务器性能效率低的技术问题,减少了客户端的资源开销,极大提升了客户端的处理性能,降低了客户端的硬件需求。
Description
技术领域
本公开涉及通信领域,具体而言,涉及一种密文的发送方法及装置、系统、存储介质、电子设备。
背景技术
相关技术中,使用AAA(验证、授权和记账,Authentication、Authorization、Accounting)服务器进行认证的通信系统,包括但不限于WLAN(无线局域网,WirelessLocal Area Network)、使用https(超文本传输安全协议,Hyper Text Transfer Protocolover SecureSocket Layer)协议通信的网站、使用SSH(安全外壳协议,Secure Shell)方式通信的系统、使用了TLS(Transport Layer Security,传输层安全)/SSL(Secure SocketsLayer,安全套接字协议)加密协议的通信系统等。
发明内容
在对AAA服务器或者类似功能的服务器进行性能压力测试等场景时,由于鉴权认证过程对测试客户端的硬件要求过高,一般都会关闭或绕过AAA认证来进行测试,缺少了对AAA服务器的压力测试。在针对AAA服务器进行DDoS(Distributed denial of serviceattack,分布式拒绝服务)攻击安全测试时,常常需要使用大量的测试机器来进行测试,导致测试资源浪费,测试效率低。
本公开实施例提供了一种密文的发送方法及装置、系统、存储介质、电子设备,以解决相关技术测试服务器性能效率低的技术问题。
根据本公开实施例的一个方面,提供了一种密文的发送方法,包括:向目标服务器并发多个第一连接请求消息,其中,每个所述第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。
进一步,在所述向目标服务器并发多个第一连接请求消息之前,所述方法还包括:通过预处理生成所述预设预主密钥对列表。
进一步,所述通过预处理生成所述预设预主密钥对列表包括:在第一次握手过程中向所述向目标服务器发送第二连接请求消息;在第二次握手过程中接收所述目标服务器返回的第二握手消息,其中,所述第二握手消息携带公钥;基于所述公钥生成所述预设预主密钥对列表。
进一步,所述基于所述公钥生成所述预设预主密钥对列表包括:获取多组随机数;针对每组所述随机数,生成一个预主密钥明文,并采用所述公钥对所述预主密钥明文进行加密,得到预主密钥密文;成对保存所述预主密钥明文和所述预主密钥密文,得到所述预设预主密钥对列表。
进一步,在所述预设预主密钥对列表中选择多对预主密钥之后,所述方法还包括:针对每条虚连接链路,采用与所述预主密钥密文对应的预主密钥明文生成数据密钥。
进一步,所述采用与所述预主密钥密文对应的预主密钥明文生成数据密钥包括:读取第一随机数和第二随机数,以及读取与所述预主密钥密文对应的预主密钥明文,其中,第一随机数是所述第一连接请求消息中携带的随机数,所述第二随机数是在当前握手周期的第二次握手过程中所述目标服务器返回的第一握手消息中携带的随机数;拼接所述第一随机数、所述第二随机数以及所述预主密钥明文,以生成数据密钥。
进一步,所述在预设预主密钥对列表中选择多对预主密钥包括:若所述虚连接链路的数量大于所述预设预主密钥对列表的预主密钥对数,在所述预设预主密钥对列表中循环读取所述多对预主密钥,直到取出的预主密钥的对数与所述虚连接链路的数量相同。
根据本公开实施例的另一个方面,提供了一种密文的发送装置,包括:并发模块,用于向目标服务器并发多个第一连接请求消息,其中,每个第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;选择模块,用于在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;发送模块,用于在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。
进一步,上述装置还包括:预处理模块,用于在所述并发模块向目标服务器并发多个第一连接请求消息之前,通过预处理生成所述预设预主密钥对列表。
进一步,所述预处理模块包括:发送单元,用于在上述选择模块在预设预主密钥对列表中选择多对预主密钥之前,在第一次握手过程中向上述向目标服务器发送第二连接请求消息;接收单元,用于在第二次握手过程中接收上述目标服务器返回的第二握手消息,其中,上述第二握手消息携带公钥;生成单元,用于基于上述公钥生成上述预设预主密钥对列表。
进一步,上述生成单元包括:第一生成子单元,用于在第三次握手过程中生成多组随机数;第二生成子单元,用于针对每组上述随机数,生成一个预主密钥明文,并采用上述公钥对上述预主密钥明文进行加密,得到预主密钥密文;保存子单元,用于成对保存上述预主密钥明文和上述预主密钥密文,得到上述预设预主密钥对列表。
进一步,上述装置还包括:生成模块,用于在上述选择模块在预设预主密钥对列表中选择多对预主密钥之后,针对每条虚连接链路,采用与上述预主密钥密文对应的预主密钥明文生成数据密钥。
进一步,上述生成模块包括:读取单元,用于读取第一随机数和第二随机数,以及读取与上述预主密钥密文对应的预主密钥明文,其中,第一随机数是上述第一连接请求消息中携带的随机数,上述第二随机数是在当前握手周期的第二次握手过程中上述目标服务器返回的第一握手消息中携带的随机数;拼接单元,用于拼接上述第一随机数,上述第二随机数,以及上述预主密钥明文,以生成数据密钥。
进一步,上述选择模块包括:读取单元,用于若上述虚连接链路的数量大于上述预设预主密钥对列表的预主密钥对数,在上述预设预主密钥对列表中循环读取上述多对预主密钥,直到取出的预主密钥的对数与上述虚连接链路的数量相同。
根据本公开实施例的另一方面,还提供了一种密文的发送系统,包括服务器和客户端,其中,上述客户端包括执行上述实施例所描述方案的装置;上述服务器,用于在接收到上述客户端发送的多个第一连接请求消息后,针对每个上述第一连接请求消息建立一条与上述客户端之间的虚连接链路,并接收上述客户端发送的预主密钥密文。
根据本公开实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,程序运行时执行上述的步骤。
根据本公开实施例的另一方面,还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口及存储器通过通信总线完成相互间的通信;其中:存储器,用于存放计算机程序;处理器,用于通过运行存储器上所存放的程序来执行上述方法中的步骤。
本公开实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述方法中的步骤。
通过本公开,向目标服务器并发多个第一连接请求消息,在预设预主密钥对列表中选择多对预主密钥,在接收到目标服务器的第一握手消息后,在多个所述虚连接链路上向目标服务器对应发送多对预主密钥中的预主密钥密文,在握手过程中,采用预设预主密钥对列表中选择多对预主密钥,可以在一次握手过程中同时读取多对预先生成好的预主密钥明文和预主密钥密文,相当于在一个客户端上实现多个客户端同时连接目标服务器的效果,提供了一种低开销的服务器性能测试方案,解决了相关技术测试服务器性能效率低的技术问题,避免了测试过程中客户端实时生成随机数并加密生成预主密钥密文的步骤,减少了客户端的资源开销,极大提升了客户端的处理性能,降低了客户端的硬件需求。
附图说明
此处所说明的附图用来提供对本公开的进一步理解,构成本公开的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图中:
图1是本公开实施例的一种计算机的硬件结构框图;
图2是根据本公开实施例的一种密文的发送方法的流程图;
图3是本公开实施例的交互示意图;
图4是本公开实施例进行并发测试的示意图;
图5是根据本公开实施例的一种密文的发送装置的结构框图;
图6是根据本公开实施例的一种密文的发送系统的结构框图;
图7是实施本公开实施例的一种电子设备的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本公开方案,下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分的实施例,而不是全部的实施例。基于本公开中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本公开保护的范围。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
实施例1
本公开实施例一所提供的方法实施例可以在服务器、计算机、手机、平板或者类似的通讯装置中执行。以运行在计算机上为例,图1是本公开实施例的一种计算机的硬件结构框图。如图1所示,计算机可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器(Microcontroller Unit,MCU)或可编程逻辑器件(FieldProgrammable Gate Array,FPGA)等的处理装置)和用于存储数据的存储器104,可选地,上述计算机还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机的结构造成限定。例如,计算机还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本公开实施例中的一种密文的发送方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种密文的发送方法,可应用于客户端,图2是根据本公开实施例的一种密文的发送方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,向目标服务器并发多个第一连接请求消息,其中,每个第一连接请求消息用于建立一条客户端与目标服务器之间的虚连接链路;
可选的,第一连接请求消息是在三次握手过程中第一次握手时发送的连接请求消息,如Client hello消息(客户端问候消息)。通过并发多个第一连接请求消息,客户端可以同时与目标服务器之间建立或维持多次虚连接链路。
步骤S204,在预设预主密钥对列表中选择多对预主密钥,其中,预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;
本实施例的预设预主密钥对列表是预先存储在本地的数据,预设预主密钥对列表按照数据组合进行存储,每个数据组合为一对预主密钥,包括一个预主密钥明文和一个预主密钥密文,每个数据组合中的预主密钥明文和预主密钥密文相互匹配。
步骤S206,在接收到目标服务器的第一握手消息后,在多条所述虚连接链路上向目标服务器对应发送多对预主密钥中的预主密钥密文。其中,每条虚连接链路对应一个预主密钥密文。
可选的,预主密钥密文携带在三次握手过程中第三次握手时发送的握手确认消息中,如Client key exchange(客户端密钥交换)消息。
通过上述步骤,向目标服务器并发多个第一连接请求消息,在预设预主密钥对列表中选择多对预主密钥,在接收到目标服务器的第一握手消息后,在多条所述虚连接链路上向目标服务器对应发送多对预主密钥中的预主密钥密文,在握手过程中,采用预设预主密钥对列表中选择多对预主密钥,可以在一次握手过程中同时读取多对预先生成好的预主密钥明文和预主密钥密文,相当于在一个客户端上实现多个客户端同时连接目标服务器的效果,提供了一种低开销的服务器性能测试方案,解决了相关技术测试服务器性能效率低的技术问题,避免了测试过程中客户端实时生成随机数并加密生成预主密钥密文的步骤,减少了客户端的资源开销,极大提升了客户端的处理性能,降低了客户端的硬件需求。
图3是本公开实施例的交互示意图,网络构架包括客户端和服务器,客户端在与服务器每次正式建立网络连接之前,需要进行三次交互验证,包括第一次握手发送的连接请求消息,如Client hello(客户端问候消息),第二次握手发送的握手消息,如Server hello(服务器问候消息),第三次握手发送的握手确认消息,如Client key exchange(客户端密钥交换消息),即三次握手,完成三次握手之后,客户端与服务器开始传送业务数据,三次握手完成之前的链路为虚连接链路。其中,服务器可以AAA服务器,防火墙服务器,安全服务器,业务服务器等,客户端可以是手机、计算机等任意可以访问网络的业务终端、测试装置等。
基于本实施例的网络构架,在三次握手过程中,每次握手都会产生一个随机数,最后通过这三个随机数产生最终的密钥。前两次的随机数都是通过明文交换,只有第三次握手时,客户端产生的随机数需要使用服务器的公钥进行加密后发给服务器,也正是这个加密过程导致了客户端处理性能受限,难以高并发同时发起多个客户端连接请求。
在本实施例的一个实施方式中,可以通过预先与目标服务器执行一次三次握手的流程来生成预设预主密钥对列表,当然,该预设预主密钥对列表也可以从客户端的历史连接记录中读取得到。在一个示例中,在预设预主密钥对列表中选择多对预主密钥之前,还包括:通过预处理生成预设预主密钥对列表。可选的,通过预处理生成预设预主密钥对列表包括:
S11,在第一次握手过程中向目标服务器发送第二连接请求消息;
S12,在第二次握手过程中接收目标服务器返回的第二握手消息,其中,第二握手消息携带公钥;
S13,基于公钥生成预设预主密钥对列表。
可选的,基于公钥生成预设预主密钥对列表包括:获取多组随机数;针对每组随机数,生成一个预主密钥明文,并采用公钥对预主密钥明文进行加密,得到预主密钥密文;成对保存预主密钥明文和预主密钥密文,得到预设预主密钥对列表。
在一个示例中,第二握手消息中携带的公钥为**,客户端在第三次握手发送握手确认消息(如Client key exchange,客户端密钥交换消息)时需要生成客户端随机数,并基于该客户端随机数和客户端协议版本号生成预主密钥,本实施例通过在一次握手过程中生成多个客户端随机数,并基于多个客户端随机数对应生成多个预主密钥的明文和密文,如生成三个明文:111,222,333,采用**对明文进行加密,生成预主密钥密文,对应为:aaa,bbb,ccc,然后将{111,aaa},{222,bbb},{333,ccc}成对存储在本地。在下一次进行三次握手时,如在对目标服务器进行并发性能测试时,可以同时使用多个预主密钥的明文和密文,不用临时生成多个客户端随机数,实现利用较低的资源量对目标服务器执行并发测试。
在本实施例的一个实施方式中,在预设预主密钥对列表中选择多对预主密钥之后,还包括:针对每条虚连接链路,采用与预主密钥密文对应的预主密钥明文生成数据密钥。
在本实施例中,该数据密钥用于在客户端与目标服务器之间的网络连接建立完成后,采用该数据密钥对业务数据进行加密,并采用加密的数据在客户端与目标服务器之间传输。
基于上述实施方式,采用与预主密钥密文对应的预主密钥明文生成数据密钥包括:读取第一随机数和第二随机数,以及读取与预主密钥密文对应的预主密钥明文,其中,第一随机数是第一连接请求消息中携带的随机数,第二随机数是在当前握手周期的第二次握手过程中目标服务器返回的第一握手消息中携带的随机数;拼接第一随机数、第二随机数以及预主密钥明文,以生成数据密钥。
在一个示例中,第一随机数和第二随机数分别是123,456,客户端与目标服务器之间建立了三条虚连接链路,分别是链接1,链接2,链接3,针对链接1,分配{111,aaa},在第三次握手发送Client key exchange时,在{111,aaa}取出aaa为预主密钥密文发送给目标服务器,111123456(111+123+456)为数据密钥,另外的,链接2的预主密钥密文和数据密钥分别为bbb,222123456,链接3的预主密钥密文和数据密钥分别为ccc,333123456。
图4是本公开实施例进行并发测试的示意图,三条并发的虚连接链路中,在第三次握手发送Client key exchange时,携带的预主密钥密文分别为aaa,bbb,ccc,测试客户端本地基于对应的预主密钥明文拼接出的数据密钥分别为111123456,222123456,333123456。
在目标服务器侧,由于第一随机数和第二随机数分别存储在第一次握手和第二次握手过程中的Client hello(客户端问候)消息和Server hello(服务器问候)消息中,因此目标服务器也能通过消息记录获取到第一随机数和第二随机数,并通过解密预主密钥密文得到对应的预主密钥明文,进而拼接出于客户端相同的数据密钥,实现客户端与目标服务器之间的数据加密传输。
在本实施例的一个实施方式中,在预设预主密钥对列表中选择多对预主密钥包括:若虚连接链路的数量大于预设预主密钥对列表的项数,在预设预主密钥对列表中循环读取多对预主密钥,直到取出的预主密钥的对数与虚连接链路的数量相同。
通过采用循环读取的方式,可以使多条虚连接链路使用的预主密钥密文之间的差异尽量最大,防止目标服务器将客户端因为并发多个相同的预主密钥密文而将其拉黑屏蔽,最大程度还原了真实的业务场景。可选的,除了循环读取之外,也可以采用随机读取的方式。
在一个示例中,虚连接链路的数量为5,预设预主密钥对列表的项数为3,分别为{111,aaa},{222,bbb},{333,ccc},通过循环读取,得到5对预主密钥,分别为{111,aaa},{222,bbb},{333,ccc},{111,aaa},{222,bbb}。
在本实施例的一个测试场景中,采用预先生成的多组随机数,预先使用服务器的公钥加密好,将随机数和加密后的数据(预设预主密钥对列表)保存好。在开始性能测试后,测试装置循环使用这组已经预先处理好的数据和服务端进行交互。随机数的数量可以设置为大于AAA服务器为了防止重放攻击而缓存的历史随机数的数量。在此结合该测试场景对实施例的方案进行完整说明:
在相关TLS三次握手协议中,每次握手的过程都会产生一个随机数,本测试场景对第三次握手(发送Client key exchange)的过程中产生pre_master_secret(预主密钥)的过程进行优化,相关TLS协议规定pre_master_secret由2个字节的客户端协议版本号和46个字节由客户端生成的随机数组成,服务器发送给客户端的Server hello消息中,包含了服务器的公钥。测试流程包括:
第1步,预先成对生成pre_master_secret明文和pre_master_secret密文。
第1.1步,测试装置向服务器发起Client hello请求消息,包含了测试装置产生的随机数client_random。
第1.2步,服务器向测试装置发送Server hello消息,包含了服务器的公钥和服务器产生的随机数server_random。测试装置收到了Server hello消息中的公钥后,保存好公钥。
第1.3步,测试装置产生新的46字节的随机数,并和2字节的客户端协议版本号组成48字节的pre_master_secret(预主密钥),然后利用第1.2步中得到的服务器公钥,对pre_master_secret进行加密,得到pre_master_secret密文。成对保存pre_master_secret明文和pre_master_secret密文,保存形式如(pre_master_secret明文,pre_master_secret密文)。
第1.4步,反复执行1.3步,生成多对的(pre_master_secret明文,pre_master_secret密文),得到预设预主密钥对列表,并本地保存,具体数量根据测试需要设置。
第2步,使用预先生成好的预设预主密钥对列表进行高并发性能测试。
第2.1步,测试装置同时高并发产生大量连接请求,具体连接数量根据不同的测试需求设置,每个连接请求继续执行以下步骤:
第2.2步,测试装置向服务器发起Client hello请求消息,包含了测试装置产生的随机数。
第2.3步,服务器向测试装置发送Server hello消息,包含了服务器的公钥和随机数。
第2.4步,测试装置从第1.3步、第1.4步中保存的预设预主密钥对列表中,顺序取出一对(pre_master_secret明文,pre_master_secret密文),测试装置使用pre_master_secret明文+第2.2步随机数+第2.3步随机数生成最终的数据密钥,此外,测试装置把取出来的pre_master_secret密文发送给服务器,在预设预主密钥对列表的最后一对(pre_master_secret明文,pre_master_secret密文)取出来后,再重新从第一对开始取用,循环使用。
测试服务器在接收到pre_master_secret密文之后,利用私钥来对pre_master_secret密文进行解密,得到pre_master_secret明文,并基于该pre_master_secret密文生成数据密钥。
第2.5步,测试装置继续执行后续流程和业务。
本实施例通过采用预先保存好的随机数明文和服务器公钥生成多对预主密钥明文和预主密钥密文,在后续握手过程中,再采用循环使用的方式,读取预先生成好的预主密钥明文和预主密钥密文,避免了测试过程中客户端实时生成随机数并加密的步骤,极大提升了测试装置的处理性能,降低了测试装置的硬件需求。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本公开各个实施例所述的方法。
实施例2
在本实施例中还提供了一种密文的发送装置、系统,用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图5是根据本公开实施例的一种密文的发送装置的结构框图,如图5所示,该装置包括:并发模块50,选择模块52,发送模块54,其中,
并发模块50,用于向目标服务器并发多个第一连接请求消息,其中,每个第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;
选择模块52,用于在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;
发送模块54,用于在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。
可选的,上述装置还包括:预处理模块,用于在所述并发模块向目标服务器并发多个第一连接请求消息之前,通过预处理生成所述预设预主密钥对列表。
可选的,所述预处理模块包括:发送单元,用于在上述选择模块在预设预主密钥对列表中选择多对预主密钥之前,在第一次握手过程中向上述向目标服务器发送第二连接请求消息;接收单元,用于在第二次握手过程中接收上述目标服务器返回的第二握手消息,其中,上述第二握手消息携带公钥;生成单元,用于基于上述公钥生成上述预设预主密钥对列表。
可选的,上述生成单元包括:第一生成子单元,用于在第三次握手过程中生成多组随机数;第二生成子单元,用于针对每组上述随机数,生成一个预主密钥明文,并采用上述公钥对上述预主密钥明文进行加密,得到预主密钥密文;保存子单元,用于成对保存上述预主密钥明文和上述预主密钥密文,得到上述预设预主密钥对列表。
可选的,上述装置还包括:生成模块,用于在上述选择模块在预设预主密钥对列表中选择多对预主密钥之后,针对每条虚连接链路,采用与上述预主密钥密文对应的预主密钥明文生成数据密钥。
可选的,上述生成模块包括:读取单元,用于读取第一随机数和第二随机数,以及读取与上述预主密钥密文对应的预主密钥明文,其中,第一随机数是上述第一连接请求消息中携带的随机数,上述第二随机数是在当前握手周期的第二次握手过程中上述目标服务器返回的第一握手消息中携带的随机数;拼接单元,用于拼接上述第一随机数,上述第二随机数,以及上述预主密钥明文,以生成数据密钥。
可选的,上述选择模块包括:读取单元,用于若上述虚连接链路的数量大于上述预设预主密钥对列表的项数,在上述预设预主密钥对列表中循环读取上述多对预主密钥,直到取出的预主密钥的对数与上述虚连接链路的数量相同。
图6是根据本公开实施例的一种密文的发送系统的结构框图,图6所示,包括服务器60和客户端62,其中,上述客户端包括上述实施例所描述的装置;上述服务器,用于在接收到上述客户端发送的多个第一连接请求消息后,针对每个上述第一连接请求消息建立一条与上述客户端之间的虚连接链路,并接收上述客户端发送的预主密钥密文。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
本公开的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,向目标服务器并发多个第一连接请求消息,其中,每个所述第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;
S2,在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;
S3,在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本公开的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,向目标服务器并发多个第一连接请求消息,其中,每个所述第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;
S2,在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;
S3,在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
图7是本公开实施例的一种电子设备的结构图,如图7所示,包括处理器71、通信接口72、存储器73和通信总线74,其中,处理器71,通信接口72,存储器73通过通信总线74完成相互间的通信,存储器73,用于存放计算机程序;处理器71,用于执行存储器73上所存放的程序。
上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。
在本公开的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本公开所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本公开各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本公开的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本公开原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本公开的保护范围。
Claims (11)
1.一种密文的发送方法,其特征在于,包括:
向目标服务器并发多个第一连接请求消息,其中,每个所述第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;
在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;
在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。
2.根据权利要求1所述的方法,其特征在于,在所述向目标服务器并发多个第一连接请求消息之前,所述方法还包括:
通过预处理生成所述预设预主密钥对列表。
3.根据权利要求2所述的方法,其特征在于,所述通过预处理生成所述预设预主密钥对列表包括:
在第一次握手过程中向所述向目标服务器发送第二连接请求消息;
在第二次握手过程中接收所述目标服务器返回的第二握手消息,其中,所述第二握手消息携带公钥;
基于所述公钥生成所述预设预主密钥对列表。
4.根据权利要求3所述的方法,其特征在于,所述基于所述公钥生成所述预设预主密钥对列表包括:
获取多组随机数;
针对每组所述随机数,生成一个预主密钥明文,并采用所述公钥对所述预主密钥明文进行加密,得到预主密钥密文;
成对保存所述预主密钥明文和所述预主密钥密文,得到所述预设预主密钥对列表。
5.根据权利要求1所述的方法,其特征在于,在所述预设预主密钥对列表中选择多对预主密钥之后,所述方法还包括:
针对每条虚连接链路,采用与所述预主密钥密文对应的预主密钥明文生成数据密钥。
6.根据权利要求5所述的方法,其特征在于,所述采用与所述预主密钥密文对应的预主密钥明文生成数据密钥包括:
读取第一随机数和第二随机数,以及读取与所述预主密钥密文对应的预主密钥明文,其中,第一随机数是所述第一连接请求消息中携带的随机数,所述第二随机数是在当前握手周期的第二次握手过程中所述目标服务器返回的第一握手消息中携带的随机数;
拼接所述第一随机数、所述第二随机数以及所述预主密钥明文,以生成数据密钥。
7.根据权利要求1所述的方法,其特征在于,所述在预设预主密钥对列表中选择多对预主密钥包括:
若所述虚连接链路的数量大于所述预设预主密钥对列表的预主密钥对数,在所述预设预主密钥对列表中循环读取所述多对预主密钥,直到取出的预主密钥的对数与所述虚连接链路的数量相同。
8.一种密文的发送装置,其特征在于,包括:
并发模块,用于向目标服务器并发多个第一连接请求消息,其中,每个第一连接请求消息用于建立一条客户端与所述目标服务器之间的虚连接链路;
选择模块,用于在预设预主密钥对列表中选择多对预主密钥,其中,所述预设预主密钥对列表中的每对预主密钥包括一个预主密钥明文和一个预主密钥密文;
发送模块,用于在接收到所述目标服务器的第一握手消息后,在多条所述虚连接链路上向所述目标服务器对应发送多对所述预主密钥中的预主密钥密文。
9.一种密文的发送系统,其特征在于,包括服务器和客户端,其中,
所述客户端,包括执行权利要求1-7任一项方法步骤的装置;
所述服务器,用于在接收到所述客户端发送的多个第一连接请求消息后,针对每个所述第一连接请求消息建立一条与所述客户端之间的虚连接链路,并接收所述客户端发送的预主密钥密文。
10.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7中任一项所述的方法步骤。
11.一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器、通信接口及存储器通过通信总线完成相互间的通信;其中:
存储器,用于存放计算机程序;
处理器,用于通过运行存储器上所存放的程序来执行权利要求1至7中任一项所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110134317.4A CN114826637A (zh) | 2021-01-28 | 2021-01-28 | 密文的发送方法及装置、系统、存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110134317.4A CN114826637A (zh) | 2021-01-28 | 2021-01-28 | 密文的发送方法及装置、系统、存储介质、电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114826637A true CN114826637A (zh) | 2022-07-29 |
Family
ID=82526532
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110134317.4A Pending CN114826637A (zh) | 2021-01-28 | 2021-01-28 | 密文的发送方法及装置、系统、存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114826637A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101388800A (zh) * | 2007-09-12 | 2009-03-18 | 百度在线网络技术(北京)有限公司 | 对服务器的网络性能进行压力测试的方法、设备及系统 |
CN101621532A (zh) * | 2008-06-30 | 2010-01-06 | 中兴通讯股份有限公司 | 一种使用线程池实现超文本传输协议应用的方法 |
CN102638582A (zh) * | 2012-04-12 | 2012-08-15 | 华为技术有限公司 | 数据通信方法及通信端 |
CN106161449A (zh) * | 2016-07-19 | 2016-11-23 | 青松智慧(北京)科技有限公司 | 无密钥认证传输方法及系统 |
CN106657287A (zh) * | 2016-11-30 | 2017-05-10 | 广州市千钧网络科技有限公司 | 一种数据访问方法及系统 |
CN107172572A (zh) * | 2017-04-25 | 2017-09-15 | 李蕊 | 基于低功耗蓝牙的虚连接方法及利用该方法的无线充电协议 |
-
2021
- 2021-01-28 CN CN202110134317.4A patent/CN114826637A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101388800A (zh) * | 2007-09-12 | 2009-03-18 | 百度在线网络技术(北京)有限公司 | 对服务器的网络性能进行压力测试的方法、设备及系统 |
CN101621532A (zh) * | 2008-06-30 | 2010-01-06 | 中兴通讯股份有限公司 | 一种使用线程池实现超文本传输协议应用的方法 |
CN102638582A (zh) * | 2012-04-12 | 2012-08-15 | 华为技术有限公司 | 数据通信方法及通信端 |
CN106161449A (zh) * | 2016-07-19 | 2016-11-23 | 青松智慧(北京)科技有限公司 | 无密钥认证传输方法及系统 |
CN106657287A (zh) * | 2016-11-30 | 2017-05-10 | 广州市千钧网络科技有限公司 | 一种数据访问方法及系统 |
CN107172572A (zh) * | 2017-04-25 | 2017-09-15 | 李蕊 | 基于低功耗蓝牙的虚连接方法及利用该方法的无线充电协议 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107317674B (zh) | 密钥分发、认证方法,装置及系统 | |
EP3432532B1 (en) | Key distribution and authentication method, apparatus and system | |
US10903987B2 (en) | Key configuration method, key management center, and network element | |
EP3633949B1 (en) | Method and system for performing ssl handshake | |
CN102833253A (zh) | 建立客户端与服务器安全连接的方法及服务器 | |
CN110839240B (zh) | 一种建立连接的方法及装置 | |
CN107612899A (zh) | 一种基于量子密钥的OpenVPN安全通信方法和通信系统 | |
CN107172001B (zh) | 网站代理服务器的控制方法及装置、密钥代理服务器 | |
KR20180130203A (ko) | 사물인터넷 디바이스 인증 장치 및 방법 | |
CN108632042A (zh) | 一种基于对称密钥池的类aka身份认证系统和方法 | |
CN109068321A (zh) | 协商会话密钥的方法、系统、移动终端及智能家居设备 | |
CN110601825A (zh) | 密文的处理方法及装置、存储介质、电子装置 | |
CN116318678A (zh) | 一种多因子物联网终端动态群组接入认证方法 | |
CN113923655A (zh) | 基于相邻节点的数据解密接收方法及装置 | |
CN101697522A (zh) | 虚拟专用网组网方法及通信系统以及相关设备 | |
CN113472792B (zh) | 一种长连接网络通信加密方法及系统 | |
CN114070579A (zh) | 一种基于量子密钥的工控业务鉴权认证方法和系统 | |
CN102868522B (zh) | 一种ike协商异常的处理方法 | |
CN114826637A (zh) | 密文的发送方法及装置、系统、存储介质、电子设备 | |
CN112995210B (zh) | 一种数据传输方法、装置及电子设备 | |
CN113271586B (zh) | 电力设备体域网安全通信方法及系统、存储介质 | |
CN110417722A (zh) | 一种业务数据通信方法、通信设备及存储介质 | |
CN110875902A (zh) | 通信方法、装置及系统 | |
CN213938340U (zh) | 5g应用接入认证网络架构 | |
CN113452514B (zh) | 密钥分发方法、装置和系统 |
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 |