CN110750801B - 数据处理方法、装置、计算机设备和存储介质 - Google Patents

数据处理方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN110750801B
CN110750801B CN201910962389.0A CN201910962389A CN110750801B CN 110750801 B CN110750801 B CN 110750801B CN 201910962389 A CN201910962389 A CN 201910962389A CN 110750801 B CN110750801 B CN 110750801B
Authority
CN
China
Prior art keywords
data
ciphertext
preset
client
operator
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910962389.0A
Other languages
English (en)
Other versions
CN110750801A (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.)
Juzix Technology Shenzhen Co ltd
Original Assignee
Juzix Technology Shenzhen Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Juzix Technology Shenzhen Co ltd filed Critical Juzix Technology Shenzhen Co ltd
Priority to CN201910962389.0A priority Critical patent/CN110750801B/zh
Publication of CN110750801A publication Critical patent/CN110750801A/zh
Priority to PCT/CN2020/076140 priority patent/WO2021068444A1/zh
Application granted granted Critical
Publication of CN110750801B publication Critical patent/CN110750801B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本申请提供了一种数据处理方法、装置、计算机设备和存储介质,其中,该方法包括:接收客户端发送的数据处理请求,其中,数据处理请求中携带有密文数据,密文数据由客户端利用同态加密算法对目标数据进行加密后生成;响应于数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据;将密文特征数据和预设模型中的预设算子发送至代理端,其中,代理端用于与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果。上述方案可以在输入为密文数据的情况下对数据进行处理,能够有效保护数据隐私,同时能够节约带宽资源。

Description

数据处理方法、装置、计算机设备和存储介质
技术领域
本申请涉及人工智能技术领域,特别涉及一种数据处理方法、装置、计算机设备和存储介质。
背景技术
在一些应用场景下,服务器可以根据训练好的深度学习模型对客户端发送的目标数据进行处理,以得到处理结果。例如,服务器可以根据训练好的诊断模型对客户端发送的医疗影像数据进行诊断处理,从而得到诊断结果。其中,上述医疗影像数据往往可能会涉及到用户隐私,上述方法在进行具体数据处理的过程中容易出现用户隐私数据的泄露。
因此,亟需一种能够在保护用户数据隐私的情况下对数据进行处理的方法。
发明内容
本申请实施例提供了一种数据处理方法、装置、计算机设备和存储介质,以提供一种能够保护用户隐私的数据处理方法。
本申请实施例提供了一种数据处理方法,包括:接收客户端发送的数据处理请求,其中,数据处理请求中携带有密文数据,密文数据由客户端利用同态加密算法对目标数据进行加密后生成;响应于数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据;将密文特征数据和预设模型中的预设算子发送至代理端,其中,代理端用于与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果;其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
本申请实施例还提供了一种数据处理方法,应用于代理端,包括:接收服务器发送的密文特征数据和预设模型中的预设算子,其中,密文特征数据由服务器根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行卷积操作得到的,密文数据由客户端利用同态加密算法对目标数据进行加密后得到的;根据预设的MPC协议调用预设模型中的预设算子,以与客户端配合对密文特征数据进行处理,得到密文处理结果;将密文处理结果发送至客户端;其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
本申请实施例还提供了一种数据处理方法,包括:客户端获取目标数据,并利用同态加密算法对目标数据进行加密,得到密文数据;客户端向服务器发送数据处理请求,其中,数据处理请求中携带有密文数据;响应于数据处理请求,服务器与客户端根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据;服务器将密文特征数据和预设模型中的预设算子发送至代理端;代理端根据预设的MPC协议调用预设算子,以与客户端配合对密文特征数据进行处理,得到密文处理结果;代理端将密文处理结果发送至客户端;客户端对密文处理结果进行解密,得到目标数据的明文处理结果;其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
本申请实施例还提供了一种数据处理装置,包括:接收模块,用于接收客户端发送的数据处理请求,其中,数据处理请求中携带有密文数据,密文数据由客户端利用同态加密算法对目标数据进行加密后生成;卷积模块,用于响应于数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据;发送模块,用于将密文特征数据和预设模型中的预设算子发送至代理端,其中,代理端用于与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果;其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
本申请实施例还提供一种计算机设备,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述任意实施例中所述的数据处理方法的步骤。
本申请实施例还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任意实施例中所述的数据处理方法的步骤。
在本申请实施例中,提供了一种数据处理方法,客户端利用同态加密算法对目标数据进行加密后生成密文数据,服务器接收客户端发送的携带有密文数据的数据处理请求,并响应于数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,服务器将密文特征数据和预设模型中的预设算子发送至代理端,代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果。其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理。上述方案中,通过对目标数据进行同态加密,得到对应的密文数据,避免目标数据的具体内容遭到泄漏。进一步,服务器根据预设的MPC协议调用能够兼容MPC协议的预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,并将密文特征数据和预设模型中的预设算子发送至代理端,使得代理端和客户端再根据预设的MPC协议调用预设模型中的预设算子对密文特征数据进行具体的处理,得到目标数据的密文处理结果。实现了能在目标数据加密的状态下,对目标数据进行具体处理,从而有效地保护了数据隐私。更进一步地,由于代理端是与客户端处于同一局域网中的计算机或者是运行于客户端上的安全容器或虚拟机,因此,相比于直接由服务器与客户端对密文特征数据进行安全多方计算,通过代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行安全多方计算,可以有效节省安全多方计算所需的网络带宽,同时极大地降低网络延时,进而有效提高数据处理的效率。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,并不构成对本申请的限定。在附图中:
图1示出了本申请一些实施例中的数据处理方法的应用场景示意图;
图2示出了本申请一些实施例中的数据处理方法的流程图;
图3示出了本申请一些实施例中的数据处理方法的流程图;
图4示出了本申请一些实施例中的数据处理方法的流程图;
图5示出了本申请一些实施例中的数据处理方法的顺序图;
图6示出了本申请一些实施例中的数据处理装置的示意图;
图7示出了本申请一些实施例中的数据处理装置的示意图;
图8示出了本申请一些实施例中的计算机设备的示意图。
具体实施方式
下面将参考若干示例性实施方式来描述本申请的原理和精神。应当理解,给出这些实施方式仅仅是为了使本领域技术人员能够更好地理解进而实现本申请,而并非以任何方式限制本申请的范围。相反,提供这些实施方式是为了使本申请公开更加透彻和完整,并且能够将本公开的范围完整地传达给本领域的技术人员。
本领域的技术人员知道,本申请的实施方式可以实现为一种系统、装置设备、方法或计算机程序产品。因此,本申请公开可以具体实现为以下形式,即:完全的硬件、完全的软件(包括固件、驻留软件、微代码等),或者硬件和软件结合的形式。
本申请一些实施例提供了一种数据处理方法,图1示出了本申请一实施例中的数据处理方法的应用场景示意图。如图1所示,客户端可以获取目标数据。其中,目标数据可以是待处理的数据。例如,目标数据可以包括但不限于以下至少之一:人脸图像数据、医疗影像数据、人体动作数据等。客户端可以利用同态加密算法对获得的目标数据进行加密,得到密文数据。其中,对经过同态加密算法加密的数据进行处理得到一个输出,将这一输出进行解密,其结果与用同一方法处理未加密的原始数据得到的输出结果是一样的。
客户端可以向服务器发送数据处理请求。其中,数据处理请求中可以携带有目标数据对应的密文数据。服务器可以响应于数据处理请求,根据预设的MPC(Secure Multi-Party Computation,安全多方计算)协议调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据。
服务器将密文特征数据和预设模型中的预设算子发送至代理端。代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得密文处理结果。其中,预设算子可以是预设模型中指定的算子。例如,预设算子可以包括但不限于以下至少之一:激活算子、池化算子和全连接算子。其中,预设模型在服务器端。预设模型可以兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理。换句话说,预设的MPC协议可以用于在输入为密文数据的情况下实现预设模型中的操作,从而完成对密文数据的预设处理。其中,预设模型可以包括训练好的预设深度学习模型。例如,预设模型可以为训练好的卷积神经网络模型。在目标数据为医疗影像数据的情况下,预设处理可以包括在对医疗影像数据进行同态加密后得到的密文数据进行诊断处理。在目标数据为人脸图像数据的情况下,预设处理可以包括在对人脸图像数据进行同态加密后得到的密文数据进行人脸识别处理。在目标数据为人体动作数据的情况下,预设处理可以包括在对人体动作数据进行同态加密后得到的密文数据进行动作识别处理。
对于预设模型包括多个卷积层的情况下,在代理端和客户端对第一密文特征数据进行处理后得到的数据可能需要通过第二卷积层进行卷积操作。其中,第一密文特征数据可以为服务器根据预设的MPC协议调用第一卷积层的卷积算子对密文数据进行卷积操作后得到的。因此,代理端可以将处理得到的数据发送至服务器。服务器根据预设的MPC协议调用第二卷积层的卷积算子对接收到的数据进行卷积操作,得到第二密文特征数据。服务器再将第二密文特征数据发送至代理端,使得代理端与客户端根据预设的MPC协议调用预设算子对第二密文特征数据进行处理,以此类推,直至代理端得到密文处理结果。
在代理端得到密文处理结果之后,代理端可以将密文处理结果发送至客户端。客户端中存储有同态加密算法生成的公钥和私钥。其中,公钥用于对目标数据进行同态加密,得到密文数据。私钥用于对接收到的密文处理结果进行解密,得到明文处理结果。
下面举一个具体的应用场景为例进行说明。客户端可以为医疗机构的客户端。客户端可以获取患者的医疗影像数据(例如,X光片数据)。客户端可以利用同态加密算法对X光片数据进行加密,得到密文X光片数据。客户端向医疗光片诊断服务器发送诊断请求。其中,诊断请求中携带有密文X光片数据。服务器可以为医疗光片诊断服务器。医疗光片诊断服务器根据预设的MPC协议调用预设深度学习模型中的卷积算子对密文特征数据进行卷积操作,得到密文特征数据。医疗光片诊断服务器将密文特征数据和预设模型中的预设算子发送至代理端。其中,代理端为与客户端处于同一内网中的计算机或者运行在客户端上的安全容器或虚拟机。代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,从而得到密文诊断结果。代理端将密文诊断结果发送至客户端。客户端对密文诊断结果进行解密,得到X光片数据的明文诊断结果。
其中,上述客户端可以是台式电脑、笔记本、手机终端、PDA等,只要是可以对目标数据进行同态加密以及配合代理端对密文数据进行预设处理的设备都可以,对于客户端的呈现形式,本申请不作限定。上述服务器为可以是单一的服务器,也可以是服务器集群,或者是云服务器等都可以,只要可以根据预设的MPC协议和预设模型对密文数据进行卷积操作的设备都可以,具体的组成形式本申请也不作限定。上述代理端可以是与客户端建立局域网连接的计算机、运行在客户端上的安全容器或者运行在客户端上的虚拟机等,只要可以与服务器进行通信并且能够与客户端进行安全多方计算的设备都可以,对于代理端的呈现形式,本申请也不作限定。
图2示出了本申请一些实施例中方法的流程图,该数据处理方法可以应用于客户端。虽然本申请提供了如下述实施例或附图所示的方法操作步骤或装置结构,但基于常规或者无需创造性的劳动在所述方法或装置中可以包括更多或者更少的操作步骤或模块单元。在逻辑性上不存在必要因果关系的步骤或结构中,这些步骤的执行顺序或装置的模块结构不限于本申请实施例描述及附图所示的执行顺序或模块结构。所述的方法或模块结构的在实际中的装置或终端产品应用时,可以按照实施例或者附图所示的方法或模块结构连接进行顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至分布式处理环境)。
具体地,如图2所示,本申请一些实施例提供的数据处理方法可以包括以下步骤:
步骤S201,接收客户端发送的数据处理请求,其中,数据处理请求中携带有密文数据,密文数据由客户端利用同态加密算法对目标数据进行加密后生成。
客户端可以获取目标数据。其中,目标数据是待处理的数据。客户端利用同态加密算法对目标数据进行加密,得到密文数据。具体地,客户端可以利用同态加密算法生成公钥和私钥,然后利用公钥对目标数据进行加密,得到密文数据。客户端可以向服务器发送数据处理请求。其中,数据处理请求中携带有密文数据。在其他实施例中,数据处理请求中还可以携带有同态加密算法生成的公钥。服务器接收客户端发送的数据处理请求。
步骤S202,响应于数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据。
步骤S203,将密文特征数据和预设模型中的预设算子发送至代理端,其中,代理端用于与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果。
服务器响应于数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据。服务器将得到的密文特征数据和预设模型中的预设算子发送至代理端。代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果。其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
其中,预设模型可以是训练好的深度学习模型。其中,该深度学习模型可以是利用大量明文数据训练得到的。为了与预设的MPC协议兼容,将训练好的深度学习模型中的浮点型数据转化为整型数据。换句话说,预设的MPC协议可以用于在输入为密文数据的情况下实现预设模型中的各种操作,从而实现对密文数据的预设处理。在代理端得到密文处理结果之后,可以将密文处理结果发送至客户端。客户端可以根据同态加密算法生成的私钥对密文处理结果进行解密,得到目标数据的明文处理结果。
上述实施例中的数据处理方法,通过对目标数据进行同态加密,得到对应的密文数据,避免目标数据的具体内容遭到泄漏。进一步,服务器根据预设的MPC协议调用能够兼容MPC协议的预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,并将密文特征数据和预设模型中的预设算子发送至代理端,使得代理端和客户端再根据预设的MPC协议调用预设模型中的预设算子对密文特征数据进行具体的处理,得到目标数据的密文处理结果。实现了能在目标数据加密的状态下,对目标数据进行具体处理,从而有效地保护了数据隐私。更进一步地,由于代理端是与客户端处于同一局域网中的计算机或者是运行于客户端上的安全容器或虚拟机,因此,相比于直接由服务器与客户端对密文特征数据进行安全多方计算,通过代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行安全多方计算,可以有效节省安全多方计算所需的网络带宽,同时极大地降低网络延时,进而有效提高数据处理的效率。
在本申请一些实施例中,在预设模型包含多个卷积层的情况下,在代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据处理的过程中,可以将得到的需要进行卷积操作的数据返回给服务器。服务器对接收到的数据进行卷积操作,并将得到的数据发送至代理端,如此循环直至得到密文处理结果。
在本申请一些实施例中,在代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果之后,还可以包括:将与数据处理请求对应的交易事件上传至区块链网络进行上链存储。
示例性地,在代理端与客户端配合完成对密文数据的处理之后,可以通知服务器已完成对密文数据的预设处理。服务器响应于该通知将数据处理请求对应的交易事件数据上传至区块链网络进行上链存储。其中,交易事件数据可以包括服务器响应于数据处理请求所执行的计算相关的数据。通过上述方式,将交易事件数据上传至区块链网络进行上链存储,便于后续查询回溯。
在本申请一些实施例中,目标数据可以包括但不限于以下至少之一:人脸图像数据、医疗影像数据和人体动作数据。在本申请一些实施例中,在目标数据包括医疗影像数据时,预设处理可以包括对医疗影像数据进行诊断处理。在目标数据包括人脸图像数据时,预设处理可以包括人脸识别处理。在目标数据包括人体动作数据时,预设处理包括动作识别处理。上述实施例仅是示例性的,本申请可以处理的目标数据以及可以执行的预设处理不限于此。
在本申请一些实施例中,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,可以包括:根据预设的MPC协议中的同态加法和乘法特性,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据。
具体地,预设模型可以为训练好的卷积神经网络模型。卷积神经网络模型一般可以包括:卷积层、激励层、池化层和全连接层。其中,每一层的数目可以为一个或多个。其中,卷积层可以包括卷积算子,用于提取数据的特征。服务器在接收到客户端发送的数据处理请求之后,根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行隐私卷积操作,得到密文特征数据。其中,对密文数据进行隐私卷积操作后得到的密文特征数据进行解密后得到的明文特征数据与直接对明文数据进行明文卷积操作后得到的特征数据相同。其中,同态加密允许对密文执行操作,相应的操作将映射到明文,同态加密可以细化为以下两种同态加密算法:
1)同态加法
已知C1=Enc(m1),C2=Enc(m2),那么C1·C2=Enc(m1+m2);
2)同态乘法
已知C1=Enc(m1),t1,那么(C1)t1=Enc(m1·t1),这里也可以利用同态加法推导出来。
对明文数据进行卷积操作是明文数据矩阵与卷积算子矩阵中的对应元素相乘后求和。对密文数据进行卷积操作是密文数据矩阵中的元素的卷积算子矩阵的对应元素的次方再相乘得到。示例性地,A3×3为明文数据矩阵,C3×3为卷积算子矩阵;a3×3为密文数据矩阵。明文卷积操作和隐私卷积操作如下所示:
Figure BDA0002229370430000091
Figure BDA0002229370430000092
本申请一些实施例还提供了一种数据处理方法,该数据处理方法可以应用于代理端。图3示出了本申请实施例提供的数据处理方法的流程图。
如图3所示,上述数据处理方法可以包括以下步骤:
步骤S301,接收服务器发送的密文特征数据和预设模型中的预设算子。
具体地,服务器可以接收客户端发送的数据处理请求。其中,数据处理请求中可以携带有密文数据。密文数据可以由客户端利用同态加密算法对目标数据进行加密后得到的。服务器可以响应于数据处理请求根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行卷积操作得到密文特征数据。服务器将生成的密文特征数据和预设模型中的预设算子发送至代理端。其中,代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
步骤S302,根据预设的MPC协议调用预设模型中的预设算子,以与客户端配合对密文特征数据进行处理,得到密文处理结果。
步骤S303,将密文处理结果发送至客户端。
代理端接收到密文特征数据和预设算子之后,可以根据预设的MPC协议调用预设模型中的预设算子,与客户端配合对密文特征数据进行处理,得到密文处理结果。其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理。其中,预设模型可以是训练好的深度学习模型。其中,该深度学习模型可以是利用大量明文数据训练得到的。为了与预设的MPC协议兼容,将训练好的深度学习模型中的浮点型数据转化为整型数据。换句话说,预设的MPC协议可以用于在输入为密文数据的情况下实现预设模型中的各种操作,从而实现对密文数据的预设处理。在得到密文处理结果之后,代理端将密文处理结果发送至客户端。
上述实施例中的数据处理方法,通过对目标数据进行同态加密,得到对应的密文数据,避免目标数据的具体内容遭到泄漏。进一步,服务器根据预设的MPC协议调用能够兼容MPC协议的预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,并将密文特征数据和预设模型中的预设算子发送至代理端,使得代理端和客户端再根据预设的MPC协议调用预设模型中的预设算子对密文特征数据进行具体的处理,得到目标数据的密文处理结果。实现了能在目标数据加密的状态下,对目标数据进行具体处理,从而有效地保护了数据隐私。更进一步地,由于代理端是与客户端处于同一局域网中的计算机或者是运行于客户端上的安全容器或虚拟机,因此,相比于直接由服务器与客户端对密文特征数据进行安全多方计算,通过代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行安全多方计算,可以有效节省安全多方计算所需的网络带宽,同时极大地降低网络延时,进而有效提高数据处理的效率。
在本申请一些实施例中,在将密文处理结果发送至客户端之后,还可以包括:客户端对密文处理结果进行解密,得到明文处理结果。具体地,客户端可以根据同态加密算法得到的私钥对密文处理结果进行解密,得到目标数据的明文处理结果。通过上述方式,可以在客户端揭示目标数据的明文处理结果。
在本申请一些实施例中,在客户端对密文处理结果进行解密,得到明文处理结果之后,还可以包括:客户端获取验证结果,其中,验证结果用于表明明文处理结果是否正确;客户端将验证结果和密文处理结果发送至区块链网络进行上链存储。
具体地,客户端在对密文处理结果进行解密得到明文处理结果之后,客户端获取明文处理结果的验证结果。其中,验证结果可以是业务人员对明文处理结果进行验证后得到的。验证结果也可以是由客户端中的应用程序根据目标数据和明文处理结果后推理得到的。验证结果用于表明明文处理结果是否正确。客户端将验证结果和密文处理结果发送至区块链网络进行上链存储,便于后续查询、追溯、计费、求证等。
在本申请一些实施例中,在客户端向服务器发送数据处理请求之前/同时/之后,客户端可以将数据处理的资源数据发送至区块链网络的合约账户中。其中,资源数据可以是数据处理所需要支付的费用,例如,货币或者比特币等。在客户端将密文处理结果和验证结果发送至区块链网络进行上链存储之后,区块链网络确定验证结果是否为正确。在确定验证结果为正确的情况下,区块链网络将合约账户中的资源数据发送至服务器的账户中。通过上述方式,可以解决业务的计费清算的问题。
在本申请一些实施例中,根据预设的MPC协议调用预设模型中的预设算子,以与客户端配合对密文特征数据进行处理,得到密文处理结果,可以包括:根据预设的MPC协议和预设算子中的激活算子,与客户端配合对密文特征数据进行激活操作,得到第一激活数据和第二激活数据;根据预设的MPC协议和预设算子中的池化算子,与客户端配合对第一激活数据和第二激活数据进行池化操作,得到第一池化数据和第二池化数据;根据预设的MPC协议和预设算子中的全连接算子,与客户端配合对第一池化数据和第二池化数据进行全连接操作,得到密文处理数据。
其中,预设模型可以为训练好的卷积神经网络模型。卷积神经网络模型一般可以包括:卷积层、激励层、池化层和全连接层。其中,每一层的数目可以为一个或多个。其中,卷积层可以包括卷积算子,用于提取数据的特征。激励层可以包括激活算子,用于加入非线性因素,以模拟更细微的变化。池化层可以包括池化算子,用于对输入的特征进行压缩,一方面使特征图变小,简化网络计算复杂度,另一方面进行特征压缩,提取主要特征。全连接层可以包括全连接算子,用于连接所有的特征,将输出值送给分类器,得到处理结果。其中,卷子算子对应的操作需要占用较多的计算资源,因此可以在服务器端完成。对于占用计算资源较少的激励、池化和全连接操作,可以由代理端与客户端根据预设的协议调用激活算子、池化算子和全连接算子进行安全多方计算来实现。预设算子可以包括但不限于以下至少之一:激活算子、池化算子和全连接算子。
在服务器根据预设的MPC协议调用卷积算子对密文数据进行卷积操作得到密文特征数据之后,服务器将密文特征数据和预设算子发送至代理端。在得到密文特征数据之后,代理端可以根据预设的MPC协议调用预设算子中的激活算子,与客户端配合对密文特征数据进行激活操作,得到第一激活数据和第二激活数据。其中,第一激活数据由代理端持有,第二激活数据由客户端持有。具体地,代理端对密文特征数据执行同态加密转秘密共享操作,得到第一密文数据和第二密文数据。代理端将第一密文数据发送至客户端。客户端对第一密文数据进行解密,得到第一明文数据。代理端将激活算子转化为布尔电路,并得出该布尔电路每个电路门的真值表。然后代理端为每个门选择两个均匀分布的字符串作为标签,分别用来表示0或1。之后,代理端随机生成第一随机数,并根据第二密文数据和第一随机数生成第一标签。将第一标签作为输入替换真值表后,代理端获得标签表。对于每个电路门,代理端使用标签表进行加密,生成第一加密电路(GC,Garbled Circuit)。代理端将第一加密电路发送至客户端。客户端对第一明文数据进行不经意传输(OT,Oblivious Transfer),得到第二标签。客户端根据第二标签对第一加密电路进行解密,得到激活数据。激活数据也属于特征数据,用于表征加入非线性因素之后的特征,可以模拟更细微的特征变化。然后,由于后续池化操作通过安全多方计算实现,因此可以对激活数据进行秘密共享,从而在代理端得到第一激活数据,在客户端得到第二激活数据。激活数据为第一激活数据与第二激活数据之和。即,代理端与客户端根据预设的MPC协议和激活算子对密文特征数据进行安全多方计算,得到第一激活数据和第二激活数据。
在代理端得到第一激活数据且客户端得到第二激活数据之后,代理端根据预设的MPC协议调用预设算子中的池化算子,与客户端配合对第一激活数据和第二激活数据进行池化操作,得到第一池化数据和第二池化数据。其中,第一池化数据可以由代理端持有。第二池化数据可以由客户端持有。具体地,代理端将池化算子转换为布尔电路。代理端随机生成第二随机数。代理端根据第一激活函数和随机数生成第三标签。代理端将第三标签作为输入替换布尔电路的真值表,得到标签表。代理端对布尔电路的每个门使用标签表进行加密,生成第二加密电路。代理端将第二加密电路发送至客户端。客户端对第二激活数据进行不经意传输,得到第四标签。客户端使用第四标签解密第二加密电路,得到池化数据。池化数据也属于特征数据,是对特征进行压缩后得到的特征数据,可以表征主要特征。之后,由于后续全连接操作通过安全多方计算实现,因此可以对池化数据进行秘密共享,使得代理端获取第一池化数据,客户端获得第二池化数据。池化数据为第一池化数据与第二池化数据之和。即,代理端与客户端可以根据预设的MPC协议和池化算子对第一激活数据和第二激活数据进行安全多方计算,得到第一池化数据和第二池化数据。
在代理端获得第一池化数据且客户端获得第二池化数据之后,代理端对第一池化数据执行秘密共享转同态加密操作,客户端对第二池化数据执行秘密共享转同态加密操作,从而在代理端得到池化数据。然后将得到的池化数据拍平为一维数组。代理端将一维数组中的每一个元素与连接线上的权重值(即,全连接算子中的元素)相乘后相加并输出,得到密文处理结果。即,服务端根据预设的MPC协议和预设算子中的全连接算子,与客户端配合对第一池化数据和第二池化数据进行全连接操作,得到密文处理数据。代理端将得到的密文处理结果发送至客户端。客户端利用同态加密算法的私钥对密文处理结果进行解密,得到目标数据的明文处理结果。
上述实施例的数据处理方法中,代理端和客户端根据预设的MPC协议,调用预设算子中的激活算子、池化算子和全连接算子对密文特征数据进行安全多方计算,得到密文处理结果,实现了在输入为密文的情况下通过预设模型对密文数据进行处理或推理,可以有效保护用户的数据隐私。
上述实施例中的数据处理方法中激活算子、池化算子和全连接算子均由代理端与客户端根据预设的MPC协议来计算,但本申请不限于此。在本申请另一些实施例中,对于占用计算资源比较多的算子的计算可以由服务器与客户端根据预设的MPC协议来计算,例如平均池化算子等。
本申请一些实施例还提供了一种数据处理方法。图4示出了本申请实施例中提供的数据处理方法的流程图。如图4所示,该方法可以包括:
步骤S401,客户端获取目标数据,并利用同态加密算法对目标数据进行加密,得到密文数据。
步骤S402,客户端向服务器发送数据处理请求,其中,数据处理请求中携带有密文数据。
步骤S403,响应于数据处理请求,服务器与客户端根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据。
步骤S404,服务器将密文特征数据和预设模型中的预设算子发送至代理端。
步骤S405,代理端根据预设的MPC协议调用预设算子,以与客户端配合对密文特征数据进行处理,得到密文处理结果。
步骤S406,代理端将密文处理结果发送至客户端。
步骤S407,客户端对密文处理结果进行解密,得到目标数据的明文处理结果。
上述实施例中的数据处理方法,通过对目标数据进行同态加密,得到对应的密文数据,避免目标数据的具体内容遭到泄漏。进一步,服务器根据预设的MPC协议调用能够兼容MPC协议的预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,并将密文特征数据和预设模型中的预设算子发送至代理端,使得代理端和客户端再根据预设的MPC协议调用预设模型中的预设算子对密文特征数据进行具体的处理,得到目标数据的密文处理结果,客户端可以对密文处理结果进行解密,得到目标数据的明文处理结果。实现了能在目标数据加密的状态下,对目标数据进行具体处理,从而有效地保护了数据隐私。更进一步地,由于代理端是与客户端处于同一局域网中的计算机或者是运行于客户端上的安全容器或虚拟机,因此,相比于直接由服务器与客户端对密文特征数据进行安全多方计算,通过代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行安全多方计算,可以有效节省安全多方计算所需的网络带宽,同时极大地降低网络延时,进而有效提高数据处理的效率。
在本申请一些实施例中,在代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果之后,还可以包括:服务器将与数据处理请求对应的交易事件上传至区块链网络进行上链存储。
在本申请一些实施例中,目标数据可以包括但不限于以下至少之一:人脸图像数据、医疗影像数据和人体动作数据。
在本申请一些实施例中,在目标数据包括医疗影像数据时,预设处理可以包括对医疗影像数据进行诊断处理。
在本申请一些实施例中,服务器根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,可以包括:服务器根据预设的MPC协议中的同态加法和乘法特性,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据。
在本申请一些实施例中,在客户端对密文处理结果进行解密,得到明文处理结果之后,还可以包括:客户端获取验证结果,其中,验证结果用于表明明文处理结果是否正确;客户端将验证结果和密文处理结果发送至区块链网络进行上链存储。
在本申请一些实施例中,代理端根据预设的MPC协议调用预设算子,以与客户端配合对密文特征数据进行处理,得到密文处理结果,可以包括:根据预设的MPC协议和预设算子中的激活算子,与客户端配合对密文特征数据进行激活操作,得到第一激活数据和第二激活数据;根据预设的MPC协议和预设算子中的池化算子,与客户端配合对第一激活数据和第二激活数据进行池化操作,得到第一池化数据和第二池化数据;根据预设的MPC协议和预设算子中的全连接算子,与客户端配合对第一池化数据和第二池化数据进行全连接操作,得到密文处理数据。
下面结合一个具体实施例对上述方法进行说明,然而,值得注意的是,该具体实施例仅是为了更好地说明本申请,并不构成对本申请的不当限定。
图5示出了该具体实施例中的数据处理方法的顺序图。如图5所示,该数据处理方法可以包括以下步骤:
步骤1,客户端获取目标数据,并利用同态加密算法对目标数据进行加密,得到目标数据对应的密文数据;
步骤2,客户端向服务器发送数据处理请求,其中,数据处理请求中携带有密文数据;
步骤3,客户端将费用抵押至区块链网络的合约账户中;
步骤4,服务器根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行隐私卷积操作,得到密文特征数据;
步骤5,服务器将密文特征数据和预设模型中的预设算子发送至代理端;
步骤6,代理端与客户端根据预设的MPC协议调用预设算子中的激活算子对密文特征数据进行安全多方计算,在代理端得到第一激活数据,并且在客户端得到第二激活数据;
步骤7,代理端和客户端根据预设的MPC协议调用预设算子中的池化算子对第一激活数据和第二激活数据进行安全多方计算,在代理端得到第一池化数据,并且在客户端得到第二池化数据;
步骤8,代理端和客户端根据预设的MPC协议调用预设模型中的全连接算子对上述第一池化数据和第二池化数据进行全连接操作,在代理端端得到密文处理结果;
步骤9,代理端将密文处理结果发送至客户端;
步骤10,服务器将与数据处理请求对应的交易事件数据发送至区块链网络进行上链存储;
步骤11,客户端利用同态加密算法的私钥对密文处理结果进行解密,得到目标数据的明文处理结果;
步骤12,客户端获取验证结果,其中,验证结果用于表明目标数据的明文处理结果是否正确;
步骤13,客户端将明文处理结果和验证结果发送至区块链网络进行上链存储;
步骤14,区块链网络确定验证结果是否为正确;
步骤15,在确定验证结果为正确的情况下,区块链网络将合约账户中的费用转至服务器的账户中;
步骤16,在确定验证结果为不正确的情况下,区块链网络将合约账户中的费用转至客户端的账户中。
上述实施例中的数据处理方法,通过对目标数据进行同态加密,得到密文数据,便于后续直接对密文数据进行处理,避免目标数据的具体内容遭到泄漏。服务器根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,并将密文特征数据和预设模型中的预设算子发送至代理端。代理端和客户端根据预设的MPC协议调用预设算子中的激活算子、池化算子和全连接算子,对密文特征数据进行预设处理,得到目标数据的密文处理结果,实现了在输入为密文数据的情况下对数据进行处理,可以有效保护数据隐私。之后,服务器将此次交易事件对应的数据发送至区块链网络进行上链存储,以便于后续查询、检索、求证等。代理端将密文处理结果发送至客户端,客户端对密文处理结果进行解密,即可得到目标数据的明文处理结果。客户端获取明文处理结果的验证结果,并将密文处理结果和验证结果发送至区块链网络进行上链存储,可以进一步保护处理结果的隐私,而且便于后续进行查询和回溯。而且在区块链网络确定验证结果为正确的情况下,将客户端抵押至合约账户中的费用转至服务器的账户中。在区块链网络确定验证结果为错误的情况下,将客户端抵押至合约账户中的费用返回至客户端的账户。这样,可以有效解决业务的计费清算问题。更进一步地,由于代理端是与客户端处于同一局域网中的计算机或者是运行于客户端上的安全容器或虚拟机,因此,相比于直接由服务器与客户端对密文特征数据进行安全多方计算,通过代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行安全多方计算,可以有效节省安全多方计算所需的网络带宽,同时极大地降低网络延时,进而有效提高数据处理的效率。
基于同一发明构思,本申请实施例中还提供了一种数据处理装置,位于服务器端,如下面的实施例所述。由于数据处理装置解决问题的原理与数据处理方法相似,因此数据处理装置的实施可以参见数据处理方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图6是本申请实施例的数据处理装置的一种结构框图,如图6所示,包括:接收模块601、卷积模块602和发送模块603,下面对该结构进行说明。
接收模块601用于接收客户端发送的数据处理请求,其中,数据处理请求中携带有密文数据,密文数据由客户端利用同态加密算法对目标数据进行加密后生成;
卷积模块602用于响应于数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据;
发送模块603用于将密文特征数据和预设模型中的预设算子发送至代理端,其中,代理端用于与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果;其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
在本申请一些实施例中,数据处理装置还可以包括存储模块,所述存储模块可以用于:在代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行处理,得到密文处理结果之后,将与数据处理请求对应的交易事件上传至区块链网络进行上链存储。
在本申请一些实施例中,目标数据可以包括以下至少之一:人脸图像数据、医疗影像数据和人体动作数据。
在本申请一些实施例中,在目标数据包括医疗影像数据时,预设处理可以包括对医疗影像数据进行诊断处理。
在本申请一些实施例中,卷积模块可以具体用于:根据预设的MPC协议中的同态加法和乘法特性,调用预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据。
基于同一发明构思,本申请实施例中还提供了一种数据处理装置,位于代理端,如下面的实施例所述。由于数据处理装置解决问题的原理与数据处理方法相似,因此数据处理装置的实施可以参见数据处理方法的实施,重复之处不再赘述。以下所使用的,术语“单元”或者“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。图7是本申请实施例的数据处理装置的一种结构框图,如图7所示,包括:接收模块701、处理模块702和发送模块703,下面对该结构进行说明。
接收模块701用于接收服务器发送的密文特征数据和预设模型中的预设算子,其中,密文特征数据由服务器根据预设的MPC协议调用预设模型中的卷积算子对密文数据进行卷积操作得到的,密文数据由客户端利用同态加密算法对目标数据进行加密后得到的;
处理模孔702用于根据预设的MPC协议调用预设模型中的预设算子,以与客户端配合对密文特征数据进行处理,得到密文处理结果;
发送模块703用于将密文处理结果发送至客户端;其中,预设模型兼容预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;代理端包括以下之一:运行在客户端上的安全容器、运行在客户端上的虚拟机、与客户端建立局域网连接的计算机。
在本申请一些实施例中,在将密文处理结果发送至客户端之后,还可以包括:客户端对密文处理结果进行解密,得到明文处理结果。
在本申请一些实施例中,在客户端对密文处理结果进行解密,得到明文处理结果之后,还可以包括:客户端获取验证结果,其中,验证结果用于表明明文处理结果是否正确;客户端将验证结果和密文处理结果发送至区块链网络进行上链存储。
在本申请一些实施例中,处理模孔可以具体用于:根据预设的MPC协议和预设算子中的激活算子,与客户端配合对密文特征数据进行激活操作,得到第一激活数据和第二激活数据;根据预设的MPC协议和预设算子中的池化算子,与客户端配合对第一激活数据和第二激活数据进行池化操作,得到第一池化数据和第二池化数据;根据预设的MPC协议和预设算子中的全连接算子,与客户端配合对第一池化数据和第二池化数据进行全连接操作,得到密文处理数据。
从以上的描述中,可以看出,本申请实施例实现了如下技术效果:通过对目标数据进行同态加密,得到对应的密文数据,避免目标数据的具体内容遭到泄漏。进一步,服务器根据预设的MPC协议调用能够兼容MPC协议的预设模型中的卷积算子对密文数据进行卷积操作,得到密文特征数据,并将密文特征数据和预设模型中的预设算子发送至代理端,使得代理端和客户端再根据预设的MPC协议调用预设模型中的预设算子对密文特征数据进行具体的处理,得到目标数据的密文处理结果。实现了能在目标数据加密的状态下,对目标数据进行具体处理,从而有效地保护了数据隐私。更进一步地,由于代理端是与客户端处于同一局域网中的计算机或者是运行于客户端上的安全容器或虚拟机,因此,相比于直接由服务器与客户端对密文特征数据进行安全多方计算,通过代理端与客户端根据预设的MPC协议调用预设算子对密文特征数据进行安全多方计算,可以有效节省安全多方计算所需的网络带宽,同时极大地降低网络延时,进而有效提高数据处理的效率。
本申请实施方式还提供了一种计算机设备,具体可以参阅图8所示的基于本申请实施例提供的数据处理方法的计算机设备组成结构示意图,所述计算机设备具体可以包括输入设备81、处理器82、存储器83。其中,所述存储器83用于存储处理器可执行指令。所述处理器82执行所述指令时实现上述任意实施例中所述的数据处理方法的步骤。
在本实施方式中,所述输入设备具体可以是用户和计算机系统之间进行信息交换的主要装置之一。所述输入设备可以包括键盘、鼠标、摄像头、扫描仪、光笔、手写输入板、语音输入装置等;输入设备用于把原始数据和处理这些数的程序输入到计算机中。所述输入设备还可以获取接收其他模块、单元、设备传输过来的数据。所述处理器可以按任何适当的方式实现。例如,处理器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式等等。所述存储器具体可以是现代信息技术中用于保存信息的记忆设备。所述存储器可以包括多个层次,在数字系统中,只要能保存二进制数据的都可以是存储器;在集成电路中,一个没有实物形式的具有存储功能的电路也叫存储器,如RAM、FIFO等;在系统中,具有实物形式的存储设备也叫存储器,如内存条、TF卡等。
在本实施方式中,该计算机设备具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
本申请实施方式中还提供了一种基于数据处理方法的计算机存储介质,所述计算机存储介质存储有计算机程序指令,在所述计算机程序指令被执行时实现上述任意实施例中所述数据处理方法的步骤。
在本实施方式中,上述存储介质包括但不限于随机存取存储器(Random AccessMemory,RAM)、只读存储器(Read-Only Memory,ROM)、缓存(Cache)、硬盘(Hard DiskDrive,HDD)或者存储卡(Memory Card)。所述存储器可以用于存储计算机程序指令。网络通信单元可以是依照通信协议规定的标准设置的,用于进行网络连接通信的接口。
在本实施方式中,该计算机存储介质存储的程序指令具体实现的功能和效果,可以与其它实施方式对照解释,在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
应该理解,以上描述是为了进行图示说明而不是为了进行限制。通过阅读上述描述,在所提供的示例之外的许多实施方式和许多应用对本领域技术人员来说都将是显而易见的。因此,本申请的范围不应该参照上述描述来确定,而是应该参照前述权利要求以及这些权利要求所拥有的等价物的全部范围来确定。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请实施例可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (13)

1.一种数据处理方法,其特征在于,包括:
接收客户端发送的数据处理请求,其中,所述数据处理请求中携带有密文数据,所述密文数据由所述客户端利用同态加密算法对目标数据进行加密后生成;
响应于所述数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对所述密文数据进行卷积操作,得到密文特征数据;
将所述密文特征数据和所述预设模型中的预设算子发送至代理端,其中,所述代理端用于与所述客户端根据所述预设的MPC协议调用所述预设算子对所述密文特征数据进行处理,得到密文处理结果;其中,预设算子包括以下至少之一:激活算子、池化算子和全连接算子;
其中,所述预设模型兼容所述预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;所述代理端包括以下之一:运行在所述客户端上的安全容器、运行在所述客户端上的虚拟机、与所述客户端建立局域网连接的计算机。
2.根据权利要求1所述的方法,其特征在于,在所述代理端与所述客户端根据所述预设的MPC协议调用所述预设算子对所述密文特征数据进行处理,得到密文处理结果之后,还包括:
将与所述数据处理请求对应的交易事件上传至区块链网络进行上链存储。
3.根据权利要求1所述的方法,其特征在于,所述目标数据包括以下至少之一:人脸图像数据、医疗影像数据和人体动作数据。
4.根据权利要求3所述的方法,其特征在于,在所述目标数据包括医疗影像数据时,所述预设处理包括对所述医疗影像数据进行诊断处理。
5.根据权利要求1所述的方法,其特征在于,根据预设的MPC协议,调用预设模型中的卷积算子对所述密文数据进行卷积操作,得到密文特征数据,包括:
根据所述预设的MPC协议中的同态加法和乘法特性,调用所述预设模型中的卷积算子对所述密文数据进行卷积操作,得到密文特征数据。
6.一种数据处理方法,其特征在于,应用于代理端,包括:
接收服务器发送的密文特征数据和预设模型中的预设算子,其中,所述密文特征数据由所述服务器根据预设的MPC协议调用所述预设模型中的卷积算子对密文数据进行卷积操作得到的,所述密文数据由客户端利用同态加密算法对目标数据进行加密后得到的;其中,预设算子包括以下至少之一:激活算子、池化算子和全连接算子;
根据预设的MPC协议调用所述预设模型中的预设算子,以与所述客户端配合对所述密文特征数据进行处理,得到密文处理结果;
将所述密文处理结果发送至所述客户端;
其中,所述预设模型兼容所述预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;所述代理端包括以下之一:运行在所述客户端上的安全容器、运行在所述客户端上的虚拟机、与所述客户端建立局域网连接的计算机。
7.根据权利要求6所述的方法,其特征在于,在将所述密文处理结果发送至所述客户端之后,还包括:
所述客户端对所述密文处理结果进行解密,得到明文处理结果。
8.根据权利要求7所述的方法,其特征在于,在所述客户端对所述密文处理结果进行解密,得到明文处理结果之后,还包括:
所述客户端获取验证结果,其中,所述验证结果用于表明所述明文处理结果是否正确;
所述客户端将所述验证结果和所述密文处理结果发送至区块链网络进行上链存储。
9.根据权利要求6所述的方法,其特征在于,根据预设的MPC协议调用所述预设模型中的预设算子,以与所述客户端配合对所述密文特征数据进行处理,得到密文处理结果,包括:
根据所述预设的MPC协议和所述预设算子中的激活算子,与所述客户端配合对所述密文特征数据进行激活操作,得到第一激活数据和第二激活数据;
根据所述预设的MPC协议和所述预设算子中的池化算子,与所述客户端配合对所述第一激活数据和所述第二激活数据进行池化操作,得到第一池化数据和第二池化数据;
根据所述预设的MPC协议和所述预设算子中的全连接算子,与所述客户端配合对所述第一池化数据和所述第二池化数据进行全连接操作,得到密文处理数据。
10.一种数据处理方法,其特征在于,包括:
客户端获取目标数据,并利用同态加密算法对所述目标数据进行加密,得到密文数据;
所述客户端向服务器发送数据处理请求,其中,所述数据处理请求中携带有所述密文数据;
响应于所述数据处理请求,所述服务器与所述客户端根据预设的MPC协议调用预设模型中的卷积算子对所述密文数据进行卷积操作,得到密文特征数据;
所述服务器将所述密文特征数据和所述预设模型中的预设算子发送至代理端;其中,预设算子包括以下至少之一:激活算子、池化算子和全连接算子;
所述代理端根据所述预设的MPC协议调用所述预设算子,以与所述客户端配合对所述密文特征数据进行处理,得到密文处理结果;
所述代理端将所述密文处理结果发送至所述客户端;
所述客户端对所述密文处理结果进行解密,得到所述目标数据的明文处理结果;
其中,所述预设模型兼容所述预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;所述代理端包括以下之一:运行在所述客户端上的安全容器、运行在所述客户端上的虚拟机、与所述客户端建立局域网连接的计算机。
11.一种数据处理装置,其特征在于,包括:
接收模块,用于接收客户端发送的数据处理请求,其中,所述数据处理请求中携带有密文数据,所述密文数据由所述客户端利用同态加密算法对目标数据进行加密后生成;
卷积模块,用于响应于所述数据处理请求,根据预设的MPC协议,调用预设模型中的卷积算子对所述密文数据进行卷积操作,得到密文特征数据;
发送模块,用于将所述密文特征数据和所述预设模型中的预设算子发送至代理端,其中,所述代理端用于与所述客户端根据所述预设的MPC协议调用所述预设算子对所述密文特征数据进行处理,得到密文处理结果;其中,预设算子包括以下至少之一:激活算子、池化算子和全连接算子;
其中,所述预设模型兼容所述预设的MPC协议,用于在数据加密的情况下对密文数据进行预设处理;所述代理端包括以下之一:运行在所述客户端上的安全容器、运行在所述客户端上的虚拟机、与所述客户端建立局域网连接的计算机。
12.一种计算机设备,其特征在于,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至5中任一项所述方法的步骤。
13.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述指令被执行时实现权利要求1至5中任一项所述方法的步骤。
CN201910962389.0A 2019-10-11 2019-10-11 数据处理方法、装置、计算机设备和存储介质 Active CN110750801B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201910962389.0A CN110750801B (zh) 2019-10-11 2019-10-11 数据处理方法、装置、计算机设备和存储介质
PCT/CN2020/076140 WO2021068444A1 (zh) 2019-10-11 2020-02-21 数据处理方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910962389.0A CN110750801B (zh) 2019-10-11 2019-10-11 数据处理方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN110750801A CN110750801A (zh) 2020-02-04
CN110750801B true CN110750801B (zh) 2022-06-10

Family

ID=69278006

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910962389.0A Active CN110750801B (zh) 2019-10-11 2019-10-11 数据处理方法、装置、计算机设备和存储介质

Country Status (2)

Country Link
CN (1) CN110750801B (zh)
WO (1) WO2021068444A1 (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110765473A (zh) * 2019-10-11 2020-02-07 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN110750801B (zh) * 2019-10-11 2022-06-10 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN111310734A (zh) * 2020-03-19 2020-06-19 支付宝(杭州)信息技术有限公司 保护用户隐私的人脸识别方法和装置
CN111401273B (zh) * 2020-03-19 2022-04-29 支付宝(杭州)信息技术有限公司 一种用于隐私保护的用户特征提取系统及设备
CN111414646B (zh) * 2020-03-20 2024-03-29 矩阵元技术(深圳)有限公司 实现隐私保护的数据处理方法和装置
WO2021203260A1 (zh) * 2020-04-08 2021-10-14 云图技术有限公司 一种节点匹配方法、装置、设备及系统
WO2021223104A1 (zh) * 2020-05-06 2021-11-11 云图技术有限公司 系统测试方法和装置
CN111726225B (zh) * 2020-06-10 2022-12-02 暨南大学 一种基于秘密共享的外包隐私保护交集计算方法
CN111737755B (zh) * 2020-07-31 2020-11-13 支付宝(杭州)信息技术有限公司 业务模型的联合训练方法及装置
CN112699391B (zh) * 2020-12-31 2023-06-06 青岛海尔科技有限公司 目标数据的发送方法及隐私计算平台
CN114764501A (zh) * 2021-01-15 2022-07-19 阿里巴巴集团控股有限公司 数据处理方法、装置和系统
CN113206832B (zh) * 2021-03-31 2022-12-06 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN113254956B (zh) * 2021-05-07 2024-07-02 华控清交信息科技(北京)有限公司 一种数据处理方法、装置和用于数据处理的装置
CN114331739A (zh) * 2021-12-29 2022-04-12 迅鳐成都科技有限公司 基于区块链的金融授信数据处理方法、装置、系统及存储介质
CN114826546B (zh) * 2022-04-02 2024-08-27 支付宝(杭州)信息技术有限公司 一种交易数据处理方法及装置
CN115118535B (zh) * 2022-05-25 2023-08-25 成都吉胜科技有限责任公司 一种基于循环责任链的网吧分布式并行计费方法及系统
CN116800906B (zh) * 2023-08-22 2023-11-07 北京电子科技学院 一种基于模分量同态的密文卷积神经网络图像分类方法

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101475747B1 (ko) * 2014-01-22 2014-12-23 고려대학교 산학협력단 동형 암호를 이용한 다자간 위탁 연산 방법
CN104883580A (zh) * 2015-06-03 2015-09-02 合肥工业大学 一种基于同态加密的视频安全卷积计算系统及方法
CN103812638B (zh) * 2014-01-22 2017-02-22 北京工业大学 一种加密域surf图像特征提取方法
US9729312B2 (en) * 2015-04-28 2017-08-08 The United States Of America As Represented By The Secretary Of The Navy System and method for high-assurance data storage and processing based on homomorphic encryption
WO2018174873A1 (en) * 2017-03-22 2018-09-27 Visa International Service Association Privacy-preserving machine learning
CN110084063A (zh) * 2019-04-23 2019-08-02 中国科学技术大学 一种保护隐私数据的梯度下降计算方法
CN110135185A (zh) * 2018-02-08 2019-08-16 苹果公司 使用生成式对抗网络进行私有化的机器学习
CN110175461A (zh) * 2019-05-08 2019-08-27 矩阵元技术(深圳)有限公司 安全多方计算的实现方法、装置、计算机设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110750801B (zh) * 2019-10-11 2022-06-10 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101475747B1 (ko) * 2014-01-22 2014-12-23 고려대학교 산학협력단 동형 암호를 이용한 다자간 위탁 연산 방법
CN103812638B (zh) * 2014-01-22 2017-02-22 北京工业大学 一种加密域surf图像特征提取方法
US9729312B2 (en) * 2015-04-28 2017-08-08 The United States Of America As Represented By The Secretary Of The Navy System and method for high-assurance data storage and processing based on homomorphic encryption
CN104883580A (zh) * 2015-06-03 2015-09-02 合肥工业大学 一种基于同态加密的视频安全卷积计算系统及方法
WO2018174873A1 (en) * 2017-03-22 2018-09-27 Visa International Service Association Privacy-preserving machine learning
CN110135185A (zh) * 2018-02-08 2019-08-16 苹果公司 使用生成式对抗网络进行私有化的机器学习
CN110084063A (zh) * 2019-04-23 2019-08-02 中国科学技术大学 一种保护隐私数据的梯度下降计算方法
CN110175461A (zh) * 2019-05-08 2019-08-27 矩阵元技术(深圳)有限公司 安全多方计算的实现方法、装置、计算机设备和存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"云端卷积神经网络算法的安全增强机制研究";李少华;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190815(第08期);I139-60 *

Also Published As

Publication number Publication date
WO2021068444A1 (zh) 2021-04-15
CN110750801A (zh) 2020-02-04

Similar Documents

Publication Publication Date Title
CN110750801B (zh) 数据处理方法、装置、计算机设备和存储介质
WO2021068445A1 (zh) 数据处理方法、装置、计算机设备和存储介质
US11196541B2 (en) Secure machine learning analytics using homomorphic encryption
US20220092216A1 (en) Privacy-preserving machine learning in the three-server model
US11222138B2 (en) Privacy-preserving machine learning in the three-server model
CN112906044B (zh) 多方安全计算方法、装置、设备及存储介质
EP2874341B1 (en) Secure evaluation of a program
Mendis et al. A blockchain-powered decentralized and secure computing paradigm
CN112101531B (zh) 基于隐私保护的神经网络模型训练方法、装置及系统
CN113065145A (zh) 一种基于秘密共享和随机扰动的隐私保护线性回归方法
WO2023020216A1 (zh) 多方安全确定最值的方法、装置、设备及存储介质
US8923519B2 (en) Method of efficient secure function evaluation using resettable tamper-resistant hardware tokens
WO2018099577A1 (en) System and method for providing a collective decentralized authority for sharing sensitive data
CN116502732B (zh) 基于可信执行环境的联邦学习方法以及系统
CN113468601A (zh) 数据隐私融合方法和装置
CN114429223B (zh) 异构模型建立方法及装置
CN113645294B (zh) 消息获取方法、装置、计算机设备和消息传输系统
CN113807534B (zh) 联邦学习模型的模型参数训练方法、装置和电子设备
CN115022012B (zh) 一种数据传输方法、装置、系统、设备及存储介质
CN114726580B (zh) 数据处理方法和装置
CN109815715A (zh) 一种数据加密方法和相关装置
CN113672954A (zh) 特征提取方法、装置和电子设备
CN112181308A (zh) 基于区块链的分布式数据存储方法和电子设备
CN115460020B (zh) 数据共享方法、装置、设备及存储介质
CN113094745B (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