CN109151068A - 一种基于客户端应用来处理云端数据请求的方法及系统 - Google Patents

一种基于客户端应用来处理云端数据请求的方法及系统 Download PDF

Info

Publication number
CN109151068A
CN109151068A CN201811237039.XA CN201811237039A CN109151068A CN 109151068 A CN109151068 A CN 109151068A CN 201811237039 A CN201811237039 A CN 201811237039A CN 109151068 A CN109151068 A CN 109151068A
Authority
CN
China
Prior art keywords
task
cloud
data
request
processing
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.)
Granted
Application number
CN201811237039.XA
Other languages
English (en)
Other versions
CN109151068B (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.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology 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 Beijing Qihoo Technology Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201811237039.XA priority Critical patent/CN109151068B/zh
Publication of CN109151068A publication Critical patent/CN109151068A/zh
Application granted granted Critical
Publication of CN109151068B publication Critical patent/CN109151068B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/70Game security or game management aspects
    • A63F13/71Game security or game management aspects using secure communication between game devices and game servers, e.g. by encrypting game data or authenticating players
    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/50Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers
    • A63F2300/53Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing
    • A63F2300/532Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by details of game servers details of basic data processing using secure communication, e.g. by encryption, authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种基于客户端应用来处理云端数据请求的方法及系统,其中方法包括:利用客户端应用中所嵌入的云服务功能,通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从云服务接收经过加密的云端数据请求;对经过加密的云端数据请求进行解密以获取待处理的数据任务,其中待处理的数据任务来自在云服务中运行的云端源应用;向客户端应用所归属的业务服务器发送包括待处理的数据任务的任务处理请求,以促使接收到任务处理请求的业务服务器进行与任务处理相关联的数据转发;以及对从业务服务器接收的与任务处理相关联的第一任务处理响应消息进行加密通过安全交互通道发送给云服务。

Description

一种基于客户端应用来处理云端数据请求的方法及系统
技术领域
本发明涉及云服务技术领域,并且更具体地,涉及一种基于客户端应用来处理云端数据请求的方法及系统。
背景技术
云服务是基于互联网的相关服务的增加、使用和交互模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云服务指通过网络以按需和易扩展的方式提供或获得所需服务的服务方式。这种服务可以是以信息、软件或互联网相关的服务,也可是其他服务。
目前,云服务的种类越来越多,并所提供的服务的范围越来越大。例如,当用户希望在移动终端、个人计算机等设备上运行特定应用时,可以采用在本地运行的方式,也可采用云端运行的方式。在云端运行的方式中,用户通过在移动终端、个人计算机等设备上提供的云服务来运行特定应用,其中所述特定应用的实际运行位置是云端,例如云服务中的服务器、服务节点等。特定应用的运行数据,例如显示数据和声音数据,是通过云服务来传递到移动终端、个人计算机等设备,以提供给用户。
在这种情况下,当用户希望在特定应用中进行状态更新、任务处理等特定操作时,必须要在云服务中生成相应的处理界面,如图1所示。图1为现有技术中利用云服务在云端运行特定应用的示意图100。云服务101能够在移动终端、个人计算机等设备上运行,并且能够提供多个应用,例如,应用1、应用2、…、应用N。当用户选择运行应用2时,应用2处于运行状态。此时,如果用户希望在应用2中进行状态更新、任务处理等特定操作时,云服务会为用户提供新的界面,例如,繁琐的任务处理界面111。这种繁琐的任务处理界面例如是通过网页的方式来进行与状态更新、任务处理等特定操作相关的数据操作、数据请求等。
在这种方式下,用户必须进行繁琐的操作,例如网页操作,才能够实现状态更新、任务处理等特定操作。为此,现有技术的方式给用户的操作体验带来非有益的影响。
发明内容
为了解决上述问题,提供一种基于客户端应用来处理云端数据请求的方法,所述方法包括:
利用所述客户端应用中所嵌入的云服务功能,通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从所述云服务接收经过加密的云端数据请求;
对所述经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对所述经过解密的云端数据请求进行解析以获取待处理的数据任务,其中所述待处理的数据任务来自在所述云服务中运行的云端源应用;
向所述客户端应用所归属的业务服务器发送包括所述待处理的数据任务的任务处理请求,以促使接收到所述任务处理请求的业务服务器基于所述待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发;以及
对从所述业务服务器接收的与所述任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息,并利用客户端应用中所嵌入的云服务功能将经过加密的第一任务处理响应消息通过所述安全交互通道发送给所述云服务。
在利用所述客户端应用中所嵌入的云服务功能之前还包括,在本地运行的客户端应用中嵌入用于与云端运行的云服务建立所述安全交互通道的云服务功能。
所述云服务功能与所述客户端应用在功能上相互独立,并且所述客户端应用无法修改所述云服务功能所接收的数据或要发送的数据。
其中,在所述安全交互通道中进行传输的数据均为经过加密的数据。
所述经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务,其中所述云端数据请求的标识符用于唯一地标识所述经过解密的云端数据请求。
其中所述任务名称包括:任务标题、任务识别号和任务生成时间。
其中所述任务内容包括:发起任务处理的用户的标识符、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件。
还包括在所述云服务中运行的云端源应用中嵌入客户端功能,所述客户端功能用于根据任务名称和任务内容来生成所述待处理的数据任务。
所述客户端功能将所述待处理的数据任务发送给所述云服务,以使得所述云服务为所述待处理的数据任务分配用于进行云端标识区分的云端数据请求的标识符,并能够根据所述待处理的数据任务和云端数据请求的标识符生成云端数据请求。
所述云服务根据生成所述待处理的数据任务的云端源应用的标识符来确定所述云端数据请求的标识符。
所述云服务对所生成的云端数据请求进行加密以生成经过加密的云端数据请求,通过所述安全交互通道将所述经过加密的云端数据请求发送给所述客户端应用中所嵌入的云服务功能。
还包括当所述云端源应用在运行中需要进行运行状态的变更时,向应用服务器发送包括变更内容的状态变更请求,以促使所述应用服务器根据从所述云端源应用所接收的状态变更请求来生成指示是否允许状态变更的响应消息。
当所述云端源应用从所述应用服务器接收到与状态变更相关联的响应消息时,对所述与状态变更相关联的响应消息进行解析以确定所述应用服务器是否允许进行状态变更,当所述与状态变更相关联的响应消息指示所述应用服务器允许所述云端源应用进行状态变更时,所述云端源应用基于所述变更内容来生成任务名称和任务内容,其中所述任务名称包括:任务标题、任务识别号和任务生成时间,并且所述任务内容包括:发起任务处理的用户的标识符、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件;以及
根据任务名称和任务内容来生成所述待处理的数据任务。
其中促使接收到所述任务处理请求的业务服务器基于所述待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发包括:
接收到所述任务处理请求的业务服务器从接收到的任务处理请求中获取所述待处理的数据任务;
根据所述待处理的数据任务中的任务名称从多个任务处理服务器中选择与所述待处理的数据任务相关联的目标任务处理服务器;以及
将所述待处理的数据任务发送给所述目标任务处理服务器。
促使所述目标任务处理服务器对所接收的待处理的数据任务进行解析从而确定任务内容,基于所述任务内容中的与云端源应用相关联的更新内容从多个业务处理流程中选择与更新内容相关联的业务处理流程,促使所选择的业务处理流程根据所述任务内容中的与更新内容相关联的更新条件来执行业务处理。
当所选择的业务处理流程确定所述待处理的数据任务已经处理完成时,将所述待处理的数据任务的处理结果通知给所述目标任务处理服务器,以使得所述目标任务处理服务器将所述处理结果发送给所述业务服务器。
在接收到所述任务处理请求的业务服务器从接收到的任务处理请求中获取所述待处理的数据任务之后还包括,
所述业务服务器从所述待处理的数据任务所包括的任务内容中获取应用服务器的标识符。
促使所述业务服务器将所接收的处理结果发送给所述客户端应用中所嵌入的云服务功能。
还包括,促使在所述业务服务器接收到所述待处理的数据任务的处理结果时,启动推送计时器并为所述推送计时器设置到期时间,当所述推送计时器到期时,所述业务服务器基于应用服务器的标识符确定所述应用服务器的网络地址,根据所述应用服务器的网络地址将所述待处理的数据任务的处理结果、任务名称和任务内容构成第二任务处理响应消息,将所述第二任务处理响应消息发送给所述应用服务器。
还包括,促使所述云端源应用中所嵌入的客户端功能对所述经过加密的第一任务处理响应消息进行解密以获取经过解密的第一任务处理响应消息,对所述经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间;
向所述业务服务器发送包括所述任务名称的结果查询请求,以促使所述业务服务器基于所述任务名称来确定所查询的任务内容和处理结果;
基于从所述业务服务器接收的所查询的任务内容和处理结果对所述经过解密的第一任务处理响应消息中任务内容和处理结果进行正确性验证;以及
当确定所述经过解密的第一任务处理响应消息中任务内容和处理结果的验证结果为正确时,将所述经过解密的第一任务处理响应消息发送给与所述云端源应用相关联的应用服务器。
还包括,促使所述应用服务器在接收到所述经过解密的第一任务处理响应消息后,对所述经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间;
在确定所述处理结果为成功时,获取所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容;以及
如果确定当前时间超过所述期满时间,则根据所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对所述云端源应用的运行状态进行更新。
还包括,促使所述应用服务器在接收到所述经过解密的第一任务处理响应消息后,对所述经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间;
在确定处理结果为成功时,获取所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容;
如果确定当前时间没有超过所述期满时间,则等待来自所述业务服务器的与所述云端源应用相关联的第二任务处理响应消息。
还包括,当从所述业务服务器接收到与所述云端源应用相关联的第二任务处理响应消息时,所述应用服务器确定所述第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果相同,则根据所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对所述云端源应用的运行状态进行更新。
还包括,当从所述业务服务器接收到与所述云端源应用相关联的第二任务处理响应消息时,所述应用服务器确定所述第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果不相同,则不对所述云端源应用的运行状态进行更新。
还包括向所述云端源应用发送运行状态更新失败的响应消息。
根据本发明的另一方面,提供一种基于客户端应用来处理云端数据请求的系统,所述系统包括:
接收单元,利用所述客户端应用中所嵌入的云服务功能,通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从所述云服务接收经过加密的云端数据请求;
解密单元,对所述经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对所述经过解密的云端数据请求进行解析以获取待处理的数据任务,其中所述待处理的数据任务来自在所述云服务中运行的云端源应用;
发送单元,向所述客户端应用所归属的业务服务器发送包括所述待处理的数据任务的任务处理请求,以促使接收到所述任务处理请求的业务服务器基于所述待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发,并利用客户端应用中所嵌入的云服务功能将经过加密的第一任务处理响应消息通过所述安全交互通道发送给所述云服务;以及
加密单元,对从所述业务服务器接收的与所述任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息。
还包括初始化单元,用于在本地运行的客户端应用中嵌入用于与云端运行的云服务建立所述安全交互通道的云服务功能。
所述云服务功能与所述客户端应用在功能上相互独立,并且所述客户端应用无法修改所述云服务功能所接收的数据或要发送的数据。
其中,在所述安全交互通道中进行传输的数据均为经过加密的数据。
所述经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务,其中所述云端数据请求的标识符用于唯一地标识所述经过解密的云端数据请求。
其中所述任务名称包括:任务标题、任务识别号和任务生成时间。
其中所述任务内容包括:发起任务处理的用户的标识符、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件。
还包括初始化单元,用于在所述云服务中运行的云端源应用中嵌入客户端功能,所述客户端功能用于根据任务名称和任务内容来生成所述待处理的数据任务。
所述客户端功能将所述待处理的数据任务发送给所述云服务,以使得所述云服务为所述待处理的数据任务分配用于进行云端标识区分的云端数据请求的标识符,并能够根据所述待处理的数据任务和云端数据请求的标识符生成云端数据请求。
所述云服务根据生成所述待处理的数据任务的云端源应用的标识符来确定所述云端数据请求的标识符。
所述云服务对所生成的云端数据请求进行加密以生成经过加密的云端数据请求,通过所述安全交互通道将所述经过加密的云端数据请求发送给所述客户端应用中所嵌入的云服务功能。
还包括当所述云端源应用在运行中需要进行运行状态的变更时,向应用服务器发送包括变更内容的状态变更请求,以促使所述应用服务器根据从所述云端源应用所接收的状态变更请求来生成指示是否允许状态变更的响应消息。
当所述云端源应用从所述应用服务器接收到与状态变更相关联的响应消息时,对所述与状态变更相关联的响应消息进行解析以确定所述应用服务器是否允许进行状态变更,当所述与状态变更相关联的响应消息指示所述应用服务器允许所述云端源应用进行状态变更时,所述云端源应用基于所述变更内容来生成任务名称和任务内容,其中所述任务名称包括:任务标题、任务识别号和任务生成时间,并且所述任务内容包括:发起任务处理的用户的标识符、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件;以及
根据任务名称和任务内容来生成所述待处理的数据任务。
其中所述发送单元促使接收到所述任务处理请求的业务服务器基于所述待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发包括:
促使接收到所述任务处理请求的业务服务器从接收到的任务处理请求中获取所述待处理的数据任务;
促使接收到所述任务处理请求的业务服务器根据所述待处理的数据任务中的任务名称从多个任务处理服务器中选择与所述待处理的数据任务相关联的目标任务处理服务器;以及
促使接收到所述任务处理请求的业务服务器将所述待处理的数据任务发送给所述目标任务处理服务器。
促使所述目标任务处理服务器对所接收的待处理的数据任务进行解析从而确定任务内容,基于所述任务内容中的与云端源应用相关联的更新内容从多个业务处理流程中选择与更新内容相关联的业务处理流程,促使所选择的业务处理流程根据所述任务内容中的与更新内容相关联的更新条件来执行业务处理。
当所选择的业务处理流程确定所述待处理的数据任务已经处理完成时,将所述待处理的数据任务的处理结果通知给所述目标任务处理服务器,以使得所述目标任务处理服务器将所述处理结果发送给所述业务服务器。
在所述发送单元促使所述业务服务器从所述待处理的数据任务所包括的任务内容中获取应用服务器的标识符。
促使所述业务服务器将所接收的处理结果发送给所述客户端应用中所嵌入的云服务功能。
还包括,促使在所述业务服务器接收到所述待处理的数据任务的处理结果时,启动推送计时器并为所述推送计时器设置到期时间,当所述推送计时器到期时,所述业务服务器基于应用服务器的标识符确定所述应用服务器的网络地址,根据所述应用服务器的网络地址将所述待处理的数据任务的处理结果、任务名称和任务内容构成第二任务处理响应消息,将所述第二任务处理响应消息发送给所述应用服务器。
还包括,促使所述云端源应用中所嵌入的客户端功能对所述经过加密的第一任务处理响应消息进行解密以获取经过解密的第一任务处理响应消息,对所述经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间;
向所述业务服务器发送包括所述任务名称的结果查询请求,以促使所述业务服务器基于所述任务名称来确定所查询的任务内容和处理结果;
基于从所述业务服务器接收的所查询的任务内容和处理结果对所述经过解密的第一任务处理响应消息中任务内容和处理结果进行正确性验证;以及
当确定所述经过解密的第一任务处理响应消息中任务内容和处理结果的验证结果为正确时,将所述经过解密的第一任务处理响应消息发送给与所述云端源应用相关联的应用服务器。
还包括,促使所述应用服务器在接收到所述经过解密的第一任务处理响应消息后,对所述经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间;
在确定所述处理结果为成功时,获取所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容;以及
如果确定当前时间超过所述期满时间,则根据所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对所述云端源应用的运行状态进行更新。
还包括,促使所述应用服务器在接收到所述经过解密的第一任务处理响应消息后,对所述经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间;
在确定处理结果为成功时,获取所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容;
如果确定当前时间没有超过所述期满时间,则等待来自所述业务服务器的与所述云端源应用相关联的第二任务处理响应消息。
还包括,当从所述业务服务器接收到与所述云端源应用相关联的第二任务处理响应消息时,所述应用服务器确定所述第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果相同,则根据所述经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对所述云端源应用的运行状态进行更新。
还包括,当从所述业务服务器接收到与所述云端源应用相关联的第二任务处理响应消息时,所述应用服务器确定所述第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果不相同,则不对所述云端源应用的运行状态进行更新。
还包括向所述云端源应用发送运行状态更新失败的响应消息。
根据本发明的再一方面,提供一种移动终端,包括或用于执行如上所述的系统。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1为现有技术中利用云服务在云端运行特定应用的示意图;
图2为根据本发明优选实施方式的基于客户端应用来处理云端数据请求的方法的流程图;
图3为根据本发明优选实施方式的安全交互通道的结构示意图;
图4为根据本发明优选实施方式的基于客户端应用来处理云端数据请求的系统的结构示意图;
图5为根据本发明优选实施方式的基于手游助手客户端来处理海马云的云端数据请求的系统的结构示意图;以及
图6为根据本发明另一优选实施方式的基于客户端应用来处理云端数据请求的系统的结构示意图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
图2为根据本发明优选实施方式的基于客户端应用来处理云端数据请求的方法200的流程图。方法200首先通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从云服务接收经过加密的云端数据请求,基于对经过加密的云端数据请求进行处理来获取待处理的数据任务,然后,向客户端应用所归属的业务服务器发送包括待处理的数据任务的任务处理请求并对从业务服务器接收的与任务处理相关联的第一任务处理响应消息进行加密并利用通过安全交互通道发送给云服务。
如图1所示,方法200从步骤201处开始。在步骤201,利用客户端应用中所嵌入的云服务功能,通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从云服务接收经过加密的云端数据请求。
在利用客户端应用中所嵌入的云服务功能之前还包括,在本地运行的客户端应用中嵌入用于与云端运行的云服务建立安全交互通道的云服务功能。可替换地,在客户端应用被安装到用户设备中时,将云服务功能嵌入到客户端应用中。可替换地,在生成客户端应用时,将云服务功能嵌入到客户端应用中。可替换地,响应于云服务的安装请求或嵌入请求,在客户端应用中安装或嵌入云服务功能。
在客户端应用中的云服务功能与客户端应用在功能上相互独立,即云服务功能的运行和客户端应用的运行是相互独立的。客户端应用无法修改云服务功能所接收的数据或要发送的数据。云服务功能能够向云服务发送和/或接收数据,但所发送和/或接收的数据均为加密的数据。客户端应用无法破解加密的数据,并且因此无法对所发送和/或接收的数据进行查看和修改。即,在安全交互通道中进行传输的数据均为经过加密的数据。
在本地运行的客户端应用和云端运行的云服务之间的安全交互通道是能够进行双向数据传输的安全交互通道。本申请通过本地运行的客户端应用中所嵌入的云服务功能与和云端运行的云服务之间建立安全交互通道。云服务功能能够通过安全交互通道向云服务发送经过加密的数据,并且云服务能够通过安全交互通道向云服务功能发送经过加密的数据。
其中经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务。云端数据请求的标识符用于唯一地标识经过解密的云端数据请求。当云服务根据待处理的数据任务生成云端数据请求时,会为所生成的云端数据请求设置/分配能够唯一地标识云端数据请求的标识符,并将云端数据请求的标识符与待处理的数据任务组成云端数据请求。将所组成的云端数据请求进行加密以生成经过加密的云端数据请求,并将经过加密的云端数据请求发送给客户端应用中的云服务功能。
待处理的数据任务包括任务名称和任务内容。其中任务名称包括:任务标题、任务识别号和任务生成时间。任务标题例如是支付任务、数据修改任务等。任务识别号是用于唯一地标识待处理的数据任务的标识或标识符。任务生成时间是待处理的数据任务被生成的时间。其中待处理的数据任务例如可以是支付任务、数据修改任务等。
待处理的数据任务来自在云服务中运行的云端源应用或是由云服务中运行的云端源应用所发起的。任务内容包括:发起任务处理的用户的标识符、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件。其中,待处理的数据任务来自于用户所发起的任务处理。例如,当用户在运行云端源应用时,希望进行支付、数据修改等时,会发起针对于支付任务、数据修改任务等的任务处理。发起任务处理的用户的标识符用于唯一地标识这个用户,例如是用户名、用户ID等。云端源应用的标识符用于唯一地标识云端源应用,例如是云端源应用的名称、ID等。应用服务器的标识符是用于唯一地标识与云端源应用相关联的应用服务器的标识符。当云端源应用为特定游戏应用时,应用服务器是特定游戏应用的服务器。与云端源应用相关联的更新内容例如是支付任务、数据修改任务等相关联的内容。与更新内容相关联的更新条件是为了完成支付任务、数据修改任务等所需要的条件。
在步骤202,对经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对经过解密的云端数据请求进行解析以获取待处理的数据任务,其中待处理的数据任务来自在云服务中运行的云端源应用。
在云服务中运行的云端源应用中嵌入客户端功能。本申请可以在云端源应用被初始化以准备运行时在云端源应用中嵌入客户端功能。可替换地,本申请可以在云端源应用被启动运行时在云端源应用中嵌入客户端功能。客户端功能用于根据任务名称和任务内容来生成待处理的数据任务。
在根据任务名称和任务内容来生成待处理的数据任务之后,客户端功能将待处理的数据任务发送给云服务,以使得云服务为待处理的数据任务设置/分配用于进行云端标识区分的云端数据请求的标识符或能够唯一地标识云端数据请求的标识符,并能够根据待处理的数据任务和云端数据请求的标识符生成云端数据请求。
云服务根据生成待处理的数据任务的云端源应用的标识符来确定云端数据请求的标识符。例如,计算云端源应用的标识符的哈希值,将计算得到的哈希值作为云端数据请求的标识符。可替换地,将云端源应用的标识符、当前时间和任务序号进行组合以生成云端数据请求的标识符。
在根据待处理的数据任务和云端数据请求的标识符生成云端数据请求之后,云服务对所生成的云端数据请求进行加密以生成经过加密的云端数据请求,通过安全交互通道将经过加密的云端数据请求发送给客户端应用中所嵌入的云服务功能。
在根据任务名称和任务内容来生成待处理的数据任务之前,当云端源应用在运行中需要进行运行状态的变更时,向应用服务器发送包括变更内容的状态变更请求,以促使应用服务器根据从云端源应用所接收的状态变更请求来生成指示是否允许状态变更的响应消息。例如,当用户在运行云端源应用时,希望进行支付、数据修改等时,则需要进行运行状态的变更。为此,云端源应用向应用服务器发送包括变更内容的状态变更请求,其中状态变更请求可以包括与云端源应用相关联的更新内容和与更新内容相关联的更新条件。
其中根据所接收的状态变更请求来生成指示是否允许状态变更的响应消息包括:当应用服务器从云端源应用接收到状态变更请求时,对与云端源应用相关联的更新内容和与更新内容相关联的更新条件进行合法性验证,当确定与云端源应用相关联的更新内容和与更新内容相关联的更新条件通过合法性验证时,向云端源应用发送允许状态变更的响应消息。当确定与云端源应用相关联的更新内容和与更新内容相关联的更新条件未通过合法性验证时,向云端源应用发送不允许状态变更的响应消息。
合法性验证包括确定是否允许云端源应用进行更新内容的更新,以及更新条件是否与更新内容相匹配。当确定允许云端源应用进行更新内容的更新,并且确定更新条件与更新内容相匹配时,向云端源应用发送允许状态变更的响应消息;否则,向云端源应用发送不允许状态变更的响应消息。
当云端源应用从应用服务器接收到与状态变更相关联的响应消息时,对与状态变更相关联的响应消息进行解析以确定应用服务器是否允许进行状态变更。当与状态变更相关联的响应消息指示应用服务器允许云端源应用进行状态变更时,云端源应用基于变更内容来生成任务名称和任务内容,其中任务名称包括:任务标题、任务识别号和任务生成时间,并且任务内容包括:发起任务处理的用户的标识、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件。云端源应用根据任务名称和任务内容来生成待处理的数据任务。
在步骤203,向客户端应用所归属的业务服务器发送包括待处理的数据任务的任务处理请求,以促使接收到任务处理请求的业务服务器基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发。
促使接收到任务处理请求的业务服务器基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发包括:接收到任务处理请求的业务服务器从接收到的任务处理请求中获取待处理的数据任务。然后,业务服务器根据待处理的数据任务中的任务名称从多个任务处理服务器中选择与待处理的数据任务相关联的目标任务处理服务器。例如,当任务名称为支付任务时,业务服务器将多个任务处理服务器中选择与支付任务处理相关联的服务器,例如,支付中心。例如,当任务名称为数据修改任务时,业务服务器将多个任务处理服务器中选择与数据修改任务处理相关联的服务器,例如,数据服务器。将待处理的数据任务发送给目标任务处理服务器,例如将待处理的数据任务发送给支付中心或数据服务器。
本申请促使目标任务处理服务器,例如支付中心或数据服务器,对所接收的待处理的数据任务进行解析从而确定任务内容。目标任务处理服务器基于任务内容中的与云端源应用相关联的更新内容从多个业务处理流程中选择与更新内容相关联的业务处理流程。促使所选择的业务处理流程根据任务内容中的与更新内容相关联的更新条件来执行业务处理。即,当用户或云端源应用满足了与更新内容相关联的更新条件时,所选择的业务处理流程对与云端源应用相关联的更新内容进行业务处理。
当所选择的业务处理流程确定待处理的数据任务已经处理完成时,将待处理的数据任务的处理结果,例如待处理的数据任务成功完成/处理成功,或者待处理的数据任务未成功完成/处理失败,通知给目标任务处理服务器,以使得目标任务处理服务器将处理结果发送给业务服务器。
在接收到任务处理请求的业务服务器从接收到的任务处理请求中获取待处理的数据任务之后还包括,业务服务器从待处理的数据任务所包括的任务内容中获取应用服务器的标识符。在一个方面,本申请促使业务服务器将所接收的处理结果发送给客户端应用中所嵌入的云服务功能。和/或,在另一个方面,本申请促使在业务服务器接收到待处理的数据任务的处理结果时,启动推送计时器并为推送计时器设置到期时间。例如,当前时间为2018年9月28日11点20分05秒,并且到期时间为2018年9月28日11点25分36秒。当推送计时器到期时,例如,当前时间到达2018年9月28日11点25分36秒时,业务服务器基于应用服务器的标识符确定应用服务器的网络地址,根据应用服务器的网络地址将待处理的数据任务的处理结果、任务名称和任务内容构成第二任务处理响应消息,将第二任务处理响应消息发送给应用服务器。
在步骤204,对从业务服务器接收的与任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息,并利用客户端应用中所嵌入的云服务功能将经过加密的第一任务处理响应消息通过安全交互通道发送给云服务。
本申请促使云端源应用中所嵌入的客户端功能对经过加密的第一任务处理响应消息进行解密以获取经过解密的第一任务处理响应消息,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中期满时间为应用服务器等待来自业务服务器的第二任务处理响应消息的最后时间。例如,期满时间为2018年9月28日11点30分00秒,则应用服务器在2018年9月28日11点30分00秒之前无论是否接收到经过解密的第一任务处理响应消息,都会等待来自业务服务器的第二任务处理响应消息。在当前时间到达期满时间,例如2018年9月28日11点30分00秒时,应用服务器不会等待来自业务服务器的第二任务处理响应消息,而是使用所接收到的经过解密的第一任务处理响应消息来确定处理结果。
云端源应用向业务服务器发送包括任务名称的结果查询请求,以促使业务服务器基于任务名称来确定所查询的任务内容和处理结果。基于从业务服务器接收的所查询的任务内容和处理结果对经过解密的第一任务处理响应消息中任务内容和处理结果进行正确性验证。其中正确性验证可以是确定经过解密的第一任务处理响应消息中任务内容和处理结果与从业务服务器接收的所查询的任务内容和处理结果是否相同。当确定经过解密的第一任务处理响应消息中任务内容和处理结果的验证结果为正确时,即经过解密的第一任务处理响应消息中任务内容和处理结果与从业务服务器接收的所查询的任务内容和处理结果相同,将经过解密的第一任务处理响应消息发送给与云端源应用相关联的应用服务器。
本申请促使应用服务器在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容。如果确定当前时间超过期满时间,则根据经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对云端源应用的运行状态进行更新。
在其它情况下,本申请促使应用服务器在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容。如果确定当前时间没有超过期满时间,则等待来自业务服务器的与云端源应用相关联的第二任务处理响应消息。
此外,当从业务服务器接收到与云端源应用相关联的第二任务处理响应消息时,应用服务器确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果相同,则根据经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对云端源应用的运行状态进行更新。
当从业务服务器接收到与云端源应用相关联的第二任务处理响应消息时,应用服务器确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果不相同,则不对云端源应用的运行状态进行更新。本申请还包括向云端源应用发送运行状态更新失败的响应消息。
图3为根据本发明优选实施方式的安全交互通道的结构示意图300。如图3所示,在本地运行的客户端应用310中嵌入用于与云端运行的云服务301建立安全交互通道305的云服务功能311。可替换地,在客户端应用310被安装到用户设备中时,将云服务功能311嵌入到客户端应用310中。可替换地,在生成客户端应用310时,将云服务功能311嵌入到客户端应用310中。可替换地,响应于云服务301的安装请求或嵌入请求,在客户端应用310中安装或嵌入云服务功能311。安全交互通道305可以是双向通信连接。
在云服务301中运行的云端源应用302中嵌入客户端功能303。本申请可以在云端源应用302被初始化以准备运行时在云端源应用302中嵌入客户端功能303。可替换地,本申请可以在云端源应用302被启动运行时在云端源应用302中嵌入客户端功能303。客户端功能303用于根据任务名称和任务内容来生成待处理的数据任务。
在客户端应用310中的云服务功能311与客户端应用310在功能上相互独立,即云服务功能311的运行和客户端应用310的运行是相互独立的。客户端应用310无法修改云服务功能311所接收的数据或要发送的数据。云服务功能311能够向云服务301发送和/或接收数据,但所发送和/或接收的数据均为加密的数据。客户端应用310无法破解加密的数据,并且因此无法对所发送和/或接收的数据进行查看和修改。即,在安全交互通道305中进行传输的数据均为经过加密的数据。
在本地运行的客户端应用310和云端运行的云服务301之间的安全交互通道是能够进行双向数据传输的安全交互通道305。本申请通过本地运行的客户端应用310中所嵌入的云服务功能311与和云端运行的云服务301之间建立安全交互通道305。云服务功能311能够通过安全交互通道305向云服务301发送经过加密的数据,并且云服务301能够通过安全交互通道305向云服务功能311发送经过加密的数据。
图4为根据本发明优选实施方式的基于客户端应用来处理云端数据请求的系统400的结构示意图。如图4所示,本申请利用客户端应用410中所嵌入的云服务功能411,通过本地运行的客户端应用410和云端运行的云服务401之间的安全交互通道405从云服务401接收经过加密的云端数据请求。
在利用客户端应用410中所嵌入的云服务功能411之前还包括,在本地运行的客户端应用410中嵌入用于与云端运行的云服务401建立安全交互通道405的云服务功能411。可替换地,在客户端应用410被安装到用户设备中时,将云服务功能411嵌入到客户端应用410中。可替换地,在生成客户端应用410时,将云服务功能411嵌入到客户端应用410中。可替换地,响应于云服务401的安装请求或嵌入请求,在客户端应用410中安装或嵌入云服务功能411。
在客户端应用410中的云服务功能411与客户端应用410在功能上相互独立,即云服务功能411的运行和客户端应用410的运行是相互独立的。客户端应用410无法修改云服务功能411所接收的数据或要发送的数据。云服务功能411能够向云服务401发送和/或接收数据,但所发送和/或接收的数据均为加密的数据。客户端应用410无法破解加密的数据,并且因此无法对所发送和/或接收的数据进行查看和修改。即,在安全交互通道405中进行传输的数据均为经过加密的数据。
在本地运行的客户端应用410和云端运行的云服务401之间的安全交互通道405是能够进行双向数据传输的安全交互通道405。本申请通过本地运行的客户端应用410中所嵌入的云服务功能411与和云端运行的云服务401之间建立安全交互通道405。云服务功能411能够通过安全交互通道405向云服务401发送经过加密的数据,并且云服务401能够通过安全交互通道405向云服务功能411发送经过加密的数据。
其中经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务。云端数据请求的标识符用于唯一地标识经过解密的云端数据请求。当云服务401根据待处理的数据任务生成云端数据请求时,会为所生成的云端数据请求设置/分配能够唯一地标识云端数据请求的标识符,并将云端数据请求的标识符与待处理的数据任务组成云端数据请求。将所组成的云端数据请求进行加密以生成经过加密的云端数据请求,并将经过加密的云端数据请求发送给客户端应用410中的云服务功能411。
待处理的数据任务包括任务名称和任务内容。其中任务名称包括:任务标题、任务识别号和任务生成时间。任务标题例如是支付任务、数据修改任务等。任务识别号是用于唯一地标识待处理的数据任务的标识或标识符。任务生成时间是待处理的数据任务被生成的时间。其中待处理的数据任务例如可以是支付任务、数据修改任务等。
待处理的数据任务来自在云服务401中运行的云端源应用402或是由云服务401中运行的云端源应用402所发起的。任务内容包括:发起任务处理的用户的标识符、云端源应用402的标识符、应用服务器420的标识符、与云端源应用402相关联的更新内容和与更新内容相关联的更新条件。其中,待处理的数据任务来自于用户所发起的任务处理。例如,当用户在运行云端源应用402时,希望进行支付、数据修改等时,会发起针对于支付任务、数据修改任务等的任务处理。发起任务处理的用户的标识符用于唯一地标识这个用户,例如是用户名、用户ID等。云端源应用402的标识符用于唯一地标识云端源应用402,例如是云端源应用402的名称、ID等。应用服务器420的标识符是用于唯一地标识与云端源应用402相关联的应用服务器420的标识符。当云端源应用402为特定游戏应用时,应用服务器420是特定游戏应用的服务器。与云端源应用402相关联的更新内容例如是支付任务、数据修改任务等相关联的内容。与更新内容相关联的更新条件是为了完成支付任务、数据修改任务等所需要的条件。
对经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对经过解密的云端数据请求进行解析以获取待处理的数据任务,其中待处理的数据任务来自在云服务401中运行的云端源应用402。
在云服务401中运行的云端源应用402中嵌入客户端功能403。本申请可以在云端源应用402被初始化以准备运行时在云端源应用402中嵌入客户端功能403。可替换地,本申请可以在云端源应用402被启动运行时在云端源应用402中嵌入客户端功能403。客户端功能403用于根据任务名称和任务内容来生成待处理的数据任务。
在根据任务名称和任务内容来生成待处理的数据任务之后,客户端功能403将待处理的数据任务发送给云服务401,以使得云服务401为待处理的数据任务设置/分配用于进行云端标识区分的云端数据请求的标识符或能够唯一地标识云端数据请求的标识符,并能够根据待处理的数据任务和云端数据请求的标识符生成云端数据请求。
云服务401根据生成待处理的数据任务的云端源应用402的标识符来确定云端数据请求的标识符。例如,计算云端源应用402的标识符的哈希值,将计算得到的哈希值作为云端数据请求的标识符。可替换地,将云端源应用402的标识符、当前时间和任务序号进行组合以生成云端数据请求的标识符。
在根据待处理的数据任务和云端数据请求的标识符生成云端数据请求之后,云服务401对所生成的云端数据请求进行加密以生成经过加密的云端数据请求,通过安全交互通道405将经过加密的云端数据请求发送给客户端应用410中所嵌入的云服务功能411。
在根据任务名称和任务内容来生成待处理的数据任务之前,当云端源应用402在运行中需要进行运行状态的变更时,向应用服务器420发送包括变更内容的状态变更请求,以促使应用服务器420根据从云端源应用402所接收的状态变更请求来生成指示是否允许状态变更的响应消息。例如,当用户在运行云端源应用402时,希望进行支付、数据修改等时,则需要进行运行状态的变更。为此,云端源应用402向应用服务器420发送包括变更内容的状态变更请求,其中状态变更请求可以包括与云端源应用402相关联的更新内容和与更新内容相关联的更新条件。
其中根据所接收的状态变更请求来生成指示是否允许状态变更的响应消息包括:当应用服务器420从云端源应用402接收到状态变更请求时,对与云端源应用402相关联的更新内容和与更新内容相关联的更新条件进行合法性验证,当确定与云端源应用402相关联的更新内容和与更新内容相关联的更新条件通过合法性验证时,向云端源应用402发送允许状态变更的响应消息。当确定与云端源应用402相关联的更新内容和与更新内容相关联的更新条件未通过合法性验证时,向云端源应用402发送不允许状态变更的响应消息。
合法性验证包括确定是否允许云端源应用402进行更新内容的更新,以及更新条件是否与更新内容相匹配。当确定允许云端源应用402进行更新内容的更新,并且确定更新条件与更新内容相匹配时,向云端源应用402发送允许状态变更的响应消息;否则,向云端源应用402发送不允许状态变更的响应消息。
当云端源应用402从应用服务器420接收到与状态变更相关联的响应消息时,对与状态变更相关联的响应消息进行解析以确定应用服务器420是否允许进行状态变更。当与状态变更相关联的响应消息指示应用服务器420允许云端源应用402进行状态变更时,云端源应用402基于变更内容来生成任务名称和任务内容,其中任务名称包括:任务标题、任务识别号和任务生成时间,并且任务内容包括:发起任务处理的用户的标识、云端源应用402的标识符、应用服务器420的标识符、与云端源应用402相关联的更新内容和与更新内容相关联的更新条件。云端源应用402根据任务名称和任务内容来生成待处理的数据任务。
向客户端应用410所归属的业务服务器430发送包括待处理的数据任务的任务处理请求,以促使接收到任务处理请求的业务服务器430基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发。
促使接收到任务处理请求的业务服务器430基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发包括:接收到任务处理请求的业务服务器430从接收到的任务处理请求中获取待处理的数据任务。然后,业务服务器430根据待处理的数据任务中的任务名称从多个任务处理服务器440-1、440-2、……、440-N中选择与待处理的数据任务相关联的目标任务处理服务器440-2。例如,当任务名称为支付任务时,业务服务器430将多个任务处理服务器中选择与支付任务处理相关联的服务器,例如,支付中心。例如,当任务名称为数据修改任务时,业务服务器430将多个任务处理服务器中选择与数据修改任务处理相关联的服务器,例如,数据服务器。将待处理的数据任务发送给目标任务处理服务器440-2,例如将待处理的数据任务发送给支付中心或数据服务器。
本申请促使目标任务处理服务器440-2,例如支付中心或数据服务器,对所接收的待处理的数据任务进行解析从而确定任务内容。目标任务处理服务器440-2基于任务内容中的与云端源应用402相关联的更新内容从多个业务处理流程中选择与更新内容相关联的业务处理流程。促使所选择的业务处理流程根据任务内容中的与更新内容相关联的更新条件来执行业务处理。即,当用户或云端源应用402满足了与更新内容相关联的更新条件时,所选择的业务处理流程对与云端源应用402相关联的更新内容进行业务处理。
当所选择的业务处理流程确定待处理的数据任务已经处理完成时,将待处理的数据任务的处理结果,例如待处理的数据任务成功完成/处理成功,或者待处理的数据任务未成功完成/处理失败,通知给目标任务处理服务器440-2,以使得目标任务处理服务器440-2将处理结果发送给业务服务器430。
在接收到任务处理请求的业务服务器430从接收到的任务处理请求中获取待处理的数据任务之后还包括,业务服务器430从待处理的数据任务所包括的任务内容中获取应用服务器420的标识符。在一个方面,本申请促使业务服务器430将所接收的处理结果发送给客户端应用410中所嵌入的云服务功能411。和/或,在另一个方面,本申请促使在业务服务器430接收到待处理的数据任务的处理结果时,启动推送计时器并为推送计时器设置到期时间。当推送计时器到期时,业务服务器430基于应用服务器420的标识符确定应用服务器420的网络地址,根据应用服务器420的网络地址将待处理的数据任务的处理结果、任务名称和任务内容构成第二任务处理响应消息,将第二任务处理响应消息发送给应用服务器420。
本申请对从业务服务器430接收的与任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息,并利用客户端应用410中所嵌入的云服务功能411将经过加密的第一任务处理响应消息通过安全交互通道405发送给云服务401。
本申请促使云端源应用402中所嵌入的客户端功能403对经过加密的第一任务处理响应消息进行解密以获取经过解密的第一任务处理响应消息,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中期满时间为应用服务器420等待来自业务服务器430的第二任务处理响应消息的最后时间。例如,期满时间为2018年9月28日11点30分00秒,则应用服务器420在2018年9月28日11点30分00秒之前无论是否接收到经过解密的第一任务处理响应消息,都会等待来自业务服务器430的第二任务处理响应消息。在当前时间到达期满时间,例如2018年9月28日11点30分00秒时,应用服务器420不会等待来自业务服务器430的第二任务处理响应消息,而是使用所接收到的经过解密的第一任务处理响应消息来确定处理结果。
云端源应用402向业务服务器430发送包括任务名称的结果查询请求,以促使业务服务器430基于任务名称来确定所查询的任务内容和处理结果。基于从业务服务器430接收的所查询的任务内容和处理结果对经过解密的第一任务处理响应消息中任务内容和处理结果进行正确性验证。其中正确性验证可以是确定经过解密的第一任务处理响应消息中任务内容和处理结果与从业务服务器430接收的所查询的任务内容和处理结果是否相同。当确定经过解密的第一任务处理响应消息中任务内容和处理结果的验证结果为正确时,即经过解密的第一任务处理响应消息中任务内容和处理结果与从业务服务器430接收的所查询的任务内容和处理结果相同,将经过解密的第一任务处理响应消息发送给与云端源应用402相关联的应用服务器420。
本申请促使应用服务器420在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与云端源应用402相关联的更新内容。如果确定当前时间超过期满时间,则根据经过解密的第一任务处理响应消息的任务内容中的与云端源应用402相关联的更新内容对云端源应用402的运行状态进行更新。
在其它情况下,本申请促使应用服务器420在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与云端源应用402相关联的更新内容。如果确定当前时间没有超过期满时间,则等待来自业务服务器430的与云端源应用402相关联的第二任务处理响应消息。
此外,当从业务服务器430接收到与云端源应用402相关联的第二任务处理响应消息时,应用服务器420确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果相同,则根据经过解密的第一任务处理响应消息的任务内容中的与云端源应用402相关联的更新内容对云端源应用402的运行状态进行更新。
当从业务服务器430接收到与云端源应用402相关联的第二任务处理响应消息时,应用服务器420确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果不相同,则不对云端源应用402的运行状态进行更新。本申请还包括向云端源应用402发送运行状态更新失败的响应消息。
图5为根据本发明优选实施方式的基于手游助手客户端来处理海马云的云端数据请求的系统500的结构示意图。如图5所示,本申请利用手游助手客户端510中所嵌入的海马云SDK(软件开发工具包)511,通过本地运行的手游助手客户端510和云端运行的海马云501之间的安全交互通道505从海马云501接收经过加密的云端数据请求。
在利用手游助手客户端510中所嵌入的海马云SDK 511之前还包括,在本地运行的手游助手客户端510中嵌入用于与云端运行的海马云501建立安全交互通道505的海马云SDK511。可替换地,在手游助手客户端510被安装到用户设备中时,将海马云SDK 511嵌入到手游助手客户端510中。可替换地,在生成手游助手客户端510时,将海马云SDK 511嵌入到手游助手客户端510中。可替换地,响应于海马云501的安装请求或嵌入请求,在手游助手客户端510中安装或嵌入海马云SDK 511。
在手游助手客户端510中的海马云SDK 511与手游助手客户端510在功能上相互独立,即海马云SDK 511的运行和手游助手客户端510的运行是相互独立的。手游助手客户端510无法修改海马云SDK 511所接收的数据或要发送的数据。海马云SDK 511能够向海马云501发送和/或接收数据,但所发送和/或接收的数据均为加密的数据。手游助手客户端510无法破解加密的数据,并且因此无法对所发送和/或接收的数据进行查看和修改。即,在安全交互通道505中进行传输的数据均为经过加密的数据。
在本地运行的手游助手客户端510和云端运行的海马云501之间的安全交互通道505是能够进行双向数据传输的安全交互通道505。本申请通过本地运行的手游助手客户端510中所嵌入的海马云SDK 511与和云端运行的海马云501之间建立安全交互通道505。海马云SDK511能够通过安全交互通道505向海马云501发送经过加密的数据,并且海马云501能够通过安全交互通道505向海马云SDK 511发送经过加密的数据。
其中经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务。云端数据请求的标识符用于唯一地标识经过解密的云端数据请求。当海马云501根据待处理的数据任务生成云端数据请求时,会为所生成的云端数据请求设置/分配能够唯一地标识云端数据请求的标识符,并将云端数据请求的标识符与待处理的数据任务组成云端数据请求。将所组成的云端数据请求进行加密以生成经过加密的云端数据请求,并将经过加密的云端数据请求发送给手游助手客户端510中的海马云SDK 511。
待处理的数据任务包括任务名称和任务内容。其中任务名称包括:任务标题、任务识别号和任务生成时间。任务标题例如是游戏支付任务。任务识别号是用于唯一地标识待处理的数据任务的标识或标识符。任务生成时间是待处理的数据任务被生成的时间。其中待处理的数据任务例如可以是支付任务。
待处理的数据任务来自在海马云501中运行的游戏502或是由海马云501中运行的游戏502所发起的。任务内容包括:发起任务处理的用户的标识符、游戏502的标识符、游戏服务器520的标识符、与游戏502相关联的更新内容和与更新内容相关联的更新条件。其中,待处理的数据任务来自于用户所发起的任务处理。例如,当用户在运行游戏502时,希望进行支付时,会发起针对于支付任务的任务处理。发起任务处理的用户的标识符用于唯一地标识这个用户,例如是用户名、用户ID等。游戏502的标识符用于唯一地标识游戏502,例如是游戏502的名称、ID等。游戏服务器520的标识符是用于唯一地标识与游戏502相关联的游戏服务器520的标识符。当游戏502为特定游戏应用时,游戏服务器520是特定游戏应用的服务器。与游戏502相关联的更新内容例如是支付任务相关联的内容,例如,购买游戏中的至少一个道具。与更新内容相关联的更新条件是为了完成支付任务所需要的条件,例如,购买游戏中的至少一个道具所需支付的金额。应当了解的是,在实际情况中,任务内容可以包括游戏订单号、金额、道具名称、用户标识符和游戏标识符。
对经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对经过解密的云端数据请求进行解析以获取待处理的数据任务,其中待处理的数据任务来自在海马云501中运行的游戏502。
在海马云501中运行的游戏502中嵌入手游支付SDK。本申请可以在游戏502被初始化以准备运行时在游戏502中嵌入手游支付SDK。可替换地,本申请可以在游戏502被启动运行时在游戏502中嵌入手游支付SDK。手游支付SDK用于根据任务名称和任务内容来生成待处理的数据任务。
在根据任务名称和任务内容来生成待处理的数据任务之后,手游支付SDK将待处理的数据任务发送给海马云501,以使得海马云501为待处理的数据任务设置/分配用于进行云端标识区分的云端数据请求的标识符或能够唯一地标识云端数据请求的标识符,并能够根据待处理的数据任务和云端数据请求的标识符生成云端数据请求。
海马云501根据生成待处理的数据任务的游戏502的标识符来确定云端数据请求的标识符。例如,计算游戏502的标识符的哈希值,将计算得到的哈希值作为云端数据请求的标识符。可替换地,将游戏502的标识符、当前时间和任务序号进行组合以生成云端数据请求的标识符。
在根据待处理的数据任务和云端数据请求的标识符生成云端数据请求之后,海马云501对所生成的云端数据请求进行加密以生成经过加密的云端数据请求,通过安全交互通道505将经过加密的云端数据请求发送给手游助手客户端510中所嵌入的海马云SDK511。
在根据任务名称和任务内容来生成待处理的数据任务之前,当游戏502在运行中需要进行运行状态的变更时,向游戏服务器520发送包括变更内容的状态变更请求,以促使游戏服务器520根据从游戏502所接收的状态变更请求来生成指示是否允许状态变更的响应消息。例如,当用户在运行游戏502时,希望进行支付、数据修改等时,则需要进行运行状态的变更。为此,游戏502向游戏服务器520发送包括变更内容的状态变更请求,其中状态变更请求可以包括与游戏502相关联的更新内容和与更新内容相关联的更新条件。
其中根据所接收的状态变更请求来生成指示是否允许状态变更的响应消息包括:当游戏服务器520从游戏502接收到状态变更请求时,对与游戏502相关联的更新内容和与更新内容相关联的更新条件进行合法性验证,当确定与游戏502相关联的更新内容和与更新内容相关联的更新条件通过合法性验证时,向游戏502发送允许状态变更的响应消息。当确定与游戏502相关联的更新内容和与更新内容相关联的更新条件未通过合法性验证时,向游戏502发送不允许状态变更的响应消息。
合法性验证包括确定是否允许游戏502进行更新内容的更新,以及更新条件是否与更新内容相匹配。当确定允许游戏502进行更新内容的更新,并且确定更新条件与更新内容相匹配时,向游戏502发送允许状态变更的响应消息;否则,向游戏502发送不允许状态变更的响应消息。
当游戏502从游戏服务器520接收到与状态变更相关联的响应消息时,对与状态变更相关联的响应消息进行解析以确定游戏服务器520是否允许进行状态变更。当与状态变更相关联的响应消息指示游戏服务器520允许游戏502进行状态变更时,游戏502基于变更内容来生成任务名称和任务内容,其中任务名称包括:任务标题、任务识别号和任务生成时间,并且任务内容包括:发起任务处理的用户的标识、游戏502的标识符、游戏服务器520的标识符、与游戏502相关联的更新内容和与更新内容相关联的更新条件。游戏502根据任务名称和任务内容来生成待处理的数据任务。
向手游助手客户端510所归属的手游助手服务器530发送包括待处理的数据任务的任务处理请求,以促使接收到任务处理请求的手游助手服务器530基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发。
促使接收到任务处理请求的手游助手服务器530基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发包括:接收到任务处理请求的手游助手服务器530从接收到的任务处理请求中获取待处理的数据任务。然后,手游助手服务器530根据待处理的数据任务中的任务名称(例如,游戏支付)确定用于待处理的数据任务的支付中心540,并将待处理的数据任务发送给支付中心。
本申请促使支付中心540,对所接收的待处理的数据任务进行解析从而确定任务内容。支付中心540基于任务内容中的与游戏502相关联的更新内容从多个业务处理流程,例如,支付宝、微信支付、银联支付、美团支付、……、京东支付等中选择与更新内容相关联的业务处理流程。本申请的业务处理流程包括支付宝、微信支付、银联支付、京东支付、美团支付等网络支付。其中支付宝是由阿里巴巴公司提供的网络支付平台、微信支付是由腾讯公司提供的网络支付平台、银联支付是由中国银联公司所提供的网络支付平台、京东支付或京东闪付是由京东公司提供的网络支付平台、美团支付是由美团公司提供的网络支付平台。所属领域技术人员应当了解的是,本申请并不限于使用上述网络支付方式或网络支付服务,而是可以使用任何过去的、现有的或未来的网络支付方式或网络支付服务。例如,当用户在应用平台内玩游戏并且需要进行游戏内的支付(例如,购买装备等)时,需要发起支付服务,并且可以通过支付宝、微信支付、银联支付、京东支付、美团支付等网络支付进行支付
促使所选择的业务处理流程根据任务内容中的与更新内容相关联的更新条件来执行业务处理。即,当用户或游戏502满足了与更新内容相关联的更新条件时,例如已经通过支付宝进行支付了符合要求的金额时,所选择的业务处理流程对与游戏502相关联的更新内容进行业务处理,例如为用户在游戏502中的角色增加相应的道具。
当所选择的业务处理流程确定待处理的数据任务已经处理完成时,将待处理的数据任务的处理结果,例如待处理的数据任务成功完成/处理成功,或者待处理的数据任务未成功完成/处理失败,通知给支付中心540,以使得支付中心540将处理结果发送给手游助手服务器530。
在接收到任务处理请求的手游助手服务器530从接收到的任务处理请求中获取待处理的数据任务之后还包括,手游助手服务器530从待处理的数据任务所包括的任务内容中获取游戏服务器520的标识符。在一个方面,本申请促使手游助手服务器530将所接收的处理结果发送给手游助手客户端510中所嵌入的海马云SDK 511。和/或,在另一个方面,本申请促使在手游助手服务器530接收到待处理的数据任务的处理结果时,启动推送计时器并为推送计时器设置到期时间。当推送计时器到期时,手游助手服务器530基于游戏服务器520的标识符确定游戏服务器520的网络地址,根据游戏服务器520的网络地址将待处理的数据任务的处理结果、任务名称和任务内容构成第二任务处理响应消息,将第二任务处理响应消息发送给游戏服务器520。
本申请对从手游助手服务器530接收的与任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息,并利用手游助手客户端510中所嵌入的海马云SDK 511将经过加密的第一任务处理响应消息通过安全交互通道505发送给海马云501。
本申请促使游戏502中所嵌入的手游支付SDK对经过加密的第一任务处理响应消息进行解密以获取经过解密的第一任务处理响应消息,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中期满时间为游戏服务器520等待来自手游助手服务器530的第二任务处理响应消息的最后时间。例如,期满时间为2018年9月28日11点30分00秒,则游戏服务器520在2018年9月28日11点30分00秒之前无论是否接收到经过解密的第一任务处理响应消息,都会等待来自手游助手服务器530的第二任务处理响应消息。在当前时间到达期满时间,例如2018年9月28日11点30分00秒时,游戏服务器520不会等待来自手游助手服务器530的第二任务处理响应消息,而是使用所接收到的经过解密的第一任务处理响应消息来确定处理结果。
游戏502向手游助手服务器530发送包括任务名称的结果查询请求,以促使手游助手服务器530基于任务名称来确定所查询的任务内容和处理结果。基于从手游助手服务器530接收的所查询的任务内容和处理结果对经过解密的第一任务处理响应消息中任务内容和处理结果进行正确性验证。其中正确性验证可以是确定经过解密的第一任务处理响应消息中任务内容和处理结果与从手游助手服务器530接收的所查询的任务内容和处理结果是否相同。当确定经过解密的第一任务处理响应消息中任务内容和处理结果的验证结果为正确时,即经过解密的第一任务处理响应消息中任务内容和处理结果与从手游助手服务器530接收的所查询的任务内容和处理结果相同,将经过解密的第一任务处理响应消息发送给与游戏502相关联的游戏服务器520。
本申请促使游戏服务器520在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与游戏502相关联的更新内容。如果确定当前时间超过期满时间,则根据经过解密的第一任务处理响应消息的任务内容中的与游戏502相关联的更新内容对游戏502的运行状态进行更新。
在其它情况下,本申请促使游戏服务器520在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与游戏502相关联的更新内容。如果确定当前时间没有超过期满时间,则等待来自手游助手服务器530的与游戏502相关联的第二任务处理响应消息。
此外,当从手游助手服务器530接收到与游戏502相关联的第二任务处理响应消息时,游戏服务器520确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果相同,则根据经过解密的第一任务处理响应消息的任务内容中的与游戏502相关联的更新内容对游戏502的运行状态进行更新。
当从手游助手服务器530接收到与游戏502相关联的第二任务处理响应消息时,游戏服务器520确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果不相同,则不对游戏502的运行状态进行更新。本申请还包括向游戏502发送运行状态更新失败的响应消息。
图6为根据本发明另一优选实施方式的基于客户端应用来处理云端数据请求的系统600的结构示意图。系统600能够通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从云服务接收经过加密的云端数据请求,基于对经过加密的云端数据请求进行处理来获取待处理的数据任务,系统600通过向客户端应用所归属的业务服务器发送包括待处理的数据任务的任务处理请求并对从业务服务器接收的与任务处理相关联的第一任务处理响应消息进行加密并利用通过安全交互通道发送给云服务。
如图6所示,系统600包括:接收单元601、解密单元602、发送单元603、加密单元604和初始化单元605。接收单元601利用客户端应用中所嵌入的云服务功能,通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从云服务接收经过加密的云端数据请求。
其中经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务。云端数据请求的标识符用于唯一地标识经过解密的云端数据请求。当云服务根据待处理的数据任务生成云端数据请求时,会为所生成的云端数据请求设置/分配能够唯一地标识云端数据请求的标识符,并将云端数据请求的标识符与待处理的数据任务组成云端数据请求。将所组成的云端数据请求进行加密以生成经过加密的云端数据请求,并将经过加密的云端数据请求发送给客户端应用中的云服务功能。
待处理的数据任务包括任务名称和任务内容。其中任务名称包括:任务标题、任务识别号和任务生成时间。任务标题例如是支付任务、数据修改任务等。任务识别号是用于唯一地标识待处理的数据任务的标识或标识符。任务生成时间是待处理的数据任务被生成的时间。其中待处理的数据任务例如可以是支付任务、数据修改任务等。
待处理的数据任务来自在云服务中运行的云端源应用或是由云服务中运行的云端源应用所发起的。任务内容包括:发起任务处理的用户的标识符、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件。其中,待处理的数据任务来自于用户所发起的任务处理。例如,当用户在运行云端源应用时,希望进行支付、数据修改等时,会发起针对于支付任务、数据修改任务等的任务处理。发起任务处理的用户的标识符用于唯一地标识这个用户,例如是用户名、用户ID等。云端源应用的标识符用于唯一地标识云端源应用,例如是云端源应用的名称、ID等。应用服务器的标识符是用于唯一地标识与云端源应用相关联的应用服务器的标识符。当云端源应用为特定游戏应用时,应用服务器是特定游戏应用的服务器。与云端源应用相关联的更新内容例如是支付任务、数据修改任务等相关联的内容。与更新内容相关联的更新条件是为了完成支付任务、数据修改任务等所需要的条件。
解密单元602对经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对经过解密的云端数据请求进行解析以获取待处理的数据任务,其中待处理的数据任务来自在云服务中运行的云端源应用。在根据任务名称和任务内容来生成待处理的数据任务之后,客户端功能将待处理的数据任务发送给云服务,以使得云服务为待处理的数据任务设置/分配用于进行云端标识区分的云端数据请求的标识符或能够唯一地标识云端数据请求的标识符,并能够根据待处理的数据任务和云端数据请求的标识符生成云端数据请求。
云服务根据生成待处理的数据任务的云端源应用的标识符来确定云端数据请求的标识符。例如,计算云端源应用的标识符的哈希值,将计算得到的哈希值作为云端数据请求的标识符。可替换地,将云端源应用的标识符、当前时间和任务序号进行组合以生成云端数据请求的标识符。
在根据待处理的数据任务和云端数据请求的标识符生成云端数据请求之后,云服务对所生成的云端数据请求进行加密以生成经过加密的云端数据请求,通过安全交互通道将经过加密的云端数据请求发送给客户端应用中所嵌入的云服务功能。
在根据任务名称和任务内容来生成待处理的数据任务之前,当云端源应用在运行中需要进行运行状态的变更时,向应用服务器发送包括变更内容的状态变更请求,以促使应用服务器根据从云端源应用所接收的状态变更请求来生成指示是否允许状态变更的响应消息。例如,当用户在运行云端源应用时,希望进行支付、数据修改等时,则需要进行运行状态的变更。为此,云端源应用向应用服务器发送包括变更内容的状态变更请求,其中状态变更请求可以包括与云端源应用相关联的更新内容和与更新内容相关联的更新条件。
其中根据所接收的状态变更请求来生成指示是否允许状态变更的响应消息包括:当应用服务器从云端源应用接收到状态变更请求时,对与云端源应用相关联的更新内容和与更新内容相关联的更新条件进行合法性验证,当确定与云端源应用相关联的更新内容和与更新内容相关联的更新条件通过合法性验证时,向云端源应用发送允许状态变更的响应消息。当确定与云端源应用相关联的更新内容和与更新内容相关联的更新条件未通过合法性验证时,向云端源应用发送不允许状态变更的响应消息。
合法性验证包括确定是否允许云端源应用进行更新内容的更新,以及更新条件是否与更新内容相匹配。当确定允许云端源应用进行更新内容的更新,并且确定更新条件与更新内容相匹配时,向云端源应用发送允许状态变更的响应消息;否则,向云端源应用发送不允许状态变更的响应消息。
当云端源应用从应用服务器接收到与状态变更相关联的响应消息时,对与状态变更相关联的响应消息进行解析以确定应用服务器是否允许进行状态变更。当与状态变更相关联的响应消息指示应用服务器允许云端源应用进行状态变更时,云端源应用基于变更内容来生成任务名称和任务内容,其中任务名称包括:任务标题、任务识别号和任务生成时间,并且任务内容包括:发起任务处理的用户的标识、云端源应用的标识符、应用服务器的标识符、与云端源应用相关联的更新内容和与更新内容相关联的更新条件。云端源应用根据任务名称和任务内容来生成待处理的数据任务。
发送单元603向客户端应用所归属的业务服务器发送包括待处理的数据任务的任务处理请求,以促使接收到任务处理请求的业务服务器基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发。
促使接收到任务处理请求的业务服务器基于待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发包括:接收到任务处理请求的业务服务器从接收到的任务处理请求中获取待处理的数据任务。然后,业务服务器根据待处理的数据任务中的任务名称从多个任务处理服务器中选择与待处理的数据任务相关联的目标任务处理服务器。例如,当任务名称为支付任务时,业务服务器将多个任务处理服务器中选择与支付任务处理相关联的服务器,例如,支付中心。例如,当任务名称为数据修改任务时,业务服务器将多个任务处理服务器中选择与数据修改任务处理相关联的服务器,例如,数据服务器。将待处理的数据任务发送给目标任务处理服务器,例如将待处理的数据任务发送给支付中心或数据服务器。
本申请促使目标任务处理服务器,例如支付中心或数据服务器,对所接收的待处理的数据任务进行解析从而确定任务内容。目标任务处理服务器基于任务内容中的与云端源应用相关联的更新内容从多个业务处理流程中选择与更新内容相关联的业务处理流程。促使所选择的业务处理流程根据任务内容中的与更新内容相关联的更新条件来执行业务处理。即,当用户或云端源应用满足了与更新内容相关联的更新条件时,所选择的业务处理流程对与云端源应用相关联的更新内容进行业务处理。
当所选择的业务处理流程确定待处理的数据任务已经处理完成时,将待处理的数据任务的处理结果,例如待处理的数据任务成功完成/处理成功,或者待处理的数据任务未成功完成/处理失败,通知给目标任务处理服务器,以使得目标任务处理服务器将处理结果发送给业务服务器。
在接收到任务处理请求的业务服务器从接收到的任务处理请求中获取待处理的数据任务之后还包括,业务服务器从待处理的数据任务所包括的任务内容中获取应用服务器的标识符。在一个方面,本申请促使业务服务器将所接收的处理结果发送给客户端应用中所嵌入的云服务功能。和/或,在另一个方面,本申请促使在业务服务器接收到待处理的数据任务的处理结果时,启动推送计时器并为推送计时器设置到期时间。例如,当前时间为2018年9月28日11点20分05秒,并且到期时间为2018年9月28日11点25分36秒。当推送计时器到期时,例如,当前时间到达2018年9月28日11点25分36秒时,业务服务器基于应用服务器的标识符确定应用服务器的网络地址,根据应用服务器的网络地址将待处理的数据任务的处理结果、任务名称和任务内容构成第二任务处理响应消息,将第二任务处理响应消息发送给应用服务器。
发送单元603利用客户端应用中所嵌入的云服务功能将经过加密的第一任务处理响应消息通过安全交互通道发送给云服务。云端源应用向业务服务器发送包括任务名称的结果查询请求,以促使业务服务器基于任务名称来确定所查询的任务内容和处理结果。基于从业务服务器接收的所查询的任务内容和处理结果对经过解密的第一任务处理响应消息中任务内容和处理结果进行正确性验证。其中正确性验证可以是确定经过解密的第一任务处理响应消息中任务内容和处理结果与从业务服务器接收的所查询的任务内容和处理结果是否相同。当确定经过解密的第一任务处理响应消息中任务内容和处理结果的验证结果为正确时,即经过解密的第一任务处理响应消息中任务内容和处理结果与从业务服务器接收的所查询的任务内容和处理结果相同,将经过解密的第一任务处理响应消息发送给与云端源应用相关联的应用服务器。
加密单元604对从业务服务器接收的与任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息。本申请促使云端源应用中所嵌入的客户端功能对经过加密的第一任务处理响应消息进行解密以获取经过解密的第一任务处理响应消息,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中期满时间为应用服务器等待来自业务服务器的第二任务处理响应消息的最后时间。例如,期满时间为2018年9月28日11点30分00秒,则应用服务器在2018年9月28日11点30分00秒之前无论是否接收到经过解密的第一任务处理响应消息,都会等待来自业务服务器的第二任务处理响应消息。在当前时间到达期满时间,例如2018年9月28日11点30分00秒时,应用服务器不会等待来自业务服务器的第二任务处理响应消息,而是使用所接收到的经过解密的第一任务处理响应消息来确定处理结果。
本申请促使应用服务器在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。其中在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容。如果确定当前时间超过期满时间,则根据经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对云端源应用的运行状态进行更新。
在其它情况下,本申请促使应用服务器在接收到经过解密的第一任务处理响应消息后,对经过解密的第一任务处理响应消息进行解析以获取任务名称、任务内容、处理结果和期满时间。在确定处理结果为成功时,获取经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容。如果确定当前时间没有超过期满时间,则等待来自业务服务器的与云端源应用相关联的第二任务处理响应消息。
此外,当从业务服务器接收到与云端源应用相关联的第二任务处理响应消息时,应用服务器确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果相同,则根据经过解密的第一任务处理响应消息的任务内容中的与云端源应用相关联的更新内容对云端源应用的运行状态进行更新。
当从业务服务器接收到与云端源应用相关联的第二任务处理响应消息时,应用服务器确定第二任务处理响应消息中的处理结果和经过解密的第一任务处理响应消息中的处理结果是否相同,如果不相同,则不对云端源应用的运行状态进行更新。本申请还包括向云端源应用发送运行状态更新失败的响应消息。
初始化单元605在本地运行的客户端应用中嵌入用于与云端运行的云服务建立安全交互通道的云服务功能。可替换地,在客户端应用被安装到用户设备中时,将云服务功能嵌入到客户端应用中。可替换地,在生成客户端应用时,将云服务功能嵌入到客户端应用中。可替换地,响应于云服务的安装请求或嵌入请求,在客户端应用中安装或嵌入云服务功能。
在客户端应用中的云服务功能与客户端应用在功能上相互独立,即云服务功能的运行和客户端应用的运行是相互独立的。客户端应用无法修改云服务功能所接收的数据或要发送的数据。云服务功能能够向云服务发送和/或接收数据,但所发送和/或接收的数据均为加密的数据。客户端应用无法破解加密的数据,并且因此无法对所发送和/或接收的数据进行查看和修改。即,在安全交互通道中进行传输的数据均为经过加密的数据。
在本地运行的客户端应用和云端运行的云服务之间的安全交互通道是能够进行双向数据传输的安全交互通道。本申请通过本地运行的客户端应用中所嵌入的云服务功能与和云端运行的云服务之间建立安全交互通道。云服务功能能够通过安全交互通道向云服务发送经过加密的数据,并且云服务能够通过安全交互通道向云服务功能发送经过加密的数据。
初始化单元605在云服务中运行的云端源应用中嵌入客户端功能。本申请可以在云端源应用被初始化以准备运行时在云端源应用中嵌入客户端功能。可替换地,本申请可以在云端源应用被启动运行时在云端源应用中嵌入客户端功能。客户端功能用于根据任务名称和任务内容来生成待处理的数据任务。

Claims (10)

1.一种基于客户端应用来处理云端数据请求的方法,所述方法包括:
利用所述客户端应用中所嵌入的云服务功能,通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从所述云服务接收经过加密的云端数据请求;
对所述经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对所述经过解密的云端数据请求进行解析以获取待处理的数据任务,其中所述待处理的数据任务来自在所述云服务中运行的云端源应用;
向所述客户端应用所归属的业务服务器发送包括所述待处理的数据任务的任务处理请求,以促使接收到所述任务处理请求的业务服务器基于所述待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发;以及
对从所述业务服务器接收的与所述任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息,并利用客户端应用中所嵌入的云服务功能将经过加密的第一任务处理响应消息通过所述安全交互通道发送给所述云服务。
2.根据权利要求1所述的方法,在利用所述客户端应用中所嵌入的云服务功能之前还包括,在本地运行的客户端应用中嵌入用于与云端运行的云服务建立所述安全交互通道的云服务功能。
3.根据权利要求1或2所述的方法,所述云服务功能与所述客户端应用在功能上相互独立,并且所述客户端应用无法修改所述云服务功能所接收的数据或要发送的数据。
4.根据权利要求1所述的方法,其中,在所述安全交互通道中进行传输的数据均为经过加密的数据。
5.根据权利要求1所述的方法,所述经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务,其中所述云端数据请求的标识符用于唯一地标识所述经过解密的云端数据请求。
6.一种基于客户端应用来处理云端数据请求的系统,所述系统包括:
接收单元,利用所述客户端应用中所嵌入的云服务功能,通过本地运行的客户端应用和云端运行的云服务之间的安全交互通道从所述云服务接收经过加密的云端数据请求;
解密单元,对所述经过加密的云端数据请求进行解密以获取经过解密的云端数据请求,对所述经过解密的云端数据请求进行解析以获取待处理的数据任务,其中所述待处理的数据任务来自在所述云服务中运行的云端源应用;
发送单元,向所述客户端应用所归属的业务服务器发送包括所述待处理的数据任务的任务处理请求,以促使接收到所述任务处理请求的业务服务器基于所述待处理的数据任务中所包括的任务名称和任务内容进行与任务处理相关联的数据转发,并利用客户端应用中所嵌入的云服务功能将经过加密的第一任务处理响应消息通过所述安全交互通道发送给所述云服务;以及
加密单元,对从所述业务服务器接收的与所述任务处理相关联的第一任务处理响应消息进行加密以生成经过加密的第一任务处理响应消息。
7.根据权利要求6所述的系统,还包括初始化单元,用于在本地运行的客户端应用中嵌入用于与云端运行的云服务建立所述安全交互通道的云服务功能。
8.根据权利要求6或7所述的系统,所述云服务功能与所述客户端应用在功能上相互独立,并且所述客户端应用无法修改所述云服务功能所接收的数据或要发送的数据。
9.根据权利要求6所述的系统,其中,在所述安全交互通道中进行传输的数据均为经过加密的数据。
10.根据权利要求6所述的系统,所述经过解密的云端数据请求包括:云端数据请求的标识符和待处理的数据任务,其中所述云端数据请求的标识符用于唯一地标识所述经过解密的云端数据请求。
CN201811237039.XA 2018-10-23 2018-10-23 一种基于客户端应用来处理云端数据请求的方法及系统 Active CN109151068B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811237039.XA CN109151068B (zh) 2018-10-23 2018-10-23 一种基于客户端应用来处理云端数据请求的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811237039.XA CN109151068B (zh) 2018-10-23 2018-10-23 一种基于客户端应用来处理云端数据请求的方法及系统

Publications (2)

Publication Number Publication Date
CN109151068A true CN109151068A (zh) 2019-01-04
CN109151068B CN109151068B (zh) 2022-11-04

Family

ID=64809076

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811237039.XA Active CN109151068B (zh) 2018-10-23 2018-10-23 一种基于客户端应用来处理云端数据请求的方法及系统

Country Status (1)

Country Link
CN (1) CN109151068B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022007599A1 (zh) * 2020-07-09 2022-01-13 腾讯科技(深圳)有限公司 基于云应用的资源转移方法、装置和计算机设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106302453A (zh) * 2016-08-15 2017-01-04 北京奇虎科技有限公司 数据的处理方法、装置及系统
US20170052835A1 (en) * 2014-04-30 2017-02-23 Twitter, Inc. Software development kit platform
CN106656540A (zh) * 2015-11-02 2017-05-10 广州爱九游信息技术有限公司 客户端配置方法、装置和系统
CN107645481A (zh) * 2016-07-21 2018-01-30 腾讯科技(深圳)有限公司 一种数据处理方法、系统以及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170052835A1 (en) * 2014-04-30 2017-02-23 Twitter, Inc. Software development kit platform
CN107079000A (zh) * 2014-04-30 2017-08-18 谷歌公司 软件开发套件平台
CN106656540A (zh) * 2015-11-02 2017-05-10 广州爱九游信息技术有限公司 客户端配置方法、装置和系统
CN107645481A (zh) * 2016-07-21 2018-01-30 腾讯科技(深圳)有限公司 一种数据处理方法、系统以及装置
CN106302453A (zh) * 2016-08-15 2017-01-04 北京奇虎科技有限公司 数据的处理方法、装置及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022007599A1 (zh) * 2020-07-09 2022-01-13 腾讯科技(深圳)有限公司 基于云应用的资源转移方法、装置和计算机设备

Also Published As

Publication number Publication date
CN109151068B (zh) 2022-11-04

Similar Documents

Publication Publication Date Title
CN110428257B (zh) 密码破解任务处理方法、设备及存储介质
CN108881232B (zh) 业务系统的登录访问方法、装置、存储介质和处理器
CN105007280B (zh) 一种应用登录方法和装置
JP5313372B2 (ja) アプリケーションシステム、アプリケーションインストール方法、アプリケーションサーバ、プログラム
US10467385B2 (en) User-specific application activation for remote sessions
CN105610771B (zh) 一种关联账户的方法及账户关联装置
CN108900479A (zh) 短信验证码获取方法及装置
CN104683303B (zh) App管理方法
CN105939362A (zh) 用户账号管理方法及装置
CN105991640B (zh) 处理http请求的方法及装置
CN105847000A (zh) 令牌产生方法以及基于该令牌产生方法的通信系统
CN109792446A (zh) 瞬态交易服务器
CN109327431A (zh) 处理移动设备上的资源请求
US7996881B1 (en) Modifying a user account during an authentication process
JP2006323728A (ja) サービスシステムおよび最適サービス提供方法
CN109471723A (zh) 一种用于对任务的处理结果进行验证的方法及系统
CN109151068A (zh) 一种基于客户端应用来处理云端数据请求的方法及系统
JP6444344B2 (ja) 認証サーバ、仲介サーバおよび広告配信サーバ
CN109495451A (zh) 一种用于处理云端数据请求的方法及系统
WO2020145163A1 (ja) サービス提供システム、サービス提供装置、サービス提供方法、及びプログラム
Kuntze et al. Trusted ticket systems and applications
JP6145659B2 (ja) 情報公開システム及び情報公開方法
CN110223131A (zh) 订票减压系统与方法及用户终端装置与计算机程序产品
CN109547428A (zh) 验证密码及访问服务器的方法、系统以及存储介质
CN104348618B (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