基于多层加密的数据隐私保护方法转让专利

申请号 : CN202211330632.5

文献号 : CN115412365B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 王滨陈思林克章沈玉龙张志为王国云陈加栋

申请人 : 杭州海康威视数字技术股份有限公司

摘要 :

本申请实施例提供了一种基于多层加密的数据隐私保护方法,涉及网络技术领域。方法包括:起始客户端基于公钥集合对业务数据进行加密,得到第一待处理数据;向后一个客户端发送第一待处理数据;中间客户端获取前一个客户端发送的第一待处理数据;基于公钥集合对业务数据进行加密,得到第二加密数据;向后一个客户端发送第二待处理数据和第二加密数据;终止客户端获取前一个客户端发送的第二待处理数据和第二加密数据;基于自身的私钥对第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;向预设服务平台发送数据隐私保护系统中所有客户端的业务数据。应用本申请实施例,降低用户的隐私数据泄露的风险。

权利要求 :

1.一种基于多层加密的数据隐私保护方法,其特征在于,所述方法应用于数据隐私保护系统包含的多个客户端中的中间客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述中间客户端为除第一个客户端和最后一个客户端以外的任一客户端,所述方法包括:获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据;其中,所述第一待处理数据包括:所述中间客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;所述第一待转发数据为基于所述中间客户端的前一个客户端接收到的其他客户端发送的数据得到的;一个客户端对应的公钥集合包括:所述最后一个客户端的公钥;

基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据;

向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据;其中,所述第二待处理数据为基于所述第一待处理数据得到的;所述最后一个客户端接收到的数据包括所述最后一个客户端的前一个客户端发送的第二待处理数据和第二加密数据。

2.根据权利要求1所述的方法,其特征在于,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;

所述第一加密数据为:所述中间客户端的前一个客户端基于自身对应的公钥集合中的公钥,按照公钥对应的加密顺序,对自身的业务数据进行逐层迭代加密得到的;所述加密顺序与公钥对应的客户端的指定顺序相反;

所述第一待转发数据为:所述中间客户端的前一个客户端基于自身的私钥对其他客户端发送的数据进行解密得到的;

在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之前,所述方法还包括:基于自身的私钥对所述第一待处理数据进行解密,得到所述第二待处理数据;

所述基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据,包括:

基于自身对应的公钥集合中的公钥,按照所述加密顺序,对自身的业务数据进行逐层迭代加密,得到第二加密数据。

3.根据权利要求2所述的方法,其特征在于,所述基于自身对应的公钥集合中的公钥,按照所述加密顺序,对自身的业务数据进行逐层迭代加密,得到第二加密数据,包括:获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;

基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;

按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述中间客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第二加密数据。

4.根据权利要求1所述的方法,其特征在于,在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之后,所述方法还包括:获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;

从所述响应数据中确定自身的业务数据对应的响应结果。

5.根据权利要求2所述的方法,其特征在于,在所述获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据之前,所述方法还包括:生成自身的公钥和私钥,并向所述数据隐私保护系统中按照所述指定顺序位于所述中间客户端之前的客户端发送自身的公钥。

6.一种基于多层加密的数据隐私保护方法,其特征在于,所述方法应用于数据隐私保护系统包含的多个客户端中的起始客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述起始客户端为第一个客户端,所述方法包括:基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据;一个客户端对应的公钥集合包括:所述指定顺序中最后一个客户端的公钥;

向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据,以使所述指定顺序中所述起始客户端的后一个客户端基于所述第一待处理数据得到第二待转发数据,以及基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据,并向自身的后一个客户端发送所述第二待转发数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据;所述最后一个客户端接收到的数据包括所述最后一个客户端的前一个客户端发送的所有数据。

7.根据权利要求6所述的方法,其特征在于,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;

所述第二待转发数据为:所述起始客户端的后一个客户端基于自身的私钥对所述第一待处理数据进行解密得到的;

所述基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据,包括:

基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第一待处理数据;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。

8.根据权利要求7所述的方法,其特征在于,所述基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第一待处理数据,包括:获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;

基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;

按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述起始客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第一待处理数据。

9.根据权利要求6所述的方法,其特征在于,在所述向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据之后,所述方法还包括:获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;

从所述响应数据中确定自身的业务数据对应的响应结果。

10.一种基于多层加密的数据隐私保护方法,其特征在于,所述方法应用于数据隐私保护系统包含的多个客户端中的终止客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述终止客户端为最后一个客户端,所述方法包括:获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据;其中,所述第二待处理数据为基于所述终止客户端的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的;一个客户端对应的公钥集合包括:所述终止客户端的公钥;

基于自身的私钥对所述第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;

向预设服务平台发送所述除自身以外的其他客户端各自的业务数据和自身的业务数据。

11.根据权利要求10所述的方法,其特征在于,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述终止客户端之间的客户端的公钥;

所述第二待处理数据为:所述终止客户端的前一个客户端基于自身的私钥对其他客户端发送的第一待处理数据进行解密得到的;

所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合,按照加密顺序,对自身的业务数据进行逐层迭代加密得到的;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。

12.根据权利要求10所述的方法,其特征在于,所述向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据,包括:基于预设密钥对除自身以外的其他客户端各自的业务数据和自身的业务数据进行加密,得到第三加密数据;

向所述预设服务平台发送所述第三加密数据。

13.根据权利要求10所述的方法,在所述向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据之后,所述方法还包括:获取所述预设服务平台发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;

向所述数据隐私保护系统中其他的客户端发送所述响应数据。

14.根据权利要求13所述的方法,其特征在于,在所述获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据之前,所述方法还包括:生成自身的公钥和私钥,并向所述数据隐私保护系统中其他的客户端发送自身的公钥。

15.一种数据隐私保护系统,其特征在于,所述系统包含多个客户端;所述多个客户端之间具有指定顺序,其中:中间客户端,用于执行上述权利要求1‑5任一所述的方法;所述中间客户端为按照所述指定顺序,所述多个客户端中除第一个客户端和最后一个客户端以外的任一客户端;

起始客户端,用于执行上述权利要求6‑9任一所述的方法;所述起始客户端为按照所述指定顺序,所述多个客户端中的第一个客户端;

终止客户端,用于执行上述权利要求10‑14任一所述的方法;所述终止客户端为按照所述指定顺序,所述多个客户端中的最后一个客户端。

16.一种基于多层加密的数据隐私保护装置,其特征在于,所述装置应用于数据隐私保护系统包含的多个客户端中的中间客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述中间客户端为除第一个客户端和最后一个客户端以外的任一客户端,所述装置包括:第一获取模块,用于获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据;其中,所述第一待处理数据包括:所述中间客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;所述第一待转发数据为基于所述中间客户端的前一个客户端接收到的其他客户端发送的数据得到的;一个客户端对应的公钥集合包括:所述最后一个客户端的公钥;

第一加密模块,用于基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据;

第一发送模块,用于向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据;其中,所述第二待处理数据为基于所述第一待处理数据得到的;所述最后一个客户端接收到的数据包括所述最后一个客户端的前一个客户端发送的第二待处理数据和第二加密数据。

17.一种基于多层加密的数据隐私保护装置,其特征在于,所述装置应用于数据隐私保护系统包含的多个客户端中的起始客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述起始客户端为第一个客户端,所述装置包括:第二加密模块,用于基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据;一个客户端对应的公钥集合包括:所述指定顺序中最后一个客户端的公钥;

第二发送模块,用于向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据,以使所述指定顺序中所述起始客户端的后一个客户端基于所述第一待处理数据得到第二待转发数据,以及基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据,并向自身的后一个客户端发送所述第二待转发数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据;所述最后一个客户端接收到的数据包括所述最后一个客户端的前一个客户端发送的所有数据。

18.一种基于多层加密的数据隐私保护装置,其特征在于,所述装置应用于数据隐私保护系统包含的多个客户端中的终止客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述终止客户端为最后一个客户端,所述装置包括:第四获取模块,用于获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据;其中,所述第二待处理数据为基于所述终止客户端的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的;一个客户端对应的公钥集合包括:所述终止客户端的公钥;

第二解密模块,用于基于自身的私钥对所述第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;

第三发送模块,用于向预设服务平台发送所述除自身以外的其他客户端各自的业务数据和自身的业务数据。

19.一种电子设备,其特征在于,包括:

存储器,用于存放计算机程序;

处理器,用于执行存储器上所存放的程序时,实现权利要求1‑14任一所述的方法。

20.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1‑14任一所述的方法。

说明书 :

基于多层加密的数据隐私保护方法

技术领域

[0001] 本申请涉及网络技术领域,特别是涉及一种基于多层加密的数据隐私保护方法。

背景技术

[0002] 随着网络技术的快速发展,用户可以通过客户端登录服务平台,并通过客户端向服务平台发送用户的业务数据。例如,用户可以通过客户端向智慧医疗服务平台上传用户的业务数据,上传的业务数据包括用户的身体状态信息。
[0003] 另外,相关技术中,服务平台需要对用户进行实名认证,即,服务平台可以获取用户的身份数据。进而,在用户通过客户端向服务平台发送用户的业务数据时,服务平台也就可以将用户的身份数据与用户的业务数据进行关联,会增大用户的隐私数据泄露的风险。

发明内容

[0004] 本申请实施例的目的在于提供一种基于多层加密的数据隐私保护方法,以降低用户的隐私数据泄露的风险。具体技术方案如下:
[0005] 在本申请实施例的第一方面,首先提供了一种基于多层加密的数据隐私保护方法,所述方法应用于数据隐私保护系统包含的多个客户端中的中间客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述中间客户端为除第一个客户端和最后一个客户端以外的任一客户端,所述方法包括:
[0006] 获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据;其中,所述第一待处理数据包括:所述中间客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;所述第一待转发数据为基于所述中间客户端的前一个客户端接收到的其他客户端发送的数据得到的;一个客户端对应的公钥集合包括:所述最后一个客户端的公钥;
[0007] 基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据;
[0008] 向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据;其中,所述第二待处理数据为基于所述第一待处理数据得到的。
[0009] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;
[0010] 所述第一加密数据为:所述中间客户端的前一个客户端基于自身对应的公钥集合中的公钥,按照公钥对应的加密顺序,对自身的业务数据进行逐层迭代加密得到的;所述加密顺序与公钥对应的客户端的指定顺序相反;
[0011] 所述第一待转发数据为:所述中间客户端的前一个客户端基于自身的私钥对其他客户端发送的数据进行解密得到的;
[0012] 在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之前,所述方法还包括:
[0013] 基于自身的私钥对所述第一待处理数据进行解密,得到所述第二待处理数据;
[0014] 所述基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据,包括:
[0015] 基于自身对应的公钥集合中的公钥,按照所述加密顺序,对自身的业务数据进行逐层迭代加密,得到第二加密数据。
[0016] 可选的,所述基于自身对应的公钥集合中的公钥,按照所述加密顺序,对自身的业务数据进行逐层迭代加密,得到第二加密数据,包括:
[0017] 获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;
[0018] 基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;
[0019] 按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述中间客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第二加密数据。
[0020] 可选的,在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之后,所述方法还包括:
[0021] 获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;
[0022] 从所述响应数据中确定自身的业务数据对应的响应结果。
[0023] 可选的,在所述获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据之前,所述方法还包括:
[0024] 生成自身的公钥和私钥,并向所述数据隐私保护系统中按照所述指定顺序位于所述中间客户端之前的客户端发送自身的公钥。
[0025] 在本申请实施例的第二方面,还提供了一种基于多层加密的数据隐私保护方法,所述方法应用于数据隐私保护系统包含的多个客户端中的起始客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述起始客户端为第一个客户端,所述方法包括:
[0026] 基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据;一个客户端对应的公钥集合包括:所述指定顺序中最后一个客户端的公钥;
[0027] 向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据,以使所述指定顺序中所述起始客户端的后一个客户端基于所述第一待处理数据得到第二待转发数据,以及基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据,并向自身的后一个客户端发送所述第二待转发数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0028] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;
[0029] 所述第二待转发数据为:所述起始客户端的后一个客户端基于自身的私钥对所述第一待处理数据进行解密得到的;
[0030] 所述基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据,包括:
[0031] 基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第一待处理数据;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。
[0032] 可选的,所述基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第一待处理数据,包括:
[0033] 获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;
[0034] 基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;
[0035] 按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述起始客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第一待处理数据。
[0036] 可选的,在所述向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据之后,所述方法还包括:
[0037] 获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;
[0038] 从所述响应数据中确定自身的业务数据对应的响应结果。
[0039] 在本申请实施例的第三方面,还提供了一种基于多层加密的数据隐私保护方法,所述方法应用于数据隐私保护系统包含的多个客户端中的终止客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述终止客户端为最后一个客户端,所述方法包括:
[0040] 获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据;其中,所述第二待处理数据为基于所述终止客户端的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的;一个客户端对应的公钥集合包括:所述终止客户端的公钥;
[0041] 基于自身的私钥对所述第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;
[0042] 向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0043] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述终止客户端之间的客户端的公钥;
[0044] 所述第二待处理数据为:所述终止客户端的前一个客户端基于自身的私钥对其他客户端发送的第一待处理数据进行解密得到的;
[0045] 所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合,按照加密顺序,对自身的业务数据进行逐层迭代加密得到的;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。
[0046] 可选的,所述向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据,包括:
[0047] 基于预设密钥对除自身以外的其他客户端各自的业务数据和自身的业务数据进行加密,得到第三加密数据;
[0048] 向所述预设服务平台发送所述第三加密数据。
[0049] 可选的,在所述向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据之后,所述方法还包括:
[0050] 获取所述预设服务平台发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;
[0051] 向所述数据隐私保护系统中其他的客户端发送所述响应数据。
[0052] 可选的,在所述获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据之前,所述方法还包括:
[0053] 生成自身的公钥和私钥,并向所述数据隐私保护系统中其他的客户端发送自身的公钥。
[0054] 在本申请实施例的第四方面,还提供了一种数据隐私保护系统,所述系统包含多个客户端;所述多个客户端之间具有指定顺序,其中:
[0055] 中间客户端,用于执行上述第一方面任一所述的方法;所述中间客户端为按照所述指定顺序,所述多个客户端中除第一个客户端和最后一个客户端以外的任一客户端;
[0056] 起始客户端,用于执行上述第二方面任一所述的方法;所述起始客户端为按照所述指定顺序,所述多个客户端中的第一个客户端;
[0057] 终止客户端,用于执行上述第三方面任一所述的方法;所述终止客户端为按照所述指定顺序,所述多个客户端中的最后一个客户端。
[0058] 在本申请实施例的第五方面,还提供了一种基于多层加密的数据隐私保护装置,所述装置应用于数据隐私保护系统包含的多个客户端中的中间客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述中间客户端为除第一个客户端和最后一个客户端以外的任一客户端,所述装置包括:
[0059] 第一获取模块,用于获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据;其中,所述第一待处理数据包括:所述中间客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;所述第一待转发数据为基于所述中间客户端的前一个客户端接收到的其他客户端发送的数据得到的;一个客户端对应的公钥集合包括:所述最后一个客户端的公钥;
[0060] 第一加密模块,用于基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据;
[0061] 第一发送模块,用于向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据;其中,所述第二待处理数据为基于所述第一待处理数据得到的。
[0062] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;
[0063] 所述第一加密数据为:所述中间客户端的前一个客户端基于自身对应的公钥集合中的公钥,按照公钥对应的加密顺序,对自身的业务数据进行逐层迭代加密得到的;所述加密顺序与公钥对应的客户端的指定顺序相反;
[0064] 所述第一待转发数据为:所述中间客户端的前一个客户端基于自身的私钥对其他客户端发送的数据进行解密得到的;
[0065] 所述装置还包括:
[0066] 第一解密模块,用于在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之前,基于自身的私钥对所述第一待处理数据进行解密,得到所述第二待处理数据;
[0067] 所述第一加密模块,具体用于基于自身对应的公钥集合中的公钥,按照所述加密顺序,对自身的业务数据进行逐层迭代加密,得到第二加密数据。
[0068] 可选的,所述第一加密模块,包括:
[0069] 第一预处理子模块,用于获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;
[0070] 第一中间加密子模块,用于基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;
[0071] 第一处理子模块,用于按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述中间客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第二加密数据。
[0072] 可选的,所述装置还包括:
[0073] 第二获取模块,用于在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之后,获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;
[0074] 第一响应结果确定模块,用于从所述响应数据中确定自身的业务数据对应的响应结果。
[0075] 可选的,所述装置还包括:
[0076] 第一生成模块,用于在所述获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据之前,生成自身的公钥和私钥,并向所述数据隐私保护系统中按照所述指定顺序位于所述中间客户端之前的客户端发送自身的公钥。
[0077] 在本申请实施例的第六方面,还提供了一种基于多层加密的数据隐私保护装置,所述装置应用于数据隐私保护系统包含的多个客户端中的起始客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述起始客户端为第一个客户端,所述装置包括:
[0078] 第二加密模块,用于基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据;一个客户端对应的公钥集合包括:所述指定顺序中最后一个客户端的公钥;
[0079] 第二发送模块,用于向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据,以使所述指定顺序中所述起始客户端的后一个客户端基于所述第一待处理数据得到第二待转发数据,以及基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据,并向自身的后一个客户端发送所述第二待转发数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0080] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;
[0081] 所述第二待转发数据为:所述起始客户端的后一个客户端基于自身的私钥对所述第一待处理数据进行解密得到的;
[0082] 所述第二加密模块,具体用于基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第一待处理数据;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。
[0083] 可选的,所述第二加密模块,包括:
[0084] 第二预处理子模块,用于获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;
[0085] 第二中间加密子模块,用于基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;
[0086] 第二处理子模块,用于按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述起始客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第一待处理数据。
[0087] 可选的,所述装置还包括:
[0088] 第三获取模块,用于在所述向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据之后,获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;
[0089] 第二响应结果确定模块,用于从所述响应数据中确定自身的业务数据对应的响应结果。
[0090] 在本申请实施例的第七方面,还提供了一种基于多层加密的数据隐私保护装置,所述装置应用于数据隐私保护系统包含的多个客户端中的终止客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述终止客户端为最后一个客户端,所述装置包括:
[0091] 第四获取模块,用于获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据;其中,所述第二待处理数据为基于所述终止客户端的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的;一个客户端对应的公钥集合包括:所述终止客户端的公钥;
[0092] 第二解密模块,用于基于自身的私钥对所述第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;
[0093] 第三发送模块,用于向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0094] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述终止客户端之间的客户端的公钥;
[0095] 所述第二待处理数据为:所述终止客户端的前一个客户端基于自身的私钥对其他客户端发送的第一待处理数据进行解密得到的;
[0096] 所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合,按照加密顺序,对自身的业务数据进行逐层迭代加密得到的;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。
[0097] 可选的,所述第三发送模块,包括:
[0098] 第三加密子模块,用于基于预设密钥对除自身以外的其他客户端各自的业务数据和自身的业务数据进行加密,得到第三加密数据;
[0099] 第四发送子模块,用于向所述预设服务平台发送所述第三加密数据。
[0100] 可选的,所述装置还包括:
[0101] 第五获取模块,用于在所述向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据之后,获取所述预设服务平台发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;
[0102] 第五发送模块,用于向所述数据隐私保护系统中其他的客户端发送所述响应数据。
[0103] 可选的,所述装置还包括:
[0104] 第二生成模块,用于在所述获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据之前,生成自身的公钥和私钥,并向所述数据隐私保护系统中其他的客户端发送自身的公钥。
[0105] 在本申请实施例的第八方面,提供了一种电子设备,包括:
[0106] 存储器,用于存放计算机程序;
[0107] 处理器,用于执行存储器上所存放的程序时,实现上述任一所述的基于多层加密的数据隐私保护方法。
[0108] 在本申请实施例的第九方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一所述的基于多层加密的数据隐私保护方法。
[0109] 在本申请实施例的第十方面,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的基于多层加密的数据隐私保护方法。
[0110] 本申请实施例有益效果:
[0111] 本申请实施例提供的一种基于多层加密的数据隐私保护方法,起始客户端基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据;其中,一个客户端对应的公钥集合包括:终止客户端的公钥;向指定顺序中起始客户端的后一个客户端发送第一待处理数据;中间客户端获取指定顺序中该中间客户端的前一个客户端发送的第一待处理数据;其中,第一待处理数据包括:中间客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;第一待转发数据为基于中间客户端的前一个客户端接收到的其他客户端发送的数据得到的;基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据;向指定顺序中该中间客户端的后一个客户端发送第二待处理数据和第二加密数据;终止客户端获取指定顺序中终止客户端的前一个客户端发送的第二待处理数据和第二加密数据;其中,第二待处理数据为基于终止客户端的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;第二加密数据为终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的;基于自身的私钥对第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0112] 基于上述处理,由最后一个客户端负责将各客户端的业务数据发送至预设服务平台,其他客户端无需向预设服务平台发送业务数据,使得预设服务平台并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端,也就无法将用户的身份数据与用户的业务数据进行关联,进而,能够降低用户的隐私数据泄露的风险。另外,由于每一客户端按照指定排序顺序,向后一个客户端发送加密后的业务数据,以及基于前一个客户端发送的数据得到的待转发数据。也就是说,针对指定顺序中除起始客户端和第一个中间客户端以外的每一个客户端,该客户端可以从前一个客户端接收到多份业务数据,然而,该客户端并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端;针对指定顺序中的第一个中间客户端,该中间客户端并未获取最后一个客户端的私钥,也就并不能对起始客户端发送的加密后的业务数据进行解密,即并不能确定起始客户端的业务数据。也就是说,针对指定顺序中除起始客户端以外的每一客户端,均无法将用户的身份数据与用户的业务数据进行关联,能够进一步地降低用户的隐私数据泄露的风险。
[0113] 当然,实施本申请的任一产品或方法并不一定需要同时达到以上所述的所有优点。

附图说明

[0114] 为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
[0115] 图1为本申请实施例提供的一种数据隐私保护系统架构图;
[0116] 图2为本申请实施例提供的基于多层加密的数据隐私保护方法的第一种交互图;
[0117] 图3为本申请实施例提供的基于多层加密的数据隐私保护方法的第二种交互图;
[0118] 图4为本申请实施例提供的基于多层加密的数据隐私保护方法的第三种交互图;
[0119] 图5为本申请实施例提供的基于多层加密的数据隐私保护方法的第四种交互图;
[0120] 图6为本申请实施例提供的基于多层加密的数据隐私保护装置的第一种结构图;
[0121] 图7为本申请实施例提供的基于多层加密的数据隐私保护装置的第二种结构图;
[0122] 图8为本申请实施例提供的基于多层加密的数据隐私保护装置的第三种结构图;
[0123] 图9为本申请实施例提供的一种电子设备示意图。

具体实施方式

[0124] 下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本申请保护的范围。
[0125] 相关技术中,用户可以通过客户端登录服务平台,并通过客户端向服务平台发送用户的业务数据。服务平台需要对用户进行实名认证,即,服务平台可以获取用户的身份数据。进而,在用户通过客户端向服务平台发送用户的业务数据时,服务平台也就可以将用户的身份数据与用户的业务数据进行关联,会增大用户的隐私数据泄露的风险。
[0126] 例如,服务平台可以为智慧医疗服务平台。相应的,用户的业务数据可以为用户的身体状态信息,如用户的病历;用户的身份数据可以为用户的真实身份信息,如用户的居民身份证号码。当用户通过客户端向智慧医疗服务平台上传用户的病历时,智慧医疗服务平台可以将用户的真实身份信息与用户的病历进行关联,导致用户的隐私数据泄露。
[0127] 为了解决上述问题,本申请实施例提供了一种数据隐私保护系统,以图1所示数据隐私保护系统架构为例,图1为本申请实施例提供的一种数据隐私保护系统架构图,该数据隐私保护系统包括多个客户端,多个客户端之间具有指定顺序,起始客户端101为第一个客户端,终止客户端103为最后一个客户端,数据隐私保护系统还包括中间客户端102(包括中间客户端1021、中间客户端1022和中间客户端1023),该实施例仅以包含三个中间客户端为例进行说明,实际场景中并不限于此。其中:
[0128] 起始客户端101,用于基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据;向指定顺序中起始客户端101的后一个客户端发送第一待处理数据;其中,一个客户端对应的公钥集合包括:终止客户端103的公钥;
[0129] 每一中间客户端102,用于获取指定顺序中该中间客户端102的前一个客户端发送的第一待处理数据;其中,第一待处理数据包括:该中间客户端102的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;第一待转发数据为基于该中间客户端102的前一个客户端接收到的其他客户端发送的数据得到的;基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据;向指定顺序中该中间客户端102的后一个客户端发送第二待处理数据和第二加密数据;
[0130] 终止客户端103,用于获取指定顺序中终止客户端103的前一个客户端发送的第二待处理数据和第二加密数据;其中,第二待处理数据为基于终止客户端103的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;第二加密数据为终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的;基于自身的私钥对第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0131] 基于上述处理,由最后一个客户端负责将各客户端的业务数据发送至预设服务平台,其他客户端无需向预设服务平台发送业务数据,使得预设服务平台并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端,也就无法将用户的身份数据与用户的业务数据进行关联,进而,能够降低用户的隐私数据泄露的风险。另外,由于每一客户端按照指定排序顺序,向后一个客户端发送加密后的业务数据,以及基于前一个客户端发送的数据得到的待转发数据。也就是说,针对指定顺序中除起始客户端和第一个中间客户端以外的每一个客户端,该客户端可以从前一个客户端接收到多份业务数据,然而,该客户端并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端;针对指定顺序中的第一个中间客户端,该中间客户端并未获取最后一个客户端的私钥,也就并不能对起始客户端发送的加密后的业务数据进行解密,即并不能确定起始客户端的业务数据。也就是说,针对指定顺序中除起始客户端以外的每一客户端,均无法将用户的身份数据与用户的业务数据进行关联,能够进一步地降低用户的隐私数据泄露的风险。
[0132] 基于相同的发明构思,本申请实施例还提供了一种基于多层加密的数据隐私保护方法,该方法可以应用于中间客户端、起始客户端和终止客户端。该中间客户端、起始客户端和终止客户端可以分别为上述数据隐私保护系统中的起始客户端101、中间客户端102和终止客户端103。参见图2,图2为本申请实施例提供的基于多层加密的数据隐私保护方法的第一种交互图,该方法可以包括以下步骤:
[0133] S201:起始客户端基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据。
[0134] 一个客户端对应的公钥集合包括:指定顺序中最后一个客户端的公钥。
[0135] S202:起始客户端向中间客户端发送第一待处理数据。
[0136] S203:中间客户端获取指定顺序中该中间客户端的前一个客户端发送的第一待处理数据。
[0137] 其中,第一待处理数据包括:中间客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;第一待转发数据为基于中间客户端的前一个客户端接收到的其他客户端发送的数据得到的。
[0138] S204:中间客户端基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据。
[0139] S205:中间客户端向指定顺序中该中间客户端的后一个客户端发送第二待处理数据和第二加密数据。
[0140] 其中,第二待处理数据为基于第一待处理数据得到的。
[0141] S206:终止客户端获取指定顺序中终止客户端的前一个客户端发送的第二待处理数据和第二加密数据。
[0142] 其中,第二待处理数据为基于终止客户端的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;第二加密数据为终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的。
[0143] S207:终止客户端基于自身的私钥对第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据。
[0144] S208:终止客户端向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0145] 基于上述处理,由最后一个客户端负责将各客户端的业务数据发送至预设服务平台,其他客户端无需向预设服务平台发送业务数据,使得预设服务平台并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端,也就无法将用户的身份数据与用户的业务数据进行关联,进而,能够降低用户的隐私数据泄露的风险。另外,由于每一客户端按照指定排序顺序,向后一个客户端发送加密后的业务数据,以及基于前一个客户端发送的数据得到的待转发数据。也就是说,针对指定顺序中除起始客户端和第一个中间客户端以外的每一个客户端,该客户端可以从前一个客户端接收到多份业务数据,然而,该客户端并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端;针对指定顺序中的第一个中间客户端,该中间客户端并未获取最后一个客户端的私钥,也就并不能对起始客户端发送的加密后的业务数据进行解密,即并不能确定起始客户端的业务数据。也就是说,针对指定顺序中除起始客户端以外的每一客户端,均无法将用户的身份数据与用户的业务数据进行关联,能够进一步地降低用户的隐私数据泄露的风险。
[0146] 其次,相关技术中,也可以通过为用户的业务数据添加噪声的方式,实现对用户的隐私数据的保护。即客户端可以在业务数据中添加噪声,并向预设服务平台发送已添加噪声的业务数据。然而,为业务数据添加噪声可能会导致业务数据的准确性降低。另外,预设平台也可以对已添加噪声的业务数据进行降噪处理,进而,也就可以将用户的身份数据与业务数据进行关联,同样会增大用户的隐私数据泄露的风险。而基于本申请实施例提供的方案,无需为用户的业务数据添加噪声,也就并不会导致用户的业务数据的准确性降低。另外,由最后一个客户端负责将各客户端的业务数据发送至预设服务平台,其他客户端无需向预设服务平台发送业务数据。也就是说,即使通过降噪处理,预设服务平台也并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端,也就无法将用户的身份数据与用户的业务数据进行关联,进而,基于本申请实施例提供的方案,能够降低用户的隐私数据泄露的风险。
[0147] 另外,相关技术中,网关可以基于用户的身份数据,为用户生成虚拟身份,进而,用户可以通过客户端,使用虚拟身份登录预设服务平台,并通过客户端向预设服务平台发送用户的业务数据。然而,由于网关可以获取用户的身份数据与用户的虚拟身份的对应关系。因此,在用户通过客户端向预设服务平台发送用户的业务数据时,网关也就可以将用户的身份数据与用户的业务数据进行关联,会增大用户的隐私数据泄露的风险。而基于本申请实施例提供的方案,由最后一个客户端负责将各客户端的业务数据发送至预设服务平台,其他客户端无需向预设服务平台发送业务数据。也就是说,网关也只能一次获取多个用户的业务数据,并不能够将该多份业务数据进行区分,以确定每一份业务数据所属的客户端,也就无法将用户的身份数据与用户的业务数据进行关联,进而,基于本申请实施例提供的方案,能够降低用户的隐私数据泄露的风险。
[0148] 一种实现方式中,当一个客户端需要向预设服务平台发送自身的业务数据时,该客户端可以确定其他需要向预设服务平台发送自身的业务数据的客户端,该多个客户端可以组成一个数据隐私保护系统,并且该多个客户端之间具有指定顺序。例如,该多个客户端之间可以基于预设选举方式,确定每一客户端在指定顺序中的位置。如,该预设选举方式可以基于区块链实现。
[0149] 针对步骤S201和步骤S204,每一客户端均具有自身的公钥和私钥,以及自身的业务数据。起始客户端可以基于自身对应的公钥集合,使用加密算法对自身的业务数据进行加密。例如,加密算法可以为非对称加密算法,如RSA算法,或者SM2算法。
[0150] 针对步骤S202,步骤S203,步骤S205和步骤S206,起始客户端为第一个客户端,中间客户端为除第一个客户端和最后一个客户端以外的任一客户端,终止客户端为最后一个客户端。可以理解的是,起始客户端的后一个客户端为中间客户端;终止客户端的前一个客户端为中间客户端。
[0151] 例如,数据隐私保护系统包含客户端1、客户端2、客户端3和客户端4,且按照指定顺序,客户端1为客户端2的前一个客户端,客户端2为客户端3的前一个客户端,客户端3为客户端4的前一个客户端。此时,客户端1为起始客户端,客户端2和客户端3为中间客户端,客户端4为终止客户端。
[0152] 由于起始客户端为第一个客户端,其并不会接收到其他客户端发送的数据,因此,起始客户端也只会向指定顺序中的第二个客户端(即第一个中间客户端)发送基于自身对应的公钥集合对自身的业务数据进行加密得到的第一待处理数据。
[0153] 相应的,若一个中间客户端的前一个客户端为起始客户端,即,该中间客户端为第一个中间客户端时,该中间客户端获取的起始客户端发送的第一待处理数据包括:基于起始客户端对应的公钥集合对起始客户端的业务数据进行加密得到的数据。可以理解的是,第一个中间客户端接收到的第一待处理数据中只有起始客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的数据,而不存在其他客户端向起始客户端发送的数据。
[0154] 若一个中间客户端的前一个客户端为中间客户端,则该中间客户端获取的前一个客户端发送的第一待处理数据包括:基于前一个客户端对应的公钥集合对前一个客户端的业务数据进行加密得到的第一加密数据,以及基于前一个客户端接收到的其他客户端发送的数据得到第一待转发数据。可以理解的是,当一个中间客户端的前一个客户端为中间客户端时,前一个客户端接收到的其他客户端发送的数据,也就是该前一个客户端的前一个客户端发送的数据。
[0155] 针对步骤S207,由于每一客户端按照指定排序顺序,向后一个客户端发送加密后的业务数据,以及基于前一个客户端发送的数据得到的待转发数据。也就是说,针对指定顺序中除起始客户端和第一个中间客户端以外的每一个客户端,该客户端可以从前一个客户端接收到多份加密后的业务数据。该加密后的多份业务数据包含位于该客户端之前的所有客户端的业务数据。因此,终止客户端可以获取到数据隐私保护系统中除自身以外的其他所有客户端的加密后的业务数据。进而,终止客户端可以基于自身的私钥对各加密后的业务数据进行解密,得到除自身以外的其他客户端各自的业务数据。
[0156] 针对步骤S208,预设服务平台表示需要获取用户的业务数据的服务平台。例如,预设服务平台可以为智慧医疗服务平台。
[0157] 客户端可以采取至少以下方式,基于自身对应的公钥集合对自身的业务数据进行加密:
[0158] 方式一:每一客户端利用终止客户端的公钥对自身的业务数据进行加密,得到第二加密数据。
[0159] 针对数据隐私保护系统中除终止客户端外的每一客户端,该客户端可以利用终止客户端的公钥,对自身的业务数据进行加密,并向指定顺序中该客户端的后一个客户端发送加密后的业务数据。相应的,当该后一个客户端不为终止客户端时,后一个客户端可以向自身的后一个客户端发送接收到的数据和自身加密后的业务数据。以此类推,终止客户端可以接收到多份利用自身的公钥进行加密的业务数据,进而,终止客户端可以利用自身的私钥对多份加密数据进行解密,得到其他各客户端的业务数据。
[0160] 例如,数据隐私保护系统中包含N个客户端,指定顺序表示:客户端1,客户端2,……,客户端N。客户端X的公钥和私钥表示为 ,业务数据表示为 。其中, 表示客户端X的公钥, 表示客户端X的私钥。X的取值可以为1、2、……或N。
[0161] 进而,每一客户端可以利用终止客户端(即客户端N)的公钥 对自身的业务数据进行加密,得到加密数据,并向后一个客户端发送加密数据和接收到的数据。例如,加密数据可以表示为 。E表示Encipher(加密), 表示按照指定顺序第X个客户端(即客户端X),利用客户端N的公钥 对自身的业务数据 进行加密得到的加密数据。如为第一个客户端对自身的业务数据 进行加密得到的加密数据,为第二个客户端对自身的业务数据 进行加密得到的加密数据。客户端1可
以向客户端2发送 ,客户端2可以向客户端3发送 和 ,以此类推。
[0162] 客户端N可以接收到 、 、……、 ,并基于自身的私钥 对接收到的多个加密数据进行解密,得到多个业务数据 、 、……、 。
[0163] 基于上述方式一的加密方式,由于除终止客户端以外的任一客户端只需利用终止客户端的公钥对自身的业务数据进行加密,因此,对业务数据进行加密的复杂度低,加密速度快,消耗的运算资源少。另外,除终止客户端以外的任一客户端也并不需要对接收到的其他客户端发送的加密数据进行解密,直接向下一个客户端进行转发即可。也就能够降低客户端的处理复杂度,提高基于多层加密的数据隐私保护效率。
[0164] 方式二:每一客户端利用指定顺序中位于该客户端之后的所有客户端的公钥对自身的业务数据进行加密,得到第二加密数据。相应的,在一些实施例中,参见图3,图3为本申请实施例提供的基于多层加密的数据隐私保护方法的第二种交互图。在图2的基础上,步骤S201,包括:
[0165] S2011:起始客户端基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第一待处理数据。
[0166] 其中,加密顺序与公钥对应的客户端的指定顺序相反。
[0167] 相应的,步骤S205之前,方法还包括:
[0168] S209:中间客户端基于自身的私钥对第一待处理数据进行解密,得到第二待处理数据。
[0169] 相应的,步骤S204,包括:
[0170] S2041:中间客户端基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第二加密数据。
[0171] 为了进一步提高用户的业务数据的安全性,降低用户的隐私数据泄露的风险,一个客户端对应的公钥集合还可以包括:按照指定顺序位于该客户端与最后一个客户端之间的客户端的公钥。也就是说,一个客户端对应的公钥集合包括:按照指定顺序位于该客户端之后的所有客户端的公钥。
[0172] 中间客户端对自身的业务数据进行逐层迭代加密,也就是说,中间客户端对自身的业务数据进行多层加密,并且每一层需要进行加密的数据为上一层加密后得到的数据。可以理解的是,中间客户端使用终止客户端的公钥对自身的业务数据进行第一层加密,使用该中间客户端的后一个客户端的公钥进行最后一层加密,相应的,该中间客户端向后一个客户端发送该加密后的业务数据,后一个客户端可以基于自身的私钥,对该加密后的业务数据进行解密。
[0173] 为了便于理解,我们可以将加密过程类比为上锁过程,将解密过程类比为开锁过程。例如,客户端1可以使用客户端N的锁,客户端N‑1的锁,……,客户端2的锁,为自身的业务数据上锁,得到第一待处理数据,并向客户端2发送第一待处理数据。进而,客户端2可以使用自身的钥匙,开启第一待处理数据中最外层的客户端2的锁,得到使用客户端N的锁,客户端N‑1的锁,……,客户端3的锁进行加密的客户端1的业务数据(可以称为第一解密数据),并且客户端2可以使用客户端N的锁,客户端N‑1的锁,……,客户端3的锁,为自身的业务数据上锁,得到第一加密数据,并向客户端3发送第一解密数据和第一加密数据。
[0174] 进而,客户端3可以使用自身的钥匙,开启第一解密数据和第一加密数据中最外层的客户端3的锁,得到使用客户端N的锁,客户端N‑1的锁,……,客户端4的锁进行加密的客户端1的业务数据和客户端2的业务数据(即第二待处理数据),并且客户端3可以使用客户端N的锁,客户端N‑1的锁,……,客户端4的锁,为自身的业务数据上锁,得到第二加密数据,并向客户端4发送第二待处理数据和第二加密数据。以此类推。
[0175] 客户端N可以获取到使用客户端N的锁进行加密的客户端1的业务数据、客户端2的业务数据、……和客户端N‑1的业务数据,进而,客户端N可以使用自身的钥匙,开启各数据中最外层的客户端N的锁,得到客户端1的业务数据、客户端2的业务数据、……和客户端N‑1的业务数据,即得到除自身以外的其他客户端各自的业务数据。
[0176] 基于上述处理,使用多个客户端的公钥对自身的业务数据进行加密,因此,针对接收到加密后的业务数据的客户端,该客户端只有在获取到该多个客户端的公钥对应的私钥时才能够进行解密,也就能够增大获取明文的业务数据的难度,进一步提高用户的业务数据的安全性,降低用户的隐私数据泄露的风险。
[0177] 在一些实施例中,在图3的基础上,步骤S2011,包括:
[0178] 步骤1:起始客户端获取自身的业务数据,作为当前的待加密数据,并确定最后一个客户端,作为当前的备选客户端。
[0179] 步骤2:起始客户端基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据。
[0180] 步骤3:起始客户端按照指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,直至基于指定顺序中起始客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第一待处理数据。
[0181] 相应的,步骤S2041,包括:
[0182] 步骤4:中间客户端获取自身的业务数据,作为当前的待加密数据,并确定最后一个客户端,作为当前的备选客户端。
[0183] 步骤5:中间客户端基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据。
[0184] 步骤6:中间客户端按照指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,直至基于指定顺序中该中间客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第二加密数据。
[0185] 例如,当数据隐私保护系统中包含N个客户端时,指定顺序表示:客户端1,客户端2,……,客户端N。相应的,加密顺序表示:客户端N,客户端N‑1,……,客户端2,客户端1。也即按照 , ,……, , 的顺序,对业务数据进行加密。
[0186] 如针对客户端1,当前的待加密数据为 。按照指定顺序,位于客户端1与最后一个客户端(即客户端N)之间的客户端为客户端2,……,客户端N‑1。因此,客户端1对应的公钥集合包括: , ,……, 。
[0187] 当前的备选客户端为客户端N,客户端N的公钥为 ,因此,当前的中间加密数据可以表示为 。
[0188] 进而,客户端1按照指定顺序,将客户端N‑1作为当前的备选客户端,并将当前的中间加密数据 作为当前的待加密数据,通过加密,得到当前的中间加密数据。以此类推,直至基于指定顺序中客户端1的后一个客户端(即客户端2)的
公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第一待处理数据。第一待处理数据可以表示为 。
[0189] 相应的,每一中间客户端也可以按照上述方式,对自身的业务数据进行加密。针对每一客户端,加密后的业务数据可以表示为 。 表示按照指定顺序第X个客户端(即客户端X),利用客户端N的公钥 ,客户端N‑1的公钥 ,……,客户端X+1的公钥 ,对自身的业务数据 进行加密得到的加密数据。如客户端1对自身的业务数据 进行加密后可以得到 ,客户端2对自身的业务
数据进行加密后可以得到 ,以此类推。
[0190] 客户端2获取第一待处理数据后,可以基于自身的私钥 对客户端1发送的第一待处理数据进行解密,得到 。相应的,客户端2可以基于自身对应的公钥集合对自身的业务数据进行加密,得到 。进而,客户端2可
以向客户端3发送 与 。
[0191] 相应的,客户端3可以基于自身的私钥 对 与 进行解密,得到与 。并且,客户端3可以基于自身对应的公
钥集合对自身的业务数据进行加密,得到 。进而,客户端3可以向客
户端4发送 、和 。以此类推。
[0192] 客户端N可以接收到 、 、……、 。并且,客户端N可以基于自身的私钥对接收到的多个数据进行解密,得到多个业务数据 、 、……、 。
[0193] 基于上述处理,使用多个客户端的公钥对客户端的业务数据进行加密,因此,针对接收到加密后的业务数据的客户端,该客户端只有在获取到该多个客户端的公钥对应的私钥时才能够进行解密,也就能够增大获取明文的业务数据的难度,进一步提高用户的业务数据的安全性,降低用户的隐私数据泄露的风险。
[0194] 在一些实施例中,参见图4,图4为本申请实施例提供的基于多层加密的数据隐私保护方法的第三种交互图。在图2的基础上,步骤S208包括:
[0195] S2081:终止客户端基于预设密钥对除自身以外的其他客户端各自的业务数据和自身的业务数据进行加密,得到第三加密数据。
[0196] S2082:终止客户端向预设服务平台发送第三加密数据。
[0197] 一种实现方式中,预设服务平台可以预先基于密钥生成算法,生成预设密钥,并通过广播的方式,向多个客户端发送预设密钥。进而,终止客户端可以基于预设服务平台发送的预设密钥,使用加密算法,对多个业务数据进行加密。
[0198] 例如,加密算法可以为对称加密算法,如AES(Advanced Encryption Standard,高级加密标准)算法,IDEA(International Data Encryption Algorithm,国际数据加密算法),或者PBE(Password Based Encryption,基于口令加密)算法。
[0199] 例如,加密算法也可以为非对称加密算法,如上述实施例中的RSA算法,或者SM2算法。在该情况下,预设服务平台可以向多个客户端发送生成的公钥。
[0200] 基于上述处理,终止客户端可以基于预设密钥,对多个业务数据进行加密,再向预设服务平台发送加密后的多个业务数据。通过对业务数据进行加密,增大获取明文的业务数据的难度,进一步提高用户的业务数据的安全性,降低用户的隐私数据泄露的风险。
[0201] 一种方式中,预设服务平台可以通过广播的方式向多个客户端发送包括多个客户端各自的业务数据,以及对应的响应结果的响应数据。进而,当数据隐私保护系统中的客户端获取到响应数据后,可以从响应数据中确定自身的业务数据,进而确定自身的业务数据对应的响应结果。
[0202] 另一种方式中,预设服务平台可以向终止客户端发送响应数据。参见图5,图5为本申请实施例提供的基于多层加密的数据隐私保护方法的第四种交互图。在图2的基础上,在步骤S208之后,方法还包括:
[0203] S210:终止客户端获取预设服务平台发送的响应数据。
[0204] 其中,响应数据包括多个客户端各自的业务数据,以及对应的响应结果;
[0205] S211:终止客户端向数据隐私保护系统中其他的客户端发送响应数据。
[0206] S212:起始客户端获取响应数据。
[0207] S213:起始客户端从响应数据中确定自身的业务数据对应的响应结果。
[0208] S214:中间客户端获取响应数据。
[0209] S215:中间客户端从响应数据中确定自身的业务数据对应的响应结果。
[0210] 可以理解的是,本方式中并不对除终止客户端以外的其他客户端获取响应数据的顺序进行限定。针对任一客户端,当该客户端获取响应数据后,就可以从响应数据中确定自身的业务数据对应的响应结果。
[0211] 预设服务平台获取终止客户端发送的数据后,可以对数据进行响应,并得到每一数据对应的响应结果。例如,当预设服务平台为智慧医疗服务平台,终止客户端向智慧医疗服务平台发送的数据为多个用户的身体状态信息时,每一数据对应的响应结果可以为每一身体状态信息对应的诊疗结果。
[0212] 预设服务平台可以向终止客户端发送响应数据。进而,当终止客户端获取响应数据后,可以向数据隐私保护系统中的多个客户端发送该响应数据。例如,终止客户端可以通过广播的方式,向数据隐私保护系统中的多个客户端发送该响应数据。由于响应数据中包括多个客户端各自的业务数据,以及对应的响应结果,因此每一客户端可以从响应数据中确定自身的业务数据,进而确定自身的业务数据对应的响应结果。
[0213] 基于上述处理,在终止客户端向预设服务平台发送多个用户的业务数据的情况下,每一客户端可以获取预设服务平台响应自身的业务数据的响应结果。另外,相较于上述预设服务平台通过广播的方式向多个客户端发送响应数据的方式,基于本申请实施例提供的方式,预设服务平台只需向终止客户端发送响应数据即可,无需广播发送响应数据,也即可以减少网络资源的占用。并且预设服务平台无需知晓响应数据对应的各客户端的地址信息,因此,能够减少客户端的相关信息的泄露,进一步提高用户的业务数据的安全性,降低用户的隐私数据泄露的风险。
[0214] 一种方式中,每一客户端可以生成自身的公钥和私钥,并向数据隐私保护系统中的其他客户端广播发送自身的公钥。进而,数据隐私保护系统中的每一客户端可以获取其他客户端的公钥,确定自身对应的公钥集合。
[0215] 另一种方式中,基于上述方式二的加密方式,在图2的基础上,在步骤S201之前,方法还包括:
[0216] 中间客户端生成自身的公钥和私钥,并向数据隐私保护系统中按照指定顺序位于中间客户端之前的客户端发送自身的公钥。
[0217] 终止客户端生成自身的公钥和私钥,并向数据隐私保护系统中其他的客户端发送自身的公钥。
[0218] 基于上述处理,每一客户端可以获取其他客户端的公钥,得到自身对应的公钥集合,进而可以基于自身对应的公钥集合对自身的业务数据进行加密。通过使用多个客户端的公钥对自身的业务数据进行加密,增大获取明文的业务数据的难度,进一步提高用户的业务数据的安全性,降低用户的隐私数据泄露的风险。
[0219] 基于与上述基于多层加密的数据隐私保护方法相同的发明构思,本申请实施例还提供了还提供了一种基于多层加密的数据隐私保护装置,所述装置应用于数据隐私保护系统包含的多个客户端中的中间客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述中间客户端为除第一个客户端和最后一个客户端以外的任一客户端。参见图6,图6为本申请实施例提供的基于多层加密的数据隐私保护装置的第一种结构图,所述装置包括:
[0220] 第一获取模块601,用于获取指定顺序中中间客户端的前一个客户端发送的第一待处理数据;其中,第一待处理数据包括:中间客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的第一加密数据,以及第一待转发数据;第一待转发数据为基于中间客户端的前一个客户端接收到的其他客户端发送的数据得到的;一个客户端对应的公钥集合包括:所述最后一个客户端的公钥;
[0221] 第一加密模块602,用于基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据;
[0222] 第一发送模块603,用于向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据;其中,所述第二待处理数据为基于所述第一待处理数据得到的。
[0223] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;
[0224] 所述第一加密数据为:所述中间客户端的前一个客户端基于自身对应的公钥集合中的公钥,按照公钥对应的加密顺序,对自身的业务数据进行逐层迭代加密得到的;所述加密顺序与公钥对应的客户端的指定顺序相反;
[0225] 所述第一待转发数据为:所述中间客户端的前一个客户端基于自身的私钥对其他客户端发送的数据进行解密得到的;
[0226] 所述装置还包括:
[0227] 第一解密模块,用于在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之前,基于自身的私钥对所述第一待处理数据进行解密,得到所述第二待处理数据;
[0228] 所述第一加密模块602,具体用于基于自身对应的公钥集合中的公钥,按照所述加密顺序,对自身的业务数据进行逐层迭代加密,得到第二加密数据。
[0229] 可选的,所述第一加密模块602,包括:
[0230] 第一预处理子模块,用于获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;
[0231] 第一中间加密子模块,用于基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;
[0232] 第一处理子模块,用于按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述中间客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第二加密数据。
[0233] 可选的,所述装置还包括:
[0234] 第二获取模块,用于在所述向所述指定顺序中所述中间客户端的后一个客户端发送第二待处理数据和所述第二加密数据之后,获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;
[0235] 第一响应结果确定模块,用于从所述响应数据中确定自身的业务数据对应的响应结果。
[0236] 可选的,所述装置还包括:
[0237] 第一生成模块,用于在所述获取所述指定顺序中所述中间客户端的前一个客户端发送的第一待处理数据之前,生成自身的公钥和私钥,并向所述数据隐私保护系统中按照所述指定顺序位于所述中间客户端之前的客户端发送自身的公钥。
[0238] 基于与上述基于多层加密的数据隐私保护方法相同的发明构思,本申请实施例还提供了一种基于多层加密的数据隐私保护装置,所述装置应用于数据隐私保护系统包含的多个客户端中的起始客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述起始客户端为第一个客户端。参见图7,图7为本申请实施例提供的基于多层加密的数据隐私保护装置的第二种结构图,所述装置包括:
[0239] 第二加密模块701,用于基于自身对应的公钥集合对自身的业务数据进行加密,得到第一待处理数据;一个客户端对应的公钥集合包括:所述指定顺序中最后一个客户端的公钥;
[0240] 第二发送模块702,用于向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据,以使所述指定顺序中所述起始客户端的后一个客户端基于所述第一待处理数据得到第二待转发数据,以及基于自身对应的公钥集合对自身的业务数据进行加密,得到第二加密数据,并向自身的后一个客户端发送所述第二待转发数据和所述第二加密数据,以使所述最后一个客户端在接收到数据后,基于自身的私钥对接收到的数据进行解密,得到除自身以外的其他客户端各自的业务数据,并向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0241] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述最后一个客户端之间的客户端的公钥;
[0242] 所述第二待转发数据为:所述起始客户端的后一个客户端基于自身的私钥对所述第一待处理数据进行解密得到的;
[0243] 所述第二加密模块701,具体用于基于自身对应的公钥集合中的公钥,按照加密顺序,对自身的业务数据进行逐层迭代加密,得到第一待处理数据;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。
[0244] 可选的,所述第二加密模块701,包括:
[0245] 第二预处理子模块,用于获取自身的业务数据,作为当前的待加密数据,并确定所述最后一个客户端,作为当前的备选客户端;
[0246] 第二中间加密子模块,用于基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据;
[0247] 第二处理子模块,用于按照所述指定顺序,将当前的备选客户端的前一个客户端作为当前的备选客户端,并将当前的中间加密数据作为当前的待加密数据,返回执行所述基于当前的备选客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据步骤,直至基于所述指定顺序中所述起始客户端的后一个客户端的公钥对当前的待加密数据进行加密,得到当前的中间加密数据,作为第一待处理数据。
[0248] 可选的,所述装置还包括:
[0249] 第三获取模块,用于在所述向所述指定顺序中所述起始客户端的后一个客户端发送所述第一待处理数据之后,获取所述最后一个客户端发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;所述响应数据为所述预设服务平台向所述最后一个客户端发送的;
[0250] 第二响应结果确定模块,用于从所述响应数据中确定自身的业务数据对应的响应结果。
[0251] 基于与上述基于多层加密的数据隐私保护方法相同的发明构思,本申请实施例还提供了一种基于多层加密的数据隐私保护装置,所述装置应用于数据隐私保护系统包含的多个客户端中的终止客户端;所述多个客户端之间具有指定顺序,且按照所述指定顺序,所述终止客户端为最后一个客户端。参见图8,图8为本申请实施例提供的基于多层加密的数据隐私保护装置的第三种结构图,所述装置包括:
[0252] 第四获取模块801,用于获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据;其中,所述第二待处理数据为基于所述终止客户端的前一个客户端接收到的其他客户端发送的第一待处理数据得到的;所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合对自身的业务数据进行加密得到的;一个客户端对应的公钥集合包括:所述终止客户端的公钥;
[0253] 第二解密模块802,用于基于自身的私钥对所述第二待处理数据和第二加密数据进行解密,得到除自身以外的其他客户端各自的业务数据;
[0254] 第三发送模块803,用于向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据。
[0255] 可选的,一个客户端对应的公钥集合还包括:按照所述指定顺序位于该客户端与所述终止客户端之间的客户端的公钥;
[0256] 所述第二待处理数据为:所述终止客户端的前一个客户端基于自身的私钥对其他客户端发送的第一待处理数据进行解密得到的;
[0257] 所述第二加密数据为所述终止客户端的前一个客户端基于自身对应的公钥集合,按照加密顺序,对自身的业务数据进行逐层迭代加密得到的;其中,所述加密顺序与公钥对应的客户端的指定顺序相反。
[0258] 可选的,所述第三发送模块803,包括:
[0259] 第三加密子模块,用于基于预设密钥对除自身以外的其他客户端各自的业务数据和自身的业务数据进行加密,得到第三加密数据;
[0260] 第四发送子模块,用于向所述预设服务平台发送所述第三加密数据。
[0261] 可选的,所述装置还包括:
[0262] 第五获取模块,用于在所述向预设服务平台发送除自身以外的其他客户端各自的业务数据和自身的业务数据之后,获取所述预设服务平台发送的响应数据;其中,所述响应数据包括所述多个客户端各自的业务数据,以及对应的响应结果;
[0263] 第五发送模块,用于向所述数据隐私保护系统中其他的客户端发送所述响应数据。
[0264] 可选的,所述装置还包括:
[0265] 第二生成模块,用于在所述获取所述指定顺序中所述终止客户端的前一个客户端发送的第二待处理数据和第二加密数据之前,生成自身的公钥和私钥,并向所述数据隐私保护系统中其他的客户端发送自身的公钥。
[0266] 本申请的技术方案中,所涉及的用户个人信息的获取、存储、使用、加工、传输、提供和公开等操作,均是在已取得用户授权的情况下进行的。
[0267] 本申请实施例还提供了一种电子设备,如图9所示,图9为本申请实施例提供的一种电子设备示意图,包括:
[0268] 存储器901,用于存放计算机程序;
[0269] 处理器902,用于执行存储器901上所存放的程序时,实现上述实施例中任一基于多层加密的数据隐私保护方法的步骤。
[0270] 并且上述电子设备还可以包括通信总线和/或通信接口,处理器902、通信接口、存储器901通过通信总线完成相互间的通信。
[0271] 上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry  Standard Architecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0272] 通信接口用于上述电子设备与其他设备之间的通信。
[0273] 存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non‑Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0274] 上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field‑Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0275] 在本申请提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一基于多层加密的数据隐私保护方法的步骤。
[0276] 在本申请提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一基于多层加密的数据隐私保护方法。
[0277] 在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk (SSD))等。
[0278] 需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0279] 本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、系统、电子设备、计算机可读存储介质、计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0280] 以上所述仅为本申请的较佳实施例,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本申请的保护范围内。