1.本技术涉及通信领域,尤其涉及一种数据云服务方法及通信装置。
背景技术:2.云服务是指用户通过互联网获取需要的服务,例如,用户不需要在终端设备下载和安装软件,仅通过互联网即可使用该软件的相关服务,该软件可存储在云服务提供商的云服务器中。
3.现有技术中,用户在不隐藏身份信息的情况下,向云服务器提供密文信息,以保护用户的隐私。以会计软件为例,在用户向云服务器提供财务信息前,先采用同态加密算法对财务信息进行加密,得到密文信息,然后向云服务器提供该密文信息,云服务器在不解密的情况下,直接对密文信息进行密文计算,得出计算结果后,将该计算结果返回给用户。如此,云服务器并不知道密文信息中财务信息的具体内容,从而可以保护用户的隐私。
4.发明人发现现有技术中存在以下问题:同态加密算法比较复杂,加密效率低,并且云服务器直接对密文信息进行计算,增加了计算复杂度,导致计算效率低,影响服务性能和响应速度。
技术实现要素:5.本技术实施例提供一种数据云服务方法及通信装置,能够降低云服务过程的计算复杂度,从而提高服务性能和响应速度。
6.为达到上述目的,本技术采用如下技术方案:
7.第一方面,提供一种数据云服务方法。该数据云服务方法包括:通过第一路径接收并解析第一数据包,得到原始数据,根据第二公开密钥集合对反馈数据加密,生成第二数据包,通过第二路径发送并解析第二数据包。第一数据包包括原始数据,第一数据包是根据第一公开密钥集合和原始数据生成的,第一路径包括至少一个节点,第一公开密钥集合包括至少一个第一公开密钥,一个第一公开密钥对应第一路径中的一个节点,反馈数据是根据原始数据确定的,第二数据包是根据第二公开密钥集合和反馈数据生成的,第二公开密钥集合中包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,第二路径包括至少一个节点。
8.基于第一方面所述的数据云服务方法,终端设备提交对原始数据加密后的第一数据包给云服务平台,以保证用户的身份信息不被泄露,最终云服务平台获得明文数据,即原始数据,并直接对原始数据进行计算,与现有技术中,服务器对密文数据进行计算相比,本技术的计算过程更加简单,计算效率更高,从而可以提高服务性能和响应速度。
9.在一种可能的设计方案中,第一路径可以为以终端设备为起点,以目标服务器为终点,以至少一个第一节点为中间节点的路径,至少一个第一节点由用户依次确定。也就是说,第一路径是发送第一数据包的路径,用户可以根据自身的意愿确定路径中的第一节点以及第一节点之间的先后顺序,不需要云服务平台确定该第一路径,可以进一步提高云服
务过程中的安全性。
10.在一种可能的设计方案中,第一数据包可以包括第二路径,第二路径可以为以目标服务器为起点、以终端设备为终点、以至少一个第二节点为中间节点的路径;至少一个第二节点由用户依次确定。也就是说,第二路径是返回数据的路径,可以使云服务平台在不知道用户的身份信息的情况下,成功返回数据。
11.在一种可能的设计方案中,在上述通过第一路径接收并解析第一数据包,得到原始数据前,第一方面所述的数据云服务方法还可以包括:向终端设备发送指示信息。其中,指示信息可以用于指示终端设备显示服务页面,服务页面可以包括节点列表、数据起始地址,节点列表可以用于用户通过终端设备依次确定第一路径的至少一个第一节点以及依次确定第二路径的至少一个第二节点,数据起始地址可以用于用户通过终端设备提供原始数据。
12.在一种可能的设计方案中,上述通过第二路径发送并解析第二数据包,可以包括:依次经过至少一个第二节点对应的第二公开密钥解析第二数据包,得到第三数据包,向终端设备发送第三数据包。其中,第三数据包可以携带采用终端设备对应的第二公开密钥对反馈数据加密后的数据。如此,在向返回反馈数据的过程中,并不能获得反馈数据的具体内容,从而可以保证用户的隐私不被泄露。
13.在一种可能的设计方案中,上述通过第一路径接收并解析第一数据包,得到原始数据,可以包括:依次经过至少一个第一节点和目标服务器对应的第一公开密钥解析第一数据包,得到原始数据。也就是说,在获得原始数据的过程中,云服务平台接收的是密文信息,即第一数据包,经过一层一层地解析后,获得明文数据,即原始数据,但是,云服务平台并不能获得用户的身份信息,并不知道提供该原始数据的用户的身份,可以保证用户的隐私不被泄露。
14.在一种可能的设计方案中,在上述通过第一路径接收并解析第一数据包,得到原始数据后,第一方面所述的数据云服务方法还可以包括:获取用户的授权信息,根据授权信息确定是否给予用户授权。其中,授权信息可以是通过对用户的身份信息进行盲签名得到的。也就是说,云服务平台并不能通过授权信息获得用户的身份信息,从而既能验证是否给予匿名用户授权,又能保证用户的隐私不被泄露。
15.在一种可能的设计方案中,第一方面所述的数据云服务方法还可以包括:若确定给予用户授权,则记录授权信息。也就是说,若云服务平台确定已给予用户授权,则记录该授权信息,以防止该授权信息被重复使用。
16.可选地,第一数据包可以包括授权信息。也就是说,云服务平台可以在获取原始数据的过程中,获取授权信息。
17.第二方面,提供一种数据云服务方法。该数据云服务方法包括:生成第一数据包,发送第一数据包,获取反馈数据。其中,第一数据包包括原始数据,第一数据包是根据第一公开密钥集合和原始数据生成的,第一公开密钥集合包括至少一个第一公开密钥,一个第一公开密钥对应第一路径中的一个节点,用于第一路径中的一个节点对原始数据进行加密,第一路径包括至少一个节点,反馈数据是根据原始数据确定的。
18.在一种可能的设计方案中,第一路径可以为以终端设备为起点,以目标服务器为终点,以至少一个第一节点为中间节点的路径,至少一个第一节点由用户依次确定。
19.在一种可能的设计方案中,第一数据包可以包括第二公开密钥集合,第二公开密钥集合中包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,用于第二路径中的一个节点对反馈数据进行加密,第二路径包括至少一个节点。
20.在一种可能的设计方案中,第一数据包可以包括第二路径,第二路径可以为以目标服务器为起点、以终端设备为终点、以至少一个第二节点为中间节点的路径,至少一个第二节点由用户依次确定。
21.在一种可能的设计方案中,在上述生成第一数据包前,第二方面所述的数据云服务方法还可以包括:收来自目标服务器的指示信息。其中,指示信息可以用于指示终端设备显示服务页面,服务页面包括节点列表、数据起始地址,节点列表可以用于用户通过终端设备依次确定第一路径的至少一个第一节点以及依次确定第二路径的至少一个第二节点,数据起始地址可以用于用户通过终端设备提供原始数据。
22.在一种可能的设计方案中,上述获取反馈数据,可以包括:接收第三数据包,通过终端设备对应的第二公开密钥解析第三数据包,得到反馈数据。其中,第三数据包可以携带采用终端设备对应的第二公开密钥对反馈数据加密后的数据。
23.在一种可能的设计方案中,第一数据包可以包括授权信息,授权信息可以是通过对用户的身份信息进行盲签名得到的,授权信息可以用于确定是否给予用户授权。
24.此外,第二方面所述的数据云服务方法的技术效果可以参考第一方面所述的数据云服务方法的技术效果,此处不再赘述。
25.第三方面,提供一种通信装置。该通信装置包括:处理单元和收发单元。
26.其中,收发单元,用于通过第一路径接收第一数据包。其中,第一数据包包括原始数据,第一数据包是根据第一公开密钥集合和原始数据生成的,第一公开密钥集合包括至少一个第一公开密钥,一个第一公开密钥对应第一路径中的一个节点,第一路径包括至少一个节点。
27.处理单元,用于解析第一数据包,得到原始数据。
28.处理单元,还用于根据第二公开密钥集合对反馈数据加密,生成第二数据包。其中,反馈数据是根据原始数据确定的,第二数据包是根据第二公开密钥集合和反馈数据生成的,第二公开密钥集合中包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,第二路径包括至少一个节点。
29.收发单元,还用于通过第二路径发送第二数据包。
30.处理单元,还用于解析第二数据包。
31.在一种可能的设计方案中,第一路径可以为以终端设备为起点,以通信装置的目标服务器为终点,以至少一个第一节点为中间节点的路径,至少一个第一节点由用户依次确定。
32.在一种可能的设计方案中,第一数据包可以包括第二路径,第二路径可以为以通信装置的目标服务器为起点、以终端设备为终点、以至少一个第二节点为中间节点的路径,至少一个第二节点由用户依次确定。
33.在一种可能的设计方案中,收发单元,还用于向终端设备发送指示信息。其中,指示信息可以用于指示终端设备显示服务页面,服务页面可以包括节点列表、数据起始地址,节点列表可以用于用户通过终端设备依次确定第一路径的至少一个第一节点以及依次确
定第二路径的至少一个第二节点,数据起始地址可以用于用户通过终端设备提供原始数据。
34.在一种可能的设计方案中,处理单元,还用于依次经过至少一个第二节点对应的第二公开密钥解析第二数据包,得到第三数据包。其中,第三数据包可以携带采用终端设备对应的第二公开密钥对反馈数据加密后的数据。收发单元,还用于向终端设备发送第三数据包。
35.在一种可能的设计方案中,处理单元,还用于依次经过至少一个第一节点和通信装置的目标服务器对应的第一公开密钥解析第一数据包,得到原始数据。
36.在一种可能的设计方案中,处理单元,还用于获取用户的授权信息。其中,授权信息可以是通过对用户的身份信息进行盲签名得到的。处理单元,还用于根据授权信息确定是否给予用户授权。
37.在一种可能的设计方案中,处理单元,还用于若确定给予用户授权,则记录授权信息。
38.可选地,第一数据包可以包括授权信息。
39.需要说明的是,第三方面所述的收发单元可以包括接收单元和发送单元。其中,接收单元用于接收来自终端设备的数据和/或信令;发送单元用于向终端设备发送数据和/或信令。本技术对于收发单元的具体实现方式,不做具体限定。
40.可选地,第三方面所述的通信装置还可以包括存储单元,该存储单元存储有程序或指令。当处理单元执行该程序或指令时,使得第三方面所述的通信装置可以执行第一方面所述的方法。
41.需要说明的是,第三方面所述的通信装置可以是云服务平台,也可以是可设置于云服务平台的芯片(系统)或其他部件或组件,本技术对此不做限定。
42.此外,第三方面所述的通信装置的技术效果可以参考第一方面中的任意一种实现方式所述的数据云服务方法的技术效果,此处不再赘述。
43.第四方面,提供一种通信装置。该通信装置包括:处理单元和收发单元。
44.其中,处理单元,用于生成第一数据包。其中,第一数据包包括原始数据,第一数据包是根据第一公开密钥集合和原始数据生成的,第一公开密钥集合包括至少一个第一公开密钥,一个第一公开密钥对应第一路径中的一个节点,用于第一路径中的一个节点对原始数据进行加密,第一路径包括至少一个节点。
45.收发单元,用于发送第一数据包。
46.处理单元,还用于获取反馈数据。其中,反馈数据是根据原始数据确定的。
47.在一种可能的设计方案中,第一路径可以为以通信装置为起点,以目标服务器为终点,以至少一个第一节点为中间节点的路径,至少一个第一节点由用户依次确定。
48.在一种可能的设计方案中,第一数据包可以包括第二公开密钥集合,第二公开密钥集合可以包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,用于第二路径中的一个节点对反馈数据进行加密,第二路径包括至少一个节点。
49.在一种可能的设计方案中,第一数据包可以包括第二路径,第二路径可以为以目标服务器为起点、以通信装置为终点、以至少一个第二节点为中间节点的路径,至少一个第二节点由用户依次确定。
50.在一种可能的设计方案中,收发单元,还用于接收来自目标服务器的指示信息。其中,指示信息可以用于指示通信装置显示服务页面,服务页面可以包括节点列表、数据起始地址,节点列表可以用于用户通过通信装置依次确定第一路径的至少一个第一节点以及依次确定第二路径的至少一个第二节点,数据起始地址可以用于用户通过通信装置提供原始数据。
51.在一种可能的设计方案中,收发单元,还用于接收第三数据包。其中,第三数据包可以携带采用通信装置对应的第二公开密钥对反馈数据加密后的数据。处理单元,还用于通过通信装置对应的第二公开密钥解析第三数据包,得到反馈数据。
52.在一种可能的设计方案中,第一数据包可以包括授权信息,授权信息可以是通过对用户的身份信息进行盲签名得到的,授权信息可以用于确定是否给予用户授权。
53.需要说明的是,第四方面所述的收发单元可以包括接收单元和发送单元。其中,接收单元用于接收来自云服务平台的数据和/或信令;发送单元用于向云服务平台发送数据和/或信令。本技术对于收发单元的具体实现方式,不做具体限定。
54.可选地,第四方面所述的通信装置还可以包括存储单元,该存储单元存储有程序或指令。当处理单元执行该程序或指令时,使得第四方面所述的通信装置可以执行第二方面所述的方法。
55.需要说明的是,第四方面所述的通信装置可以是终端设备,也可以是可设置于终端设备的芯片(系统)或其他部件或组件,本技术对此不做限定。
56.此外,第四方面所述的通信装置的技术效果可以参考第二方面中任一种可能的实现方式所述的数据云服务方法的技术效果,此处不再赘述。
57.第五方面,提供一种通信装置。该通信装置包括:处理器和通信接口。该处理器用于通过所述通信接口与其它装置通信,并执行如第一方面至第二方面中任意一种可能的实现方式所述的数据云服务方法。该通信接口可以是收发电路,用于该通信装置与其他通信装置通信。
58.在一种可能的设计中,第五方面所述的通信装置还可以包括存储器。该存储器用于存储计算机程序。所述收发器可以用于该通信装置与其他通信装置通信。
59.在本技术中,第五方面所述的通信装置可以为终端设备或云服务平台或服务器,或者可设置于终端设备或云服务平台或服务器的芯片(系统)或其他部件或组件。
60.此外,第五方面所述的通信装置的技术效果可以参考第一方面至第二方面中的任意一种实现方式所述的数据云服务方法的技术效果,此处不再赘述。
61.第六方面,提供一种通信系统。该系统包括一个或多个终端设备,以及云服务平台。可选地,云服务平台可以包括一个或多个节点以及一个或多个服务器。
62.第七方面,提供一种计算机可读存储介质,包括:该计算机可读存储介质包括计算机程序或指令;当该计算机程序或指令在计算机上运行时,使得该计算机执行第一方面至第二方面中任意一种可能的实现方式所述的数据云服务方法。
63.第八方面,提供一种计算机程序产品,包括计算机程序或指令,当该计算机程序或指令在计算机上运行时,使得该计算机执行第一方面至第二方面中任意一种可能的实现方式所述的数据云服务方法。
附图说明
64.图1为本技术实施例提供的通信系统的架构示意图;
65.图2为本技术实施例提供的通信装置的结构示意图一;
66.图3为本技术实施例提供的数据云服务方法的流程示意图一;
67.图4为本技术实施例提供的第一数据包的结构示意图;
68.图5为本技术实施例提供的数据传输的架构示意图;
69.图6为本技术实施例提供的第二数据包的结构示意图;
70.图7为本技术实施例提供的通信装置的结构示意图二;
71.图8为本技术实施例提供的通信装置的结构示意图三。
具体实施方式
72.下面将结合附图,对本技术中的技术方案进行描述。
73.本技术将围绕可包括多个设备、组件、模块等的系统来呈现各个方面、实施例或特征。应当理解和明白的是,各个系统可以包括另外的设备、组件、模块等,并且/或者可以并不包括结合附图讨论的所有设备、组件、模块等。此外,还可以使用这些方案的组合。
74.另外,在本技术实施例中,“示例地”、“例如”等词用于表示作例子、例证或说明。本技术中被描述为“示例”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用示例的一词旨在以具体方式呈现概念。
75.本技术实施例中,“信息(information)”,“信号(signal)”,“消息(message)”,“信道(channel)”、“信令(singalling)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。“的(of)”,“相应的(corresponding,relevant)”和“对应的(corresponding)”有时可以混用,应当指出的是,在不强调其区别时,其所要表达的含义是一致的。
76.本技术实施例中,有时候下标如w1可能会笔误为非下标的形式如w1,在不强调其区别时,其所要表达的含义是一致的。
77.本技术实施例描述的网络架构以及业务场景是为了更加清楚的说明本技术实施例的技术方案,并不构成对于本技术实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本技术实施例提供的技术方案对于类似的技术问题,同样适用。
78.图1为本技术实施例提供的数据云服务方法所适用的一种通信系统的架构示意图。为便于理解本技术实施例,首先以图1中示出的通信系统为例详细说明适用于本技术实施例的通信系统。
79.如图1所示,该通信系统包括云服务平台和至少一个终端设备。其中,云服务平台可以包括通信网络和至少一个服务器。
80.其中,上述通信网络可以包括至少一个节点,该节点可以称为路由器、洋葱路由器、网关设备等。现有的通信网络的节点只支持单向传输数据,例如,通信网络包括洋葱路由器1、洋葱路由器2和洋葱路由器3,若支持数据从洋葱路由器1经由洋葱路由器2传输至洋葱路由器3,则不支持数据从洋葱路由器3经由洋葱路由器2传输至洋葱路由器1。上述通信网络用于传输数据包,本技术的实施例中的节点用于接收数据包并将数据包的最外层解
密。
81.上述服务器为位于上述通信系统的云服务平台侧,且具有云服务功能的设备或可设置于该设备的芯片或芯片系统。该服务器也可以称为服务设备、服务装置、云服务器、云计算服务器、云主机。本技术的实施例中的服务器可提供会计系统、协同软件、客户关系管理、管理信息系统、企业资源计划、开票系统、人力资源管理、内容管理、和/或服务台管理等系统对应的服务。本技术的实施例中的服务器可用于接收通信网络传输的数据包,并将数据包的最外层解密,获取原始数据,为该原始数据提供用户需求的服务。
82.上述终端设备为接入上述通信系统,且具有无线收发功能的终端或可设置于该终端的芯片或芯片系统。该终端设备也可以称为用户装置、接入终端、用户单元、用户站、移动站、移动台、远方站、远程终端、移动设备、用户终端、终端、无线通信设备、用户代理或用户装置。本技术的实施例中的终端设备可以是手机(mobile phone)、平板电脑(pad)、带无线收发功能的电脑、虚拟现实(virtual reality,vr)终端设备、增强现实(augmented reality,ar)终端设备、工业控制(industrial control)中的无线终端、无人驾驶(self driving)中的无线终端、远程医疗(remote medical)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端、车载终端、具有终端功能的rsu等。
83.需要说明的是,本技术实施例提供的数据云服务方法,可以适用于图1所示的通信设备与云服务平台之间、云服务平台的各个节点之间、云服务平台的节点与服务器之间。
84.应理解,图1仅为便于理解而示例的简化示意图,该通信系统中还可以包括其他设备,和/或,其他终端设备,图1中未予以画出。
85.图2为可用于执行本技术实施例提供的数据云服务方法的一种通信装置200的结构示意图。通信装置200可以是终端设备,也可以是应用于终端设备中的芯片或者其他具有终端功能的部件。或者,通信装置200可以是云服务平台,也可以是应用于云服务平台中的芯片或者其他具有云服务平台功能的部件。
86.如图2所示,通信装置200包括处理器201和通信接口202。其中,处理器201可以与通信接口202集成在一起,也可以独立存在。可选地,通信装置200还可以包括存储器203,存储器203可以和处理器201集成在一起,也可以独立存在,本技术实施例对此不作具体限定。
87.下面结合图2对通信装置200的各个构成部件进行具体的介绍:
88.处理器201是通信装置200的控制中心,可以是一个处理器,也可以是多个处理元件的统称。例如,处理器201是一个或多个中央处理器(central processing unit,cpu),也可以是特定集成电路(application specific integrated circuit,asic),或者是被配置成实施本技术实施例的一个或多个集成电路,例如:一个或多个微处理器(digital signal processor,dsp),或,一个或者多个现场可编程门阵列(field programmable gate array,fpga)。
89.其中,处理器201可以通过运行或执行存储在存储器203内的软件程序,以及调用存储在存储器203内的数据,执行通信装置200的各种功能。
90.在具体实现中,作为一种实施例,处理器201可以包括一个或多个cpu,例如图2中所示的cpu0和cpu1。
exchange agreement)获得的diffie-hellman根,可以是由多个密钥组成的密钥链。
105.在一些实施例中,第一路径为以终端设备为起点,以目标服务器为终点,以至少一个第一节点为中间节点的路径,至少一个第一节点由用户依次确定。
106.示例性地,第一节点可以为图1所示的节点,如路由器。目标服务器可以是图1所示的任一服务器,能为用户提供对应云服务的服务器。第一路径可以为终端设备经由至少一个第一节点向目标服务器传输数据的路径。
107.也就是说,第一路径是发送第一数据包的路径,用户可以根据自身的意愿确定路径中的第一节点以及第一节点之间的先后顺序,不需要云服务平台确定该第一路径,可以进一步提高云服务过程中的安全性。
108.图5为本技术实施例提供的数据传输的架构示意图。
109.如图5所示,第一路径为终端设备-第一节点1-第一节点2-第一节点3-目标服务器,第一节点1对应密钥1,第一节点2对应密钥2,第一节点3对应密钥3,目标服务器对应密钥d,第一公开密钥集合可以为密钥1-密钥2-密钥3-密钥d,采用第一密钥集合对原始数据进行加密,数据msg可以为原始数据,可以获得第一数据包123d msg。
110.如此,第一数据包是经过一层一层加密获得的,第一路径中的每个节点均无法获得整个第一路径以及终端设备对应的地址,从而使得用户的身份信息对于目标服务器来说是匿名的,可以保证用户的隐私不被泄露。
111.可选地,第一数据包可以包括第一路径,可以采用第一公开密钥集合对第一路径进行加密,具体地,可以采用至少一个第一公开密钥对至少一个节点的标识进行加密,节点的标识可以用于指示节点的地址。
112.以图5中包括的第一密钥集合和第一路径为例,第一节点1的标识不用加密,可以采用密钥1对第一节点2的标识进行加密,采用密钥2对第一节点3的标识进行加密,采用密钥3对第一节点4的标识进行加密。
113.在一些实施例中,第一数据包可以包括第二公开密钥集合,第二公开密钥集合中包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,第二路径包括至少一个节点。
114.如图5所示,第二节点4对应密钥4,第二节点5对应密钥5,第二节点6对应密钥6,终端设备对应密钥s,第二公开密钥集合可以为密钥4-密钥5-密钥6-密钥s。
115.示例性地,第二公开密钥集合可以是根据密钥交换协议获得的diffie-hellman根,可以是一个或多个第二公开密钥组成的密钥链。
116.在一些实施例中,第一数据包可以包括第二路径,第二路径为以目标服务器为起点、以终端设备为终点、以至少一个第二节点为中间节点的路径,至少一个第二节点由用户依次确定。
117.示例性地,第二节点可以为图1所示的节点,如路由器。目标服务器可以是图1所示的任一服务器,能为用户提供对应云服务的服务器。第一路径可以为目标服务器返回对原始数据的计算结果的路径。
118.也就是说,第二路径是返回数据的路径,用户可以根据自身的意愿确定路径中的第二节点以及第二节点之间的先后顺序,不需要云服务平台确定该第二路径,可以进一步提高云服务过程中的安全性。
119.如图5所示,第二路径为目标服务器-第二节点4-第二节点5-第二节点6-终端设备。
120.可选地,可以采用第二公开密钥集合对第二路径进行加密,具体地,可以采用至少一个第二公开密钥对至少一个节点的标识进行加密,节点的标识可以用于指示节点的地址。
121.以图5中包括的第二密钥集合和第二路径为例,可以采用密钥d对第二节点4的标识进行加密,数据msg可以包括第二节点4的标识,可以采用密钥4对第二节点5的标识进行加密,采用密钥5对第二节点6的标识进行加密,采用密钥6对终端设备的标识进行加密。
122.在一些实施例中,第一数据包可以包括授权信息,授权信息是通过对用户的身份信息进行盲签名得到的,授权信息用于确定是否给予用户授权。
123.示例性地,盲签名(blind signature)可以是基于rsa加密算法的盲签名算法,是不让签名者获得签署的信息的具体内容下所采取的一种特殊的数字签名技术。也就是说,虽然对用户的身份进行了盲签名,但是进行盲签名的过程中,不知道用户的身份信息,从而用户的身份信息不被泄露。
124.可选地,可以采用第一公开密钥集合对授权信息进行加密。
125.结合图5,第一公开密钥集合可以为密钥1-密钥2-密钥3-密钥d,采用第一密钥集合对授权信息进行加密,数据msg可以包括授权信息。
126.可选地,在上述s301,终端设备生成第一数据包之前,本技术实施例提供的方法还可以包括:终端设备获得授权信息。
127.可选地,终端设备获得授权信息,可以包括下述步骤一至步骤四:
128.步骤一,云服务平台选择一个rsa参数n、选择一个rsa私钥d,并且公布公钥e。
129.示例性地,参数n满足下述公式:n=p*q,公钥e满足下述公式e=d-1
mod n。
130.其中,p和q是最大素数,运算符号mod为取模运算。
131.步骤二,终端设备从z
l
至z
t
之间确定一个单向并且防撞的哈希函数h();
132.其中,l为安全参数,z
l
表示0至(l-1)之间的l个整数,zn表示0至(n-1)之间的t个整数。
133.终端设备从z
l
中随机确定一个整数t,并且计算t’=h(t);
134.终端设备从zn中随机确定一个整数r,并且计算t=t’*r
e mod n;
135.购买云服务对应软件的使用权,并请求软件提供方对t数字签名。
136.步骤三,云服务平台收费后,向终端设备发送用户收据t’=t
d mod n。
137.步骤四,终端设备计算k=t’/r mod n,确定授权信息为(t,k)。
138.在一种可能的设计方案中,在上述s301,终端设备生成第一数据包之前,本技术实施例提供的方法还可以包括下述步骤五至步骤六:
139.步骤五,终端设备向云服务设备发送鉴权请求。相应地,云服务设备接收终端设备发送的鉴权请求。
140.可选地,鉴权请求用于对用户进行身份鉴权。
141.也就是说,用户通过终端设备的精简客户端,如网页浏览器,请求登录提供云服务的软件。
142.步骤六,云服务设备向终端设备发送鉴权响应。相应地,终端设备接收来自云服务
设备的鉴权响应。
143.可选地,鉴权响应用于指示是否通过鉴权,若鉴权通过,则用户成功登录,若未通过,则指示用户进行注册或重新登录。
144.在一种可能的设计方案中,在上述s301,终端设备生成第一数据包前,本技术实施例提供的方法还可以包括:云服务设备可以向终端设备发送指示信息。相应地,终端设备接收来自目标服务器的指示信息。
145.可选地,指示信息可以用于指示终端设备显示服务页面,服务页面可以包括节点列表、数据起始地址。
146.其中,节点列表可以包括至少一个节点,节点列表可以用于用户通过终端设备依次确定第一路径的至少一个第一节点以及依次确定第二路径的至少一个第二节点。
147.示例性地,假设节点列表包括节点1、节点2、节点3、节点4、节点5、节点6、节点7和节点8,可以确定至少一个第一节点以及至少一个第一节点的顺序的为节点1、节点2、节点3,至少一个第二节点以及至少一个第二节点的顺序为节点4、节点5、节点6,从而第一路径为终端设备-节点1-节点2-节点3-目标服务器,第二路径为目标服务器-节点4-节点5-节点6-终端设备。
148.可选地,数据起始地址可以用于用户通过终端设备提供原始数据。
149.s302,终端设备发送第一数据包。
150.如图5所示,若第一数据包包括:原始数据,终端设备发送的第一数据包为123d msg,1为第一节点1对应的第一公开密钥,2为第一节点2对应的第一公开密钥,3为第一节点3对应的第一公开密钥,d为目标服务器对应的第一公开密钥,数据msg可以包括原始数据。若第一数据包包括:原始数据、第二路径、第二公开密钥集合和授权信息,第一数据包为123d msg456,数据msg可以包括原始数据和授权信息。
151.s303,云服务平台通过第一路径接收并解析第一数据包,得到原始数据。
152.在一种可能的设计方案中,上述s303,云服务平台通过第一路径接收并解析第一数据包,得到原始数据,可以包括:依次经过至少一个第一节点和目标服务器对应的第一公开密钥解析第一数据包,得到原始数据。
153.如图5所示,首先,终端设备根据第一节点1的标识,向第一节点1发送第一数据包123d msg456。第一节点1接收第一数据包123d msg456,并根据第一节点1对应的第一公开密钥对第一数据包的最外层进行解析,获得数据包23d msg456和第一节点2的标识,根据第一节点2的标识向第一节点2发送数据包23d msg456;
154.其次,第一节点2接收数据包23d msg456,并根据第一节点2对应的第一公开密钥对数据包23d msg456的最外层进行解析,获得数据包3d msg456和第一节点3的标识,根据第一节点3的标识向第一节点3发送数据包3d msg456;
155.第一节点3接收数据包3d msg456,并根据第一节点3对应的第一公开密钥对数据包3d msg456的最外层进行解析,获得数据包d msg456和目标服务器的标识,根据目标服务器的标识向目标服务器发送数据包d msg456;
156.最后,目标服务器接收数据包d msg456,并根据目标服务器对应的第一公开密钥对数据包d msg的最外层进行解析,获得数据msg456。
157.也就是说,用户匿名向云服务平台提交密文信息,如第一数据包,目标服务器获得
明文数据,如原始数据,目标服务器能够获得原始数据的具体内容,但是,云服务平台并不能获得用户的身份信息,并不知道提供该原始数据的用户的身份信息,从而可以保证用户的隐私不被泄露。
158.在一些实施例中,本技术实施例提供的方法还可以包括:云服务平台获得加密后的第二路径。
159.示例性地,第一数据包包括第二路径和第二公开密钥集合时,云服务平台可以通过第一路径接收并解析第一数据包,得到加密后的第二路径和原始数据。
160.如图5所示,目标服务器获得数据msg456,数据msg可以包括原始数据,456为采用第二公开密钥集合加密后的第二路径,目标服务器还可以获得第二节点4的标识。
161.在一种可能的设计方案中,在上述s303,云服务平台通过第一路径接收并解析第一数据包,得到原始数据之后,还包括下述步骤七至步骤九:
162.步骤七,云服务平台获取用户的授权信息。
163.示例性地,云服务平台可以通过第一路径接收并解析第一数据包,得到授权信息。
164.也就是说,云服务平台可以在获取原始数据的过程中,获取授权信息。结合图5,数据msg可以包括原始数据和授权信息。
165.可选地,授权信息可以是通过对用户的身份信息进行盲签名得到的,授权信息的具体实现方式可参照上述s301,此处不再赘述。
166.也就是说,云服务平台并不能通过授权信息获得用户的身份信息,从而既能验证是否给予匿名用户授权,又能保证用户的隐私不被泄露。
167.步骤八,云服务平台根据授权信息确定是否给予用户授权。
168.具体地,云服务平台搜索本地存储的授权信息数据库,确定该授权信息是否属于授权信息数据库。其中,该授权信息数据库为已使用过的授权信息。
169.若属于,则该授权信息为已使用过的授权信息,验证失败。
170.若不属于,结合上述步骤一至步骤四,则验证k=h(t)
d mod n,若验证通过,则执行下述步骤九和步骤十。
171.步骤九,云服务平台记录授权信息。
172.也就是说,若在上述步骤八,云服务平台的目标服务器确定已给予用户授权,则记录该授权信息,以防止该授权信息被重复使用。
173.步骤十,目标服务器对原始数据进行云计算,得到反馈数据。
174.也就是说,云服务平台的目标服务器对未加密的明文数据,如原始数据,进行云计算。服务器对明文数据进行计算的方法,与现有技术中,服务器对密文数据进行计算相比,计算过程更加简单,计算效率更高,从而可以提高服务性能和响应速度。
175.s304,云服务平台根据第二公开密钥集合对反馈数据加密,生成第二数据包。
176.其中,反馈数据是根据原始数据确定的。
177.也就是说,云服务平台根据第二公开密钥集合对计算结果,如反馈数据,进行加密,可以保证在返回反馈数据的过程中,用户的隐私不被泄露。
178.示例性地,第二数据包是根据第二公开密钥集合和所述反馈数据生成的,第二公开密钥集合中包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,第二路径包括至少一个节点。
179.图6为本技术实施例提供的第二数据包的结构示意图。以第二路径包括3个节点为例,如节点4-节点5-节点6,节点4对应密钥4,节点5对应密钥5,节点6对应密钥6,第二公开密钥集合可以为密钥4-密钥5-密钥6,可以依次采用密钥6、密钥5、密钥4对反馈数据进行加密,获得如图6所示的第二数据包。
180.可选地,第二路径为以目标服务器为起点、以终端设备为终点、以至少一个第二节点为中间节点的路径,至少一个第二节点由用户依次确定。
181.如图5所示,第二路径为目标服务器-第二节点4-第二节点5-第二节点6-终端设备,数据rst为反馈数据,第二公开密钥集合为密钥4-密钥5-密钥6-密钥s,采用第二公开密钥集合对反馈数据进行加密,获得第二数据包456s rst。
182.其中,第二节点4对应密钥4,第二节点5对应密钥5,第二节点6对应密钥6,终端设备对应密钥s。
183.s305,云服务平台通过第二路径发送并解析第二数据包。
184.如图5所示,依次通过目标服务器-第二节点4-第二节点5-第二节点6发送并解析第二数据包。
185.在一种可能的设计方案中,通过第二路径发送并解析第二数据包,包括下述步骤十一至步骤十二:
186.步骤十一,云服务平台依次经过至少一个第二节点对应的第二公开密钥解析第二数据包,得到第三数据包。
187.其中,第三数据包携带采用终端设备对应的第二公开密钥对反馈数据加密后的数据。
188.如图5所示,目标服务器根据第二节点4的标识,向第二节点4发送第二数据包456s rst。
189.第二节点4接收第二数据包456s rst,并根据第二节点4对应的第二公开密钥对第二数据包的最外层进行解析,获得数据包56s rst和第二节点5的标识,根据第二节点5的标识向第二节点5发送数据包56s rst;
190.第二节点5接收数据包56s rst,并根据第二节点5对应的第二公开密钥对数据包56s rst的最外层进行解析,获得数据包6s rst和第二节点6的标识,根据第二节点6的标识向第二节点6发送数据包6s rst;
191.第二节点6接收数据包6s rst,并根据第二节点6对应的第二公开密钥对数据包6s rst的最外层进行解析,获得第三数据包s rst和终端设备的标识,。
192.步骤十二,云服务平台向终端设备发送第三数据包。
193.如图5所示,第二节点6根据终端设备的标识,向终端设备发送第三数据包s rst。
194.也就是说,与终端设备相邻的节点在向返回反馈数据的过程中,并不能获得反馈数据的具体内容,从而可以保证用户的隐私不被泄露。
195.s306,终端设备获取反馈数据。
196.在一些实施例中,上述s306,终端设备获取反馈数据,可以包括下述步骤十三至步骤十四:
197.步骤十三,终端设备接收第三数据包。
198.如图5所示,终端设备接收第三数据包s rst。
199.步骤十四,终端设备通过终端设备对应的第二公开密钥解析第三数据包,得到反馈数据。
200.如图5所示,终端设备通过终端设备对应的第二公开密钥解析第三数据包s rst,得到反馈数据rst。
201.本技术实施例提供的数据云服务方法,云服务平台通过包括至少一个节点的第一路径接收并解析第一数据包,得到原始数据,该原始数据是根据第一公开密钥集合和原始数据生成的。然后,直接对原始数据执行用户请求的服务,获得反馈数据,接着根据包括至少一个第二公开密钥的第二公开密钥集合对反馈数据加密,生成第二数据包。最后,通过包括至少一个节点的第二路径发送并解析包括反馈数据的第二数据包,使终端设备获取反馈数据。如此,终端设备提交密文信息给云服务平台,以保证用户的身份信息不被泄露,最终云服务平台获得明文数据,即原始数据,并直接对原始数据进行计算,与现有技术中,服务器对密文数据进行计算相比,本技术的计算过程更加简单,计算效率更高,从而可以提高服务性能和响应速度。
202.以上结合图3-图6详细说明了本技术实施例提供的数据云服务方法。以下结合图7-图8详细说明本技术实施例提供的通信装置。
203.图7是本技术实施例提供的通信装置的结构示意图二。该通信装置可适用于图1所示出的通信系统中,执行图3所示的数据云服务方法中云服务平台的功能。为了便于说明,图7仅示出了该通信装置的主要部件。
204.如图7所示,通信装置700包括:处理单元702和收发单元701。
205.其中,收发单元701,用于通过第一路径接收第一数据包。其中,第一数据包包括原始数据,第一数据包是根据第一公开密钥集合和原始数据生成的,第一公开密钥集合包括至少一个第一公开密钥,一个第一公开密钥对应第一路径中的一个节点,第一路径包括至少一个节点。
206.处理单元702,用于解析第一数据包,得到原始数据。
207.处理单元702,还用于根据第二公开密钥集合对反馈数据加密,生成第二数据包。其中,反馈数据是根据原始数据确定的,第二数据包是根据第二公开密钥集合和反馈数据生成的,第二公开密钥集合中包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,第二路径包括至少一个节点。
208.收发单元701,还用于通过第二路径发送第二数据包。
209.处理单元702,还用于解析第二数据包。
210.在一种可能的设计方案中,第一路径可以为以终端设备为起点,以通信装置700的目标服务器为终点,以至少一个第一节点为中间节点的路径,至少一个第一节点由用户依次确定。
211.在一种可能的设计方案中,第一数据包可以包括第二路径,第二路径可以为以通信装置700的目标服务器为起点、以终端设备为终点、以至少一个第二节点为中间节点的路径,至少一个第二节点由用户依次确定。
212.在一种可能的设计方案中,收发单元701,还用于向终端设备发送指示信息。其中,指示信息可以用于指示终端设备显示服务页面,服务页面可以包括节点列表、数据起始地址,节点列表可以用于用户通过终端设备依次确定第一路径的至少一个第一节点以及依次
确定第二路径的至少一个第二节点,数据起始地址可以用于用户通过终端设备提供原始数据。
213.在一种可能的设计方案中,处理单元702,还用于依次经过至少一个第二节点对应的第二公开密钥解析第二数据包,得到第三数据包。其中,第三数据包可以携带采用终端设备对应的第二公开密钥对反馈数据加密后的数据。收发单元701,还用于向终端设备发送第三数据包。
214.在一种可能的设计方案中,处理单元702,还用于依次经过至少一个第一节点和通信装置700的目标服务器对应的第一公开密钥解析第一数据包,得到原始数据。
215.在一种可能的设计方案中,处理单元702,还用于获取用户的授权信息。其中,授权信息可以是通过对用户的身份信息进行盲签名得到的。处理单元702,还用于根据授权信息确定是否给予用户授权。
216.在一种可能的设计方案中,处理单元702,还用于若确定给予用户授权,则记录授权信息。
217.可选地,第一数据包可以包括授权信息。
218.需要说明的是,收发单元701可以包括接收单元和发送单元(图7中未示出)。其中,接收单元用于接收来自终端设备的数据和/或信令;发送单元用于向终端设备发送数据和/或信令。本技术对于收发单元701的具体实现方式,不做具体限定。
219.可选地,通信装置700还可以包括存储单元(图7中未示出),该存储单元存储有程序或指令。当处理单元执行该程序或指令时,使得通信装置700可以执行图3所示的数据云服务方法中云服务平台的功能。
220.需要说明的是,通信装置700可以是图1所示的云服务平台或图2所示的通信装置200,也可以是可设置于云服务平台的芯片(系统)或其他部件或组件,本技术对此不做限定。
221.此外,通信装置700的技术效果可以参考图3所示的数据云服务方法的技术效果,此处不再赘述。
222.图8是本技术实施例提供的通信装置的结构示意图三。该通信装置可适用于图1所示出的通信系统中,执行图3所示的数据云服务方法中终端设备的功能。为了便于说明,图8仅示出了该通信装置的主要部件。
223.如图8所示,通信装置800包括:处理单元802和收发单元801。
224.其中,处理单元802,用于生成第一数据包。其中,第一数据包包括原始数据,第一数据包是根据第一公开密钥集合和原始数据生成的,第一公开密钥集合包括至少一个第一公开密钥,一个第一公开密钥对应第一路径中的一个节点,用于第一路径中的一个节点对原始数据进行加密,第一路径包括至少一个节点。
225.收发单元801,用于发送第一数据包。
226.处理单元802,还用于获取反馈数据。其中,反馈数据是根据原始数据确定的。
227.在一种可能的设计方案中,第一路径可以为以通信装置800为起点,以目标服务器为终点,以至少一个第一节点为中间节点的路径,至少一个第一节点由用户依次确定。
228.在一种可能的设计方案中,第一数据包可以包括第二公开密钥集合,第二公开密钥集合可以包括至少一个第二公开密钥,一个第二公开密钥对应第二路径中的一个节点,
only memory,rom)、可编程只读存储器(programmable rom,prom)、可擦除可编程只读存储器(erasable prom,eprom)、电可擦除可编程只读存储器(electrically eprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(random access memory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(random access memory,ram)可用,例如静态随机存取存储器(static ram,sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(synchronous dram,sdram)、双倍数据速率同步动态随机存取存储器(double data rate sdram,ddr sdram)、增强型同步动态随机存取存储器(enhanced sdram,esdram)、同步连接动态随机存取存储器(synchlink dram,sldram)和直接内存总线随机存取存储器(direct rambus ram,dr ram)。
242.上述实施例,可以全部或部分地通过软件、硬件(如电路)、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行所述计算机指令或计算机程序时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质。半导体介质可以是固态硬盘。
243.应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,其中a,b可以是单数或者复数。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系,但也可能表示的是一种“和/或”的关系,具体可参考前后文进行理解。
244.本技术中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
245.应理解,在本技术的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本技术实施例的实施过程构成任何限定。
246.本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
247.所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
248.在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
249.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
250.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
251.所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
252.以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。