CN111193702B - 数据加密传输的方法和装置 - Google Patents

数据加密传输的方法和装置 Download PDF

Info

Publication number
CN111193702B
CN111193702B CN201910994134.2A CN201910994134A CN111193702B CN 111193702 B CN111193702 B CN 111193702B CN 201910994134 A CN201910994134 A CN 201910994134A CN 111193702 B CN111193702 B CN 111193702B
Authority
CN
China
Prior art keywords
key
encrypted
terminal
data
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.)
Active
Application number
CN201910994134.2A
Other languages
English (en)
Other versions
CN111193702A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN201910994134.2A priority Critical patent/CN111193702B/zh
Publication of CN111193702A publication Critical patent/CN111193702A/zh
Application granted granted Critical
Publication of CN111193702B publication Critical patent/CN111193702B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information

Abstract

本公开提供了一种数据加密传输的方法和装置,属于加密技术领域。该方法包括:接收终端发送的第一密钥标识和使用第一密钥进行加密的校验数据获取请求,校验数据获取请求中携带任务标识;使用第一密钥对加密的校验数据获取请求进行解密,得到解密的校验数据获取请求;基于任务标识生成校验数据;使用数据密钥对校验数据进行加密,得到加密的校验数据;向终端发送第一密钥标识和使用第一密钥进行加密的兑换值待领取消息;接收终端发送的第一密钥标识和使用第一密钥进行加密的兑换值领取请求;基于第一密钥和数据密钥,得到解密的校验数据;将兑换值数据,添加至兑换值库中。采用本公开,可提高校验数据的安全性。

Description

数据加密传输的方法和装置
技术领域
本公开涉及数据加密技术领域,特别涉及一种数据加密传输的方法和装置。
背景技术
随着终端技术的快速发展,终端中应用程序的种类越来越繁多,应用程序的功能也越来越丰富,例如,终端上可以安装有做任务赢积分的应用程序。
用户在终端上登录上述应用程序后,可以在赢积分选项中选中某一个任务来执行,完成任务之后,终端可以向服务器发送校验数据获取请求。服务器接收到校验数据获取请求后,便可以向终端发送用于获取积分值数据的校验数据。终端接收到校验数据后,便可以对该校验数据进行存储,当用户点击积分领取的按钮时,用户账户的积分库中的总积分便会相应的增加。其中,为了保证校验数据的安全性,终端接收到服务器发送的校验数据后,通常对校验数据进行加密处理,当后续用户点击积分领取的按钮时,终端再对校验数据进行解密,并将基于校验数据确定的积分值数据添加至账户的积分库中。
在实现本公开的过程中,发明人发现相关技术至少存在以下问题:
相关技术中,当终端被携带有篡改校验数据的病毒入侵时,存储在终端上的校验数据很容易被篡改,可见,校验数据的安全性依然比较低。
发明内容
本公开实施例提供了一种数据加密传输的方法和装置,能够解决相关技术的问题。所述技术方案如下:
第一方面,提供了一种数据加密传输的方法,所述方法包括:
接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的校验数据获取请求,进行解密处理,得到解密后的校验数据获取请求;
基于所述任务标识,生成校验数据;
使用预先生成的数据密钥,对所述校验数据,进行加密处理,得到加密后的校验数据;
向所述终端发送所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有所述加密后的校验数据;
接收所述终端发送的所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值领取请求,进行解密处理,得到解密后的兑换值领取请求;
使用所述数据密钥,对所述兑换值领取请求中的加密后的校验数据,进行解密处理,得到解密后的校验数据;
将基于所述校验数据确定的兑换值数据,添加至所述终端登录的账户对应的兑换值库中,并向所述终端发送兑换值领取成功的消息。
第二方面,提供了一种数据加密传输的方法,所述方法包括:
当检测到任务完成时,向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
接收所述服务器发送的所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有加密后的校验数据;
使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值待领取消息,进行解密处理,得到并保存解密后的兑换值待领取消息;
当检测到兑换值领取操作指令时,向所述服务器发送所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
接收所述服务器发送的兑换值领取成功的消息。
第三方面,提供了一种数据加密传输的装置,所述装置包括:
第一接收模块,用于接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
第一解密模块,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的校验数据获取请求,进行解密处理,得到解密后的校验数据获取请求;
生成模块,用于基于所述任务标识,生成校验数据;
加密模块,用于使用预先生成的数据密钥,对所述校验数据,进行加密处理,得到加密后的校验数据;
发送模块,用于向所述终端发送所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有所述加密后的校验数据;
第二接收模块,用于接收所述终端发送的所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
第二解密模块,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值领取请求,进行解密处理,得到解密后的兑换值领取请求;
第三解密模块,用于使用所述数据密钥,对所述兑换值领取请求中的加密后的校验数据,进行解密处理,得到解密后的校验数据;
兑换值确定模块,用于将基于所述校验数据确定的兑换值数据,添加至所述终端登录的账户对应的兑换值库中,并向所述终端发送兑换值领取成功的消息。
第四方面,提供了一种数据加密传输的装置,所述装置包括:
第一发送模块,用于当检测到任务完成时,向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
第一接收模块,用于接收所述服务器发送的所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有加密后的校验数据;
解密模块,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值待领取消息,进行解密处理,得到并保存解密后的兑换值待领取消息;
第二发送模块,用于当检测到兑换值领取操作指令时,向所述服务器发送所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
第二接收模块,用于接收所述服务器发送的兑换值领取成功的消息。
第五方面,提供了一种服务器,所述服务器包括处理器、通信接口、存储器和通信总线,其中:
所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序,以实现第一方面所述的方法步骤。
第六方面,提供了终端,所述终端包括处理器、通信接口、存储器和通信总线,其中:
所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序,以实现第二方面所述的方法步骤。
第七方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现第一方面或者第二方面所述的数据加密传输的方法。
本申请实施例提供的技术方案带来的有益效果至少包括:
本公开实施例中,服务器向终端发送的校验数据(例如,积分校验数据),由服务器生成的数据密钥对其加密,由终端对加密后的校验数据进行保存,当需要基于校验数据领取兑换值数据时,再由服务器对加密后的校验数据进行解密处理。可见,校验数据的加密和解密过程都是由服务器来执行,服务器相对于终端来讲,安全性高,不容易被病毒入侵,进而,可以提高校验数据的安全性。
附图说明
为了更清楚地说明本公开实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本公开实施例提供的一种数据加密传输的方法的流程示意图;
图2是本公开实施例提供的一种数据加密传输的方法的场景示意图;
图3是本公开实施例提供的一种数据加密传输的方法的场景示意图;
图4是本公开实施例提供的一种数据加密传输的方法的场景示意图;
图5是本公开实施例提供的一种数据加密传输的方法的流程示意图;
图6是本公开实施例提供的一种服务器与终端之间进行密钥交换的流程示意图;
图7是本公开实施例提供的一种服务器与终端在数据加密传输之前进行通信连接的流程示意图;
图8是本公开实施例提供的一种服务器与终端在数据加密传输之前进行通信连接的流程示意图;
图9是本公开实施例提供的一种注册GUID的流程示意图;
图10是本公开实施例提供的一种更新GUID的流程示意图;
图11是本公开实施例提供的一种服务器与终端在数据加密传输之前进行通信连接的流程示意图;
图12是本公开实施例提供的一种数据加密传输的装置的结构示意图;
图13是本公开实施例提供的一种数据加密传输的装置的结构示意图;
图14是本公开实施例提供的一种数据加密传输的装置的结构示意图;
图15是本公开实施例提供的一种数据加密传输的装置的结构示意图。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。
本公开实施例提供了一种数据加密传输的方法,该方法可以由服务器和终端交互实现。其中,终端可以是手机、平板电脑、笔记本电脑和台式计算机等,用户在使用该终端的过程中,可以基于自己的不同需求,使用各种各样的应用程序,例如,终端中可以安装有做任务赢兑换值的应用程序。服务器可以是上述做任务赢兑换值的应用程序的后台服务器。
其中,兑换值可以是积分值、票券等,相应的,该方法可以应用于做任务赢积分的活动中,也可以应用在做任务赢票券的活动中,本实施例中,为便于介绍,可以以做任务赢积分的应用场景进行示例,其它情况与之类似便不再一一赘述。
如图1所示,该方法的处理流程可以如下:
在步骤101中,当检测到任务完成时,终端向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求。
其中,校验数据获取请求也即是,兑换值校验数据获取请求,该校验数据获取请求中携带有用于指示兑换值数据的任务标识,用于获取所执行任务对应的兑换值数据。
在实施中,用户可以在终端上安装上述所述的具备做任务赢兑换值的应用程序,然后用户可以在终端的显示界面中,点击上述应用程序的图标,终端可以检测到点击指令,可以打开该应用程序。用户打开该应用程序之后,该应用程序的显示界面上可以具有多个活动选项,例如,具有做任务赢兑换值的选项。如图2所示,用户点击做任务赢兑换值的选项之后,该应用程序的显示界面上可以显示任务列表,用户可以在该任务列表中选择其中一个任务去执行,当用户完成所选择的任务之后,终端可以检测到任务完成,然后向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求。
其中,第一密钥标识是第一密钥对应的唯一标识,用于供服务器在密钥标识与密钥的对应关系中,基于第一密钥标识查找第一密钥,以对加密后的校验数据获取请求进行解密。
其中,第一密钥和第一密钥标识是服务器和终端事先约定好的,具体的约定过程下文将会详细介绍。
在实施中,终端使用第一密钥对校验数据获取请求进行加密属于通信加密过程,具体的加密过程可以是,终端可以首先根据用于指示兑换值数据的任务标识,生成校验数据获取请求,然后对校验数据获取请求进行应用层封装,之后,服务器使用第一密钥对封装后的校验数据获取请求进行加密,得到加密后的校验数据获取请求。其中,终端所使用的加密算法可以是XXTea加密算法,XXTea加密算法是Tea(Tiny Encryption Algorithm,微型加密算法)加密算法的升级版。
其中,需要指出的是,校验数据获取请求中不仅携带有任务标识,还携带有终端标识,以使服务器可以基于终端标识向对应的终端发送消息。
在步骤102中,服务器接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求。
其中,如上述所述,该校验数据获取请求中携带有用于指示兑换值数据的任务标识。
在步骤103中,服务器使用通过第一密钥标识查找到的第一密钥,对加密后的校验数据获取请求,进行解密处理,得到解密后的校验数据获取请求。
在实施中,服务器中预先储存有密钥标识与密钥的对应关系,当服务器接收到终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求之后,可以首先基于密钥标识与密钥的对应关系,确定第一密钥标识对应的第一密钥,然后,再使用唯一确定出的第一密钥对加密后的校验数据获取请求进行解密,得到解密后的校验数据获取请求。
在步骤104中,服务器使用任务标识,生成校验数据。
在实施中,服务器得到解密后的校验数据获取请求之后,可以从解密后的兑换值获取中获取到任务标识,然后可以基于任务标识生成和该任务标识相对应的校验数据,该校验数据用于获取该任务标识相对应的兑换值数据。
在步骤105中,服务器使用预先生成的数据密钥,对校验数据,进行加密处理,得到加密后的校验数据。
其中,数据密钥是对校验数据进行加密的密钥,可以由服务器随机生成。
在实施中,数据密钥可以是服务器随机生成的密钥。例如,服务器首次接收到某一个终端发送的校验数据获取请求之后,可以随机生成一个数据密钥,并将该数据密钥与该终端的终端标识对应存储,以便于后续使用该数据密钥进行解密处理,以及继续使用该数据密钥对后续的校验数据进行加密和解密处理。
在应用中,为了避免用户执行一个任务而出现重复领取兑换值的情况,服务器对加密后的校验数据获取请求进行解密后,还可以对校验数据获取请求进行兑换规则验证。如果解密后的校验数据获取请求,符合兑换规则,则使用预先生成的数据密钥,对携带有任务标识的校验数据,进行加密处理,得到加密后的校验数据。
其中,对兑换规则进行验证主要是验证该任务的操作是否成功完成,该任务是否是预设时长内的首次完成,例如,是否是当天内的首次完成等。如果服务器检测到该任务已按照预先设置的条件成功完成,且属于预设时长内的首次完成,则再使用预先生成的数据密钥,对校验数据,进行加密处理,得到加密后的校验数据。
在步骤106中,服务器向终端发送第一密钥标识和使用第一密钥进行加密处理后的兑换值待领取消息,兑换值待领取消息中携带有加密后的校验数据。
在实施中,服务器对校验数据进行加密处理之后,可以向终端发送第一密钥标识和使用第一密钥进行加密处理后的兑换值待领取消息,其中,该兑换值待领取消息中携带有加密后的校验数据。也即是,服务器对校验数据进行双重加密处理之后,将双重加密后的校验数据发送给终端,以使终端进行保存。
其中,服务器对校验数据进行双重加密的过程也即是,首先,服务器使用数据密钥,对生成的校验数据进行加密处理,得到加密后的校验数据,这一层加密可以称为数据加密的过程;然后,服务器再对加密后的校验数据进行应用层的封装,得到兑换值待领取消息,之后,服务器使用第一密钥对封装后的兑换值待领取消息进行加密处理,得到加密后的兑换值待领取消息,这一层的加密可以称为通信加密的过程。
其中,服务器使用第一密钥对兑换值待领取消息进行加密,所使用的加密算法可以是XXTea加密算法,XXTea加密算法是Tea(Tiny Encryption Algorithm,微型加密算法)加密算法的升级版。
在步骤107中,终端接收服务器发送的第一密钥标识和使用第一密钥进行加密处理后的兑换值待领取消息,兑换值待领取消息中携带有加密后的校验数据。
其中,加密后的校验数据是服务器使用数据密钥进行加密处理后的数据。
在步骤108中,终端使用通过第一密钥标识查找到的第一密钥,对加密后的兑换值待领取消息,进行解密处理,得到并保存解密后的兑换值待领取消息。
在实施中,终端接收到服务器发送的使用第一密钥进行加密处理后的兑换值待领取消息之后,可以在预先存储的密钥标识和密钥的对应关系中,基于第一密钥标识查找与之相对应的第一密钥。然后终端使用第一密钥对加密后的兑换值待领取消息进行解密,得到解密后的兑换值待领取消息。之后,终端对解密后的兑换值待领取消息进行保存。
其中,终端获取到兑换值待领取消息之后,如图3所示,终端的显示界面上可以弹出兑换值待领取窗口,用户可以点击该兑换值待领取窗口中显示的马上领取选项,可以执行兑换值领取操作。
在步骤109中,当检测到兑换值领取操作指令时,终端向服务器发送第一密钥标识和使用第一密钥进行加密后的兑换值领取请求,兑换值领取请求中携带有加密后的校验数据。
其中,如上述所述,加密后的校验数据即是使用数据密钥加密处理后的数据。
其中,兑换值领取操作指令用于将用户执行任务所对应的兑换值数据累计至用户账户中。在上述步骤中,终端只是获取了兑换值待领取消息,为了让所执行的任务对应的兑换值数据累计到用户的账户中,还需要用户执行兑换值领取操作,用户执行完兑换值领取操作,并且经过服务器验证通过后,用户账户中的总兑换值数据才会增加。
在应用中,当用户打算领取兑换值数据时,进入到应用程序之后,如图4所示,可以在兑换值领取界面上点击领取选项,终端可以检测到兑换值领取操作指令之后,可以向服务器发送存储在本地的第一密钥标识和使用第一密钥进行加密后的兑换值领取请求。
其中,用户在兑换值领取界面上所点击的选项可以是一键领取全部兑换值,例如,用户点击兑换值领取按钮之后,终端可以将本地存储的,所有经过数据密钥加密的校验数据进行组合,生成兑换值领取请求,并使用第一密钥对生成的兑换值领取请求进行加密处理,之后,将第一密钥标识和经过第一密钥加密后的兑换值领取请求,一起发送给服务器。当然,用户也可以逐个点击每一个待领取选项,逐个领取每一个待领取选项对应的兑换值数据。
在一种可能的应用中,终端本地存储的校验数据还可以具有有效期,例如,有效期可以是一周的时间或者两周的时间,也即是,用户执行完一个任务之后,可以在有效期内领取该任务对应的兑换值数据。那么相应的,用户在兑换值领取界面上点击一键领取全部兑换值时,终端可以将本地存储的,经过数据密钥加密的,且处于有效期内的所有校验数据,进行组合之后,生成兑换值领取请求,并使用第一密钥对兑换值领取请求进行通信加密处理,最后,终端再将第一密钥标识和使用第一密钥加密后的兑换值领取请求发送给服务器。
在步骤110中,服务器接收终端发送的第一密钥标识和使用第一密钥进行加密后的兑换值领取请求。
在实施中,终端向服务器发送兑换值领取请求之后,服务器可以接收到该兑换值领取请求,该兑换值领取请求中携带有加密后的校验数据。
在步骤111中,服务器使用通过第一密钥标识查找到的第一密钥,对加密后的兑换值领取请求,进行解密处理,得到解密后的兑换值领取请求。
在实施中,服务器接收到第一密钥标识之后,可以基于存储的密钥标识与密钥的对应关系,确定第一密钥标识唯一对应的第一密钥,然后使用第一密钥对加密后的兑换值领取请求进行解密,得到解密后的兑换值领取请求。
在步骤112中,服务器使用数据密钥,对兑换值领取请求中的加密后的校验数据,进行解密处理,得到解密后的校验数据。
在实施中,服务器解密出兑换值领取请求之后,对兑换值领取请求进行解析,然后,使用存储的密钥数据,对兑换值领取请求中携带的校验数据进行解密处理,得到解密后的校验数据。之后,服务器可以基于解密后的校验数据向任务服务器获取对应的兑换值数据。
在步骤113中,服务器将基于校验数据确定的兑换值数据,添加至终端登录的账户对应的兑换值库中,并向终端发送兑换值领取成功的消息。
在实施中,服务器确定兑换值数据之后,可以将兑换值数据添加至终端登录的账户对应的兑换值库中,并向终端发送兑换值领取成功的消息。
在步骤114中,终端接收服务器发送的兑换值领取成功的消息。
在实施中,终端接收到服务器发送的兑换值领取成功的消息之后,如图5所示,终端的显示界面上可以弹出兑换值领取成功的窗口,此时用户也可以看到账户中的总兑换值累计了上述兑换值数据。
基于上述所述,本实施例中的校验数据由服务器生成的数据密钥对其加密,由终端对加密后的校验数据进行保存,当需要基于校验数据领取兑换值数据时,再由服务器对加密后的校验数据进行解密处理。可见,校验数据的加密和解密过程都是由服务器来执行,服务器相对于终端来讲,安全性高,不容易被病毒入侵,进而,可以提高校验数据的安全性。
其中,需要指出的是,上述的第一密钥是当前进行数据传输过程中所使用的密钥,是服务器与终端经过密钥交换之后约定的密钥,密钥交换过程下文将会详细介绍。如果当前数据传输之前未进行过如图1所示的数据传输过程,那么第一密钥是第一个密钥。如果当前数据传输之前,服务器与终端之间进行过如图1所示的数据传输过程,则在第一密钥之前还有多个已不在有效使用期的密钥。而且,当前所使用的第一密钥不在有效使用期之后,服务器和终端还会再次进行密钥交换来约定一个新的密钥。而且,每一个密钥都有一个唯一的密钥标识,例如,第一密钥具有唯一的第一密钥标识,第二密钥具有唯一的第二密钥标号。
可选的,服务器与终端在进行数据加密传输之前,需要先建立通信连接关系,相应的,当用户点击终端桌面上安装的做任务赢兑换值的应用程序的图标时,便可以触发终端与服务器建立通信连接的操作。
其中,终端向服务器发送连接请求之前需要先检测一下本地是否存储有用于通信传输加密的密钥,相应的,可以至少分为三种情况,第一种情况可以是,本地未存储有任何密钥(如服务器与终端首次进行如图1所示的数据传输过程),第二种情况可以是,本地存储有未过期的密钥(即后续使用的第一密钥),第三种情况可以是本地存储有已过期的密钥(即在第一密钥之前使用的其它密钥,可以记为第二密钥,其中第二密钥可以是一个也可以是多个,属于过去所使用的,但是当前已经处于过期状态的密钥)。
在实施中,针对上述第一种情况,终端与服务器建立通信连接之前,需要先进行密钥交换过程,也即是,进行密钥约定过程。其中,密钥交换过程可以按照如图6所示的流程执行:
在步骤601中,终端生成第一密钥。
在实施中,终端可以随机生成一个字符串,将该字符串作为第一密钥,例如,可以将随机生成一个16位的字符串作为第一密钥。
在步骤602中,终端使用服务器的公钥对生成的第一密钥进行加密处理,得到加密后的第一密钥。
在实施中,终端可以使用非对称加密算法,例如,使用RSA加密算法,对生成的第一密钥进行加密。具体的,终端中预先存储有应用程序的后台服务器的公钥,终端获取到预先存储的服务器的公钥之后,可以使用RSA加密算法对生成的第一密钥进行加密处理,得到加密后的第一密钥。
在步骤603中,终端向服务器发送密钥交换请求,密钥交换请求中携带有加密后的第一密钥。
其中,加密后的第一密钥也即是使用服务器的公钥进行加密后第一密钥。
在实施中,终端使用服务器的公钥对第一密钥进行加密之后,可以向服务器发送携带有加密后的第一密钥的密钥交换请求,其中,该密钥交换请求中还携带有终端标识,以便于服务器向终端发送反馈信息。
在步骤604中,服务器接收终端发送的密钥交换请求,密钥交换请求中携带有终端生成的,使用服务器的公钥进行加密处理后的第一密钥。
在步骤605中,服务器使用与公钥相对应的私钥,对加密处理后的第一密钥,进行解密处理,得到第一密钥。
在实施中,服务器接收到终端发送的加密处理后的第一密钥之后,可以使用服务器本地存储的私钥,对使用其公钥加密的第一密钥进行解密,得到第一密钥。然后服务器可以对解密后的第一密钥进行存储,以便于后续使用第一密钥进行加密和解密。其中,服务器解密得到第一密钥之后,还可以为第一密钥加上时间戳作为第一密钥的生成时间,以便于后续根据第一密钥的生成时间,确定第一密钥是否处于有效使用期。
在步骤606中,服务器为第一密钥分配第一密钥标识。
在实施中,服务器解密得到第一密钥之后,可以为第一密钥分配一个唯一的标识,即第一密钥标识。在后续服务器与终端的通信过程中,服务器均需携带该第一密钥标识,以使终端基于该第一密钥标识来查找所使用的加密密钥,对接收到的消息进行解密处理。
在步骤607中,服务器将第一密钥标识发送给终端。
在实施中,服务器为第一密钥分配第一密钥标识之后,可以将第一密钥标识反馈给终端。
在步骤608中,终端接收并保存服务器发送的与第一密钥相对应的第一密钥标识。
在实施中,终端接收到服务器反馈的第一密钥标识之后,可以对该第一密钥标识进行存储,在后续与服务器的通信过程中,终端均需携带该第一密钥标识,以使服务器来查找所使用的加密密钥,对接收到的请求和消息进行解密处理。
其中,针对上述第二种情况(也即是本地存储有未过期的密钥,即后续使用的第一密钥),终端与服务器建立通信连接的过程可以按照如图7所示的流程执行:
在步骤701中,终端检测到本地存储有第一密钥时,向服务器发送连接请求,连接请求中携带有第一密钥标识。
在实施中,终端向服务器发送连接请求之前,可以先检测一下本地是否存储有密钥,如果存储有密钥,例如,存储有第一密钥,则再向服务器发送携带有第一密钥标识的连接请求。
在步骤702中,服务器接收终端发送的连接请求,连接请求中携带有所述第一密钥标识。
其中,连接请求中携带有第一密钥标识以便于服务器查询第一密钥是否处于有效使用期内。
在步骤703中,服务器基于第一密钥标识的生成时间和当前接收时间,确定第一密钥标识对应的第一密钥未过期。
在实施中,服务器接收到终端发送的连接请求之后,可以查询到连接请求中携带的第一密钥标识的生成时间,然后可以基于生成时间和当前接收时间,检测第一密钥是否过期。具体的,服务器可以基于第一密钥标识的生成时间和当前接收时间,确定第一密钥的使用时长,如果使用时长小于有效使用时长,则可以确定第一密钥还在有效使用期,未发生过期。
在步骤704中,服务器向终端发送连接成功消息。
在实施中,服务器确定第一密钥未过期之后,便可以向终端发送连接成功消息。
在步骤705中,在服务器确定第一密钥未过期的情况下,接收服务器发送的连接成功消息。
在实施中,终端接收到服务器发送的连接成功消息之后,便可以按照如图1所示的流程执行后续的数据加密传输的过程。
其中,针对上述的第三种情况(也即是本地存储有已过期的密钥,即第二密钥),可以按照如图8所示的流程执行:
在步骤801中,当终端检测到本地存储有第二密钥时,向服务器发送连接请求,连接请求中携带有所述第二密钥标识。
在实施中,终端向服务器发送连接请求之前,可以先检测一下本地是否存储有密钥,如果存储有密钥,例如,存储有第二密钥,则再向服务器发送携带有第二密钥标识的连接请求。
在步骤802中,服务器接收终端发送的连接请求,连接请求中携带有第二密钥标识。
其中,如上述所述,连接请求中也携带有第二密钥标识以便于服务器查询第二密钥是否处于有效使用期内。
在步骤803中,服务器基于第二密钥标识的生成时间和当前接收时间,确定第二密钥标识对应的第二密钥已过期。
在实施中,服务器接收到终端发送的连接请求之后,可以查询到连接请求中携带的第二密钥标识的生成时间,然后可以基于生成时间和当前接收时间,检测第二密钥是否过期。具体的,服务器可以基于第二密钥标识的生成时间和当前接收时间,确定第二密钥的使用时长,如果使用时长不小于有效使用时长,则可以确定第二密钥已过期。
在步骤804中,服务器向终端发送携带有第二密钥的已过期的连接失败消息。
在实施中,服务器确定第二密钥已过期的情况下,便可以向终端发送连接失败消息,其中,该连接失败消息中携带有第二密钥已过期的信息。
在步骤805中,在服务器确定第二密钥已过期的情况下,终端接收服务器发送的携带有第二密钥的已过期的连接失败消息。
在实施中,终端接收到服务器发送的携带有第二密钥的已过期的连接失败消息之后,可以再按照如图6所示的流程执行密钥交换过程,直到接收到服务器发送的连接成功消息。
可见,终端生成第一密钥的触发条件可以包括两种情况,一种情况是,在终端未存储有任何密钥的情况下,终端生成第一密钥,与服务器执行密钥交换的过程。另一种情况是,在终端存储有密钥,但是存储的密钥已过期的情况下,终端生成第一密钥,与服务器执行密钥交换的过程。
基于上述所述,本实施例中的校验数据由服务器生成的数据密钥进行加密处理,发送给终端进行存储,当终端领取兑换值数据时,再将由数据密钥进行加密的校验数据发送给服务器,再由服务器使用数据密钥进行解密。可见,校验数据的加密和解密过程均由服务器来执行,只有服务器存储有对校验数据进行加密的数据密钥,终端中不存储该数据密钥,终端只存储使用数据密钥进行加密后的校验数据。所以,即使终端被病毒入侵,加密后的校验数据也无法被破译,而服务器的安全系数远高于终端的安全系数,服务器不容易被病毒入侵,进而,可以提高校验数据的安全性。
而且,服务器和终端在进行数据传输的过程中,也具有密钥进行加密处理,也即是,服务器向终端发送的消息经由第一密钥进行加密,终端向服务器发送的消息也经由第一密钥进行加密,进一步提高了数据传输的安全性。
虽然终端中存储有服务器与终端进行数据传输时所使用的通信密钥,也即是第一密钥,但是通信密钥会不断发生变更。这样的话,终端中会存储有多个通信密钥(包括当前处于有效使用期的一个第一密钥和已过期的多个第二密钥),终端和服务器可以通过密钥标识查找到当前处于有效使用期的第一密钥。而入侵到终端的病毒,可能会获取到大量通信密钥,但是很难从这些通信密钥中筛选出处于有效使用期的第一密钥。所以,即使终端中存储有用于通信加密的通信密钥,但是终端和服务器进行数据传输的安全性依然较高。
在应用中,为了便于服务器查找存储的密钥和密钥标识,相应的,服务器可以为每一个终端创建一个GUID(Globally Unique Identifier,全局唯一标识符),这样,服务器中便可以将每个终端的密钥、密钥标识和GUID对应存储,当服务器接收到终端发送的密钥标识时,便可以在该终端对应的GUID下查找对应的密钥,服务器为终端创建GUID的过程可以按照如图9所示的流程执行:
首先,终端检测到本地未存储有GUID时,向服务器发送携带有GUID注册信息的GUID注册请求,其中,GUID注册信息可以包括终端的IMEI(International MobileEquipment Identity,国际移动设备识别码)、MAC(Media Access Control Address,媒体存取控制位址)地址、应用程序的版本信息等。然后,服务器接收到终端发送的终端的GUID注册请求之后,可以基于终端的IMEI、MAC地址、应用程序的版本信息等,生成GUID,并将生成的GUID存储下来,之后,服务器将GUID发送给终端。最后,终端接收到服务器发送的GUID之后,可以将GUID存储在本地,完成创建GUID的过程。
由上述可知,GUID的生成与应用程序的版本信息相关,而应用程序的版本信息会发生更新,相应的,GUID还可以根据GUID注册信息的更新而发生更新。具体的可以参考图10所示的流程执行:
终端可以对GUID注册信息进行周期性的检测,当达到检测周期时,如果检测到GUID注册信息未发生更新,则GUID不进行更新。如果检测到GUID注册信息发生变化时,终端可以向服务器发送携带有更新后的GUID注册信息的GUID注册请求。服务器接收到终端发送的更新后的GUID注册信息之后,可以对该终端当前的GUID进行更新,得到更新后的GUID,并使用更新后的GUID替换当前的GUID,之后,服务器将更新后的GUID发送给终端。终端接收到更新后的GUID之后,使用更新后的GUID替换本地当前存储的GUID。
基于上述所述,终端与服务器在进行通信之前需要先建立通信连接,也即是,需要终端与服务器之间进行初始化过程,这一过程可以按照如图11所示的流程执行:
终端向服务器发送连接请求之前,首先,终端需要检测本地是否存储有进行通信加密的密钥,如果不存在密钥,则终端需要先按照上述图6所示的流程执行密钥交换的过程。如果终端检测到本地存储有密钥,则继续检测本地是否存储有GUID,如果本地也存储有GUID,则终端再向服务器发送连接请求,此时该连接请求中携带有本地存储的密钥对应的密钥标识。如果终端存储的密钥未过期,也即是,终端本地存储的密钥为第一密钥,则服务器向终端发送连接成功消息。
而如果终端存储的密钥已过期,也即是,终端本地存储的密钥为第二密钥,虽然终端可以向服务器发送连接请求,但是服务器根据当前接收到的密钥标识,检测到当前密钥已过期时,会向终端发送携带有密钥已过期的连接失败消息。终端接收到上述携带有密钥已过期的连接失败消息之后,可以按照如图6所示的流程执行密钥交换的过程,终端与服务器进行密钥交换,约定当前密钥为第一密钥之后,终端便再次向服务器发起携带有第一密钥标识的连接请求,服务器检测到第一密钥未过期时,便可以向终端发送连接成功消息。
终端接收到服务器发送的连接成功消息之后,也即完成了终端与服务器之间的初始化过程,之后,终端与服务器便可以按照如图1所示的流程执行数据传输过程。
在本公开实施例中,服务器向终端发送的校验数据,由服务器生成的数据密钥对其加密,由终端对加密后的校验数据进行保存,当需要基于校验数据领取兑换值数据时,再由服务器对加密后的校验数据进行解密处理。可见,校验数据的加密和解密过程都是由服务器来执行,服务器相对于终端来讲,安全性高,不容易被病毒入侵,进而,可以提高校验数据的安全性。
基于相同的技术构思,本公开实施例还提供了一种数据加密传输的装置,该装置可以是服务器,如图12所示,该装置包括:
第一接收模块1201,用于接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
第一解密模块1202,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的校验数据获取请求,进行解密处理,得到解密后的校验数据获取请求;
生成模块1203,用于基于所述任务标识,生成校验数据;
加密模块1204,用于使用预先生成的数据密钥,对所述校验数据,进行加密处理,得到加密后的校验数据;
发送模块1205,用于向所述终端发送所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有所述加密后的校验数据;
第二接收模块1206,用于接收所述终端发送的所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
第二解密模块1207,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值领取请求,进行解密处理,得到解密后的兑换值领取请求;
第三解密模块1208,用于使用所述数据密钥,对所述兑换值领取请求中的加密后的校验数据,进行解密处理,得到解密后的校验数据;
兑换值确定模块1209,用于将基于所述校验数据确定的兑换值数据,添加至所述终端登录的账户对应的兑换值库中,并向所述终端发送兑换值领取成功的消息。
可选的,所述装置还包括密钥交换模块,用于:
接收终端发送的密钥交换请求,所述密钥交换请求中携带有所述终端生成的,使用服务器的公钥进行加密处理后的第一密钥;
使用与所述公钥相对应的私钥,对所述加密处理后的第一密钥,进行解密处理,得到所述第一密钥;
为所述第一密钥分配第一密钥标识;
将所述第一密钥标识发送给所述终端。
需要说明的是:上述实施例提供的数据加密传输的装置在数据加密传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据加密传输的装置与数据加密传输的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于相同的技术构思,本公开实施例还提供了一种数据加密传输的装置,该装置可以是终端,如图13所示,该装置包括:
第一发送模块1301,用于当检测到任务完成时,向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
第一接收模块1302,用于接收所述服务器发送的所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有加密后的校验数据;
解密模块1303,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值待领取消息,进行解密处理,得到并保存解密后的兑换值待领取消息;
第二发送模块1304,用于当检测到兑换值领取操作指令时,向所述服务器发送所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
第二接收模块1305,用于接收所述服务器发送的兑换值领取成功的消息。
可选的,所述装置还包括密钥交换模块,用于:
生成第一密钥;
使用服务器的公钥对所述第一密钥进行加密处理,得到加密后的第一密钥;
向所述服务器发送携带密钥交换请求,所述密钥交换请求中携带有所述加密后的第一密钥;
接收并保存所述服务器发送的与所述第一密钥相对应的第一密钥标识。
可选的,所述密钥交换模块,具体用于:在所述终端本地未存储有任何密钥的情况下,或者,在所述终端本地存储有已过期的第二密钥的情况下,生成第一密钥。
需要说明的是:上述实施例提供的数据加密传输的装置在数据加密传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据加密传输的装置与数据加密传输的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
基于相同的技术构思,本公开实施例还提供了一种数据加密传输的系统,该系统可以包括服务器和终端,其中:
所述终端用于:当检测到任务完成时,向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;接收所述服务器发送的所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有加密后的校验数据;使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值待领取消息,进行解密处理,得到并保存解密后的兑换值待领取消息;当检测到兑换值领取操作指令时,向所述服务器发送所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;接收所述服务器发送的兑换值领取成功的消息;
所述服务器用于:接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的校验数据获取请求,进行解密处理,得到解密后的校验数据获取请求;基于所述任务标识,生成校验数据;使用预先生成的数据密钥,对所述校验数据,进行加密处理,得到加密后的校验数据;向所述终端发送所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有所述加密后的校验数据;接收所述终端发送的所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值领取请求,进行解密处理,得到解密后的兑换值领取请求;使用所述数据密钥,对所述兑换值领取请求中的加密后的校验数据,进行解密处理,得到解密后的校验数据;将基于所述校验数据确定的兑换值数据,添加至所述终端登录的账户对应的兑换值库中,并向所述终端发送兑换值领取成功的消息。
需要说明的是:上述实施例提供的数据加密传输的系统在数据加密传输时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将系统的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的数据加密传输的系统与数据加密传输的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图14示出了本申请一个示例性实施例提供的终端1400的结构框图。该终端1400可以是:智能手机、平板电脑、MP3播放器(Moving Picture Experts Group Audio LayerIII,动态影像专家压缩标准音频层面3)、MP4(Moving Picture Experts Group AudioLayer IV,动态影像专家压缩标准音频层面4)播放器、笔记本电脑或台式电脑。终端1400还可能被称为用户设备、便携式终端、膝上型终端、台式终端等其他名称。
通常,终端1400包括有:处理器1401和存储器1402。
处理器1401可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器1401可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Ga15 Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器1401也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器1401可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器1401还可以包括AI(Artificial In15lligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器1402可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器1402还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器1402中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器1401所执行以实现本申请中方法实施例提供的数据加密传输的方法。
在一些实施例中,终端1400还可选包括有:外围设备接口1403和至少一个外围设备。处理器1401、存储器1402和外围设备接口1403之间可以通过总线或信号线相连。各个外围设备可以通过总线、信号线或电路板与外围设备接口1403相连。具体地,外围设备包括:射频电路1404、触摸显示屏1405、摄像头1406、音频电路1407、定位组件1408和电源1409中的至少一种。
外围设备接口1403可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器1401和存储器1402。在一些实施例中,处理器1401、存储器1402和外围设备接口1403被集成在同一芯片或电路板上;在一些其他实施例中,处理器1401、存储器1402和外围设备接口1403中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路1404用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路1404通过电磁信号与通信网络以及其他通信设备进行通信。射频电路1404将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路1404包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路1404可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:城域网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路1404还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
显示屏1405用于显示UI(User In15rface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。当显示屏1405是触摸显示屏时,显示屏1405还具有采集在显示屏1405的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器1401进行处理。此时,显示屏1405还可以用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,显示屏1405可以为一个,设置终端1400的前面板;在另一些实施例中,显示屏1405可以为至少两个,分别设置在终端1400的不同表面或呈折叠设计;在再一些实施例中,显示屏1405可以是柔性显示屏,设置在终端1400的弯曲表面上或折叠面上。甚至,显示屏1405还可以设置成非矩形的不规则图形,也即异形屏。显示屏1405可以采用LCD(Liquid Crystal Display,液晶显示屏)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件1406用于采集图像或视频。可选地,摄像头组件1406包括前置摄像头和后置摄像头。通常,前置摄像头设置在终端的前面板,后置摄像头设置在终端的背面。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头、长焦摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能、主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能或者其它融合拍摄功能。在一些实施例中,摄像头组件1406还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路1407可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器1401进行处理,或者输入至射频电路1404以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端1400的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器1401或射频电路1404的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路1407还可以包括耳机插孔。
定位组件1408用于定位终端1400的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件1408可以是基于美国的GPS(GlobalPositioning Sys15m,全球定位系统)、中国的北斗系统、俄罗斯的格雷纳斯系统或欧盟的伽利略系统的定位组件。
电源1409用于为终端1400中的各个组件进行供电。电源1409可以是交流电、直流电、一次性电池或可充电电池。当电源1409包括可充电电池时,该可充电电池可以支持有线充电或无线充电。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端1400还包括有一个或多个传感器1410。该一个或多个传感器1410包括但不限于:加速度传感器1411、陀螺仪传感器1412、压力传感器1413、指纹传感器1414、光学传感器1415以及接近传感器1416。
加速度传感器1411可以检测以终端1400建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器1411可以用于检测重力加速度在三个坐标轴上的分量。处理器1401可以根据加速度传感器1411采集的重力加速度信号,控制触摸显示屏1405以横向视图或纵向视图进行用户界面的显示。加速度传感器1411还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器1412可以检测终端1400的机体方向及转动角度,陀螺仪传感器1412可以与加速度传感器1411协同采集用户对终端1400的3D动作。处理器1401根据陀螺仪传感器1412采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器1413可以设置在终端1400的侧边框和/或触摸显示屏1405的下层。当压力传感器1413设置在终端1400的侧边框时,可以检测用户对终端1400的握持信号,由处理器1401根据压力传感器1413采集的握持信号进行左右手识别或快捷操作。当压力传感器1413设置在触摸显示屏1405的下层时,由处理器1401根据用户对触摸显示屏1405的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器1414用于采集用户的指纹,由处理器1401根据指纹传感器1414采集到的指纹识别用户的身份,或者,由指纹传感器1414根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器1401授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器1414可以被设置终端1400的正面、背面或侧面。当终端1400上设置有物理按键或厂商Logo时,指纹传感器1414可以与物理按键或厂商Logo集成在一起。
光学传感器1415用于采集环境光强度。在一个实施例中,处理器1401可以根据光学传感器1415采集的环境光强度,控制触摸显示屏1405的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏1405的显示亮度;当环境光强度较低时,调低触摸显示屏1405的显示亮度。在另一个实施例中,处理器1401还可以根据光学传感器1415采集的环境光强度,动态调整摄像头组件1406的拍摄参数。
接近传感器1416,也称距离传感器,通常设置在终端1400的前面板。接近传感器1416用于采集用户与终端1400的正面之间的距离。在一个实施例中,当接近传感器1416检测到用户与终端1400的正面之间的距离逐渐变小时,由处理器1401控制触摸显示屏1405从亮屏状态切换为息屏状态;当接近传感器1416检测到用户与终端1400的正面之间的距离逐渐变大时,由处理器1401控制触摸显示屏1405从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图14中示出的结构并不构成对终端1400的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本公开的又一实施例提供了一种计算机可读存储介质,当所述存储介质中的指令由终端的处理器执行时,使得终端能够执行上述数据加密传输的方法步骤。
图15是本申请实施例提供的一种计算机设备的结构示意图,该计算机设备1500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(CentralProcessing Units,CPU)1501和一个或一个以上的存储器1502,其中,所述存储器1502中存储有至少一条指令,所述至少一条指令由所述处理器1501加载并执行以实现上述数据加密传输的方法步骤。
以上所述仅为本公开的较佳实施例,并不用以限制本申请,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。

Claims (10)

1.一种数据加密传输的方法,其特征在于,所述方法包括:
接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的校验数据获取请求,进行解密处理,得到解密后的校验数据获取请求;
基于所述任务标识,生成校验数据;
使用预先生成的数据密钥,对所述校验数据,进行加密处理,得到加密后的校验数据;
向所述终端发送所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有所述加密后的校验数据;
接收所述终端发送的所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值领取请求,进行解密处理,得到解密后的兑换值领取请求;
使用所述数据密钥,对所述兑换值领取请求中的加密后的校验数据,进行解密处理,得到解密后的校验数据;
将基于所述校验数据确定的兑换值数据,添加至所述终端登录的账户对应的兑换值库中,并向所述终端发送兑换值领取成功的消息。
2.根据权利要求1所述的方法,其特征在于,所述接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求之前,所述方法还包括:
接收终端发送的密钥交换请求,所述密钥交换请求中携带有所述终端生成的,使用服务器的公钥进行加密处理后的第一密钥;
使用与所述公钥相对应的私钥,对所述加密处理后的第一密钥,进行解密处理,得到所述第一密钥;
为所述第一密钥分配第一密钥标识;
将所述第一密钥标识发送给所述终端。
3.一种数据加密传输的方法,其特征在于,所述方法包括:
当检测到任务完成时,向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
接收所述服务器发送的所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有加密后的校验数据;
使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值待领取消息,进行解密处理,得到并保存解密后的兑换值待领取消息;
当检测到兑换值领取操作指令时,向所述服务器发送所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
接收所述服务器发送的兑换值领取成功的消息。
4.根据权利要求3所述的方法,其特征在于,所述当检测到任务完成时,向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求之前,所述方法还包括:
生成第一密钥;
使用服务器的公钥对所述第一密钥进行加密处理,得到加密后的第一密钥;
向所述服务器发送携带密钥交换请求,所述密钥交换请求中携带有所述加密后的第一密钥;
接收并保存所述服务器发送的与所述第一密钥相对应的第一密钥标识。
5.根据权利要求4所述的方法,其特征在于,所述生成第一密钥包括:
在终端本地未存储有任何密钥的情况下,或者,在所述终端本地存储有已过期的第二密钥的情况下,生成第一密钥。
6.一种数据加密传输的装置,其特征在于,所述装置包括:
第一接收模块,用于接收终端发送的第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
第一解密模块,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的校验数据获取请求,进行解密处理,得到解密后的校验数据获取请求;
生成模块,用于基于所述任务标识,生成校验数据;
加密模块,用于使用预先生成的数据密钥,对所述校验数据,进行加密处理,得到加密后的校验数据;
发送模块,用于向所述终端发送所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有所述加密后的校验数据;
第二接收模块,用于接收所述终端发送的所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
第二解密模块,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值领取请求,进行解密处理,得到解密后的兑换值领取请求;
第三解密模块,用于使用所述数据密钥,对所述兑换值领取请求中的加密后的校验数据,进行解密处理,得到解密后的校验数据;
兑换值确定模块,用于将基于所述校验数据确定的兑换值数据,添加至所述终端登录的账户对应的兑换值库中,并向所述终端发送兑换值领取成功的消息。
7.一种数据加密传输的装置,其特征在于,所述装置包括:
第一发送模块,用于当检测到任务完成时,向服务器发送第一密钥标识和使用第一密钥进行加密后的校验数据获取请求,所述校验数据获取请求中携带有用于指示兑换值数据的任务标识;
第一接收模块,用于接收所述服务器发送的所述第一密钥标识和使用所述第一密钥进行加密处理后的兑换值待领取消息,所述兑换值待领取消息中携带有加密后的校验数据;
解密模块,用于使用通过所述第一密钥标识查找到的第一密钥,对所述加密后的兑换值待领取消息,进行解密处理,得到并保存解密后的兑换值待领取消息;
第二发送模块,用于当检测到兑换值领取操作指令时,向所述服务器发送所述第一密钥标识和使用所述第一密钥进行加密后的兑换值领取请求,所述兑换值领取请求中携带有所述加密后的校验数据;
第二接收模块,用于接收所述服务器发送的兑换值领取成功的消息。
8.一种服务器,其特征在于,所述服务器包括处理器、通信接口、存储器和通信总线,其中:
所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序,以实现权利要求1-2任一项所述的方法步骤。
9.一种终端,其特征在于,所述终端包括处理器、通信接口、存储器和通信总线,其中:
所述处理器、所述通信接口和所述存储器通过所述通信总线完成相互间的通信;
所述存储器,用于存放计算机程序;
所述处理器,用于执行所述存储器上所存放的程序,以实现权利要求3-5任一项所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-2或3-5任一所述的方法步骤。
CN201910994134.2A 2019-10-18 2019-10-18 数据加密传输的方法和装置 Active CN111193702B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910994134.2A CN111193702B (zh) 2019-10-18 2019-10-18 数据加密传输的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910994134.2A CN111193702B (zh) 2019-10-18 2019-10-18 数据加密传输的方法和装置

Publications (2)

Publication Number Publication Date
CN111193702A CN111193702A (zh) 2020-05-22
CN111193702B true CN111193702B (zh) 2021-10-08

Family

ID=70709110

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910994134.2A Active CN111193702B (zh) 2019-10-18 2019-10-18 数据加密传输的方法和装置

Country Status (1)

Country Link
CN (1) CN111193702B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113761543B (zh) * 2020-06-01 2024-04-02 菜鸟智能物流控股有限公司 基于联盟链的数据处理方法、装置、设备和机器可读介质
CN113364756B (zh) * 2021-05-31 2023-02-03 广东电网有限责任公司 一种智能电子设备数据传输方法、装置、系统及介质
CN115941184B (zh) * 2023-03-02 2023-05-30 北京智芯微电子科技有限公司 加密模块故障处理方法、装置、电子设备、系统及芯片

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105187477A (zh) * 2014-06-12 2015-12-23 必翼7000有限公司 应用之间的数据通信的设备和方法
US9262785B1 (en) * 2013-08-06 2016-02-16 Ralph E. Jocke Automated banking machine in communication with a remote computer that generates an alert message when a calculated number of transactions exceeds a threshold
CN107067277A (zh) * 2017-03-06 2017-08-18 深圳市钱爸爸电子商务有限公司 一种手机微信客户端推广系统及其使用方法
CN107977862A (zh) * 2017-11-30 2018-05-01 财付通支付科技有限公司 奖励数据管理方法、装置、存储介质及设备
CN108900553A (zh) * 2018-08-21 2018-11-27 北京小米移动软件有限公司 一种通信方法、装置及计算机可读存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140058752A1 (en) * 2012-08-21 2014-02-27 Siemens Aktiengesellschaft Computer network for quality testing clinical trial data

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9262785B1 (en) * 2013-08-06 2016-02-16 Ralph E. Jocke Automated banking machine in communication with a remote computer that generates an alert message when a calculated number of transactions exceeds a threshold
CN105187477A (zh) * 2014-06-12 2015-12-23 必翼7000有限公司 应用之间的数据通信的设备和方法
CN107067277A (zh) * 2017-03-06 2017-08-18 深圳市钱爸爸电子商务有限公司 一种手机微信客户端推广系统及其使用方法
CN107977862A (zh) * 2017-11-30 2018-05-01 财付通支付科技有限公司 奖励数据管理方法、装置、存储介质及设备
CN108900553A (zh) * 2018-08-21 2018-11-27 北京小米移动软件有限公司 一种通信方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN111193702A (zh) 2020-05-22

Similar Documents

Publication Publication Date Title
CN110674022B (zh) 行为数据获取方法、装置及存储介质
CN108833607B (zh) 物理地址获取方法、装置及可读介质
CN110290146B (zh) 分享口令的生成方法、装置、服务器及存储介质
CN108093307B (zh) 获取播放文件的方法和系统
CN111193702B (zh) 数据加密传输的方法和装置
CN110677262B (zh) 基于区块链的信息公证方法、装置及系统
CN111062323A (zh) 人脸图像传输方法、数值转移方法、装置及电子设备
CN110365501B (zh) 基于图形码进行群组加入处理的方法及装置
CN110290191B (zh) 资源转移结果处理方法、装置、服务器、终端及存储介质
CN111881423B (zh) 限制功能使用授权方法、装置、系统
CN111901283A (zh) 资源转移方法、装置、终端及存储介质
CN109033473B (zh) 图片分享方法、装置和计算机可读存储介质
CN111198922A (zh) 基于区块链的游戏资源管理方法及装置
CN110597840A (zh) 基于区块链的伴侣关系建立方法、装置、设备及存储介质
CN110597868A (zh) 基于区块链的信息查询方法、装置、终端及存储介质
CN112528311B (zh) 数据管理方法、装置及终端
CN114386066A (zh) 应用加固方法及装置
CN110971692B (zh) 开通服务的方法、装置及计算机存储介质
CN111064657B (zh) 关注账户分组的方法、装置、系统
CN110968549B (zh) 文件存储的方法、装置、电子设备及介质
CN110555924B (zh) 进行开锁处理的方法和装置
CN108683684B (zh) 登录目标即时通讯应用的方法、装置和系统
CN111741040A (zh) 连接建立方法、地址获取方法、装置、设备及存储介质
CN112995159B (zh) 信息处理方法、装置、终端及计算机可读存储介质
CN112564908B (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
GR01 Patent grant
GR01 Patent grant