一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据传输方法、系统、计算机设备和存储介质与流程

2021-11-03 14:37:00 来源:中国专利 TAG:


1.本技术涉及数据加密技术领域,特别是涉及一种数据传输方法、装置、计算机设备和存储介质。


背景技术:

2.在智能电网的运行、管理、维护等作业环节中,电网的前端设备(例如终端)有海量的数据需要与电网的云端服务器进行交互,其中涉及了大量的涉密及隐私数据。因此,如何保障这些数据能安全地进行传输是保障电网安全的关键之一。


技术实现要素:

3.基于此,有必要针对上述技术问题,提供一种能够保障数据传输的隐私性和安全性的数据传输方法、装置、计算机设备和存储介质。
4.第一方面,本技术提供一种数据传输方法,所述方法包括:在本地查找到终端证书和签名确认证书的情况下,通过与云端服务器进行在线协商,确定用于加解密操作的密钥明文,并验证云端服务器的身份真实性;若云端服务器的身份真实性验证通过,则接收云端服务器发送的第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要;其中,第一消息密文是通过云端服务器利用密钥明文对第一消息明文进行加密得到的;所述第一签名验证码是通过云端服务器利用服务器端私钥对第一消息明文的摘要进行加密得到的;所述第一校验码是通过云端服务器对第一消息密文进行校验运算得到的;利用服务器端证书、所接收的第一签名验证码和第一消息明文的摘要,确定第一消息密文的一致性;若第一消息密文的一致性验证通过,则对第一消息密文进行校验运算,得到第二校验码;比较所述第一校验码和第二校验码,基于比较结果确定第一消息密文的完整性;若第一消息密文的完整性验证通过,则利用所述密钥明文对所述第一消息密文进行解密,得到第一消息明文,并基于所述第一消息明文执行相应的作业操作。
5.第二方面,本技术提供一种数据传输方法,所述方法包括:通过与终端进行在线协商,确定用于加解密操作的密钥明文,并验证终端的身份真实性;若终端的身份真实性验证通过,则向终端发送第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要,以供终端执行解密操作后根据解密得到的第一消息明文执行相应的作业操作;其中,第一消息密文是利用密钥明文对第一消息明文进行加密得到的;所述第一签名验证码是利用服务器端私钥对第一消息明文的摘要进行加密得到的;所述第一校验码是通过对第一消息密文进行校验运算得到的;接收终端发送的第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要;所述第二消息密文是通过终端对第二消息明文进行加密得到的;所述第二消息明文是通过终端根据第一消息明文执行相应的作业操作得到的;所述第二签名验证码是通过终端利用终端私钥对所述第二消息明文的摘要进行加密得到的;所述第三校验码是通过终端对第二消息密文进行校验运算得到的;利用终端证书、所接收的第二签名验证码和第二消息明文的摘要,确定第二消息密文的一致性;若第二消息密文的一
致性验证通过,则对第二消息密文进行校验运算,得到第四校验码;比较所述第三校验码和第四校验码,基于比较结果确定第二消息密文的完整性;若第二消息密文的完整性验证通过,则利用所述密钥明文对所述第二消息密文进行解密,得到第二消息明文,并基于所述第二消息明文执行相应的处理操作。
6.一种数据传输装置,所述装置包括:协商模块,用于在本地查找到终端证书和签名确认证书的情况下,通过与云端服务器进行在线协商,确定用于加解密操作的密钥明文,并验证云端服务器的身份真实性;接收模块,用于若云端服务器的身份真实性验证通过,则接收云端服务器发送的第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要;其中,第一消息密文是通过云端服务器利用密钥明文对第一消息明文进行加密得到的;第一签名验证码是通过云端服务器利用服务器端私钥对第一消息明文的摘要进行加密得到的;第一校验码是通过云端服务器对第一消息密文进行校验运算得到的;验证模块,用于利用服务器端证书、所接收的第一签名验证码和第一消息明文的摘要,确定第一消息密文的一致性;验证模块,还用于若第一消息密文的一致性验证通过,则对第一消息密文进行校验运算,得到第二校验码;验证模块,还用于比较第一校验码和第二校验码,基于比较结果确定第一消息密文的完整性;处理模块,用于若第一消息密文的完整性验证通过,则利用密钥明文对第一消息密文进行解密,得到第一消息明文,并基于第一消息明文执行相应的作业操作。
7.一种数据传输装置,所述装置包括:协商模块,用于通过与终端进行在线协商,确定用于加解密操作的密钥明文,并验证终端的身份真实性;发送模块,用于若终端的身份真实性验证通过,则向终端发送第一消息密文、第一签名验证码、以及第一校验码,以供终端执行解密操作后根据解密得到的第一消息明文执行相应的作业操作;其中,第一消息密文是利用密钥明文对第一消息明文进行加密得到的;第一签名验证码是利用服务器端私钥对第一消息明文的摘要进行加密得到的;第一校验码是通过对第一消息密文进行校验运算得到的;接收模块,用于接收终端发送的第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要;第二消息密文是通过终端对第二消息明文进行加密得到的;第二消息明文是通过终端根据第一消息明文执行相应的作业操作得到的;第二签名验证码是通过终端利用终端私钥对第二消息明文的摘要进行加密得到的;第三校验码是通过终端对第二消息密文进行校验运算得到的;验证模块,用于利用终端证书、所接收的第二签名验证码和第二消息明文的摘要,确定第二消息密文的一致性;验证模块,还用于若第二消息密文的一致性验证通过,则对第二消息密文进行校验运算,得到第四校验码;验证模块,还用于比较第三校验码和第四校验码,基于比较结果确定第二消息密文的完整性;处理模块,用于若第二消息密文的完整性验证通过,则利用密钥明文对第二消息密文进行解密,得到第二消息明文,并基于第二消息明文执行相应的处理操作。
8.一种数据传输系统,所述系统包括:终端,设有软加解密模块,用于执行并实现第一方面所述的方法的步骤;云端服务器,设有硬加解密装置,并与终端通信连接,用于执行并实现权利要求第二方面所述的方法的步骤;证书服务器,与云端服务器通信连接,用于根据所述云端服务器的申请签发证书,并将签发的证书发送至所述云端服务器。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的步骤。
10.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如第二方面所述的步骤。
11.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第二方面所述的步骤。
13.上述数据传输方法、装置、系统、计算机设备和存储介质,通过接收云端服务器(或终端)发送的消息密文、签名验证码、校验码、以及摘要,由终端(或云端服务器)根据这些信息进行身份真实性验证、一致性验证、完整性验证,并在验证通过的情况下对密文进行解密得到明文,从而执行相应的作业/处理操作,一方面在数据传输过程中能够实现对数据的加密保护,另一方面也防止了数据在传输过程中被冒认、篡改,有效地保障了敏感数据在传输过程中的安全性。
附图说明
14.图1a、1b、1c为一个实施例中数据传输系统的架构图;
15.图2为一个实施例中终端执行的数据传输方法的流程示意图;
16.图3a为一个实施例中终端申请证书的步骤的流程示意图;
17.图3b为一个实施例中申请证书的步骤的多端交互流程示意图;
18.图4a为一个实施例中终端在线协商的步骤的流程示意图;
19.图4b为一个实施例中在线协商的步骤的多端交互流程示意图;
20.图5为一个实施例中数据加密传输的步骤的多端交互流程示意图;
21.图6a为一个实施例中终端回传消息的流程示意图;
22.图6b为一个实施例中终端执行数据回传的多端交互流程示意图;
23.图7为一个实施例中云端服务器执行的数据传输方法的流程示意图;
24.图8为一个实施例中云端服务器在线协商的步骤的流程示意图;
25.图9为一个实施例中云端服务器申请证书的步骤的流程示意图;
26.图10为一个实施例中数据传输系统的结构框图;
27.图11为一个实施例中数据传输装置的结构框图;
28.图12为另一个实施例中数据传输装置的结构框图;
29.图13为一个实施例中计算机设备的内部结构图;
30.图14为另一个实施例中计算机设备的内部结构图。
具体实施方式
31.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
32.本技术提供的数据传输方法,可以应用于如图1a所示的系统架构中。其中,终端110与云端服务器(又称“终端管理计算服务器”)120网络连接,云端服务器120与证书服务器130网络连接。终端110设置有软加解密模块,用于生成对称密钥、非对称密钥、以及对传
输数据的加解密操作;云端服务器120设置有硬加解密装置,用于生成对称密钥、非对称密钥、以及对传输数据的加解密操作。其中,软加解密模块指的是通过软件的方式实现加解密,无需额外的硬件设备;硬加解密装置指的是通过硬件或硬件与软件结合的方式进行加解密,包括但不限于移动硬盘、芯片、以及单片机等硬件设备。其中,终端110具体可以是移动终端,例如,各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备。通常,终端110安装有软件应用程序(app),能够根据云端服务器下发的消息执行相应的作业操作。云端服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现。证书服务器130(又称“ca证书服务器”)可以用独立的服务器或者是多个服务器组成的服务器集群来实现,用于提供管理和分发可信任的证书服务。
33.示例性地,如图1b所示,部署有加解密软模块(即软加解密模块)的终端与电网云端进行数据传输,电网云端侧包括部署有加解密装置(即硬加解密装置)的多台终端管理计算服务器(即云端服务器),该终端管理计算服务器与ca证书服务器网络连接。为了保障能够稳定地提供证书服务,ca证书服务器可以由多台服务器构成,包括主用服务器(即图1b中的“ca证书服务器主”)和备用服务器(即图1b中的“ca证书服务器备”)。
34.基于如图1a

1b中任一所示的数据传输系统的架构,实现了终端、云端服务器、以及证书服务器之间的证书、密钥、及加密数据的传输。示例性地,如图1c所示,终端通过调用软加解密模块,随机生成非对称密钥对(app_pk,app_sk),该非对称密钥对包括终端私钥app_sk和终端公钥app_pk。终端将公钥app_pk和终端的设备信息(包括终端的设备名称和序列号等,以下简称为“终端信息”)一并发送至终端管理计算服务器(即云端服务器)。一方面,终端管理计算服务器通过调用硬加解密装置生成非对称密钥对(ser_pk,ser_sk),该非对称密钥对包括服务器端私钥ser_sk和服务器端公钥ser_pk。另一方面,终端管理计算服务器通过调用硬加解密装置生成对称密钥key。终端管理计算服务器将服务器端公钥ser_pk、终端公钥app_sk、终端信息、以及服务器的设备信息(包括服务器的设备名称和序列号等,以下简称为“服务器端信息”)发送至ca证书服务器,从而向ca证书服务器请求相关证书文件。ca证书服务器收到请求后,生成用于加解密操作的终端证书app_cert和服务器端证书ser_cert(即图1c中的加密证书)、以及用于签名验证的签名确认证书ca_pk(即图1c中的ca证书,又称“通用证书”),并将生成的证书下发至终端管理计算服务器。终端管理计算服务器在接收到证书后,将证书存储至证书池中,以作备份及以供后续的加解密操作使用。其中,证书池指的是存储证书的存储空间。另一方面,终端管理计算服务器将终端证书app_cert(即图1c中的app加密证书)和签名确认证书ca_pk下发至终端,以供终端进行基于证书的身份验证。后续终端与终端管理计算服务器进行在线协商时,终端管理计算服务器将生成的对称密钥key进行加密后,与服务器端证书ser_cert一同下发至终端,以供双方完成对称密钥的在线协商。在此基础上,终端与终端管理计算服务器可以进行数据加密传输、以及加解密操作。
35.由此,本技术提供的数据传输系统架构,综合运用了非对称加密算法、对称加密算法、摘要算法、证书与签名验证、软硬件加密模块等算法技术及装置,加密速度快、算法计算效率高;同时,密钥能够得到安全管理,避免篡改;且证书服务提供了通信双方的数字签名认证及防抵赖功能。整个系统能够满足电网安全运营作业的实际需求,传输数据加密效率高、安全性强。
36.基于如图1a

图1c中任一所示的系统架构,本技术提供了一种数据传输方法。在一个实施例中,如图2所示,以该方法应用于图1中的终端为例进行说明,包括以下步骤:
37.步骤s202,在本地查找到终端证书和签名确认证书的情况下,通过与云端服务器进行在线协商,确定用于加解密操作的密钥明文,并验证云端服务器的身份真实性。
38.具体地,终端准备传输文件之前,首先查找本地存储空间是否存储有终端证书和签名确认证书。在本地查找到终端证书和签名确认证书的情况下,终端通过与云端服务器进行在线协商,确定在后续的数据传输过程中用于对消息进行加解密的密钥明文。同时,为了保障数据的真实性、不可篡改性、以及不可抵赖性,终端还需要对云端服务器的身份真实性进行验证,从而确保后续数据传输的安全性。
39.在一些情况下,终端的本地存储空间内可能并未存储有终端证书和签名确认证书(例如终端首次申请证书,所存储的证书有遗漏、丢失、或损坏等情况),因此,在一些实施例中,如图3a所示,终端还执行如下步骤:
40.步骤s302,在本地未查找到终端证书和签名确认证书的情况下,通过调用软加解密模块,生成终端密钥对;终端密钥对包括终端私钥和终端公钥。
41.步骤s304,将终端公钥和终端信息发送至云端服务器,以供云端服务器根据终端公钥和终端信息向证书服务器申请并得到终端证书。
42.步骤s306,接收云端服务器发送的终端证书和签名确认证书并进行存储;签名确认证书用于验证云端服务器的身份真实性。
43.具体地,若终端在本地未查找到终端证书和签名确认证书,则调用本地安装的软加解密模块,利用非对称加密算法生成非对称密钥对,该非对称密钥对包括终端私钥和终端公钥。其中,非对称加密算法包括但不限于rsa加密算法、elgamal加密算法、背包加密算法、rabin加密算法、d

h加密算法、以及ecc加密算法(椭圆曲线加密算法)等中的一种或多种。然后,终端将生成的终端公钥和终端信息发送给云端服务器;云端服务器接收到终端发送的终端公钥和终端信息后,基于终端公钥和终端信息向证书服务器申请证书。云端服务器向证书服务器申请证书的具体步骤请容后再述。云端服务器接收到证书服务器签发的证书后,将其中的终端证书和签名确认证书发送至终端;终端接收终端证书和签名确认证书并进行存储,以便于后续的在线协商、数据传输及加解密操作。
44.示例性地,终端在线下载证书的流程如图3b所示,终端准备传输文件之前,判断本地是否有相关证书。若本地查找到相关证书,则结束在线下载证书的流程。若本地未查找到相关证书,则调用软加解密模块生成非对称密钥对(app_pk,app_sk),并将其中的终端公钥app_pk和app信息(即终端信息)发送给云端管理计算服务器。云端管理计算服务器通过调用硬加解密装置生成非对称密钥对(ser_pk,ser_sk),并将所接收到的终端公钥app_pk和app信息,与所生成的服务器端公钥ser_pk和服务器端信息一同发送给ca证书服务器。ca证书服务器收到申请并签发证书,并将签发的服务器端证书ser_cert、终端证书app_cert、以及签名确认证书ca_pk下发至云端管理计算服务器。云端管理计算服务器将收到的证书存储至证书池中,并将其中的终端证书app_cert和签名确认证书ca_pk下发至终端。终端接收到终端证书app_cert和签名确认证书ca_pk后进行存储,并结束在线下载证书的流程。
45.上述实施例中,终端通过经由云端服务器向证书服务器申请证书,能够在后续据此验证云端服务器的身份真实性,防止消息被冒认、篡改。
46.在本地查找到终端证书和签名确认证书的情况下,如图4a所示,终端执行在线协商的步骤,包括:
47.步骤s402,接收云端服务器发送的密钥密文和服务器端证书;密钥密文是通过云端服务器调用硬加解密装置生成的;服务器端证书是通过云端服务器根据服务器端公钥向证书服务器申请并得到的;服务器端公钥是通过云端服务器调用硬加解密装置生成的。
48.步骤s404,利用终端私钥对密钥密文进行解密,得到密钥明文;终端私钥是通过调用软加解密模块生成的。
49.步骤s406,利用本地存储的签名确认证书对所接收的服务器端证书进行验证,确定云端服务器的身份真实性。
50.具体地,云端服务器通过调用硬加解密装置,利用对称加密算法随机生成对称密钥,该对称密钥是明文的形式,用于对数据进行加密和解密。其中,对称加密算法包括但不限于des加密算法、rc加密算法、以及blowfish加密算法等中的一种或多种。为了描述方便,将明文形式的对称密钥称为密钥明文;相应地,将密文形式的对称密钥称为密钥密文。云端服务器在证书池中提取签名确认证书和终端证书,并利用签名确认证书对终端证书进行验证,从而确保终端证书真实为终端的证书,这一过程即为验证终端的身份真实性。在终端的身份真实性验证通过后,云端服务器利用终端证书对密钥明文进行非对称加密,从而得到密钥密文,并将加密得到的密钥密文和服务器端证书一并发送至终端。终端接收云端服务器发送的密钥密文和服务器端证书并进行存储,以便于执行后续的在线协商步骤。终端利用之前生成并存储的终端私钥,对密钥密文进行解密,从而得到密钥明文;同时,与云端服务器类似,终端利用签名确认证书对所接收到的服务器端证书进行验证,从而确保服务器端证书真实为云端服务器的证书,这一过程即为验证云端服务器的身份真实性。
51.示例性地,终端执行在线协商的流程如图4b所示,云端管理计算服务器通过调用硬加解密装置随机生成对称密钥key,并在证书池中提取签名确认证书ca_pk和终端证书app_cert,并利用签名确认证书ca_pk对终端证书app_cert进行验证,从而确保终端证书app_cert真实为终端的证书。在终端的身份真实性验证通过后,云端管理计算服务器利用终端证书app_cert对密钥明文key进行非对称加密,从而得到密钥密文key’,并将加密得到的密钥密文key’和服务器端证书ser_cert一并发送至终端。其中,云端管理计算服务器例如利用rsa加密算法对密钥明文key加密的计算公式可以描述为:ersa(app_cert,key)=key’(其中,e为encrypt的简写,表示加密操作)。终端接收云端管理计算服务器发送的密钥密文key’和服务器端证书ser_cert并进行存储,并利用终端私钥app_sk对密钥密文key’进行解密,从而得到密钥明文key。其中,终端例如利用rsa加密算法对密钥密文key’解密的计算公式可以描述为:drsa(app_sk,key’)=key(其中,d为decrypt的简写,表示解密操作)。同时,终端利用签名确认证书ca_pk对所接收到的服务器端证书ser_cert进行验证,从而确保服务器端证书ser_cert真实为云端服务器的证书。
52.上述实施例中,终端通过在线协商,一方面确认了云端服务器的身份真实性,另一方面共同确认了后续使用的密钥,在后续数据传输中实现了对数据的加密保护。
53.步骤s204,若云端服务器的身份真实性验证通过,则接收云端服务器发送的第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要;其中,第一消息密文是通过云端服务器利用密钥明文对第一消息明文进行加密得到的;第一签名验证码是通过云
端服务器利用服务器端私钥对第一消息明文的摘要进行加密得到的;第一校验码是通过云端服务器对第一消息密文进行校验运算得到的。
54.具体地,若终端验证云端服务器的身份真实性通过,则可以继续执行数据传输及加解密操作。为了以示区分,将云端服务器向终端下发数据过程中涉及到的数据以术语“第一”表示,例如第一消息密文和第一签名验证码;将终端向云端服务器回传数据过程中涉及到的数据以术语“第二”表示,例如第二消息密文和第二签名验证码。本领域技术人员可以理解的是,上述术语“第一”和“第二”在本技术中用来描述不同的数据,但是这些数据不应当被这些术语限制。这些术语仅用来将一个数据与另一个数据进行区分,而不脱离各种所描述的实施例的范围,但是除非上下文以其他方式明确指出,否则它们不是同一个数据。
55.当云端服务器向终端下发数据时,云端服务器准备第一消息明文,并利用之前生成的密钥密文对第一消息明文进行加密,生成第一消息密文。示例性地,云端服务器例如利用aes加密算法对第一消息明文m1进行加密生成第一消息密文c1的计算公式可以描述为:eaes(key,m1)=c1。同时,云端服务器利用服务器端私钥对第一消息明文的摘要进行加密运算,得到第一签名验证码。示例性地,云端服务器例如利用rsa加密算法对第一消息明文m1的摘要m1_digest1进行运算得到第一签名验证码s1的计算公式可以描述为:ersa(ser_sk,m1_digest1)=s1。其中,云端服务器可以利用例如哈希算法等提取消息摘要。并且,云端服务器对第一消息密文进行校验运算,生成第一校验码。示例性地,云端服务器可以利用md5算法进行校验运算生成第一校验码md51。云端服务器再将第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要发送至终端;终端接收云端服务器发送的第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要,以供后续的加解密操作。
56.步骤s206,利用服务器端证书、所接收的第一签名验证码和第一消息明文的摘要,确定第一消息密文的一致性。
57.具体地,终端利用所接收到的服务器端证书,对所接收到的第一签名验证码和第一消息明文的摘要进行验证,从而确认第一消息密文确实由云端服务器发送,这一过程即为验证消息的一致性。其中,终端利用非对称加密算法和服务器端证书对第一签名验证码进行解密,得到计算的消息摘要;终端将计算的消息摘要与所接收到的第一消息明文的摘要进行比较,若二者一致,则确定第一消息密文的一致性验证通过,即确定第一消息密文的发送者真实为云端服务器,数据没有被冒认。
58.示例性地,终端利用所接收到的服务器端证书ser_cert,对所接收到的第一签名验证码s1进行解密,得到计算的消息摘要m1_digest2,计算公式可以描述为:drsa(ser_cert,s1)=m1_digest2。终端再将计算得到的消息摘要m1_digest2与所接收到的消息摘要m1_digest1进行比较,若m1_digest1=m1_digest2,则确认第一消息密文c1的发送者真实为云端服务器。
59.步骤s208,若第一消息密文的一致性验证通过,则对第一消息密文进行校验运算,得到第二校验码。
60.具体地,终端在第一消息密文的一致性验证通过之后,对第一消息密文进行校验运算,得到第二校验码。示例性地,终端例如利用md5算法对第一消息密文c1进行校验运算,得到第二校验码md52。
61.步骤s210,比较第一校验码和第二校验码,基于比较结果确定第一消息密文的完
整性。
62.具体地,终端将所接收得到的第一校验码与计算得到的第二校验码进行比较,并基于比较结果确定第一消息密文的完整性。若终端确认二者一致,则确定第一消息密文没有被篡改或破坏。示例性地,若终端确定md51=md52,则确定第一消息密文c1的完整性验证通过。
63.步骤s212,若第一消息密文的完整性验证通过,则利用密钥明文对第一消息密文进行解密,得到第一消息明文,并基于第一消息明文执行相应的作业操作。
64.终端通过上述步骤,既确认了所接收到的数据为云端服务器所下发,数据没有被冒认,也确认了所接收到的数据的完整性,数据没有被篡改或破坏,同时数据在传输过程中也得到了加密保护。由此,终端可以继续执行数据解密操作。
65.具体地,若第一消息密文的完整性验证通过,则终端利用在在线协商过程中确定的密钥明文对第一消息密文进行解密,得到第一消息明文。由此,终端可以基于第一消息明文执行相应的作业操作。其中,作业操作指的是终端执行的任务操作。以控制无人机对电网设备进行检修的场景为例,终端上安装有控制无人机的app,云端服务器可以通过下发数据(包括但不限于具体地操作指令、或者文件/文档/具体数据等),由终端执行相应的飞行、拍照、录像、以及充电等作业操作。
66.示例性地,终端利用密钥明文key对第一消息密文c1进行解密得到第一消息明文m1的计算公式可以描述为:daes(key,c1)=m1。在得到第一消息明文后,终端可以基于第一消息明文执行相应的作业操作。
67.示例性地,如图5所示,云端管理计算服务器准备发送第一消息明文m1(即图中的消息m1),则利用在在线协商过程中确定的密钥明文key(即图中的对称密钥key)对第一消息明文m1进行加密,生成第一消息密文c1。同时,云端管理计算服务器利用服务器端私钥ser_sk对第一消息明文m1的摘要m1_digest1进行运算,得到第一签名验证码s1。此外,云端管理计算服务器还对第一消息密文c1进行md5校验运算,生成第一校验码md51。云端管理计算服务器再将第一消息密文c1、第一签名验证码s1、第一校验码md51、以及第一消息明文m1的摘要m1_digest1发送给终端。终端接收到云端管理计算服务器发送的第一消息密文c1、第一签名验证码s1、第一校验码md51、以及第一消息明文m1的摘要m1_digest1后,利用服务器端证书ser_cert对第一消息密文c1和第一签名验证码s1进行验证,获得计算得到的消息摘要m1_digest2。其中,终端例如利用rsa加密算法对第一消息密文c1进行签名验证的计算公式可以描述为:drsa(ser_cert,s1)=m1_digest2。若终端确认所接收到的第一消息明文的摘要m1_digest1与计算得到的消息摘要m1_digest2一致(即m1_digest1=m1_digest2),则确定消息的一致性,即数据的发送者真实为云端管理计算服务器。然后,终端对第一消息密文c1进行md5校验运算,生成第二校验码md52,并将其与所接收到的第一校验码md51进行比较,若md51=md52,则确定所接收到的数据的完整性,数据没有被篡改或破坏。由此,终端利用在在线协商过程中确定的密钥明文key对第一消息密文c1进行解密,得到第一消息明文m1,并根据第一消息明文m1执行相应的处理操作。
68.上述数据传输方法,通过接收云端服务器发送的消息密文、签名验证码、校验码、以及摘要,由终端根据这些信息进行身份验证、一致性验证、完整性验证,并在验证通过的情况下对密文进行解密得到明文,从而执行相应的操作,一方面在数据传输过程中能够实
现对数据的加密保护,另一方面也防止了数据在传输过程中被冒认、篡改,有效地保障了敏感数据在传输过程中的安全性。
69.终端在完成作业操作后,可以向云端服务器回传数据。因此,在一些实施例中,如图6a所示,终端执行数据回传的步骤包括:
70.步骤s602,根据第一消息明文执行相应的作业操作,得到第二消息明文。
71.步骤s604,利用密钥明文对第二消息明文进行加密,得到第二消息密文。
72.步骤s606,利用终端私钥对第二消息明文的摘要进行加密,得到第二签名验证码。
73.步骤s608,对第二消息密文进行校验运算,得到第三校验码。
74.步骤s610,将第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要发送至云端服务器,以供云端服务器根据第二签名验证码和第二消息明文的摘要确定第二消息密文的一致性、根据第三校验码确定第二消息密文的完整性、以及在验证第二消息密文的一致性和完整性均通过的情况下,利用密钥明文对第二消息密文进行解密,得到第二消息明文,并根据第二消息明文执行相应的处理操作。
75.具体地,终端根据解密得到的第一消息明文执行相应的作业操作,得到第二消息明文,并准备回发数据。终端利用在在线协商过程中确定的对称密钥对第二消息明文进行加密,得到第二消息密文。同时,终端利用终端私钥对第二消息明文的摘要进行加密运算,得到第二签名验证码;并且,终端对第二消息密文进行校验运算,得到第三校验码。终端再将第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要发送至云端服务器,以供云端服务器执行与前述实施例类似的一致性验证、完整性验证、以及数据解密的操作。
76.示例性地,终端执行数据回传的流程如图6b所示,终端准备回传消息m2,利用密钥明文key对第二消息明文m2(即图中的消息m2)进行加密,得到第二消息密文c2;并利用终端私钥app_sk对第二消息明文m2的摘要m2_digest1进行运算,生成签名验证码s2。同时,终端对第二消息密文c2进行md5校验运算,得到第三校验码md53。终端将第二消息密文c2、第二签名验证码s2、第三校验码md53、以及第二消息明文的摘要m2_digest1发送至云端管理计算服务器。云端管理计算服务器在接收到第二消息密文c2、第二签名验证码s2、第三校验码md53、以及第二消息明文的摘要m2_digest1后,利用证书池中存储的终端证书app_cert对第二消息密文c2和第二签名验证码s2进行验证,获得计算得到的消息摘要m2_digest2。其中,云端管理计算服务器例如利用rsa加密算法对第二消息密文c2进行签名验证的计算公式可以描述为:drsa(app_cert,s2)=m2_digest2。若云端管理计算服务器确认所接收到的第二消息明文的摘要m2_digest1与计算得到的消息摘要m2_digest2一致(即m2_digest1=m2_digest2),则确定消息的一致性,即数据的发送者真实为终端。然后,云端管理计算服务器对第二消息密文c2进行md5校验运算,生成第四校验码md54,并将其与所接收到的第三校验码md53进行比较,若md54=md53,则确定所接收到的数据的完整性,数据没有被篡改或破坏。由此,云端管理计算服务器利用在在线协商过程中确定的密钥明文key对第二消息密文c2进行解密,得到第二消息明文m2,并根据第二消息明文m2执行相应的处理操作。其中,处理操作与作业操作类似,指的是云端管理计算服务器执行的数据处理操作。同样以控制无人机对电网设备进行检修的场景为例,终端在执行例如拍照操作后,将照片发送至云端管理计算服务器,云端管理计算服务器根据该照片执行图像切割、图像识别、以及存储等处理
操作。
77.上述实施例中,通过接收终端在回传数据过程中发送的消息密文、签名验证码、校验码、以及摘要,由云端服务器根据这些信息进行身份验证、一致性验证、完整性验证,并在验证通过的情况下对密文进行解密得到明文,从而执行相应的操作,一方面在数据传输过程中能够实现对数据的加密保护,另一方面也防止了数据在传输过程中被冒认、篡改,有效地保障了敏感数据在传输过程中的安全性。
78.基于如图1a

图1c中任一所示的系统架构,本技术还提供一种数据传输方法。在一个实施例中,如图7所示,以该方法应用于图1中的云端服务器为例进行说明,包括以下步骤:
79.步骤s702,通过与终端进行在线协商,确定用于加解密操作的密钥明文,并验证终端的身份真实性。
80.具体地,云端服务器准备传输文件之前,需要与终端进行在线协商,确定用于在后续的数据传输过程中用于对消息进行加解密的密钥明文。同时,为了保障数据的真实性、不可篡改性、以及不可抵赖性,云端服务器还需要对终端的身份真实性进行验证,从而确保后续数据传输的安全性。
81.在一些实施例中,如图8所示,云端服务器执行在线协商过程的步骤包括:
82.步骤s802,调用硬加解密装置生成密钥明文;
83.步骤s804,利用证书池存储的签名确认证书对终端证书进行验证,确定终端的身份真实性;
84.步骤s806,若终端的身份真实性验证通过,则利用终端证书对密钥明文进行加密,得到密钥密文;
85.步骤s808,将密钥密文和服务器端证书发送至终端,以供终端利用终端本地存储的签名确认证书确定云端服务器的身份真实性,以及利用终端私钥对密钥密文进行解密,得到密钥明文。
86.具体地,云端服务器通过调用硬加解密装置,利用对称加密算法随机生成对称密钥,该对称密钥是明文的形式,用于对数据进行加密和解密,称之为密钥明文。然后,云端服务器在证书池中提取签名确认证书和终端证书,并利用签名确认证书对终端证书进行验证,从而确保终端证书真实为终端的证书,这一过程即为验证终端的身份真实性。在终端的身份真实性验证通过后,云端服务器利用终端证书对密钥明文进行非对称加密,从而得到密钥密文,并将加密得到的密钥密文和服务器端证书一并发送至终端。终端接收云端服务器发送的密钥密文和服务器端证书并进行存储,以便于执行后续的在线协商步骤。终端利用之前生成并存储的终端私钥,对密钥密文进行解密,从而得到密钥明文;同时,与云端服务器类似,终端利用签名确认证书对所接收到的服务器端证书进行验证,从而确保服务器端证书真实为云端服务器的证书,这一过程即为验证云端服务器的身份真实性。
87.需要说明的是,云端服务器与终端进行在线协商的具体步骤和流程可以参照前述步骤s402~步骤s406对应的实施例中的描述,或者参照如图4a

图4b对应的实施例中的描述,此处不再赘述。
88.上述实施例中,云端服务器通过在线协商,一方面确认了云端服务器的身份真实性,另一方面共同确认了后续使用的密钥,在后续数据传输中实现了对数据的加密保护。
89.其中,证书池中存储的证书是在终端通过云端服务器向证书服务器申请证书的过程中,由证书服务器下发并由云端服务器存储的。相应地,在步骤s702之前,如图9所示,云端服务器还执行申请证书的步骤,包括:
90.步骤s902,接收终端发送的终端公钥和终端信息,并根据终端公钥、终端信息、服务器端公钥以及服务器端信息,向证书服务器申请证书,以供证书服务器签发终端证书、服务器端证书、以及签名确认证书;其中,终端公钥是通过终端用软加解密模块生成的;
91.步骤s904,接收证书服务器发送的终端证书、服务器端证书、以及签名确认证书,并将终端证书和签名确认证书存储至证书池中;
92.步骤s906,将终端证书、服务器端证书、以及签名确认证书发送至终端。
93.具体地,当终端准备传输文件之前,需要在其本地查找是否存储相关证书。若未查找到相关证书,则终端执行在线下载证书的步骤。即,终端调用本地安装的软加解密模块,利用非对称加密算法生成非对称密钥对,该非对称密钥对包括终端私钥和终端公钥。然后,终端将生成的终端公钥和终端信息发送给云端服务器。
94.云端服务器接收到终端发送的终端公钥和终端信息后,将所接收到的终端公钥和终端信息,与所生成的服务器端公钥和服务器端信息,一并发送至证书服务器,从而向证书服务器申请证书。证书服务器接收到云端服务器的申请后,根据所接收到的终端公钥、终端信息、服务器端公钥以及服务器端信息,签发相应的终端证书、服务器端证书、以及通用的签名确认证书。并且,证书服务器将该证书发送至云端服务器。云端服务器接收证书服务器发送的终端证书、服务器端证书、以及签名确认证书,并将终端证书和签名确认证书存储至证书池中,以供后续的在线协商、数据传输及加解密操作。同时,云端服务器将其中的终端证书和签名确认证书发送至终端,以供终端将该证书进行存储,并留以后续使用。
95.需要说明的是,云端服务器与终端、证书服务器三方协同申请证书的具体步骤和流程可以参照如图3b对应的实施例中的描述,此处不再赘述。
96.上述实施例中,通过向证书服务器申请证书并进行存储,能够在后续据此验证终端的身份真实性,防止消息被冒认、篡改。
97.步骤s704,若终端的身份真实性验证通过,则向终端发送第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要,以供终端执行解密操作后根据解密得到的第一消息明文执行相应的作业操作;其中,第一消息密文是利用密钥明文对第一消息明文进行加密得到的;第一签名验证码是利用服务器端私钥对第一消息明文的摘要进行加密得到的;第一校验码是通过对第一消息密文进行校验运算得到的。
98.具体地,云端服务器若对终端的身份真实性进行验证,确认终端的身份真实后,则可以继续执行数据传输及加解密操作。即,云端服务器准备第一消息明文,并利用之前生成的密钥密文对第一消息明文进行加密,生成第一消息密文。示例性地,云端服务器例如利用aes加密算法对第一消息明文m1进行加密生成第一消息密文c1的计算公式可以描述为:eaes(key,m1)=c1。同时,云端服务器利用服务器端私钥对第一消息明文的摘要进行加密运算,得到第一签名验证码。示例性地,云端服务器例如利用rsa加密算法对第一消息明文m1的摘要m1_digest1进行运算得到第一签名验证码s1的计算公式可以描述为:ersa(ser_sk,m1_digest1)=s1。其中,云端服务器可以利用例如哈希算法等提取消息摘要。并且,云端服务器对第一消息密文进行校验运算,生成第一校验码。示例性地,云端服务器可以利用
md5算法进行校验运算生成第一校验码md51。云端服务器再将第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要发送至终端。
99.终端接收云端服务器发送的第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要后,执行后续的加解密操作。即,终端利用所接收到的服务器端证书,对所接收到的第一签名验证码进行验证,从而确认第一消息密文确实由云端服务器发送,这一过程即为验证消息的一致性。其中,终端利用非对称加密算法和服务器端证书对第一签名验证码进行解密,得到计算的消息摘要;终端将计算的消息摘要与所接收到的第一消息明文的摘要进行比较,若二者一致,则确定第一消息密文的一致性验证通过,即确定第一消息密文的发送者真实为云端服务器,数据没有被冒认。在第一消息密文的一致性验证通过之后,终端对第一消息密文进行校验运算,得到第二校验码。终端将所接收得到的第一校验码与计算得到的第二校验码进行比较,并基于比较结果确定第一消息密文的完整性。若终端确认二者一致,则确定第一消息密文没有被篡改或破坏。由此,终端利用在在线协商过程中确定的密钥明文对第一消息密文进行解密,得到第一消息明文,并根据第一消息明文执行相应的作业操作。
100.步骤s706,接收终端发送的第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要;第二消息密文是通过终端对第二消息明文进行加密得到的;第二消息明文是通过终端根据第一消息明文执行相应的作业操作得到的;第二签名验证码是通过终端利用终端私钥对第二消息明文的摘要进行加密得到的;第三校验码是通过终端对第二消息密文进行校验运算得到的。
101.具体地,终端在完成作业操作后,向云端服务器回传数据。即,利用在在线协商过程中确定的对称密钥对第二消息明文进行加密,得到第二消息密文。同时,终端利用终端私钥对第二消息明文的摘要进行加密运算,得到第二签名验证码;并且,终端对第二消息密文进行校验运算,得到第三校验码。终端再将第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要发送至云端服务器,以供云端服务器执行与前述实施例类似的一致性验证、完整性验证、以及数据解密的操作。由此,云端服务器终端发送的第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要。
102.步骤s708,利用终端证书、所接收的第二签名验证码和第二消息明文的摘要,确定第二消息密文的一致性。
103.具体地,云端服务器利用终端证书,对所接收到的第二签名验证码和第二消息明文的摘要进行验证,从而确认第二消息密文确实由终端发送,这一过程即为验证消息的一致性。其中,云端服务器利用非对称加密算法和终端证书对第二签名验证码进行解密,得到计算的消息摘要;云端服务器将计算的消息摘要与所接收到的第二消息明文的摘要进行比较,若二者一致,则确定第二消息密文的一致性验证通过,即确定第二消息密文的发送者真实为终端,数据没有被冒认。
104.示例性地,云端服务器利用所接收到的终端证书app_cert,对所接收到的第二签名验证码s2进行解密,得到计算的消息摘要m2_digest2,计算公式可以描述为:drsa(app_cert,s2)=m2_digest2。云端服务器再将计算得到的消息摘要m2_digest2与所接收到的消息摘要m2_digest1进行比较,若m2_digest1=m2_digest2,则确认第二消息密文c2的发送者真实为终端。
105.步骤s710,若第二消息密文的一致性验证通过,则对第二消息密文进行校验运算,得到第四校验码。
106.具体地,云端服务器在第二消息密文的一致性验证通过之后,对第二消息密文进行校验运算,得到第四校验码。示例性地,云端服务器例如利用md5算法对第二消息密文c2进行校验运算,得到第四校验码md54。
107.步骤s712,比较第三校验码和第四校验码,基于比较结果确定第二消息密文的完整性。
108.具体地,云端服务器将所接收得到的第三校验码与计算得到的第四校验码进行比较,并基于比较结果确定第二消息密文的完整性。若云端服务器确认二者一致,则确定第二消息密文没有被篡改或破坏。示例性地,若云端服务器确定md53=md54,则确定第二消息密文c2的完整性验证通过。
109.步骤s714,若第二消息密文的完整性验证通过,则利用密钥明文对第二消息密文进行解密,得到第二消息明文,并基于第二消息明文执行相应的处理操作。
110.云端服务器通过上述步骤,既确认了所接收到的数据为终端所回传,数据没有被冒认,也确认了所接收到的数据的完整性,数据没有被篡改或破坏,同时数据在传输过程中也得到了加密保护。由此,云端服务器可以继续执行数据解密操作。具体地,若第二消息密文的完整性验证通过,则云端服务器利用在在线协商过程中确定的密钥明文对第二消息密文进行解密,得到第二消息明文。由此,云端服务器可以基于第二消息明文执行相应的处理操作。
111.需要说明的是,云端服务器执行上述步骤s704~步骤s714的具体流程可以参照前述步骤s204~步骤s212和步骤s602~步骤s610对应的实施例中的描述,或者参照如图5和图6b对应的实施例中的描述,此处不再赘述。
112.上述数据传输方法,通过接收终端发送的消息密文、签名验证码、校验码、以及摘要,由云端服务器根据这些信息进行身份验证、一致性验证、完整性验证,并在验证通过的情况下对密文进行解密得到明文,从而执行相应的操作,一方面在数据传输过程中能够实现对数据的加密保护,另一方面也防止了数据在传输过程中被冒认、篡改,有效地保障了敏感数据在传输过程中的安全性。
113.应该理解的是,虽然图2

图9的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2

图9中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
114.在一个实施例中,如图10所示,本技术提供一种数据传输系统1000,包括:
115.终端1010,设有软加解密模块,用于执行并实现如图2、图3a、图4a、以及图6对应的实施例描述的数据传输方法的步骤。
116.云端服务器1020,设有硬加解密装置,并与终端1010通信连接,用于执行并实现如图7、图8、以及图9对应的实施例描述的数据传输方法的步骤。
117.证书服务器1030,与云端服务器1020通信连接,用于根据云端服务器1020的申请生成证书,并将生成的证书发送至云端服务器1020。
118.关于数据传输系统的具体架构可以参照前述实施例中的描述,例如图1a

图1c中描述的系统架构;该数据传输系统中终端、云端服务器、以及证书服务器各自执行或交互实现的步骤流程,具体可参照前述实施例,此处不再赘述。
119.上述数据传输系统,能够实现在线下载证书、在线协商、以及数据加密传输等功能,能够防止数据被冒认、篡改,同时对数据进行加密保护,有效地保障了电网敏感数据在传输中的安全性。
120.在一个实施例中,如图11所示,提供了一种数据传输装置1100,包括:协商模块1110、接收模块1120、验证模块1130、以及处理模块1140,其中:
121.协商模块1110,用于在本地查找到终端证书和签名确认证书的情况下,通过与云端服务器进行在线协商,确定用于加解密操作的密钥明文,并验证云端服务器的身份真实性。
122.接收模块1120,用于若云端服务器的身份真实性验证通过,则接收云端服务器发送的第一消息密文、第一签名验证码、第一校验码、以及第一消息明文的摘要;其中,第一消息密文是通过云端服务器利用密钥明文对第一消息明文进行加密得到的;第一签名验证码是通过云端服务器利用服务器端私钥对第一消息明文的摘要进行加密得到的;第一校验码是通过云端服务器对第一消息密文进行校验运算得到的。
123.验证模块1130,用于利用服务器端证书、所接收的第一签名验证码和第一消息明文的摘要,确定第一消息密文的一致性。
124.验证模块1130,还用于若第一消息密文的一致性验证通过,则对第一消息密文进行校验运算,得到第二校验码。
125.验证模块1130,还用于比较第一校验码和第二校验码,基于比较结果确定第一消息密文的完整性。
126.处理模块1140,用于若第一消息密文的完整性验证通过,则利用密钥明文对第一消息密文进行解密,得到第一消息明文,并基于第一消息明文执行相应的作业操作。
127.在一个实施例中,数据处理装置1100还包括申请模块,该申请模块用于在本地未查找到终端证书和签名确认证书的情况下,通过调用软加解密模块,生成终端密钥对;终端密钥对包括终端私钥和终端公钥;将终端公钥和终端信息发送至云端服务器,以供云端服务器根据终端公钥和终端信息向证书服务器申请并得到终端证书;接收云端服务器发送的终端证书和签名确认证书并进行存储;签名确认证书用于验证云端服务器的身份真实性。
128.在一个实施例中,协商模块还用于接收云端服务器发送的密钥密文和服务器端证书;密钥密文是通过云端服务器调用硬加解密装置生成的;服务器端证书是通过云端服务器根据服务器端公钥向证书服务器申请并得到的;服务器端公钥是通过云端服务器调用硬加解密装置生成的;利用终端私钥对密钥密文进行解密,得到密钥明文;终端私钥是通过调用软加解密模块生成的;利用本地存储的签名确认证书对所接收的服务器端证书进行验证,确定云端服务器的身份真实性。
129.在一个实施例中,数据处理装置1100还包括回传模块,该回传模块用于根据第一消息明文执行相应的作业操作,得到第二消息明文;利用密钥明文对第二消息明文进行加
密,得到第二消息密文;利用终端私钥对第二消息明文的摘要进行加密,得到第二签名验证码;对第二消息密文进行校验运算,得到第三校验码;将第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要发送至云端服务器,以供云端服务器根据第二签名验证码和第二消息明文的摘要确定第二消息密文的一致性、根据第三校验码确定第二消息密文的完整性、以及在验证第二消息密文的一致性和完整性均通过的情况下,利用密钥明文对第二消息密文进行解密,得到第二消息明文,并根据第二消息明文执行相应的处理操作。
130.关于如图11描述的数据传输装置的具体限定可以参见上文中如图2、图3a、图4a、以及图6对应的实施例描述的数据传输方法的限定,在此不再赘述。上述数据传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
131.在一个实施例中,如图12所示,提供了一种数据传输装置,包括:协商模块1210、发送模块1220、接收模块1230、验证模块1240、以及处理模块1250,其中:
132.协商模块1210,用于通过与终端进行在线协商,确定用于加解密操作的密钥明文,并验证终端的身份真实性。
133.发送模块1220,用于若终端的身份真实性验证通过,则向终端发送第一消息密文、第一签名验证码、以及第一校验码,以供终端执行解密操作后根据解密得到的第一消息明文执行相应的作业操作;其中,第一消息密文是利用密钥明文对第一消息明文进行加密得到的;第一签名验证码是利用服务器端私钥对第一消息明文的摘要进行加密得到的;第一校验码是通过对第一消息密文进行校验运算得到的。
134.接收模块1230,用于接收终端发送的第二消息密文、第二签名验证码、第三校验码、以及第二消息明文的摘要;第二消息密文是通过终端对第二消息明文进行加密得到的;第二消息明文是通过终端根据第一消息明文执行相应的作业操作得到的;第二签名验证码是通过终端利用终端私钥对第二消息明文的摘要进行加密得到的;第三校验码是通过终端对第二消息密文进行校验运算得到的。
135.验证模块1240,用于利用终端证书、所接收的第二签名验证码和第二消息明文的摘要,确定第二消息密文的一致性。
136.验证模块1240,还用于若第二消息密文的一致性验证通过,则对第二消息密文进行校验运算,得到第四校验码。
137.验证模块1240,还用于比较第三校验码和第四校验码,基于比较结果确定第二消息密文的完整性。
138.处理模块1250,用于若第二消息密文的完整性验证通过,则利用密钥明文对第二消息密文进行解密,得到第二消息明文,并基于第二消息明文执行相应的处理操作。
139.在一个实施例中,协商模块还用于调用硬加解密装置生成密钥明文;利用证书池存储的签名确认证书对终端证书进行验证,确定终端的身份真实性;若终端的身份真实性验证通过,则利用终端证书对密钥明文进行加密,得到密钥密文;将密钥密文和服务器端证书发送至终端,以供终端利用终端本地存储的签名确认证书确定云端服务器的身份真实性,以及利用终端私钥对密钥密文进行解密,得到密钥明文。
140.在一个实施例中,数据传输装置1200还包括下发模块,该下发模块用于接收终端
发送的终端公钥和终端信息,并根据终端公钥、终端信息、服务器端公钥以及服务器端信息,向证书服务器申请证书,以供证书服务器签发终端证书、服务器端证书、以及签名确认证书;其中,终端公钥是通过终端用软加解密模块生成的;接收证书服务器发送的终端证书、服务器端证书、以及签名确认证书,并将终端证书和签名确认证书存储至证书池中;将终端证书、服务器端证书、以及签名确认证书发送至终端。
141.关于如图12描述的数据传输装置的具体限定可以参见上文中对于如图7、图8、以及图9对应的实施例描述的数据传输方法的限定,在此不再赘述。上述数据传输装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
142.在一个实施例中,提供了一种计算机设备,该计算机设备可以是云端服务器,其内部结构图可以如图13所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储证书数据和密钥数据等。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现如图2、图3a、图4a、以及图6对应的实施例描述的数据传输方法。
143.在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现如图7、图8、以及图9对应的实施例描述的数据传输方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
144.本领域技术人员可以理解,图13或图14中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
145.在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述如图2、图3a、图4a、以及图6对应的实施例描述的方法实施例中的步骤。
146.在一个实施例中,还提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述如图7、图8、以及图9对应的实施例描述的方法实施例中的步骤。
147.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述如图2、图3a、图4a、以及图6对应的实施例描述的方法实施例中的步骤。
148.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述如图7、图8、以及图9对应的实施例描述的方法实施例中的步骤。
149.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read

only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
150.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
151.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献