用于数据传输的方法及装置、系统转让专利

申请号 : CN202311386573.8

文献号 : CN117118763B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张楠

申请人 : 紫光同芯微电子有限公司

摘要 :

本申请涉及网络通信安全技术领域,公开一种用于数据传输的方法,应用于客户端,包括:在与服务器建立安全传输协议连接的情况下,生成会话密钥并向服务器发送会话密钥;利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据;向服务器发送目标传输数据,以使服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。该方法可有效阻止观察者根据安全传输协议连接时的交互信息进行服务器或者用户的追踪,确保数据通信的安全性和可靠性。本申请还公开一种用于数据传输的装置及系统。

权利要求 :

1.一种用于数据传输的方法,其特征在于,应用于客户端,包括:在与服务器建立安全传输协议连接的情况下,生成会话密钥并向服务器发送会话密钥;

利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据;

向服务器发送目标传输数据,以使服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据;

在与服务器建立安全传输协议连接的情况下,生成会话密钥,包括:向服务器发送握手请求;其中,握手请求包括伪装标识;

接收服务器发送的安全传输层协议伪装证书,并基于安全传输层协议伪装证书与服务器建立安全传输协议连接;其中,安全传输层协议伪装证书是由服务器根据伪装标识匹配出的传输层协议伪装证书;

完成安全传输协议连接后,生成会话密钥。

2.根据权利要求1所述的方法,其特征在于,安全传输层协议伪装证书包括密钥;基于安全传输层协议伪装证书与服务器建立安全传输协议连接,包括:确定与安全传输层协议伪装证书关联的目标证书密钥;

利用目标证书密钥对密钥进行密钥验证;

在密钥验证成功的情况下,与服务器建立安全传输协议连接。

3.根据权利要求1或2所述的方法,其特征在于,利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据,包括:利用芯片密钥对应用层数据进行硬件加密处理,获得第一加密数据;

利用会话密钥对第一加密数据进行软件加密处理,获得目标传输数据。

4.根据权利要求1或2所述的方法,其特征在于,还包括:接收服务器发送的基于目标传输数据生成的响应数据;

利用会话密钥对响应数据进行软件解密处理,获得第一解密数据;

利用芯片密钥对第一解密数据进行硬件解密处理,获得目标响应数据。

5.一种用于数据传输的方法,其特征在于,应用于服务器,包括:在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥;其中,会话密钥由客户端与服务器建立安全传输协议连接后生成的;

接收客户端发送的目标传输数据;其中,目标传输数据是客户端利用芯片密钥和会话密钥对应用层数据进行双层加密处理获得的;

根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据;

在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥,包括:响应于客户端发送的握手请求,获得与握手请求匹配的安全传输层协议伪装证书;其中,握手请求包括伪装标识;

发送安全传输层协议伪装证书至客户端,以与客户端建立安全传输协议连接;

完成安全传输协议连接后,接收客户端发送的会话密钥。

6.根据权利要求5所述的方法,其特征在于,还包括:根据第二解密数据,生成待传输响应数据;

利用加密机密钥对待传输响应数据进行硬件加密处理,获得第二加密数据;

利用会话密钥对第二加密数据进行软件加密处理,获得响应数据;

向客户端发送响应数据。

7.一种用于数据传输的装置,包括第一处理器和存储有程序指令的第一存储器,其特征在于,所述第一处理器被配置为在运行所述程序指令时,执行如权利要求1至6任一项所述的用于数据传输的方法。

8.一种用于数据传输的系统,其特征在于,包括:客户端设备,配置有安全芯片;

服务器,配置有加密机;和,

如权利要求7所述的用于数据传输的装置。

说明书 :

用于数据传输的方法及装置、系统

技术领域

[0001] 本申请涉及网络通信安全技术领域,例如涉及一种用于数据传输的方法及装置、系统。

背景技术

[0002] 目前,随着互联网和各种网络应用的快速发展,数据通信安全问题愈发引人关注。传统的网络安全方案,如TLS(Transport Layer Security,安全传输层协议)和SSL(Secure Socket Layer,安全套接层),已经成为保障数据在传输过程中安全性的基础技术。然而,这些传统的安全措施也存在不少缺陷和局限性。例如,TLS握手过程中的服务器名称指示(SNI)可以被观察者用于识别和追踪用户的网络行为。因此,在安全连接过程中,如何规避观察者的识别和追踪以保证数据通信的安全性,成为当前亟需解决的技术难题。
[0003] 为了保证TLS握手时通信的安全性,相关技术公开了一种TLS握手过程中服务器端的密钥安全保护方法,包括:向密码设备发送非对称密钥生成请求;接收密码设备生成的非对称密钥对,其中非对称密钥对中的私钥被密码设备加密;根据非对称密钥对获取服务器证书;与客户端建立握手关系;根据客户端的密钥交换参数向密码设备发送计算请求;接收密码设备反馈的密文形式的密钥单元;在密码设备根据密钥单元对应用数据加密后,将密文形式的应用数据发送至客户端。
[0004] 在实现本公开实施例的过程中,发现相关技术中至少存在如下问题:
[0005] 相关技术虽然基于安全传输层协议在客户端与服务器之间建立安全连接,通过在客户端与服务器之间采用对应的密钥协商和身份认证创建相应的安全连接通道,但是,在观察者具有较强破解能力时,观察者存在成功窃取非对称密钥对的可能,会对TLS握手过程中通信的数据传输产生影响,降低TLS握手通信的安全性和可靠性。
[0006] 需要说明的是,在上述背景技术部分公开的信息仅用于加强对本申请的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。

发明内容

[0007] 为了对披露的实施例的一些方面有基本的理解,下面给出了简单的概括。所述概括不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围,而是作为后面的详细说明的序言。
[0008] 本公开实施例提供了一种用于数据传输的方法及装置、系统,以保证TLS握手通信的安全性和可靠性。
[0009] 在一些实施例中,方法,应用于客户端,包括:在与服务器建立安全传输协议连接的情况下,生成会话密钥并向服务器发送会话密钥;利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据,获得目标传输数据;向服务器发送目标传输数据,以使服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。
[0010] 在一些实施例中,在与服务器建立安全传输协议连接的情况下,生成会话密钥,包括:向服务器发送握手请求;其中,握手请求包括伪装标识;接收服务器发送的安全传输层协议伪装证书,并基于安全传输层协议伪装证书与服务器建立安全传输协议连接;其中,安全传输层协议伪装证书是由服务器根据伪装标识匹配出的传输层协议伪装证书;完成安全传输协议连接后,生成会话密钥。
[0011] 在一些实施例中,基于安全传输层协议伪装证书与服务器建立安全传输协议连接,包括:确定与安全传输层协议伪装证书关联的目标证书密钥;利用目标证书密钥对密钥进行密钥验证;在密钥验证成功的情况下,与服务器建立安全传输协议连接。
[0012] 在一些实施例中,利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据,获得目标传输数据,包括:利用芯片密钥对应用层数据进行硬件加密处理,获得第一加密数据;利用会话密钥对第一加密数据进行软件加密处理,获得目标传输数据。
[0013] 在一些实施例中,还包括:接收服务器发送的基于目标传输数据生成的响应数据;利用芯片密钥对第一解密数据进行硬件解密处理,获得目标响应数据。
[0014] 在一些实施例中,方法,应用于服务器,包括:在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥;其中,会话密钥由客户端与服务器建立安全传输协议连接后生成的;接收客户端发送的目标传输数据;其中,目标传输数据是客户端利用芯片密钥和会话密钥对应用层数据进行双层加密处理获得的;根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。
[0015] 在一些实施例中,在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥,包括:响应于客户端发送的握手请求,获得与握手请求匹配的安全传输层协议伪装证书;其中,握手请求包括伪装标识;发送安全传输层协议伪装证书至客户端,以与客户端建立安全传输协议连接;完成安全传输协议连接后,接收客户端发送的会话密钥。
[0016] 在一些实施例中,还包括:根据第二解密数据,生成待传输响应数据;利用加密机密钥对待传输响应数据进行硬件加密处理,获得第二加密数据;利用会话密钥对第二加密数据进行软件加密处理,获得响应数据;向客户端发送响应数据。
[0017] 在一些实施例中,用于数据传输的装置,包括第一处理器和存储有程序指令的第一存储器,所述第一处理器被配置为在运行所述程序指令时,执行如前述的用于数据传输的方法。
[0018] 在一些实施例中,用于数据传输的系统,包括:客户端设备,配置有安全芯片;服务器,配置有加密机;和,如前述的用于数据传输的装置。
[0019] 本公开实施例提供的用于数据传输的方法及装置、系统,可以实现以下技术效果:
[0020] 客户端在与服务器之间建立安全传输协议连接的情况下,生成会话密钥,并发送至服务器以使服务器根据会话密钥进行数据加密处理;其后,基于芯片密钥和会话密钥对应用层数据进行双层加密处理以获得目标传输数据;最后,向服务器发送目标传输数据,以使服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。如此,客户端所生成的目标传输数据经硬件级别加密,可阻断潜在的数据泄露风险,再经软件级别的加密,能够增强目标传输数据在数据传输过程中的安全性,从而有效阻止观察者根据安全传输协议连接时的交互信息进行服务器或者用户的追踪,确保数据通信的安全性和可靠性。
[0021] 以上的总体描述和下文中的描述仅是示例性和解释性的,不用于限制本申请。

附图说明

[0022] 一个或多个实施例通过与之对应的附图进行示例性说明,这些示例性说明和附图并不构成对实施例的限定,附图中具有相同参考数字标号的元件示为类似的元件,附图不构成比例限制,并且其中:
[0023] 图1是用于数据传输的系统实施环境的环境示意图;
[0024] 图2是本公开实施例提供的一个用于数据传输的方法的示意图;
[0025] 图3是本公开实施例提供的另一个用于数据传输的方法的示意图;
[0026] 图4是本公开实施例提供的另一个用于数据传输的方法的示意图;
[0027] 图5是本公开实施例提供的另一个用于数据传输的方法的示意图;
[0028] 图6是本公开实施例提供的另一个用于数据传输的方法的示意图;
[0029] 图7是本公开实施例提供的另一个用于数据传输的方法的示意图;
[0030] 图8是本公开实施例提供的另一个用于数据传输的方法的示意图;
[0031] 图9是本公开实施例提供的另一个用于数据传输的方法的示意图;
[0032] 图10是本公开实施例的一个应用示意图;
[0033] 图11是本公开实施例提供的一个用于数据传输的装置的示意图;
[0034] 图12是本公开实施例提供的另一个用于数据传输的装置的示意图。

具体实施方式

[0035] 为了能够更加详尽地了解本公开实施例的特点与技术内容,下面结合附图对本公开实施例的实现进行详细阐述,所附附图仅供参考说明之用,并非用来限定本公开实施例。在以下的技术描述中,为方便解释起见,通过多个细节以提供对所披露实施例的充分理解。
然而,在没有这些细节的情况下,一个或多个实施例仍然可以实施。在其它情况下,为简化附图,熟知的结构和装置可以简化展示。
[0036] 本公开实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开实施例的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。
[0037] 除非另有说明,术语“多个”表示两个或两个以上。
[0038] 本公开实施例中,字符“/”表示前后对象是一种“或”的关系。例如,A/B表示:A或B。
[0039] 术语“和/或”是一种描述对象的关联关系,表示可以存在三种关系。例如,A和/或B,表示:A或B,或,A和B这三种关系。
[0040] 术语“对应”可以指的是一种关联关系或绑定关系,A与B相对应指的是A与B之间是一种关联关系或绑定关系。
[0041] 图1是本公开实施例的系统实施环境的环境示意图。用于数据传输的系统包括客户端100及路由器200、服务器300。
[0042] 如图1所示,该实施环境可以包括客户端100、路由器200和服务器300。
[0043] 客户端100可以为电子设备。电子设备包括移动设备或者家电设备。例如,客户端110为智能手机、平板电脑等支持信息输入的各种移动设备,也可以为家电设备。家电设备可以为电视机、冰箱、洗衣机等集成有Wi‑Fi模块的智能家居设备。智能手机是指具有无线连接功能的电子设备,智能手机可以通过连接互联网,与家电设备进行通信连接,也可以直接通过蓝牙、Wi‑Fi(Wireless Fidelity,无线保真)等方式与如上的家电设备进行通信连接。家电设备是指将微处理器、传感器技术、网络通信技术引入家电设备后形成的家电产品,具有智能控制、智能感知及智能应用的特征,家电设备的运作过程往往依赖于物联网、互联网以及电子芯片等现代技术的应用和处理,例如家电设备可以通过连接电子设备,实现对家电设备的远程控制和管理。前述电子设备或者家电设备包括NFC模块或者Wi‑Fi模块,其中,Wi‑Fi模块为传输转换产品,利用Wi‑Fi模块可以与互联网建立连接。
[0044] 路由器200是连接因特网中各局域网、广域网的设备,它会根据信道的情况自动选择和设定路由,以最佳路径,按前后顺序发送信号。前述电子设备可以通过路由器200与服务器300建立通信连接。
[0045] 服务器400可以是一台服务器,也可以是由若干台服务器组成的服务器集群,或者还可以是一个云计算服务中心,本公开实施例对此不作限制。
[0046] 应理解,图1中的客户端、路由器和服务器的数量仅仅是示意性的,根据实际需要,可以具有任意数量的客户端、路由器和服务器。
[0047] 需要说明的是,本公开实施例提供的用于数据传输的方法一般由客户端、路由器和服务器共同执行,相应地,用于数据传输的装置一般设置于客户端、路由器和服务器中。
[0048] 公开实施例中,客户端100配置有安全芯片。安全芯片配置安全加密算法且安全加密算法设置芯片密钥,同时,安全芯片受到物理和逻辑防护并通过安全认证。安全芯片用于利用加密算法的芯片密钥对数据进行硬件加密处理。如此,客户端可利用安全芯片对数据进行硬件级别加密处理,从而阻断潜在的数据泄露风险。
[0049] 可选地,安全芯片可以为eSE(Embedded Secure Element,嵌入式安全元件)芯片,也可以为TPM(Trusted Platform Module)安全芯片,也可以为HSM(Hardware Security Module,硬件安全模块)。通过采用eSE芯片或者TPM安全芯片,能够确保数据传输过程中的完整性和保密性,有效抵御篡改和窃听攻击。HSM具有强大加密能力,能够进一步确保数据传输过程中的保密性。
[0050] 公开实施例中,服务器300配置有加密机。加密机配置有预设加密算法以及上述加密机密钥。前述预设加密算法与安全芯片配置的安全加密算法相适配。在一种具体示例中,客户端100与服务器300之间的交互步骤包括以下五个阶段:初始化阶段,TLS握手阶段,数据传输阶段,响应阶段及数据接收阶段。加密机用于数据传输阶段对经会话密钥解密后的数据进行解密处理,或者,加密机用于响应阶段对响应数据进行加密处理。
[0051] 基于上述环境示意图,结合图2所示,本公开实施例提供一种用于数据传输的方法,应用于客户端,包括:
[0052] S01,客户端在与服务器建立安全传输协议连接的情况下,生成会话密钥并向服务器发送会话密钥。
[0053] S02,客户端利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据。
[0054] 该步骤中,客户端按照以下方式获得芯片密钥:客户端在处于初始化阶段的情况下,控制安全芯片启动,并,获得芯片密钥。
[0055] S03,客户端向服务器发送目标传输数据,以使服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。
[0056] 采用本公开实施例提供的用于数据传输的方法,客户端在与服务器之间建立安全传输协议连接的情况下,生成会话密钥,并发送至服务器以使服务器根据会话密钥进行数据加密处理;其后,基于芯片密钥和会话密钥对应用层数据进行双层加密处理以获得目标传输数据;最后,向服务器发送目标传输数据,以使服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。如此,客户端所生成的目标传输数据经硬件级别加密,可阻断潜在的数据泄露风险,再经软件级别的加密,能够增强目标传输数据在数据传输过程中的安全性,从而有效阻止观察者根据安全传输协议连接时的交互信息进行服务器或者用户的追踪,确保数据通信的安全性和可靠性。
[0057] 可选地,结合图3所示,客户端在与服务器建立安全传输协议连接的情况下,生成会话密钥,包括:
[0058] S11,客户端向服务器发送握手请求。其中,握手请求包括伪装标识。
[0059] 该步骤中,伪装标识为服务器的唯一标识。伪装标识包括伪装SNI(Server Name Indication,服务器名称指示)。可选地,伪装SNI为网站域名。在一种具体示例中,伪装SNI可以为热门网站域名。通过设置伪装SNI,而非实际客户端需要访问的服务器地址,可有效阻止观察者根据安全传输协议连接时的交互信息追踪服务器或者用户。
[0060] S12,客户端接收服务器发送的安全传输层协议伪装证书,并基于安全传输层协议伪装证书与服务器建立安全传输协议连接。其中,安全传输层协议伪装证书是由服务器根据伪装标识匹配出的传输协议伪装证书。
[0061] 该步骤中,安装传输层协议伪装证书是服务器按照如下方式获得的:服务器根据伪装标识从协议证书库中匹配出目标协议伪装证书,并确定目标协议伪装证书为与握手请求匹配的安全传输层协议伪装证书,协议证书库包括预设伪装标识及与预设伪装标识匹配的协议伪装证书。
[0062] S13,客户端完成安全传输协议连接后,生成会话密钥。
[0063] 这样,客户端向服务器发送握手请求以与服务器构建安全传输协议连接,同时,握手请求包括有伪装标识。服务器在接收握手请求后,根据伪装标识匹配出安全传输层协议伪装证书。如此,由于服务器接收的握手请求携带有伪装标识且服务器返回的协议证书为安全传输层协议伪装证书,因此,本公开实施例通过安全传输层协议伪装证书替代传统的TLS指纹,避免客户端与服务器在TLS握手过程中利用TLS指纹进行信息交互,有效地阻止观察者根据TLS握手时的TLS指纹识别和追踪服务器或者用户,确保数据通信的安全性和可靠性。与此同时,有效地保护用户的隐私。此外,伪装标识为服务器的唯一标识,使客户端即便在复杂的网络环境下与服务器进行信息交互,也能够有效防止观察者的攻击和证书伪造,进一步确保数据通信的安全性和可靠性。
[0064] 可选地,安全传输层协议伪装证书包括密钥。密钥包括公钥;或者,密钥包括公钥和私钥。通过设置密钥,可使客户端基于公钥对安全传输层协议伪装证书进行密钥验证,确保与正确的服务器之间进行通信。
[0065] 可选地,结合图4所示,客户端基于安全传输层协议伪装证书与服务器建立安全传输协议连接,包括:
[0066] S21,客户端确定与安全传输层协议伪装证书关联的目标证书密钥。
[0067] S22,客户端利用目标证书密钥对密钥进行密钥验证。
[0068] S23,客户端在密钥验证成功的情况下,与服务器建立安全传输协议连接。
[0069] 这样,客户端确定出与安全传输层协议伪装证书关联的目标证书密钥,再利用目标证书密钥对密钥进行密钥验证。在客户端确定密钥验证成功时,与服务器建立安全传输协议连接。如此,本公开实施例通过引入伪装标识和TLS指纹消除,避免客户端与服务器在TLS握手过程中利用TLS指纹进行信息交互,使得网络监视者或者潜在攻击者等观察者难以识别或者追踪到特定服务器或者用户,确保数据通信的安全性和可靠性。
[0070] 可选地,客户端确定与安全传输层协议伪装证书关联的目标证书密钥,包括:
[0071] 客户端在与服务器建立安全传输协议连接之前,接收服务器发送的协议证书库,并基于协议证书库配置生成本地协议证书库,协议证书库中的协议伪装证书包括证书密钥。其中,客户端基于协议证书库配置生成本地协议证书库,包括:客户端根据协议证书库,构建与协议证书库相同的本地协议证书库。
[0072] 客户端从本地协议证书库中匹配出与安全传输层协议伪装证书关联的目标证书密钥。
[0073] 这样,客户端在与服务器建立安全传输协议连接之前,接收服务器发送的协议数据库并基于协议证书库配置生成本地协议证书库以进行后续的密钥验证,以从本地协议证书库中匹配出与安全传输层协议伪装证书关联的目标证书密钥,从而保证后续对目标证书密钥进行密钥验证的准确性。
[0074] 可选地,客户端利用目标证书密钥对密钥进行密钥验证,包括:客户端在目标证书密钥与密钥相同的情况下,确定密钥验证成功;或者,客户端在目标证书密钥与密钥不相同的情况下,确定密钥验证失败。
[0075] 可选地,结合图5所示,客户端利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据,获得目标传输数据,包括:
[0076] S31,客户端利用芯片密钥对应用层数据进行硬件加密处理,获得第一加密数据。
[0077] S32,客户端利用会话密钥对第一加密数据进行软件加密处理,获得目标传输数据。
[0078] 这样,客户端在与服务器建立安全传输协议连接之后,先利用芯片密钥对应用层数据进行硬件密处理以获得第一加密数据,再利用会话密钥对第一加密数据进行软件加密处理以获得目标传输数据,以实现应用层数据的双层加密。如此,既保证数据传输的安全性,又有效地保护了用户的隐私和网络安全。
[0079] 结合图6所示,本公开实施例提供另一种用于数据传输的方法,应用于客户端,包括:
[0080] S41,客户端在与服务器建立安全传输协议连接的情况下,生成会话密钥。
[0081] S42,客户端利用芯片密钥以及会话密钥对应用层数据进行双层加密处理,获得目标传输数据,获得目标传输数据。
[0082] S43,客户端向服务器发送目标传输数据,以使服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。
[0083] S44,客户端接收服务器发送的基于目标传输数据生成的响应数据。
[0084] 该步骤中,响应数据是服务器按照如下方式生成的:利用会话密钥及加密机密钥对接收的目标传输数据进行双层解密处理,生成第二解密数据,并利用加密机密钥及会话密钥对第二解密数据进行双层加密处理,生成响应数据。
[0085] S45,客户端利用会话密钥对响应数据进行软件解密处理,获得第一解密数据。
[0086] S46,客户端利用芯片密钥对第一解密数据进行硬件解密处理,获得目标响应数据。
[0087] 采用本公开实施例提供的用于数据传输的方法,客户端在与服务器建立安全传输协议连接下,利用芯片密钥和会话密钥对应用层数据进行双层加密处理以获得目标传输数据,并发送至服务器。其后,客户端接收服务器发送的基于目标传输数据生成的响应数据后,利用会话密钥和芯片密钥依次对响应数据进行软件解密处理和硬件解密处理以获得目标响应数据。如此,在建立安全传输协议连接下,客户端与服务器之间可自由的进行数据传输,确保数据通信的安全性和可靠性。
[0088] 结合图7所示,本公开实施例提供另一种用于数据传输的方法,应用于服务器,方法包括:
[0089] S51,服务器在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥。其中,会话密钥由客户端与服务器建立安全传输协议连接后生成的。
[0090] S52,服务器接收客户端发送的目标传输数据。其中,目标传输数据是客户端利用芯片密钥和会话密钥对应用层数据进行双层加密处理获得的。
[0091] 该步骤中,服务器按照以下方式获得芯片密钥:服务器在接收客户端的芯片启动指令情况下,控制加密机启动,并,获得加密机密钥,其中,芯片启动指令由客户端在初始化阶段下控制安全芯片启动并获得芯片密钥时生成的。如此,服务器在初始化阶段控制加密机启动以在数据传输阶段对经会话密钥解密后的数据进行解密处理或者在响应阶段对响应数据进行加密处理。
[0092] S53,服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。
[0093] 该步骤中,服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据,包括:服务器利用会话密钥对目标传输数据进行软件解密处理,获得第三解密数据;服务器利用加密机密钥对第三解密数据数据进行硬件解密处理,获得第二解密数据。
[0094] 采用本公开实施例提供的用于数据传输的方法,服务器在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥;其后,服务器接收客户端发送的目标传输数据,并利用会话密钥和加密机密钥对目标传输数据进行双层加密处理以获得第二解密数据。如此,能够增强目标传输数据在服务器端解密过程的安全性,从而有效阻止观察者根据安全传输协议连接时的交互信息进行服务器追踪,确保数据通信的安全性和可靠性。
[0095] 可选地,结合图8所示,服务器在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥,包括:
[0096] S61,服务器响应于客户端发送的握手请求,获得与握手请求匹配的安全传输层协议伪装证书。其中,握手请求包括伪装标识。
[0097] S62,服务器发送安全传输层协议伪装证书至客户端,以与客户端建立安全传输协议连接。
[0098] S63,服务器完成安全传输协议连接后,接收客户端发送的会话密钥。
[0099] 这样,服务器在与客户端建立安全传输协议连接的情况下,响应于客户端发送的握手请求,根据伪装标识获得与握手请求匹配的安全传输层协议伪装证书;其后,发送安全传输层协议伪装证书至客户端。由于服务器接收的握手请求携带有伪装标识且其返回至客户端的协议证书为安全传输层协议伪装证书,因此,本公开实施例通过安全传输层协议伪装证书地替代传统TLS指纹,避免服务器与客户端在TLS握手过程中利用TLS指纹进行信息交互,有效地阻止观察者根据TLS握手时的TLS指纹识别和追踪服务器或者用户,有利于提升数据通信的安全性和可靠性。
[0100] 可选地,服务器响应于客户端发送的握手请求,获得与握手请求匹配的安全传输层协议伪装证书,包括:
[0101] 服务器根据伪装标识,从协议证书库中匹配出目标协议伪装证书。其中,协议证书库由客户端配置生成,包括预设伪装标识及与预设伪装标识匹配的协议伪装证书。
[0102] 服务器确定目标协议伪装证书为与握手请求匹配的安全传输层协议伪装证书。
[0103] 其中,协议证书库中由服务器与客户端建立安全传输协议连接之前预先生成的证书库。协议证书库中包括有多个预设伪装标识及与多个预设伪装标识各自匹配的协议伪装证书。
[0104] 这样,服务器接收握手请求后,根据握手请求携带的伪装标识从协议证书库中获得与伪装标识匹配的目标协议伪装证书,并确定其为与握手请求匹配的安全传输层协议伪装证书。本公开实施例通过引入伪装标识和TLS指纹消除,使得网络监视者或者潜在攻击者等观察者难以识别或者追踪到特定服务器或者用户,大幅提升数据通信的安全性和可靠性,同时,提升对用户隐私的保护能力。
[0105] 结合图9所示,本公开实施例提供另一种用于数据传输的方法,应用于服务器,方法包括:
[0106] S71,服务器在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥。其中,会话密钥由客户端与服务器建立安全传输协议连接后生成的。
[0107] S72,服务器接收客户端发送的目标传输数据。其中,目标传输数据是客户端利用芯片密钥和会话密钥对应用层数据进行双层加密处理获得的。
[0108] S73,服务器根据会话密钥以及加密机密钥对目标传输数据进行双层解密处理,获得第二解密数据。
[0109] S74,服务器根据第二解密数据,生成待传输响应数据。
[0110] 该步骤中,服务器根据第二解密数据,生成待传输响应数据,包括:服务器对第二解密数据进行数据验证,获得待传输响应数据,和/或,服务器根据应用需求对第二解密数据进行数据分析处理,生成待传输响应数据。其中,应用需求由安全传输协议连接下的具体需求确定。可选地,数据验证包括数据完整性验证和/或数据有效性验证。数据分析处理包括但不限于数据库查询操作和数据计算。
[0111] S75,服务器利用加密机密钥对待传输响应数据进行硬件加密处理,获得第二加密数据。
[0112] S76,服务器利用会话密钥对第二加密数据进行软件加密处理,获得响应数据。
[0113] S77,服务器向客户端发送响应数据。
[0114] 采用本公开实施例提供的用于数据传输的方法,服务器在与客户端建立安全传输协议连接的情况下,接收客户端发送的会话密钥;其后,服务器接收客户端发送的目标传输数据,并利用会话密钥和加密机密钥对目标传输数据进行双层加密处理以获得第二解密数据。再次,服务器根据第二解密数据生成待传输响应数据后,先后利用加密机密钥和会话密钥对待传输响应数据依次进行硬件加密处理和软件加密处理以生成响应数据。最后,服务器向客户端发送响应数据。如此,有利于增强待传输响应数据在响应阶段的安全性,避免服务器与客户端在响应阶段中利用TLS指纹进行信息交互,有效地阻止观察者根据TLS握手时的TLS指纹识别和追踪服务器或者用户,确保数据通信的安全性和可靠性。
[0115] 在实际应用中,如图1所示,用于数据传输的系统包括客户端100及路由器200、服务器300。客户端100通过路由器200与服务器300建立通信连接。客户端100配置有eSE芯片。eSE芯片配置安全加密算法且安全加密算法设置芯片密钥。服务器300配置有加密机。加密机配置有预设加密算法以及加密机密钥。前述预设加密算法与eSE芯片配置的安全加密算法相适配。
[0116] 基于图1所示的系统实施环境的环境示意图,如图10所示,用于数据传输的方法具体执行以下步骤:
[0117] 步骤S100,客户端在处于初始化阶段时,控制eSE芯片启动并获得芯片密钥,之后向服务器发送芯片启动指令。
[0118] 步骤S101,在接收到芯片启动指令下,控制加密机启动并获得加密机密钥。
[0119] 在TLS握手阶段,执行步骤S102至S106。
[0120] 步骤S102,客户端发送握手请求,握手请求包括伪装SNI。
[0121] 步骤S103,服务器根据伪装SNI,从协议证书库中匹配出目标协议伪装证书,并确定为与握手请求匹配的安全传输层协议伪装证书。
[0122] 步骤S104,服务器发送安全传输层协议伪装证书,并建立安全传输协议连接。
[0123] 步骤S105,客户端接收安全传输层协议伪装证书,并从本地协议证书库中匹配出与安全传输层协议伪装证书关联的目标证书密钥,再利用目标证书密钥对安全传输层协议伪装证书的密钥进行验证;在密钥验证成功时,与服务器建立安全传输协议连接。
[0124] 步骤S106,客户端发送会话密钥。
[0125] 在数据传输阶段,执行步骤S107至S111。
[0126] 步骤S107,客户端利用芯片密钥对应用层数据进行硬件加密,获得第一加密数据。
[0127] 步骤S108,客户端利用会话密钥对第一加密数据进行软件加密,获得目标传输数据。
[0128] 步骤S109,客户端发送目标传数据。
[0129] 步骤S110,服务器利用会话密钥对目标传输数据进行软件解密处理,获得第三解密数据。
[0130] 步骤S111,服务器利用加密机密钥对第三解密数据进行硬件解密处理,获得第二解密数据。
[0131] 在响应阶段,执行步骤S112至S115。
[0132] 步骤S112,服务器对第二解密数据进行数据分析处理,生成待传输响应数据。
[0133] 步骤S113,服务器利用加密机密钥对待传输响应数据进行硬件加密处理,获得第二加密数据。
[0134] 步骤S114,服务器利用会话密钥对第二加密数据进行软件加密处理,获得响应数据。
[0135] 步骤S115,服务器发送响应数据。
[0136] 在数据接收阶段,执行步骤S116至S117。
[0137] 步骤S116,客户端利用会话密钥对响应数据进行软件解密处理,获得第一解密数据。
[0138] 步骤S117,客户端利用芯片密钥对第一解密数据进行硬件解密处理,获得目标响应数据。
[0139] 结合图11所示,本公开实施例提供一种用于数据传输的装置70,包括第一处理器(processor)700和第一存储器(memory)701。可选地,该装置70还可以包括第一通信接口(Communication Interface)702和第一总线703。其中,第一处理器700、第一通信接口702、第一存储器701可以通过第一总线703完成相互间的通信。第一通信接口702可以用于信息传输。第一处理器700可以调用第一存储器701中的逻辑指令,以执行上述实施例的用于数据传输的方法。
[0140] 结合图12所示,本公开实施例提供一种用于数据传输的装置80,包括第二处理器(processor)800和第二存储器(memory)801。可选地,该装置80还可以包括第二通信接口(Communication Interface)802和第二总线803。其中,第二处理器800、第二通信接口802、第二存储器801可以通过第二总线803完成相互间的通信。第二通信接口802可以用于信息传输。第二处理器800可以调用第二存储器801中的逻辑指令,以执行上述实施例的用于数据传输的方法。
[0141] 此外,上述的存储器701(801)中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。
[0142] 存储器701(801)作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序,如本公开实施例中的方法对应的程序指令/模块。处理器700通过运行存储在存储器701(801)中的程序指令/模块,从而执行功能应用以及数据处理,即实现上述实施例中用于数据传输的方法。
[0143] 存储器701(801)可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据终端设备的使用所创建的数据等。此外,存储器701(801)可以包括高速随机存取存储器,还可以包括非易失性存储器。
[0144] 本公开实施例提供了一种服务器,包括:服务器本体,以及上述的用于数据传输的装置80。用于数据传输的装置80安装于服务器本体。这里所表述的安装关系,并不仅限于在服务器本体的内部放置,还包括了与服务器的其他元器件的安装连接,包括但不限于物理连接、电性连接或者信号传输连接等。本领域技术人员可以理解的是,用于数据传输的装置80可以适配于可行的产品主体,进而实现其他可行的实施例。
[0145] 本公开实施例提供了一种用于数据传输的系统,包括:客户端设备、服务器,以及上述的用于数据传输的装置70(80)。客户端设备,配置有安全芯片。服务器,配置有加密机。
[0146] 本公开实施例提供了一种计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令设置为执行上述用于数据传输的方法。
[0147] 本公开实施例的技术方案可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括一个或多个指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本公开实施例所述方法的全部或部分步骤。而前述的存储介质可以是非暂态存储介质,例如:U盘、移动硬盘、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等多种可以存储程序代码的介质。
[0148] 以上描述和附图充分地示出了本公开的实施例,以使本领域的技术人员能够实践它们。其他实施例可以包括结构的、逻辑的、电气的、过程的以及其他的改变。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施例的部分和特征可以被包括在或替换其他实施例的部分和特征。而且,本申请中使用的用词仅用于描述实施例并且不用于限制权利要求。如在实施例以及权利要求的描述中使用的,除非上下文清楚地表明,否则单数形式的“一个”(a)、“一个”(an)和“所述”(the)旨在同样包括复数形式。类似地,如在本申请中所使用的术语“和/或”是指包含一个或一个以上相关联的列出的任何以及所有可能的组合。另外,当用于本申请中时,术语“包括”(comprise)及其变型“包括”(comprises)和/或包括(comprising)等指陈述的特征、整体、步骤、操作、元素,和/或组件的存在,但不排除一个或一个以上其它特征、整体、步骤、操作、元素、组件和/或这些的分组的存在或添加。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法或者设备中还存在另外的相同要素。本文中,每个实施例重点说明的可以是与其他实施例的不同之处,各个实施例之间相同相似部分可以互相参见。对于实施例公开的方法、产品等而言,如果其与实施例公开的方法部分相对应,那么相关之处可以参见方法部分的描述。
[0149] 本领域技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,可以取决于技术方案的特定应用和设计约束条件。所述技术人员可以对每个特定的应用来使用不同方法以实现所描述的功能,但是这种实现不应认为超出本公开实施例的范围。所述技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0150] 本文所披露的实施例中,所揭露的方法、产品(包括但不限于装置、设备等),可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例。另外,在本公开实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0151] 附图中的流程图和框图显示了根据本公开实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。在附图中的流程图和框图所对应的描述中,不同的方框所对应的操作或步骤也可以以不同于描述中所披露的顺序发生,有时不同的操作或步骤之间不存在特定的顺序。例如,两个连续的操作或步骤实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这可以依所涉及的功能而定。框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。