CN114239064A - 隐私计算方法、装置、电子设备及计算机可读存储介质 - Google Patents
隐私计算方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN114239064A CN114239064A CN202111563009.XA CN202111563009A CN114239064A CN 114239064 A CN114239064 A CN 114239064A CN 202111563009 A CN202111563009 A CN 202111563009A CN 114239064 A CN114239064 A CN 114239064A
- Authority
- CN
- China
- Prior art keywords
- model code
- participant
- initiator
- node
- virtual machine
- 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.)
- Pending
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 55
- 239000003999 initiator Substances 0.000 claims abstract description 207
- 238000000034 method Methods 0.000 claims abstract description 79
- 238000004590 computer program Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 15
- 238000004458 analytical method Methods 0.000 claims description 8
- 238000004883 computer application Methods 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 24
- 238000004422 calculation algorithm Methods 0.000 description 12
- 230000003993 interaction Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 238000012545 processing Methods 0.000 description 5
- 230000004044 response Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
Abstract
本申请适用于计算机应用技术领域,提供了隐私计算方法、装置、电子设备及计算机可读存储介质,该方法包括:获取隐私计算模型代码,所述隐私计算模型代码包括发起方模型代码和参与方模型代码;通过第一虚拟机执行所述发起方模型代码,并向参与方节点发送所述参与方模型代码;接收所述参与方节点反馈的执行结果,所述执行结果为所述参与方节点通过第二虚拟机执行所述参与方模型代码得到的;基于所述执行结果继续执行所述发起方模型代码,并在执行完成后,得到隐私计算结果。通过本申请,可以提高隐私计算的通用性。
Description
技术领域
本申请属于计算机应用技术领域,尤其涉及一种隐私计算方法、装置、电子设备及计算机可读存储介质。
背景技术
隐私计算(Privacy compute)是指在保护数据本身不对外泄露的前提下实现数据分析计算的技术集合。
目前,传统的隐私计算的实现,需要对应每项业务单独开发一套隐私计算算法,基于隐私计算算法的执行流程实现。随着信息化技术的发展以及业务需求的复杂多变,传统的隐私计算的实现方式存在应用的局限性。
发明内容
本申请实施例提供了一种隐私计算方法、装置、电子设备及计算机可读存储介质,可以提高隐私计算流程的通用性。
第一方面,本申请提供了一种隐私计算方法,应用于发起方节点,该方法可以包括:
获取隐私计算模型代码,所述隐私计算模型代码包括发起方模型代码和参与方模型代码;
通过第一虚拟机执行所述发起方模型代码,并向参与方节点发送所述参与方模型代码;
接收所述参与方节点反馈的执行结果,所述执行结果为所述参与方节点通过第二虚拟机执行所述参与方模型代码得到的;
基于所述执行结果继续执行所述发起方模型代码,并在执行完成后,得到隐私计算结果。
在第一方面的一种可能的实现方式中,在所述获取隐私计算模型代码之前,所述方法还包括:
启动所述第一虚拟机并向所述第一虚拟机注入事件处理器,所述事件处理器用于基于所述第一虚拟机抛出事件。
在第一方面的一种可能的实现方式中,在所述获取隐私计算模型代码之后,所述方法还包括:
通过第一虚拟机生成所述发起方模型代码的第一哈希值,将所述第一哈希值作为所述发起方模型的第一标识;
通过第一虚拟机编译所述发起方模型代码,得到所述发起方模型代码的第一中间字节码;
缓存所述第一中间字节码;
当再次执行所述发起方模型代码时,根据所述第一标识查询被缓存的所述第一中间字节码。
在第一方面的一种可能的实现方式中,所述通过第一虚拟机执行所述发起方模型代码,包括:
对所述发起方模型中的隐私计算函数调用的参数进行解析;
若解析正确,则通过所述第一虚拟机的所述事件处理器抛出目标事件,所述目标事件包括所述参与方模型代码和第一通道,所述第一通道用于与所述第一虚拟机传输数据。
在第一方面的一种可能的实现方式中,在所述接收所述参与方节点反馈的执行结果之后,所述方法还包括:
将所述执行结果写入所述第一通道;
通过所述第一虚拟机读取所述第一通道中的所述执行结果;
基于所述执行结果,通过所述第一虚拟机继续执行所述隐私计算模型代码中的所述发起方模型代码。
第二方面,本申请提供了一种隐私计算方法,应用于参与方节点,该方法可以包括:
接收发起方节点发送的参与方模型代码;
通过第二虚拟机执行所述参与方模型代码,得到执行结果;
向所述发起方节点反馈所述执行结果;
其中,所述参与方模型代码为参与方节点从发起方节点获取的隐私计算模型代码,所述执行结果用于所述发起方节点在通过第一虚拟机从第一通道中读取并在执行发起方模型代码结束后生成隐私计算结果。
在第二方面的一种可能的实现方式中,在所述接收发起方节点发送的参与方模型代码之后,所述方法还包括:
通过第二虚拟机生成所述参与方模型代码的第二哈希值,将所述第二哈希值作为所述发起方模型的第二标识;
通过第二虚拟机编译所述参与方模型代码,得到所述参与方模型代码的第二中间字节码;
缓存所述第二中间字节码;
当再次执行所述参与方模型代码时,根据所述第二标识查询被缓存的所述第二中间字节码。
第三方面,本申请实施例提供了一种隐私计算装置,该装置可以包括:
获取单元,用于获取隐私计算模型代码,所述隐私计算模型代码包括发起方模型代码和参与方模型代码;
执行单元,用于通过第一虚拟机执行所述发起方模型代码,并向参与方节点发送所述参与方模型代码;
接收单元,用于接收所述参与方节点反馈的执行结果,所述执行结果为所述参与方节点通过第二虚拟机执行所述参与方模型代码得到的;
输出单元,用于基于所述执行结果继续执行所述发起方模型代码,并在执行完成后,得到隐私计算结果。
第四方面,本申请提供了一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现第一方面或第二方面所述的方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现第一方面或第二方面所述的方法。
第六方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面或第二方面所述的方法。
可以理解的是,上述第二方面至第六方面的有益效果可以参见第一方面中的相关描述,在此不再赘述。
本申请与现有技术相比存在的有益效果是:通过本申请,发起方节点获取隐私计算模型代码,该隐私计算模型代码包括发起方模型代码和参与方模型代码;发起方节点通过第一虚拟机执行该发起方模型代码,并向参与方节点发送参与方模型代码;发起方节点接收参与方节点反馈的执行结果,该执行结果为参与方节点通过第二虚拟机执行参与方模型代码得到的;发起方节点在基于执行结果完成对发起方模型代码的执行后,得到隐私计算结果;本申请通过发起方节点向参与方节点发送参与方模型代码,以及发起方节点和参与方节点均可以通过虚拟机的调用并执行相应的模型代码,可以实现根据需要自定义隐私计算模型代码,还可以通过虚拟机实现动态地调用并执行模型代码,增加了隐私计算模型代码的通用性,无需再针对每一项业务进行一套隐私计算算法的单独开发;具有较强的易用性与实用性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例提供的系统架构应用场景的示意图;
图2是本申请实施例提供的隐私计算方法的流程示意图;
图3是本申请另一实施例提供隐私计算方法的流程示意图;
图4是本申请实施例提供的隐私计算的交互架构示意图;
图5是本申请另一实施例提供的隐私计算的交互架构示意图;
图6是本申请实施例提供的隐私计算装置的结构示意图;
图7是本申请实施例提供的电子设备的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
应当理解,当在本申请说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
如在本申请说明书和所附权利要求书中所使用的那样,术语“如果”可以依据上下文被解释为“当...时”或“一旦”或“响应于确定”或“响应于检测到”。类似地,短语“如果确定”或“如果检测到[所描述条件或事件]”可以依据上下文被解释为意指“一旦确定”或“响应于确定”或“一旦检测到[所描述条件或事件]”或“响应于检测到[所描述条件或事件]”。
另外,在本申请说明书和所附权利要求书的描述中,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
在本申请说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
隐私计算可以是发起方和参与方(可以有多个)之间在不暴露各自数据隐私情况下的联合计算。
针对传统的隐私计算实现方式存在的通用性差、不支持用户自定义模型代码以及无法进行代码的动态执行等缺陷,本申请实施例提供了一种高效的隐私计算执行引擎,基于虚拟机高效运行隐私计算模型代码,并实现对隐私计算模型代码动态的调用及执行;同时还可以支持用户对模型代码的逻辑以及算法进行自定义设定;无需每项业务均单独开发一套隐私计算算法,提高隐私计算模型代码的通用性及隐私计算效率。
下面通过实施例介绍本申请中发起方和参与方(可以有多个)之间联合实现隐私计算的过程。本申请中所有实施例中的方法步骤的执行主体(如发起方节点或者参与方节点)均可以为电子设备,该电子设备可以为桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。
请参见图1,图1是本申请实施例提供的系统架构应用场景的示意图。如图1所示,该系统架构可以包括发起方节点以及多个参与方节点(如参与方节点1、参与方节点2、参与方节点3以及参与方节点21)。发起方节点可以和多个参与放节点分别同时进行交互,执行隐私计算模型代码;也可以是按隐私计算模型代码的逻辑依次与每个参与方节点进行交互。
示例性的,发起方节点可以获取用户输入的隐私计算模型代码,发起方节点可以执行隐私计算模型代码中的发起方模型代码,并在执行过程中将隐私计算模型代码中的参与方模型代码发送给相应的参与方节点;参与方节点接收到参与方模型代码后,执行该参与方模型代码,并将执行结果反馈给发起方节点。发起方节点接收到执行结果后,基于该执行结果可以继续执行发起方模型代码,在执行完发起方模型代码后,输出隐私计算结果。
示例性的,发起方节点可以与多个参与方节点进行交互,还可以通过参与方节点与另一个参与方节点交互。发起方节点可以向与其直接交互的参与方节点发送两项或多项参与方模型代码,由该参与方节点向另一个或多个参与方节点发送相应的参与方模型代码。另一个或多个参与方节点在执行相应的参与方模型代码后,可以将执行结果直接反馈给发起方节点,或者通过与发起方节点直接交互的参与方节点转发给发起方节点。如图1所示,发起方节点获取到用户输入的隐私计算模型代码,该隐私计算模型代码可以包括发起方模型代码、与参与方节点2对应的参与方模型代码以及与参与方节点21对应的参与方模型代码;发起方节点在执行发起方模型代码的过程中,可以向参与方节点2发送以上两项参与方模型代码;参与方节点2在执行与自己对应的参与方模型代码过程中,可以向参与方节点21发送相应的参与方模型代码。参与方节点21执行参与方模型代码得到的执行结果,可以直接反馈给发起方节点;还可以先反馈给参与方节点2,由参与方节点2和其自己的执行结果一起发送给发起方节点,或者参与方节点2基于参与方节点21的执行结果继续执行参与方模型代码,将此时得到的执行结果反馈给发起方节点。
需要说明的是,本申请实施例中的发起方节点和参与方节点均可以为身份可互换的电子设备,即在另一个应用场景中,图1中的参与方节点可能为发起方节点。而且,发起方节点和参与方节点均通过虚拟机执行相应的模型代码,通过虚拟机调用隐私计算模型代码,并进行编译,然后执行,得到执行结果;从而可以根据业务特性自定义与其相适应的隐私计算模型代码,满足复杂多变的业务需求;以及通过虚拟机的调用,实现动态地执行相应的模型代码;提高了隐私计算的通用性。
基于上述整体实现过程,本申请实施例提供了一种隐私计算方法。下面通过本申请实施例介绍该方法实现的具体过程。
请参见图2,图2是本申请一实施例提供的隐私计算方法的流程示意图。如图2所示,该方法包括以下步骤:
S201,发起方节点获取隐私计算模型代码。
在一些实施例中,隐私计算模型代码包括发起方模型代码和参与方模型代码;其中,参与方模型代码可以包括多个参与方节点对应的模型代码。发起方节点可以获取用户向虚拟机输入的隐私计算模型代码,该隐私计算模型代码可以由用户自定义其代码的逻辑,还可以由用户在原有的代码逻辑的基础上自定义其他的逻辑以及算法(例如新增的算法或逻辑)等。
示例性的,隐私计算可以是发起方节点和参与方节点之间在不暴露各自数据隐私情况下的联合计算。发起方节点可以是多个分布式节点中的任意一个节点终端;在不同的应用场景或实例中,发起方节点也可以是其他业务的参与方节点,参与方节点在一些业务中还可以是发起方节点。例如,在区块链系统中,任一个区块链节点均可以作为隐私计算的发起方节点或者参与方节点;区块链节点对链上的数据进行加密及描述,作为发起方的区块链节点可以获取隐私计算模型代码,并向其他作为参与方的区块链节点发送参与方模型代码,基于分布式的网络,通过执行各自对应的模型代码进行联合计算,在不暴露各自数据隐私的情况下实现隐私计算。
示例性的,隐私计算模型代码可以包括发起方模型代码以及所有参与方模型代码,所有参与方模型代码可以包括与发起方直接交互的参与方节点的模型代码或者间接交互的参与方节点的模型代码。
在一些实施例中,在发起方节点获取隐私计算模型代码之前,该方法还包括:
发起方节点启动第一虚拟机并向第一虚拟机注入事件处理器,该事件处理器用于发起方节点基于该第一虚拟机抛出事件。
示例性的,第一虚拟机为发起方节点中的虚拟机,该虚拟机可以是JAVA虚拟机,Python虚拟机,Lua虚拟机等,在此对虚拟机的形式不做具体限定。
示例性的,发起方节点在不同的应用场景中可以为参与方节点,参与方节点在不同的应用场景中也可以为发起方节点。因此,该步骤中发起方节点启动第一虚拟机并向第一虚拟机注入事件处理器,也可以是参与方节点中的执行过程。下面将发起方节点和参与方节点统称为节点终端,如图4中的(a)图所示,节点终端通过运行主程序,启动虚拟机,向虚拟机中注入事件处理器,该事件处理器指的是确定控件如何响应事件的事件过程,可以包括控件名称和相应事件的名称。例如该事件可以为通过虚拟机向节点终端的主程序传输参与方模型代码和通道;该参与方模型代码为需要参与方执行的模型代码,该通道为节点终端的主程序与虚拟机之间的数据传输通道。
示例性的,节点终端通过第一虚拟机中的该事件处理器可以向节点终端的主程序抛出事件,节点终端通过运行主程序,根据主程序中预先注册的事件处理函数对该事件进行处理。
在一些实施例中,在发起方节点获取隐私计算模型代码之后,该方法还包括:
发起方节点通过第一虚拟机生成发起方模型代码的第一哈希值,将第一哈希值作为发起方模型的第一标识;发起方节点通过第一虚拟机编译发起方模型代码,得到发起方模型代码的第一中间字节码;发起方节点缓存第一中间字节码;当再次执行该发起方模型代码时,则根据第一标识查询被缓存的第一中间字节码。
示例性的,发起方节点在另一些实施例中还可以为参与方节点,此处通过节点终端进行描述,即上述流程同样适用于参与方节点的执行过程。发起方模型代码和参与方模型代码统称为模型代码,节点终端在获取到模型代码后,可以根据模型代码生成哈希值,并将哈希值作为模型代码的唯一标识;节点终端通过虚拟机编译该模型代码,得到对应的中间字节码,该中间字节码为计算机可执行的二进制文件。节点终端缓存该中间字节码并执行该中间字节码。后续再次执行该模型代码时,可以根据生成的唯一标识,查询中间字节码,如果查询到被缓存的中间字节码,则直接执行该中间字节码,无需再进行调用以及编译的过程,由于业务的复杂性,可能会存在模型代码的多次执行,因此大大提高了执行效率。
S202,发起方节点通过第一虚拟机执行发起方模型代码,并向参与方发送参与方模型代码。
在一些实施例中,发起方节点在执行隐私计算模型代码中的发起方模型代码时,可能需要调用多项隐私计算的模型代码,该多项隐私计算的模型代码可以由其他参与方节点执行;因此发起方节点在执行发起方模型代码时向其他参与方节点发送相应的参与方模型代码,由其他参与方节点分别执行相应的参与方模型代码并得到执行结果。
示例性的,发起方节点在执行发起方模型代码时,该发起方模型代码可能调用了多项模型代码,例如隐私求和算法的代码、隐私求交算法的代码以及隐私求平均数算法的代码等,该多项模型代码可能需要多个参与方节点结合本地数据或者共享数据执行完成。因此,发起方节点可以同时向多个参与方节点分别发送相应的模型代码,或者在执行发起方模型代码的过程中,依次向多个参与方节点分别发送相应的模型代码;应理解,发起方节点发送给参与方节点的模型代码可以为参与方模型代码。
示例性的,结合图1所示的系统架构,发起方节点在执行发起方模型代码时,可能同时调用多项模型代码,发起方节点则可以同时向多个参与方节点发送相应的参与方模型代码,例如同时分别向参与方节点1、参与方节点2以及参与方节点3发送相应的参与方模型代码;或者发起方节点在执行发起方模型代码时,需要依次调用多项模型代码,发起方节点则依次向多个参与方节点发送相应的参与方模型代码,例如可以先向参与方节点1发送相应的参与方模型代码,在接收到参与方节点1执行参与方模型代码反馈的执行结果之后,再向参与方节点2或参与方节点3发送相应的参与方模型代码;或者,发起方节点在执行发起方模型代码时,需要调用多项模型代码,且需要一个参与方节点调用另一个参与方节点,则发起方节点将对应的参与放节点的参与方模型代码发送给第一个被调用参与方节点,由该第一个参与方节点向其他被间接调用的参与方节点发送参与方模型代码中的其他模型代码,如图1中发起方节点将参与方节点2和参与方节点21的模型代码先都发送给参与方节点2,然后在参与方节点2执行模型代码时再向参与方节点21发送模型代码。具体的模型代码的调用及执行过程,可以根据业务需求进行设定,本申请实施例旨在可以支持任意调用关系及调用逻辑的实现,实现对模型代码的动态执行,节点终端无需进行重启也无需修改节点终端中的主程序,提高隐私计算的灵活性。
在一些实施例中,发起方节点通过第一虚拟机执行发起方模型代码,包括:
发起方节点对发起方模型中的隐私计算函数调用的参数进行解析;若解析正确,则通过第一虚拟机的事件处理器抛出目标事件,该目标事件包括参与方模型代码和第一通道,第一通道用于与第一虚拟机传输数据。
示例性的,节点终端通过虚拟机执行模型代码。当发起方节点通过虚拟机执行发起方模型代码的隐私计算函数时,在虚拟机中将隐私计算函数调用的参数进行解析;若解析错误,则抛出错误信息;若解析正确则获取预先在虚拟机中注册的事件处理器,通过虚拟机中的事件处理器向发起方节点的主程序抛出目标事件,通过该目标事件将参与方节点对应的参与方模型代码和第一通道传输给主程序。该第一通道为发起方节点中的主程序与虚拟机之间传输数据的通道。
其中,发起方节点执行隐私计算函数时调用的参数可以是身份标识ID或名称Name,例如身份标识ID=123,名称Name=汤姆,若调用到参数身份标识ID,进行解析后为整数,则解析正确,若解析为字符串“汤姆”则说明调用的参数错误。
示例性的,如图4中的(b)图所示,发起方节点接收用户输入的隐私计算模型代码,通过虚拟机执行该隐私计算模型代码中的发起方模型代码,对隐私计算函数调用的参数进行解析,若解析正确则向主程序抛出事件,向主程序传入参与方模型代码和通道。其中,该通道为单向的,节点终端通过运行主程序可以基于通道的一边写入数据,然后节点终端通过虚拟机基于通道的另一边读取该数据;若没有数据写入该通道,从该通道读取数据时则表现为通道阻塞。
需要说明的是,参与方节点也包括虚拟机,参与方节点通过运行主程序启动虚拟机时,可以向虚拟机中注册事件处理器。参与方节点可以通过该事件处理器向主程序中抛事件,参与方节点根据主程序中预先注册的事件处理函数对该事件进行处理。
在一些实施例中,发起方节点的主程序接收到虚拟机抛出的目标事件后,通过在主程序中预先注册的事件处理函数处理该目标事件,与参与方节点进行网络通信,发起方节点通过运行主程序,将参与方模型代码通过网络通信发送给参与方节点的主程序。
在一些实施例中,参与方节点在接收到发起方节点发送的参与方模型代码之后,该方还包括:
参与方节点通过第二虚拟机生成参与方模型代码的第二哈希值,将第二哈希值作为发起方模型的第二标识;参与方节点通过第二虚拟机编译参与方模型代码,得到所述参与方模型代码的第二中间字节码;参与方节点缓存所述第二中间字节码;当再次执行该参与方模型代码时,参与方节点根据第二标识查询被缓存的第二中间字节码。
示例性的,该第二哈希值为参与方模型代码对应的哈希值,该第二中间字节码为参与方模型代码经过编译后的中间字节码,该第二标识为参与方模型代码的标识。与发起方相同的执行原理,参与方节点在接收到参与方模型代码后,也可以根据该参与方模型代码生成哈希值,并将哈希值作为唯一标识,在下次执行参与方模型代码时,根据该标识查询参与方模型代码的中间字节码;提高隐私计算的执行效率。
在一些实施例中,参与方节点接收到参与方模型代码后,通过第二虚拟机执行该参与方模型代码,得到执行结果。
示例性的,如图4中的(b)图所示,参与方节点接收到参与方模型代码后,通过虚拟机调用并载入参与方模型代码,然后通过第二虚拟机执行该参与方模型代码。该第二虚拟机为参与方节点的虚拟机。
示例性的,参与方节点在执行参与方模型代码时,还可以读取本地数据,结合本地数据执行参与方模型代码的逻辑及算法。
示例性的,参与方节点在交互过程中,也可以在接收到发起方节点发送的参与方模型代码后,通过虚拟机执行参与方模型代码时,将参与方模型代码中的隐私计算函数调用的参数进行解析,若解析错误,则向发起方节点反馈出错信息,若解析正确还可以获取预先在虚拟机中注册的事件处理器,向参与方节点的主程序抛出事件,传给主程序通道和下一级参与方节点对应的参与方模型代码;如图5中的(a)图所示的参与方节点2。
在一些实施例中,参与方节点在得到执行结果后,将该执行结果反馈给发起方节点,如图4中的(c)图所示,参与方节点通过虚拟机执行参与方模型代码后,得到执行结果;参与方节点的虚拟机将执行结果返回到参与方节点的主程序,参与方节点通过运行主程序将执行结果通过网络通信的方式发送给发起方节点。
S203,发起方节点接收参与方节点反馈的执行结果,执行结果为参与方节点通过第二虚拟机执行参与方模型代码得到的。
在一些实施例中,在发起方节点接收参与方节点反馈的执行结果之后,该方法还包括:
发起方节点将执行结果写入第一通道;发起方节点通过第一虚拟机读取第一通道中的执行结果;基于该执行结果,发起方节点通过第一虚拟机继续执行隐私计算模型代码中的发起方模型代码。
示例性的,如图4中的(c)图所示,发起方节点接收到参与方节点发送的执行结果,将该执行结果写入预先通过虚拟机抛出的通道中,发起方节点通过虚拟机读取通道中的执行结果,并基于该执行结果继续执行发起方模型代码。
示例性的,发起方节点通过虚拟机尝试从通道中读取执行结果,若通道中没有写入执行结果,则通道处于阻塞状态,直到执行结果被写入通道中,若阻塞状态超过预设时长,则发起方节点给出超时错误的提示信息。
示例性的,发起方节点的虚拟机读取到通道中的执行结果之后,还会继续执行发起方模型代码,同上述的交互流程,与其他参与方节点进行网络通信交互,获取到其他参与方节点的执行结果。
S204,在基于所述执行结果,发起方节点继续执行所述发起方模型代码,并在执行完成后,得到隐私计算结果。
在一些实施例中,发起方节点结合所有参与方节点反馈的执行结果,以及通过执行发起方模型代码,得到最终的隐私计算结果。如图4中的(c)图所示,在完成发起方模型代码的执行后,最后输出隐私计算结果给用户。
如图5所示的本申请另一实施例提供的隐私计算方法的交互架构示意图。
在一些实施例中,结合图1中的系统架构图,发起方节点还可以与参与方节点2、参与方节点21进行交互。如图5中的(a)图所示,发起方节点获取用户输入的隐私计算模型代码,在执行隐私计算模型代码中的发起方模型代码时,通过虚拟机向主程序抛出事件,通过主程序处理该事件,与参与方节点2进行网络通信,向参与方节点2发送参与方模型代码,该参与方模型代码可以包括参与方节点2对应的模型代码和参与方节点21对应的模型代码。参与方节点2在接收到参与方模型代码后,通过虚拟机载入并执行该参与方模型代码中自己对应的模型代码部分,并通过虚拟机向主程序抛出事件,参与方节点2的主程序处理该事件,与参与方节点21进行网络通信,向参与方节点21发送其对应的模型代码,参与方节点21接收到该模型代码后,通过虚拟机载入并执行该模型代码,得到执行结果。
其中,参与方节点2通过虚拟机抛出事件,该事件可以包括参与方节点21对应的模型代码和通道,也可以不包括通道。针对参与方节点2,若事件中包括通道,该通道为参与方节点的主程序与虚拟机之间的数据传输通道;下一级参与方节点21执行参与方模型代码后,将执行结果反馈给与发起方节点直接交互的参与方节点2,该参与方节点2通过运行主程序将执行结果写入该通道,由该参与方节点2的虚拟机从通道中读取该执行结果。若事件中不包括通道,参与方节点21在执行模型代码得到执行结果后,可以直接反馈给发起方节点的主程序,发起方节点的主程序将执行结果写入自己的通道中。
如图5中的(b)图所示,参与方节点2在执行相应的模型代码后,可以得到执行结果A,参与方节点21在执行相应的模型代码后得到执行结果B。一种情况,参与方节点21向参与方节点2反馈执行结果B,参与方节点2将自己的执行结果A和参与方节点21的执行结果B一起反馈给发起方节点,发起方节点基于执行结果A和执行结果B,继续执行发起方模型代码,最后完成执行后,发起方节点输出最终的隐私计算结果。另一种情况,参与方节点21向参与方节点2反馈执行结果B后,参与方节点2基于该执行结果B执行相应的模型代码,得到执行结果C,参与方节点2将该执行结果C反馈给发起方节点;发起方节点基于该执行结果C继续执行发起方模型代码,执行完成后,输出最终的隐私计算结果。再一种情况,如图5中的(c)图所示,参与方节点21将执行结果B通过网络通信的方式直接反馈给发起方节点,参与方节点2将执行结果A通过网络通信的方式反馈给发起方节点;发起方节点基于执行结果A和执行结果B继续执行发起方模型代码,完成执行后,输出最终的隐私计算结果。
应理解,本申请实施例中的发起方节点和参与方节点在实际应用的交互过程中,不公开其隐私数据,但模型代码的执行逻辑中均包含调用的对象及执行的先后逻辑等标识,具体的执行过程及交互关系、交互方式,本申请实施例不做具体的限定;但依据本申请实现原理,基于节点终端中虚拟机与主程序的交互方式,以及通过虚拟机动态的执行该代码无需进行重启主程序的实现方式,均在本申请的保护范围之内。
通过本申请实施例,支持用户自定义隐私计算模型代码,隐私计算执行引擎可以动态的执行该代码,即主程序不需要重启就可以执行该模型代码,对于用户使用更方便,更灵活地应对不同的业务需求,且不用修改主程序的代码。本申请实施例通过设置虚拟机和主程序的交互方式,保证了虚拟机可以动态的执行隐私计算模型代码,使得模型代码编写也更加灵活,更能应对业务复杂多变的需求,并且降低了开发成本,提高了隐私计算的执行效率。
如图3所示,本申请实施例还提供了隐私计算方法的流程示意图,该流程步骤的执行主体可以是参与方节点,该方法的实现原理在上述实施例中已进行阐述,在此不再赘述;如图3所示,该方法包括:
S301,参与方节点接收发起方节点发送的参与方模型代码;
S302,参与方节点通过第二虚拟机执行所述参与方模型代码,得到执行结果;
S303,参与方节点向所述发起方节点反馈所述执行结果;
其中,所述参与方模型代码为参与方节点从发起方节点获取的隐私计算模型代码,所述执行结果用于所述发起方节点在通过第一虚拟机从第一通道中读取并在执行发起方模型代码结束后生成隐私计算结果。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
对应于上文实施例所述的隐私计算方法,图6示出了本申请实施例提供的隐私计算装置的结构框图,为了便于说明,仅示出了与本申请实施例相关的部分。
参照图6,该装置包括:
获取单元61,用于获取隐私计算模型代码,所述隐私计算模型代码包括发起方模型代码和参与方模型代码;
执行单元62,用于通过第一虚拟机执行所述发起方模型代码,并向参与方节点发送所述参与方模型代码;
接收单元63,用于接收所述参与方节点反馈的执行结果,所述执行结果为所述参与方节点通过第二虚拟机执行所述参与方模型代码得到的;
输出单元64,用于基于所述执行结果继续执行所述发起方模型代码,并在执行完成后,得到隐私计算结果。
对应于上文实施例所述的隐私计算方法,本申请实施例还提供了一种隐私计算装置,该装置可以包括:
接收单元,用于接收发起方节点发送的参与方模型代码;
执行单元,用于通过第二虚拟机执行所述参与方模型代码,得到执行结果;
发送单元,用于向所述发起方节点反馈所述执行结果;
其中,所述参与方模型代码为发起方节点获取的隐私计算模型代码中的模型代码,所述隐私计算模型代码还包括发起方模型代码,所述执行结果用于所述发起方节点在通过第一虚拟机完成对所述发起方模型代码的执行后生成隐私计算结果。
需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
本申请实施例提供了一种计算机程序产品,当计算机程序产品在移动终端上运行时,使得移动终端执行时实现可实现上述各个方法实施例中的步骤。
图7为本申请一实施例提供的电子设备7的结构示意图。如图7所示,该实施例的电子设备7包括:至少一个处理器70(图7中仅示出一个)、存储器71以及存储在所述存储器71中并可在所述至少一个处理器70上运行的计算机程序72,所述处理器70执行所述计算机程序72时实现上述实施例中的步骤。
所述电子设备7可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该电子设备7可包括,但不仅限于,处理器70、存储器71。本领域技术人员可以理解,图7仅仅是电子设备7的举例,并不构成对电子设备7的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
所称处理器70可以是中央处理单元(Central Processing Unit,CPU),该处理器70还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器71在一些实施例中可以是所述电子设备7的内部存储单元,例如电子设备7的硬盘或内存。所述存储器71在另一些实施例中也可以是所述电子设备7的外部存储设备,例如所述电子设备7上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器71还可以既包括所述电子设备7的内部存储单元也包括外部存储设备。所述存储器71用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器71还可以用于暂时地存储已经输出或者将要输出的数据。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/网络设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/网络设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种隐私计算方法,其特征在于,应用于发起方节点,所述方法包括:
获取隐私计算模型代码,所述隐私计算模型代码包括发起方模型代码和参与方模型代码;
通过第一虚拟机执行所述发起方模型代码,并向参与方节点发送所述参与方模型代码;
接收所述参与方节点反馈的执行结果,所述执行结果为所述参与方节点通过第二虚拟机执行所述参与方模型代码得到的;
基于所述执行结果继续执行所述发起方模型代码,并在执行完成后,得到隐私计算结果。
2.如权利要求1所述的方法,其特征在于,在所述获取隐私计算模型代码之前,所述方法还包括:
启动所述第一虚拟机并向所述第一虚拟机注入事件处理器,所述事件处理器用于基于所述第一虚拟机抛出事件。
3.如权利要求1所述的方法,其特征在于,在所述获取隐私计算模型代码之后,所述方法还包括:
通过第一虚拟机生成所述发起方模型代码的第一哈希值,将所述第一哈希值作为所述发起方模型的第一标识;
通过第一虚拟机编译所述发起方模型代码,得到所述发起方模型代码的第一中间字节码;
缓存所述第一中间字节码;
当再次执行所述发起方模型代码时,根据所述第一标识查询被缓存的所述第一中间字节码。
4.如权利要求2所述的方法,其特征在于,所述通过第一虚拟机执行所述发起方模型代码,包括:
对所述发起方模型中的隐私计算函数调用的参数进行解析;
若解析正确,则通过所述第一虚拟机的所述事件处理器抛出目标事件,所述目标事件包括所述参与方模型代码和第一通道,所述第一通道用于与所述第一虚拟机传输数据。
5.如权利要求4所述的方法,其特征在于,在所述接收所述参与方节点反馈的执行结果之后,所述方法还包括:
将所述执行结果写入所述第一通道;
通过所述第一虚拟机读取所述第一通道中的所述执行结果;
基于所述执行结果,通过所述第一虚拟机继续执行所述隐私计算模型代码中的所述发起方模型代码。
6.一种隐私计算方法,其特征在于,应用于参与方节点,所述方法包括:
接收发起方节点发送的参与方模型代码;
通过第二虚拟机执行所述参与方模型代码,得到执行结果;
向所述发起方节点反馈所述执行结果;
其中,所述参与方模型代码为参与方节点从发起方节点获取的隐私计算模型代码,所述执行结果用于所述发起方节点在通过第一虚拟机从第一通道中读取并在执行发起方模型代码结束后生成隐私计算结果。
7.如权利要求6所述的方法,其特征在于,在所述接收发起方节点发送的参与方模型代码之后,所述方法还包括:
通过第二虚拟机生成所述参与方模型代码的第二哈希值,将所述第二哈希值作为所述发起方模型的第二标识;
通过第二虚拟机编译所述参与方模型代码,得到所述参与方模型代码的第二中间字节码;
缓存所述第二中间字节码;
当再次执行所述参与方模型代码时,根据所述第二标识查询被缓存的所述第二中间字节码。
8.一种隐私计算装置,其特征在于,所述装置包括:
获取单元,用于获取隐私计算模型代码,所述隐私计算模型代码包括发起方模型代码和参与方模型代码;
执行单元,用于通过第一虚拟机执行所述发起方模型代码,并向参与方节点发送所述参与方模型代码;
接收单元,用于接收所述参与方节点反馈的执行结果,所述执行结果为所述参与方节点通过第二虚拟机执行所述参与方模型代码得到的;
输出单元,用于基于所述执行结果继续执行所述发起方模型代码,并在执行完成后,得到隐私计算结果。
9.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5或权利要求6至7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行实现如权利要求1至5或权利要求6至7任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111563009.XA CN114239064A (zh) | 2021-12-20 | 2021-12-20 | 隐私计算方法、装置、电子设备及计算机可读存储介质 |
PCT/CN2022/137950 WO2023116466A1 (zh) | 2021-12-20 | 2022-12-09 | 隐私计算方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111563009.XA CN114239064A (zh) | 2021-12-20 | 2021-12-20 | 隐私计算方法、装置、电子设备及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114239064A true CN114239064A (zh) | 2022-03-25 |
Family
ID=80759302
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111563009.XA Pending CN114239064A (zh) | 2021-12-20 | 2021-12-20 | 隐私计算方法、装置、电子设备及计算机可读存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114239064A (zh) |
WO (1) | WO2023116466A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023116466A1 (zh) * | 2021-12-20 | 2023-06-29 | 杭州趣链科技有限公司 | 隐私计算方法、装置、电子设备及计算机可读存储介质 |
CN116842578A (zh) * | 2023-08-31 | 2023-10-03 | 武汉大数据产业发展有限公司 | 数据要素交易中隐私计算平台、方法、电子设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107608806A (zh) * | 2017-09-25 | 2018-01-19 | 郑州云海信息技术有限公司 | 一种虚拟机间快速访问传输数据的系统及方法 |
CN110019366A (zh) * | 2017-12-21 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 一种缓存数据的方法和装置 |
CN111586142A (zh) * | 2020-04-30 | 2020-08-25 | 王伟 | 一种安全多方计算方法及系统 |
CN111931250A (zh) * | 2019-07-11 | 2020-11-13 | 华控清交信息科技(北京)有限公司 | 多方安全计算一体机 |
CN112395642A (zh) * | 2020-11-20 | 2021-02-23 | 湖南智慧政务区块链科技有限公司 | 一种安全多方隐私计算方法、装置、设备及存储介质 |
CN112948885A (zh) * | 2021-03-25 | 2021-06-11 | 支付宝(杭州)信息技术有限公司 | 实现隐私保护的多方协同更新模型的方法、装置及系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA3133466A1 (en) * | 2019-03-26 | 2020-10-01 | The Regents Of The University Of California | Distributed privacy-preserving computing on protected data |
CN112905187B (zh) * | 2021-02-20 | 2024-02-23 | 深圳前海微众银行股份有限公司 | 编译方法、装置、电子设备及存储介质 |
CN113505520A (zh) * | 2021-05-17 | 2021-10-15 | 京东科技控股股份有限公司 | 用于支持异构联邦学习的方法、装置和系统 |
CN113326523A (zh) * | 2021-06-18 | 2021-08-31 | 深圳前海微众银行股份有限公司 | 一种隐私计算方法、装置及电子设备 |
CN113722754B (zh) * | 2021-08-25 | 2024-06-14 | 上海阵方科技有限公司 | 隐私可执行文件的生成方法、装置和服务器 |
CN114239064A (zh) * | 2021-12-20 | 2022-03-25 | 杭州趣链科技有限公司 | 隐私计算方法、装置、电子设备及计算机可读存储介质 |
-
2021
- 2021-12-20 CN CN202111563009.XA patent/CN114239064A/zh active Pending
-
2022
- 2022-12-09 WO PCT/CN2022/137950 patent/WO2023116466A1/zh unknown
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107608806A (zh) * | 2017-09-25 | 2018-01-19 | 郑州云海信息技术有限公司 | 一种虚拟机间快速访问传输数据的系统及方法 |
CN110019366A (zh) * | 2017-12-21 | 2019-07-16 | 北京京东尚科信息技术有限公司 | 一种缓存数据的方法和装置 |
CN111931250A (zh) * | 2019-07-11 | 2020-11-13 | 华控清交信息科技(北京)有限公司 | 多方安全计算一体机 |
CN111586142A (zh) * | 2020-04-30 | 2020-08-25 | 王伟 | 一种安全多方计算方法及系统 |
CN112395642A (zh) * | 2020-11-20 | 2021-02-23 | 湖南智慧政务区块链科技有限公司 | 一种安全多方隐私计算方法、装置、设备及存储介质 |
CN112948885A (zh) * | 2021-03-25 | 2021-06-11 | 支付宝(杭州)信息技术有限公司 | 实现隐私保护的多方协同更新模型的方法、装置及系统 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023116466A1 (zh) * | 2021-12-20 | 2023-06-29 | 杭州趣链科技有限公司 | 隐私计算方法、装置、电子设备及计算机可读存储介质 |
CN116842578A (zh) * | 2023-08-31 | 2023-10-03 | 武汉大数据产业发展有限公司 | 数据要素交易中隐私计算平台、方法、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
WO2023116466A1 (zh) | 2023-06-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111208798B (zh) | 机器人的测试方法、装置、电子设备及存储介质 | |
CN114239064A (zh) | 隐私计算方法、装置、电子设备及计算机可读存储介质 | |
CN110909356B (zh) | 安全多方计算方法、装置、设备及计算机可读介质 | |
CN110609679B (zh) | 数据处理方法、装置、计算机可读存储介质和计算机设备 | |
CN110570196A (zh) | 交易数据处理方法、装置、终端设备以及存储介质 | |
CN110830581A (zh) | 提升区块链响应速度的方法、区块链应用系统及相关设备 | |
CN107688538A (zh) | 一种脚本执行方法、装置及计算设备 | |
CN112651741B (zh) | 基于区块链的数据处理方法和装置 | |
CN108920358B (zh) | 消息总线的路由表生成方法、装置、存储介质及电子设备 | |
CN112035859B (zh) | 密码服务的调用方法及装置、存储介质、电子装置 | |
CN116502283A (zh) | 一种隐私数据处理方法及装置 | |
CN110989934B (zh) | 区块链节点数据存储方法、区块链系统及区块链节点 | |
CN113495723B (zh) | 一种调用功能组件的方法、装置及存储介质 | |
CN112162797B (zh) | 数据处理方法、系统、存储介质以及电子设备 | |
CN113542022A (zh) | 组网系统的组网管理方法、装置、终端设备及存储介质 | |
CN111722994A (zh) | 一种任务请求的响应方法及设备 | |
CN116017403A (zh) | eSIM设备的LPA自动编译方法、系统及介质 | |
CN109508193B (zh) | 一种应用部署运行方法、装置、终端设备和介质 | |
CN114298699B (zh) | 非同质化通证的生成方法、获取方法及装置 | |
CN106936643B (zh) | 一种设备联动方法以及终端设备 | |
CN113472781B (zh) | 一种服务获取方法、服务器及计算机可读存储介质 | |
CN115391801A (zh) | 区块链系统中加密模块的更新方法、装置及相关产品 | |
CN112688870B (zh) | 一种路由方法、路由装置及节点设备 | |
CN112988339B (zh) | 一种数据管理方法及装置 | |
CN113556334B (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 |