CN112182644B - 一种数据处理方法、装置和电子设备 - Google Patents
一种数据处理方法、装置和电子设备 Download PDFInfo
- Publication number
- CN112182644B CN112182644B CN202010955866.3A CN202010955866A CN112182644B CN 112182644 B CN112182644 B CN 112182644B CN 202010955866 A CN202010955866 A CN 202010955866A CN 112182644 B CN112182644 B CN 112182644B
- Authority
- CN
- China
- Prior art keywords
- calculation
- computing
- task
- engine
- ciphertext
- 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
Links
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/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/901—Indexing; Data structures therefor; Storage structures
- G06F16/9024—Graphs; Linked lists
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- 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/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Computer Hardware Design (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Security & Cryptography (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Storage Device Security (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明实施例提供了一种数据处理方法、装置和电子设备,其中,所述的方法包括:任务处理平台接收任务请求方发送的计算请求;解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;当计算任务所需的计算引擎为明文计算引擎时,将计算任务发送给明文计算引擎进行计算;当计算任务所需的计算引擎为明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;根据计算任务所需的计算引擎对应的计算结果,确定计算请求对应的计算结果并返回给结果需求方;进而提高计算效率。
Description
技术领域
本发明涉及数据处理领域,特别是涉及一种数据处理方法、装置和电子设备。
背景技术
多方安全计算是指,针对无可信第三方的情况下,在多个非互信数据库之间,在数据相互保密的前提下,实现数据的计算和融合。目前多方安全计算中,设置多个计算节点。计算节点从数据方获得隐私数据的密文,基于密文进行计算,计算结果的明文只能被结果方获取。由于计算节点获取的是隐私数据的密文,不知道真正的数据,实现了在数据保密的情况下数据的计算和融合。
多方安全计算系统由于是针对密文进行计算,因此计算效率较低,如何提升多方安全计算系统的效率是目前亟待解决的问题。
发明内容
本发明实施例提供一种数据处理方法,以提高计算效率。
相应的,本发明实施例还提供了一种数据处理装置和电子设备,用以保证上述方法的实现及应用。
为了解决上述问题,本发明实施例公开了一种数据处理方法,应用于任务处理系统,所述任务处理系统包括任务处理平台、任务请求方、数据提供方和结果需求方;所述任务处理平台中部署有密文计算引擎,所述数据提供方中部署有明文计算引擎,具体包括:任务处理平台接收任务请求方发送的计算请求;解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;所述目标数据提供方包括至少一个;当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
可选地,所述解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎,包括:依据所述计算请求,确定计算逻辑和计算配置;依据所述计算逻辑和计算配置识别计算任务和识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎。
可选地,所述依据所述计算逻辑和计算配置识别计算任务,包括:基于所述计算逻辑和计算配置进行解析,生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应;依据计算图,生成计算任务。
可选地,所述计算配置中包含所述计算任务涉及的数据提供方ID,所述识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎,包括:若所述计算配置中包含一个数据提供方ID,则根据所述数据提供方ID识别出目标数据提供方,以及识别出计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎;若所述计算配置中包含多个数据提供方ID,则根据所述数据提供方ID识别出多个目标数据提供方,并根据计算逻辑识别计算任务所需的计算引擎。
可选地,所述根据计算逻辑识别计算任务所需的计算引擎,包括:若依据所述计算逻辑确定所述计算任务涉及的运算是针对单个目标数据提供方数据的,则识别出所述计算任务所需的计算引擎为明文计算引擎,否则识别出所述计算任务所需的计算引擎为密文计算引擎。
可选地,所述计算逻辑中每组计算的输入参数具有预设标识,所述预设标识包括明文标识或密文标识;所述的方法还包括:依据所述每组计算的输入参数的明文标识,为所述计算图中对应的节点添加明文标识,以及依据所述每组计算的输入参数的密文标识,为所述计算图中对应的节点添加密文标识;所述依据计算图,生成计算任务,包括:依据所述计算图节点的预设标识和与节点关联的边,确定计算任务,所述计算任务包括:明文计算任务和/或密文计算任务;所述识别计算任务所需的计算引擎,包括:若所述计算任务包括明文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎;若所述计算任务包括密文计算任务,则识别出计算任务所需的计算引擎为密文计算引擎;若所述计算任务包括明文计算任务和密文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎和密文计算引擎。
本发明实施例还公开了一种数据处理装置,应用于任务处理系统,所述任务处理系统包括任务处理平台、任务请求方、数据提供方和结果需求方;所述任务处理平台中部署有密文计算引擎,所述数据提供方中部署有明文计算引擎,所述的装置部署在所述任务处理平台侧,具体包括:接收模块,用于接收任务请求方发送的计算请求;解析识别模块,用于解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;所述目标数据提供方包括至少一个;第一计算任务发送模块,用于当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;第二计算任务发送模块,用于当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;第三计算任务发送模块,用于当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;返回模块,用于根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
可选地,所述解析识别模块,包括:确定子模块,用于依据所述计算请求,确定计算逻辑和计算配置;识别子模块,用于依据所述计算逻辑和计算配置识别计算任务和识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎。
可选地,所述确定子模块,包括:计算图生成单元,用于基于所述计算逻辑和计算配置进行解析,生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应;计算任务生成单元,用于依据计算图,生成计算任务。
可选地,所述计算配置中包含所述计算任务涉及的数据提供方ID,所述识别子模块,包括:第一计算引擎识别单元,用于若所述计算配置中包含一个数据提供方ID,则根据所述数据提供方ID识别出目标数据提供方,以及识别出计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎;第二计算引擎识别单元,用于若所述计算配置中包含多个数据提供方ID,则根据所述数据提供方ID识别出多个目标数据提供方,并根据计算逻辑识别计算任务所需的计算引擎。
可选地,所述第二计算引擎识别单元,用于若依据所述计算逻辑确定所述计算任务涉及的运算是针对单个目标数据提供方数据的,则识别出所述计算任务所需的计算引擎为明文计算引擎,否则识别出所述计算任务所需的计算引擎为密文计算引擎。
可选地,所述计算逻辑中每组计算的输入参数具有预设标识,所述预设标识包括明文标识或密文标识;所述的装置还包括:标识添加模块,用于依据所述每组计算的输入参数的明文标识,为所述计算图中对应的节点添加明文标识,以及依据所述每组计算的输入参数的密文标识,为所述计算图中对应的节点添加密文标识;所述计算图生成单元,用于依据所述计算图节点的预设标识和与节点关联的边,确定计算任务,所述计算任务包括:明文计算任务和/或密文计算任务;所述识别子模块,包括:第三计算引擎识别单元,若所述计算任务包括明文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎;若所述计算任务包括密文计算任务,则识别出计算任务所需的计算引擎为密文计算引擎;若所述计算任务包括明文计算任务和密文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎和密文计算引擎。
本发明实施例还公开了一种可读介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如本发明实施例中任一项所述的数据处理方法。
本发明实施例还公开了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如上述本发明实施例中任一项所述的数据处理方法。
与现有技术相比,本发明实施例包括以下优点:
本发明实施例中,任务处理平台接收任务请求方发送的计算请求后,可以解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。本发明实施例通过在进行密文计算之前,判断计算任务是否可以采用明文计算引擎进行计算;当计算任务可以采用明文计算引擎进行计算时,将对应的计算任务发送给明文引擎进行计算;相对于现有技术仅采用密文计算引擎计算所有计算任务而言,本发明实施例能够在保证数据安全的提前下,提高计算效率。
附图说明
图1是本发明的一种任务处理系统实施例的结构框图;
图2是本发明的一种数据处理方法实施例的步骤流程图;
图3a是本发明实施例的一种任务处理系统的应用框架示意图;
图3b是本发明的一种数据处理方法可选实施例的步骤流程图;
图3c是本发明实施例的一种数据处理过程示意图;
图4是本发明的又一种数据处理方法可选实施例的步骤流程图;
图5是本发明的一种密文计算方法实施例的步骤流程图;
图6是本发明的一种数据处理装置实施例的结构框图;
图7是本发明的一种数据处理装置可选实施例的结构框图;
图8示意性地示出了用于执行根据本发明的方法的电子设备的框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
本发明实施例提供的一种数据处理方法,应用于任务处理系统中,所述任务处理系统包括任务处理平台、任务请求方、数据提供方和结果需求方;可参照图1,图1示出了本发明的一种数据处理系统实施例的结构框图。其中,所述任务请求方可以包括一个或多个,数据提供方可以包括一个或多个,所述结果需求方也可以包括一个或多个;图1仅示出了一个任务请求方,两个数据提供方和一个结果需求方。所述任务请求方在作为任务请求方的同时,也可以作为结果需求方;对应的,所述结果需求方在作为结果需求方的同时,也可以作为任务请求方;也就是说,任务请求方和结果需求方可以是同一个。所述数据提供方在作为数据提供方的同时,也可以作为任务发起方和/或结果需求方。
其中,所述任务请求方、数据提供方和结果需求方,可以称为参与方。所述任务处理平台可以部署在所有参与方中的一方,也可以分布式地部署在所有参与方中的多方,还可以独立于所有参与方进行部署;本发明实施例对此不作限制。其中,当任务处理平台分布式地部署在所有参与方中的多方时,可以由所有参与方中的多方共同管理,任何一方都无法单独对数据进行解密,以保证数据安全。
其中,所述数据提供方中部署有明文计算引擎,所述任务处理平台中部署有密文计算引擎,以及和计算任务管理和调度模块。其中,所述密文计算引擎可以基于多方安全计算协议进行密文计算,所述密文计算可以包括纯密文运算,以及明文和密文的混合运算;所述计算任务管理和调度模块可以用于调度明文计算引擎和密文计算引擎进行计算。本发明实施例构造了包含明文计算引擎和密文计算引擎的混合计算系统架构,在执行计算任务时,通过设置的规则可以自动识别所需的计算引擎是明文计算引擎还是密文计算引擎,从而将可以采用明文计算引擎进行计算的计算任务发送给明文计算引擎进行计算;相对于现有技术仅采用密文计算引擎计算所有计算任务而言,本发明实施例能够在保证数据安全的提前下,提高计算效率。
参照图2,示出了本发明的一种数据处理方法实施例的步骤流程图,具体可以包括如下步骤:
步骤202、任务处理平台接收任务请求方发送的计算请求。
步骤204、解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;所述目标数据提供方包括至少一个。
本发明实施例中,当任务请求方需要采用数据提供方本地拥有的数据,进行计算如联合查询、联合建模时,可以向任务处理平台发送任务请求,以指示任务处理平台进行计算。
任务处理平台接收到任务请求方发送的计算请求后,可以对计算请求进行解析,确定所述计算请求对应的计算任务、计算任务所涉及的数据提供方、以及计算任务所需的计算引擎。然后再依据所述计算请求对应的计算任务、计算任务所涉及的数据提供方、以及计算任务所需的计算引擎进行计算,确定所述计算请求对应的计算结果。其中,为了便于后续说明,可以将计算任务所涉及的数据提供方称为目标数据提供方;所述目标数据提供方可以为一个,也可以为多个,本发明实施例对此不作限制。
所述计算任务所需的计算引擎可以包括部署在任务处理平台的密文计算引擎,和/或,部署在目标数据提供方本地的明文计算引擎。可以将计算任务发送给对应所需的计算引擎进行计算;可以参照如下步骤206-步骤210:
步骤206、当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算。
当确定计算任务所需的计算引擎为密文计算引擎时,说明所述计算请求对应的计算任务中没有可以进行明文计算的计算任务;此时可以将计算任务发送给任务处理平台中的密文计算引擎进行密文计算。
步骤208、当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算。
当确定计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,说明所述计算请求对应的计算任务是均可以进行明文计算的计算任务;此时可以将计算任务发送给部署在目标数据提供方的明文计算引擎进行明文计算。
步骤210、当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互。
当确定计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,说明所述计算请求对应的计算任务中包含可以进行明文计算的计算任务和需要进行密文计算的计算任务;此时可以将可以进行明文计算的计算任务发送给部署在目标数据提供方的明文计算引擎进行明文计算,将需要进行密文计算的计算任务发送给任务处理平台中的密文计算引擎进行密文计算;以及在明文计算引擎和密文计算引擎计算的过程中,控制明文计算引擎和密文计算引擎的数据交互,实现明密文的混合计算。
步骤212、根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
本发明实施例中,当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算后,可以将密文计算引擎执行完所述计算请求中所有计算任务后得到的计算结果,确定为所述计算请求对应的计算结果。当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算后,可以将明文计算引擎执行完所述计算请求中所有计算任务后得到的计算结果,确定为所述计算请求对应的计算结果。当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务对应发送给明文计算引擎和密文计算引擎进行计算及数据交互后,可以将明文计算引擎和密文计算引擎联合执行完所述计算请求中所有计算任务后得到的计算结果,确定为所述计算请求对应的计算结果。然后可以将所述计算请求对应的计算结果,返回给结果需求方;其中,当计算结果为密文时,可以将计算结果解密后返回给结果需求方,进而便于结果需求方可以获取到直观的计算结果。
综上,本发明实施例中,任务处理平台接收任务请求方发送的计算请求后,可以解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。本发明实施例通过在进行密文计算之前,判断计算任务是否可以采用明文计算引擎进行计算;当计算任务可以采用明文计算引擎进行计算时,将对应的计算任务发送给明文引擎进行计算;相对于现有技术仅采用密文计算引擎计算所有计算任务而言,本发明实施例能够在保证数据安全的提前下,提高计算效率。
可参照图3a,示出了本发明实施例的一种任务处理系统的应用框架示意图。
所述任务处理系统中的任务处理平台可以包括:算法与应用服务提供模块、明密文混合计算解析器、明密文计算任务调度器和密文计算集群。所述任务处理系统中的数据提供方包括:明文计算引擎、数据源和加密/解密服务提供模块。
其中,所述算法和应用服务提供模块可以用于为用户(如任务请求方)提供各种算法和应用,所述应用如联合查询、联合建模和联合预测;以及用于为开发者提供算法、应用的框架。
所述明密文混合计算解析器可以用于对计算请求进行解析。所述明密文计算任务调度器用于基于明密文混合计算解析器的解析结果确定计算任务,并调度明文计算引擎和/或密文计算引擎执行计算任务。
所述密文计算集群为实现密文计算的集群,可以包括N个计算节点,各计算节点上运行有密文计算引擎,所述密文计算引擎可以提供通用的密文计算服务。这N个计算节点可以联合协作,通过运行在其中的密文计算引擎进行复杂的密文计算。其中,这N个计算节点可以分布式的部署在各参与方,每个参与方管理一个计算节点;也可以独立于各参与方部署,这N个计算节点的管理权限可以分散给各计算节点。其中,N为正整数如4,本发明实施例对此不作限制。此外,密文计算集群还可以包括其他的模块如基础运算服务提供模块、多方安全计算调度与管理服务提供模块等。其中,多方安全计算调度与管理服务提供模块用于管理和调度密文N个计算节点;所述基础运算服务提供模块可以提供密文的基础计算。
加密/解密服务提供模块可以用于提供数据加密服务和数据解密服务。
所述明文计算引擎可以提供明文运算。
图3a中的数据源可以由各数据提供方本地存储的数据组成。
其中,图3a中明密文混合计算解析器和明密文计算任务调度器,属于图1中的计算任务管理和调度模块。
以下对基于图3a,对如何解析计算请求对应计算任务,以及如何识别计算任务所需的计算引擎进行说明。
本发明一个可选实施例中,可以根据计算任务所涉及的数据提供方的数量,来确定计算任务所需的计算引擎;可以如下:
参照图3b,示出了本发明的一种数据处理方法可选实施例的步骤流程图。
步骤302、任务处理平台接收任务请求方发送的计算请求。
本发明实施例中,任务请求方可以在算法与应用服务提供模块中选择计算所需计算数据所属的数据提供方和所需的计算数据,以及选择计算所需的算法或编写计算所需的算法,然后可以执行提交操作。算法与应用服务提供模块可以基于用户在算法与应用服务提供模块中选择计算所需计算数据所属的数据提供方和所需的计算数据,以及选择计算所需的算法或编写计算所需的算法,生成计算请求并发送至任务处理平台中。任务处理平台可以接收到任务请求方发送的计算请求,然后可以基于计算请求进行对应的计算并确定对应的计算结果。
本发明实施例中,根据所述计算请求可以获得计算逻辑和计算配置。其中,所述计算逻辑可以通过计算代码表达,用于表达需要对数据进行什么样的计算,例如是将数据相加求和,还是提取参数进行模型训练。所述计算配置可以包括计算逻辑的配置信息,例如包括:本次任务的计算节点ID,数据提供方ID,结果需求方ID、计算执行顺序等等。
步骤304、根据所述计算请求,确定计算逻辑和计算配置。
步骤306、依据所述计算逻辑和计算配置识别计算任务。
本发明实施例中,若任务请求方是在算法与应用服务提供模块中选择计算所需计算数据所属的数据提供方和所需的计算数据,以及选择计算所需的算法,则任务请求方发起的计算请求中可以包含数据提供方标识、计算数据标识和计算所需算法的标识。此时,任务处理平台可以基于计算请求中包含的数据提供方标识、计算数据标识和计算所需算法的标识,为所述计算请求配置对应的计算逻辑和计算配置。
本发明实施例中,若任务请求方是在算法与应用服务提供模块中选择计算所需计算数据所属的数据提供方和所需的计算数据,以及编写计算所需的算法,则任务请求方发起的计算请求中可以包含计算逻辑和计算配置;此时任务处理平台可以从计算请求中提取计算逻辑和计算配置。
然后任务计算平台可以基于所述计算逻辑和计算配置识别计算任务;一种依据所述计算逻辑和计算配置识别计算任务的方式,可以参照如下子步骤S3062-子步骤S3064:
子步骤S3062、基于所述计算逻辑和计算配置进行解析,生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应。
子步骤S3064、依据计算图,生成计算任务。
本发明的一个示例中,计算逻辑中可以包括多个Job,可以基于计算配置确定各Job之间包含的依赖关系;然后依据各Job之间包含的依赖关系,进行拓扑排序;其中,没有依赖的Job排在最前面。然后可以按照这个拓扑排序从最后一个Job开始执行,直到执行完所有的Job为止;进而可以生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应。然后可以基于计算图生成计算任务。
步骤308、识别计算任务涉及的目标数据提供方。
本发明实施例中,计算配置包括的数据提供方ID,即为计算任务所涉及的数据提供方ID;因此,可以将计算配置中数据提供方ID对应的数据提供方,确定为计算任务所涉及的目标数据提供方。其中,当计算配置中包含一个数据提供方ID时,可以识别出一个目标数据提供方;当计算配置中包含多个数据提供方ID时,可以识别出多个目标数据提供方。
步骤310、识别计算任务所需的计算引擎。
本发明的一种实现方式中,可以基于目标数据提供方的数量,确定计算任务所需的计算引擎;可以参照步骤3102~步骤3104:
步骤3102、若所述计算配置中包含一个数据提供方ID,识别出计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎。
也就是说,当计算请求对应的目标数据提供方为一个时,由于采用该目标数据提供方本地的明文计算引擎进行计算时,不会存在数据泄露的问题。因此,此时可以确定计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎;进而无需进行密文计算,提高了计算效率。
步骤3104、若所述计算配置中包含多个数据提供方ID,则根据计算逻辑识别计算任务所需的计算引擎。
本发明实施例中,一个计算请求对应的计算任务可以包括多个;可以依据每个计算任务对应运算所涉及的目标数据提供方的数量,确定该计算任务所需的计算引擎是明文计算引擎还是密文计算引擎。进而若所述计算配置中包含多个数据提供方ID,则依据所述计算逻辑,分别基于所述计算请求中各计算任务所涉及的目标数据提供方的数量,确定所述计算请求中各计算任务所需的计算引擎。其中,若所述计算配置中包含多个数据提供方ID,若依据所述计算逻辑确定所述计算任务涉及的运算是针对单个目标数据提供方数据的,则识别出所述计算任务所需的计算引擎为明文计算引擎,否则识别出所述计算任务所需的计算引擎为密文计算引擎。
然后可以按照步骤312-步骤316,依据计算请求对应各计算任务所需的计算引擎,将计算任务发送给对应所需的计算引擎进行计算。
步骤312、当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算。
其中,密文计算引擎接收到计算任务后,可以从该计算任务所涉及的目标数据提供方获取计算数据,所述计算数据为密文;然后进行密文计算。其中,目标数据提供方可以通过加密/解密服务提供模块,将本地的计算数据进行加密,得到密文计算数据;然后将密文计算数据发送给密文计算引擎进行计算,以保证数据安全。
步骤314、当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算。
其中,部署在目标数据提供方中的明文计算引擎接收到计算任务后,可以从其所在的目标数据提供方中,获取所述计算任务对应的计算数据,所述计算数据为明文;然后进行明文计算。
步骤316、当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互。
本发明实施例中,在明文计算引擎进行明文计算,以及密文计算引擎进行密文计算的过程中,目标数据提供方中的加密/解密服务提供模块可以根据计算任务,确定密文计算引擎和明文计算引擎之间的交互数据,通过对交互数据进行加密或解密,实现密文计算引擎和明文计算引擎之间数据的交互。其中,可以依据计算任务,确定所述密文计算引擎输出的第一密文交互数据;将第一密文交互数据进行解密,得到第一明文交互数据并发送至明文计算引擎;和/或,依据所述计算任务,确定所述明文计算引擎输出的第二明文交互数据;将第二明文交互数据进行加密,得到第二密文交互数据并发送至密文计算引擎。
可参照图3c,示出了本发明实施例的一种数据处理过程示意图。任务处理平台根据计算逻辑和计算配置解析得到计算图,然后根据计算图确定计算任务。再基于计算任务调度明文计算引擎进行明文计算和密文计算引擎进行密文计算,以及密文计算引擎和明文计算引擎之间的数据交互,进而得到计算结果。
步骤318、根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
综上,本发明实施例中,若所述计算配置中包含一个数据提供方ID,则根据所述数据提供方ID识别出目标数据提供方,以及识别出计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎;若所述计算配置中包含多个数据提供方ID,则根据所述数据提供方ID识别出多个目标数据提供方,并且若依据所述计算逻辑确定所述计算任务涉及的运算是针对单个目标数据提供方数据的,则识别出所述计算任务所需的计算引擎为明文计算引擎,否则识别出所述计算任务所需的计算引擎为密文计算引擎。进而本发明实施例通过根据各计算任务所涉及的数据提供方数量,来确定各计算任务所需的计算引擎是明文计算引擎还是密文计算引擎,能够提高确定计算任务所需的计算引擎是何种计算引擎的效率;从而进一步提高计算效率。
本发明的一个可选实施例中,可以在解析计算请求对应的计算任务时,解析计算任务是明文计算任务,还是密文计算任务;进而可以根据计算任务的类型,确定计算任务所需的计算引擎。可以如下:
参照图4,示出了本发明的另一种数据处理方法可选实施例的步骤流程图。
步骤402、任务处理平台接收任务请求方发送的计算请求。
步骤404、依据所述计算请求,确定计算逻辑和计算配置。
步骤402-步骤402,与上述步骤302-步骤304类似,在此不再赘述。
步骤406、依据所述计算逻辑和计算配置识别计算任务。
本发明的一个示例中,一种依据所述计算逻辑和计算配置识别计算任务的方式,可以参照如下子步骤S4062-子步骤S4064:
子步骤S4062、基于所述计算逻辑和计算配置进行解析,生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应。
子步骤S4064、依据计算图,生成计算任务。
本发明实施例中,所述计算逻辑中每组计算的输入参数具有预设标识,所述预设标识包括明文标识或密文标识,在子步骤S4062之后,所述的方法还包括:
依据所述每组计算的输入参数的明文标识,为所述计算图中对应的节点添加明文标识,以及依据所述每组计算的输入参数的密文标识,为所述计算图中对应的节点添加密文标识。
所述子步骤S4064,可以包括:
依据所述计算图节点的预设标识和与节点关联的边,确定计算任务,所述计算任务包括:明文计算任务和/或密文计算任务。
其中,可以依据具有明文标识的节点和与具有明文标识的节点关联的边,生成明文计算任务;依据具有密文标识的节点和与具有密文标识的节点关联的边,生成密文计算任务。
步骤408、识别计算任务涉及的目标数据提供方。
步骤408与上述步骤308类似,在此不再赘述。
步骤410、识别计算任务所需的计算引擎。
本发明实施例中,可以根据计算任务的类似,确定计算任务所需的计算引擎;可以参照步骤4102~步骤S106:
步骤4102、若所述计算任务包括明文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎;
步骤4104、若所述计算任务包括密文计算任务,则识别出计算任务所需的计算引擎为密文计算引擎;
步骤4106、若所述计算任务包括明文计算任务和密文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎和密文计算引擎。
然后可以按照步骤412-步骤416,依据计算请求对应各计算任务所需的计算引擎,将计算任务发送给对应所需的计算引擎进行计算。
步骤412、当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算。
步骤414、当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算。
步骤416、当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互。
步骤412-步骤416,与上述步骤312-步骤316类似,在此不再赘述。
步骤418、根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
综上,本发明实施例中,在生成计算图后,可以依据所述每组计算的输入参数的明文标识,为所述计算图中对应的节点添加明文标识,以及依据所述每组计算的输入参数的密文标识,为所述计算图中对应的节点添加密文标识;然后依据所述计算图节点的预设标识和与节点关联的边,确定计算任务,所述计算任务包括:明文计算任务和/或密文计算任务;进而若所述计算任务包括明文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎;若所述计算任务包括密文计算任务,则识别出计算任务所需的计算引擎为密文计算引擎;若所述计算任务包括明文计算任务和密文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎和密文计算引擎;实现根据计算任务的类型,识别计算任务所需的计算引擎。当计算任务所涉及的数据提供方较多,或计算任务较多时,相对于上述根据计算任务所涉及的数据提供方的数量识别计算任务所需的计算引擎而言,本发明实施例能够在生成计算图确定输入参数的同时,基于输入参数的标识对计算图中节点进行标识;无需每次都查询计算任务所涉及的数据提供方,识别计算引擎的效率更高。
本发明的一个实施例中,目标数据提供方可以基于秘密分享协议,将密文计算引擎执行对应计算任务所需的计算数据分片编码后发送至密文计算引擎。一种密文计算引擎进行密文计算的方式可以是:密文计算引擎在密文基础上基于秘密分享协议,对目标数据提供方上传的计算数据进行计算。其中,若密文计算引擎和明文计算引擎需要进行数据交换,则目标数据提供方可以基于秘密分享协议将本地明文计算引擎输出的明文数据进行分片编码,得到密文数据;并将密文数据发送至密文计算引擎,由密文计算引擎基于该密文数据进行密文计算。
本发明的一个实施例中,可以基于同态加密协议,由各目标数据提供方协同生成公钥和私钥,由密文计算平台持有公钥,每个目标数据提供方持有私钥的一部分。各目标数据提供方将密文计算引擎执行对应计算任务所需的计算数据基于所持有的公钥加密,然后将加密后的计算上传至密文计算引擎。一种密文计算引擎进行密文计算的方式可以是:在密文的基础上基于同态加密协议,对目标数据提供方上传的计算数据进行计算。其中,若密文计算引擎和明文计算引擎需要进行数据交换,则目标数据提供方可以基于所持有的公钥对本地明文计算引擎输出的明文数据进行加密,得到密文数据;并将密文数据发送至密文计算引擎,由密文计算引擎基于该密文数据进行密文计算。
以下对任务处理平台将计算任务发送给密文计算引擎进行计算的过程进行说明。
参照图5,示出了本发明的一种基于多方安全计算协议进行密文计算方法实施例的步骤流程图。可以包括如下步骤:
步骤502、任务处理平台确定计算任务和对应的计算数据。
步骤504、基于多方安全计算协议生成所述计算任务对应的多方计算指令,将所述多方计算指令和计算数据发送至任务处理平台中的密文计算引擎。
本发明的一个可选实施例中,任务处理平台可以确定需要发送给密文计算引擎的计算任务和该计算任务所需的计算数据;然后调用任务处理平台中的密文计算引擎对所述计算任务对应的计算数据进行处理。
其中,任务处理平台可以按照预先构建的对应各计算任务的多方安全计算协议,预先将计算任务转换成所述多方计算指令;然后将多方计算指令和对应的计算数据发送至密文计算引擎。
其中,所述多方安全计算协议为指示并调度密文计算引擎中各计算节点执行对应计算任务的多方计算的过程,其包括但不限于:描述加法、减法、乘法或除法等数学计算的计算任务的多方计算执行过程,描述逻辑和、或、非、异或、比较等逻辑计算的计算任务的多方计算执行过程,描述秘密传输的多方计算执行过程等。其中,所述多方计算指令包括:为采用多方计算的方式执行计算任务而指示密文计算引擎中各计算节点进行本地计算的指令,计算节点之间执行数据交互的指令,获取计算数据的指令,生成随机数的指令等。所述多方计算指令还可以包含指示计算节点执行本地计算和数据交互的计算角色的指令。所述多方计算指令可以由计算机程序语言来描述,或者由机器语言来描述。
然后密文计算引擎可以基于所述多方计算指令对对应的计算数据进行处理。
步骤506、密文计算引擎获取多方计算指令和计算数据。
其中,所述密文计算引擎可以包括多个计算节点,通过多个计算节点的协同计算来实现对计算任务对应计算数据的处理;密文计算引擎包含的计算节点的数量可以按照需求设置如4个,本发明实施例对此不作限制。
在一些示例中,密文计算引擎的各计算节点可以获取计算任务的完整的多方计算指令,即获取包含有每个计算节点执行的计算指令。为此,为使每个计算节点协同执行,所述步骤包括:各计算节点获取所述多方计算指令及计算角色;以供各计算节点按照所分别获取的计算角色执行所述多方计算指令。其中,所述计算角色用于标记所述多方计算指令中各执行本地计算的计算节点,以及标记所述多方计算指令中执行计算节点之间的交互时数据发送方和数据接收方等。
在又一些示例中,密文计算引擎的各计算节点分别获取所述多方计算指令中对应本地执行的计算指令。其中,所述本地执行的计算指令包含用于执行本地计算的指令,为执行数据交互而发出本地存储的数据的指令,为执行数据交互而将所接收的数据存储本地的指令,获取经处理的输入数据的指令,生成随机数的指令等。例如,所述多方计算指令包含计算节点S1执行生成随机数r12的指令P1,计算节点Sa执行生成随机数rab的指令Pa等,则计算节点S1获取指令P1,计算节点Sa获取指令Pa。
为执行计算任务,所述密文计算引擎中各计算节点还获取对应的计算数据。所述计算数据可以包括目标数据提供方上传的数据;其中,所述目标数据提供方上传的数据可以由目标数据提供方基于密文计算引擎执行多方计算所需的随机分散处理方式对训练数据进行随机分散处理得到的。本发明的一个可选实施例中,所述随机分散处理方式可以包括:随机产生至少一个私密数据,按照所产生的私密数据将输入数据进行分散处理。一种示例中,所述随机分散处理方式包括:随机产生两个私密数据x1和x'1,基于所述私密数据x1和x'1将输入数据X分散成{x1,x'1,x2,x'2,xa,x'a,xb,x'b};其中,x2=X-x1=xa,x1=xb,x'2=X-x'1=x'b,x'1=x'a。所述计算数据还可以包括任务处理平台中数据,任务处理平台中的数据可以是密文,也可以是明文,本发明实施例对此不作限制。其中,任务处理平台中的密文数据,可以由密文计算引擎基于密文计算引擎执行多方计算所需的随机分散处理方式对训练数据进行随机分散处理得到的。其中,目标数据提供方随机分散处理的方式和任务处理平台随机分散处理的方式可以一致。
其中,当所述计算数据为密文时,每个节点获取的计算数据为计算数据的至少一个密文分片,计算数据的所有的密文分片可以组成计算数据的明文。例如上述示例中数据X的密文为{x1,x'1,x2,x'2,xa,x'a,xb,x'b};若计算节点为4个,每个计算节点获取的计算数据的密文分片可以为{x1,x'1},{x2,x'2},{xa,x'a}和{xb,x'b}。当所述计算数据为明文时,每个节点获取的计算数据可以为计算数据的本身。当计算数据包括明文和密文,计算节点获取的计算数据可以为明文和密文的至少一个密文分片。例如,所述计算数据包括A1和A2,其中,A1为密文,被随机分散为{a1,a2},,A2为明文部分。计算节点1获取的计算数据可以为a1和A2,计算节点2获取的计算数据可以为a2和A2。
步骤508、按照所述多方计算指令,所述密文计算引擎中至少部分计算节点分别对各自所获取的计算数据进行本地计算,和/或将本地计算所产生的中间数据进行交互,得到经由各计算节点分别持有的计算结果。
其中,根据计算任务,所述多方计算指令可指示部分计算节点仅执行本地计算,并得到计算结果。在一些示例中,所述多方计算指令包含基于计算任务中具有同态性的计算而生成的指令;按照所述多方计算指令,所述密文计算引擎中的计算节点执行本地计算并得到相应的计算结果。其中,所述同态性表示可具有一个封闭的具有结合律的运算,例如,加法计算等。在利用所述密文计算引擎执行加法计算时,多方计算指令可指示两个计算节点执行计算数据A1和A2的加法计算,并得到各自持有的计算结果。任务处理平台可通过获取该两个计算节点的计算结果得到A1+A2的处理结果。
在又一些示例中,多方计算指令包含指令计算节点分别对各自所获取的计算数据组进行本地计算的指令,以及将本地计算所产生的中间数据进行交互的指令。在一些具体示例中,多方计算指令可对应计算任务中所涉及的每个计算。在又一些具体示例中,所述多方计算指令包含基于计算任务中多个计算之间的关联关系而设置的指令。其中,所述多个计算之间的关联关系包括但不限于:计算优先级关系、计算同态性、计算可同步性、计算所需的计算数据的随机分散处理方式等。根据所述关联关系,所述任务处理平台或密文计算引擎优化了各计算节点的本地计算和数据交互,由此各计算节点按照优化后的多方计算指令执行本地计算的指令,以及计算节点执行数据交互的指令。例如,计算任务中包含(X+Y)×Z,多方计算指令包含:指示两个计算节点执行本地计算得到对应(X+Y)多方计算的指令,指示该两个计算节点将各自持有的对应(X+Y)多方计算的计算结果作为中间数据,并进行随机分散处理的指令,指示多个计算节点执行对应(X+Y)×Z多方计算的指令等。
步骤510、任务处理平台依据各计算节点分别持有的计算结果,确定所述计算任务对应的处理结果。
在密文计算引擎得到对应计算任务的计算结果后,任务处理平台可以从所述多个计算节点中选取部分计算节点所持有的计算结果用于生成一处理结果;其中,所述处理结果为所述计算任务对计算数据进行处理的处理结果。
进而任务处理平台可以参照步骤502-步骤510,将计算任务发送给密文计算引擎进行计算。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
本发明实施例还提供了一种数据处理装置,应用于任务处理系统,所述任务处理系统包括任务处理平台、任务请求方、数据提供方和结果需求方;所述任务处理平台中部署有密文计算引擎,所述数据提供方中部署有明文计算引擎,所述的装置部署在所述任务处理平台侧。
参照图6,示出了本发明一种数据处理装置实施例的结构框图,具体可以包括如下模块:
接收模块602,用于接收任务请求方发送的计算请求;
解析识别模块604,用于解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;所述目标数据提供方包括至少一个;
第一计算任务发送模块606,用于当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;
第二计算任务发送模块608,用于当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;
第三计算任务发送模块610,用于当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;
返回模块612,用于根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
参照图7,示出了本发明一种数据处理装置可选实施例的结构框图。
本发明一个可选实施例中,所述解析识别模块604,包括:
确定子模块6042,用于依据所述计算请求,确定计算逻辑和计算配置;
识别子模块6044,用于依据所述计算逻辑和计算配置识别计算任务和识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎。
本发明一个可选实施例中,所述确定子模块6042,包括:
计算图生成单元60422,用于基于所述计算逻辑和计算配置进行解析,生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应;
计算任务生成单元60424,用于依据计算图,生成计算任务。
本发明一个可选实施例中,所述计算配置中包含所述计算任务涉及的数据提供方ID,所述识别子模块6044,包括:
第一计算引擎识别单元60442,用于若所述计算配置中包含一个数据提供方ID,则根据所述数据提供方ID识别出目标数据提供方,以及识别出计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎;
第二计算引擎识别单元60444,用于若所述计算配置中包含多个数据提供方ID,则根据所述数据提供方ID识别出多个目标数据提供方,并根据计算逻辑识别计算任务所需的计算引擎。
本发明一个可选实施例中,
所述第二计算引擎识别单元60444,用于若依据所述计算逻辑确定所述计算任务涉及的运算是针对单个目标数据提供方数据的,则识别出所述计算任务所需的计算引擎为明文计算引擎,否则识别出所述计算任务所需的计算引擎为密文计算引擎。
本发明一个可选实施例中,所述计算逻辑中每组计算的输入参数具有预设标识,所述预设标识包括明文标识或密文标识;
所述的装置还包括:
标识添加模块614,用于依据所述每组计算的输入参数的明文标识,为所述计算图中对应的节点添加明文标识,以及依据所述每组计算的输入参数的密文标识,为所述计算图中对应的节点添加密文标识;
所述计算图生成单元60422,用于依据所述计算图节点的预设标识和与节点关联的边,确定计算任务,所述计算任务包括:明文计算任务和/或密文计算任务;
所述识别子模块6044,包括:
第三计算引擎识别单元60446,若所述计算任务包括明文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎;若所述计算任务包括密文计算任务,则识别出计算任务所需的计算引擎为密文计算引擎;若所述计算任务包括明文计算任务和密文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎和密文计算引擎。
综上,本发明实施例中,任务处理平台接收任务请求方发送的计算请求后,可以解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。本发明实施例通过在进行密文计算之前,判断计算任务是否可以采用明文计算引擎进行计算;当计算任务可以采用明文计算引擎进行计算时,将对应的计算任务发送给明文引擎进行计算;相对于现有技术仅采用密文计算引擎计算所有计算任务而言,本发明实施例能够在保证数据安全的提前下,提高计算效率。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种可读介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如本发明实施例中一个或多个所述的数据处理方法。
本发明实施例还提供了一种电子设备,包括:一个或多个处理器;和其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如上述本发明实施例中一个或多个所述的数据处理方法。
本发明实施例一个示例中提供了一种电子设备,例如服务器,图8示出了可以实现根据本发明的服务器,例如管理服务器、存储服务器、应用服务器、云控服务、服务器集群等。该服务器传统上包括处理器810和以存储器820形式的计算机程序产品或者计算机可读介质。存储器820可以是诸如闪存、EEPROM(电可擦除可编程只读存储器)、EPROM、硬盘或者ROM之类的电子存储器。存储器820具有用于执行上述方法中的任何方法步骤的程序代码831的存储空间830。例如,用于程序代码的存储空间830可以包括分别用于实现上面的方法中的各种步骤的各个程序代码831。这些程序代码可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(CD)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为便携式或者固定存储单元。该存储单元可以具有与图8的服务器中的存储器820类似布置的存储段、存储空间等。程序代码可以例如以适当形式进行压缩。通常,存储单元包括计算机可读代码,即可以由例如诸如810之类的处理器读取的代码,这些代码当由服务器运行时,导致该服务器执行上面所描述的方法中的各个步骤。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种数据处理方法、一种数据处理装置和一种电子设备,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (14)
1.一种数据处理方法,其特征在于,应用于任务处理系统,所述任务处理系统包括任务处理平台、任务请求方、数据提供方和结果需求方;所述任务处理平台中部署有密文计算引擎,所述数据提供方中部署有明文计算引擎,所述的方法包括:
任务处理平台接收任务请求方发送的计算请求;
解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;所述目标数据提供方包括至少一个;
当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;
当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;
当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;
根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
2.根据权利要求1所述的方法,其特征在于,所述解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎,包括:
依据所述计算请求,确定计算逻辑和计算配置;
依据所述计算逻辑和计算配置识别计算任务和识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎。
3.根据权利要求2所述的方法,其特征在于,所述依据所述计算逻辑和计算配置识别计算任务,包括:
基于所述计算逻辑和计算配置进行解析,生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应;
依据计算图,生成计算任务。
4.根据权利要求2所述的方法,其特征在于,所述计算配置中包含所述计算任务涉及的数据提供方ID,所述识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎,包括:
若所述计算配置中包含一个数据提供方ID,则根据所述数据提供方ID识别出目标数据提供方,以及识别出计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎;
若所述计算配置中包含多个数据提供方ID,则根据所述数据提供方ID识别出多个目标数据提供方,并根据计算逻辑识别计算任务所需的计算引擎。
5.根据权利要求4所述的方法,其特征在于,所述根据计算逻辑识别计算任务所需的计算引擎,包括:
若依据所述计算逻辑确定所述计算任务涉及的运算是针对单个目标数据提供方数据的,则识别出所述计算任务所需的计算引擎为明文计算引擎,否则识别出所述计算任务所需的计算引擎为密文计算引擎。
6.根据权利要求3所述的方法,其特征在于,所述计算逻辑中每组计算的输入参数具有预设标识,所述预设标识包括明文标识或密文标识;
所述的方法还包括:
依据所述每组计算的输入参数的明文标识,为所述计算图中对应的节点添加明文标识,以及依据所述每组计算的输入参数的密文标识,为所述计算图中对应的节点添加密文标识;
所述依据计算图,生成计算任务,包括:
依据所述计算图节点的预设标识和与节点关联的边,确定计算任务,所述计算任务包括:明文计算任务和/或密文计算任务;
所述识别计算任务所需的计算引擎,包括:
若所述计算任务包括明文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎;
若所述计算任务包括密文计算任务,则识别出计算任务所需的计算引擎为密文计算引擎;
若所述计算任务包括明文计算任务和密文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎和密文计算引擎。
7.一种数据处理装置,其特征在于,应用于任务处理系统,所述任务处理系统包括任务处理平台、任务请求方、数据提供方和结果需求方;所述任务处理平台中部署有密文计算引擎,所述数据提供方中部署有明文计算引擎,所述的装置部署在所述任务处理平台侧,包括:
接收模块,用于接收任务请求方发送的计算请求;
解析识别模块,用于解析计算请求对应的计算任务,识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎;所述目标数据提供方包括至少一个;
第一计算任务发送模块,用于当计算任务所需的计算引擎为密文计算引擎时,将计算任务发送给密文计算引擎进行计算;
第二计算任务发送模块,用于当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎时,将计算任务发送给部署在目标数据提供方中的明文计算引擎进行计算;
第三计算任务发送模块,用于当计算任务所需的计算引擎为部署在目标数据提供方中的明文计算引擎和密文计算引擎时,将计算任务发送给明文计算引擎和密文计算引擎进行计算及数据交互;
返回模块,用于根据计算任务所需的计算引擎对应的计算结果,确定所述计算请求对应的计算结果并返回给结果需求方。
8.根据权利要求7所述的装置,其特征在于,所述解析识别模块,包括:
确定子模块,用于依据所述计算请求,确定计算逻辑和计算配置;
识别子模块,用于依据所述计算逻辑和计算配置识别计算任务和识别计算任务涉及的目标数据提供方,以及识别计算任务所需的计算引擎。
9.根据权利要求8所述的装置,其特征在于,所述确定子模块,包括:
计算图生成单元,用于基于所述计算逻辑和计算配置进行解析,生成包括节点和连接节点的边的计算图,所述节点与所述计算逻辑中变量对应,所述边与所述计算逻辑中操作对应;
计算任务生成单元,用于依据计算图,生成计算任务。
10.根据权利要求8所述的装置,其特征在于,所述计算配置中包含所述计算任务涉及的数据提供方ID,所述识别子模块,包括:
第一计算引擎识别单元,用于若所述计算配置中包含一个数据提供方ID,则根据所述数据提供方ID识别出目标数据提供方,以及识别出计算任务所需的计算引擎是所述目标数据提供方本地的明文计算引擎;
第二计算引擎识别单元,用于若所述计算配置中包含多个数据提供方ID,则根据所述数据提供方ID识别出多个目标数据提供方,并根据计算逻辑识别计算任务所需的计算引擎。
11.根据权利要求10所述的装置,其特征在于,
所述第二计算引擎识别单元,用于若依据所述计算逻辑确定所述计算任务涉及的运算是针对单个目标数据提供方数据的,则识别出所述计算任务所需的计算引擎为明文计算引擎,否则识别出所述计算任务所需的计算引擎为密文计算引擎。
12.根据权利要求9所述的装置,其特征在于,所述计算逻辑中每组计算的输入参数具有预设标识,所述预设标识包括明文标识或密文标识;
所述的装置还包括:
标识添加模块,用于依据所述每组计算的输入参数的明文标识,为所述计算图中对应的节点添加明文标识,以及依据所述每组计算的输入参数的密文标识,为所述计算图中对应的节点添加密文标识;
所述计算图生成单元,用于依据所述计算图节点的预设标识和与节点关联的边,确定计算任务,所述计算任务包括:明文计算任务和/或密文计算任务;
所述识别子模块,包括:
第三计算引擎识别单元,若所述计算任务包括明文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎;若所述计算任务包括密文计算任务,则识别出计算任务所需的计算引擎为密文计算引擎;若所述计算任务包括明文计算任务和密文计算任务,则识别出计算任务所需的计算引擎为明文计算引擎和密文计算引擎。
13.一种电子设备,其特征在于,包括:
一个或多个处理器;和
其上存储有指令的一个或多个可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1-6中任一所述的数据处理方法。
14.一种可读存储介质,其特征在于,当所述存储介质中的指令由用于验证的装置的处理器执行时,使得用于验证的装置能够执行如方法权利要求1-6任一所述的数据处理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010955866.3A CN112182644B (zh) | 2020-09-11 | 2020-09-11 | 一种数据处理方法、装置和电子设备 |
US17/444,574 US20220083374A1 (en) | 2020-09-11 | 2021-08-06 | Method for processing data, task processing system and electronic equipment |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010955866.3A CN112182644B (zh) | 2020-09-11 | 2020-09-11 | 一种数据处理方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112182644A CN112182644A (zh) | 2021-01-05 |
CN112182644B true CN112182644B (zh) | 2023-05-12 |
Family
ID=73921866
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010955866.3A Active CN112182644B (zh) | 2020-09-11 | 2020-09-11 | 一种数据处理方法、装置和电子设备 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20220083374A1 (zh) |
CN (1) | CN112182644B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113206830B (zh) * | 2021-03-30 | 2022-07-08 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和电子设备 |
CN113139205B (zh) * | 2021-04-06 | 2022-02-01 | 华控清交信息科技(北京)有限公司 | 一种安全计算方法、通用计算引擎、用于安全计算的装置和安全计算系统 |
CN113568927B (zh) * | 2021-06-24 | 2024-03-29 | 华控清交信息科技(北京)有限公司 | 数据处理系统、方法、数据库引擎及用于数据处理的装置 |
CN113486332B (zh) * | 2021-07-22 | 2024-09-10 | 华控清交信息科技(北京)有限公司 | 一种计算节点、隐私计算系统及算法引擎的加载方法 |
CN113449325B (zh) * | 2021-08-30 | 2021-11-23 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN113489752B (zh) * | 2021-09-07 | 2021-11-19 | 华控清交信息科技(北京)有限公司 | 明密文混合计算方法、装置、电子设备及存储介质 |
CN113517977B (zh) * | 2021-09-09 | 2021-11-30 | 华控清交信息科技(北京)有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN113505395B (zh) * | 2021-09-09 | 2022-02-25 | 华控清交信息科技(北京)有限公司 | 一种隐私计算方法和隐私计算系统 |
CN113541923B (zh) * | 2021-09-09 | 2021-12-10 | 华控清交信息科技(北京)有限公司 | 一种多方安全计算的计算任务调整方法、装置及电子设备 |
CN114866422A (zh) * | 2022-05-12 | 2022-08-05 | 上海阵方科技有限公司 | 安全data sharing的安全多方计算系统和方法 |
CN115361229A (zh) * | 2022-10-17 | 2022-11-18 | 太极计算机股份有限公司 | 一种政府公共数据的安全分享方法以及系统 |
CN115580414B (zh) * | 2022-12-08 | 2023-05-30 | 太极计算机股份有限公司 | 基于隐私计算的数据开放系统及方法 |
CN115829561B (zh) * | 2022-12-23 | 2023-12-19 | 星环信息科技(上海)股份有限公司 | 数据产品的交易方法、系统、计算节点和存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109388960A (zh) * | 2018-10-24 | 2019-02-26 | 全链通有限公司 | 基于区块链的信息共享及安全多方计算模型 |
CN110213036A (zh) * | 2019-06-17 | 2019-09-06 | 西安电子科技大学 | 基于物联网雾计算-边缘计算的安全数据存储和计算方法 |
CN110298190A (zh) * | 2019-04-19 | 2019-10-01 | 矩阵元技术(深圳)有限公司 | 去中心化多方安全数据处理方法、装置及存储介质 |
CN110716802A (zh) * | 2019-10-11 | 2020-01-21 | 恩亿科(北京)数据科技有限公司 | 一种跨集群的任务调度系统及方法 |
WO2020034755A1 (zh) * | 2018-08-14 | 2020-02-20 | 阿里巴巴集团控股有限公司 | 多方安全计算方法及装置、电子设备 |
CN111178549A (zh) * | 2020-04-10 | 2020-05-19 | 支付宝(杭州)信息技术有限公司 | 保护数据隐私的双方联合训练业务预测模型的方法和装置 |
CN111414381A (zh) * | 2020-03-04 | 2020-07-14 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、电子设备及存储介质 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2415888C (en) * | 2000-08-04 | 2008-10-21 | Avaya Technology Corporation | Intelligent demand driven recognition of url objects in connection oriented transactions |
US20080178010A1 (en) * | 2007-01-18 | 2008-07-24 | Vaterlaus Robert K | Cryptographic web service |
CN102624931B (zh) * | 2012-04-21 | 2015-02-25 | 华为技术有限公司 | Web客户端与服务器交互的方法、装置及系统 |
US9369274B2 (en) * | 2012-07-06 | 2016-06-14 | International Business Machines Corporation | Cipher text translation |
CN104580086A (zh) * | 2013-10-17 | 2015-04-29 | 腾讯科技(深圳)有限公司 | 信息传输方法、客户端、服务器及系统 |
US9461815B2 (en) * | 2013-10-18 | 2016-10-04 | Advanced Micro Devices, Inc. | Virtualized AES computational engine |
CN105635039B (zh) * | 2014-10-27 | 2019-01-04 | 阿里巴巴集团控股有限公司 | 一种网络安全通信方法及通信装置 |
US10530720B2 (en) * | 2015-08-27 | 2020-01-07 | Mcafee, Llc | Contextual privacy engine for notifications |
CN110290094B (zh) * | 2018-03-19 | 2022-03-11 | 华为技术有限公司 | 一种数据访问权限的控制方法和装置 |
US10831550B2 (en) * | 2018-03-27 | 2020-11-10 | Oracle Financial Services Software Limited | Computerized control of execution pipelines |
US10846413B2 (en) * | 2019-04-18 | 2020-11-24 | Advanced New Technologies Co., Ltd. | Data processing method and device |
JP2022021379A (ja) * | 2020-07-22 | 2022-02-03 | 株式会社リコー | 情報機器、方法およびプログラム |
US11645399B1 (en) * | 2021-01-11 | 2023-05-09 | American Express Travel Related Services Company, Inc. | Searching encrypted data |
-
2020
- 2020-09-11 CN CN202010955866.3A patent/CN112182644B/zh active Active
-
2021
- 2021-08-06 US US17/444,574 patent/US20220083374A1/en not_active Abandoned
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020034755A1 (zh) * | 2018-08-14 | 2020-02-20 | 阿里巴巴集团控股有限公司 | 多方安全计算方法及装置、电子设备 |
CN109388960A (zh) * | 2018-10-24 | 2019-02-26 | 全链通有限公司 | 基于区块链的信息共享及安全多方计算模型 |
CN110298190A (zh) * | 2019-04-19 | 2019-10-01 | 矩阵元技术(深圳)有限公司 | 去中心化多方安全数据处理方法、装置及存储介质 |
CN110213036A (zh) * | 2019-06-17 | 2019-09-06 | 西安电子科技大学 | 基于物联网雾计算-边缘计算的安全数据存储和计算方法 |
CN110716802A (zh) * | 2019-10-11 | 2020-01-21 | 恩亿科(北京)数据科技有限公司 | 一种跨集群的任务调度系统及方法 |
CN111414381A (zh) * | 2020-03-04 | 2020-07-14 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、电子设备及存储介质 |
CN111178549A (zh) * | 2020-04-10 | 2020-05-19 | 支付宝(杭州)信息技术有限公司 | 保护数据隐私的双方联合训练业务预测模型的方法和装置 |
Non-Patent Citations (1)
Title |
---|
Secure Multi-Party Computating:Theory,practice and applications;Chuan Zhao;Information Science;357-372 * |
Also Published As
Publication number | Publication date |
---|---|
CN112182644A (zh) | 2021-01-05 |
US20220083374A1 (en) | 2022-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112182644B (zh) | 一种数据处理方法、装置和电子设备 | |
CN102170440B (zh) | 适用于存储云间数据安全迁移的方法 | |
EP3780483A1 (en) | Cryptographic operation method, method for creating work key, and cryptographic service platform and device | |
CN112631605A (zh) | 联邦学习模型的代码编译方法、装置、设备及存储介质 | |
US8875227B2 (en) | Privacy aware authenticated map-reduce | |
CN111753324B (zh) | 私有数据的处理方法、计算方法及所适用的设备 | |
CN112668748B (zh) | 一种预测方法、装置和电子设备 | |
CN114218322B (zh) | 基于密文传输的数据展示方法、装置、设备及介质 | |
CN110910110B (zh) | 一种数据处理方法、装置及计算机存储介质 | |
CN115001869B (zh) | 一种加密传输方法及系统 | |
CN115459928A (zh) | 数据共享方法、装置、设备及介质 | |
CN115002141B (zh) | 基于区块链的文件存储方法及装置 | |
CN111291420B (zh) | 一种基于区块链的分布式离链数据存储方法 | |
CN107465717B (zh) | 一种密码按需服务的方法、装置与设备 | |
CN110737905A (zh) | 数据授权方法、数据授权装置及计算机存储介质 | |
CN114372291A (zh) | 隐私联合推理方法、装置、设备及存储介质 | |
CN116506227B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
CN111010283B (zh) | 用于生成信息的方法和装置 | |
CN112668038A (zh) | 一种模型训练方法、装置和电子设备 | |
CN112668016A (zh) | 一种模型训练方法、装置和电子设备 | |
CN114760602B (zh) | 全息通信方法、装置、系统及计算机可读存储介质 | |
CN117896069A (zh) | 基于隐私计算的隐私数据使用方法和装置 | |
CN112668037B (zh) | 一种模型训练方法、装置和电子设备 | |
CN115085983A (zh) | 数据处理方法、装置、计算机可读存储介质和电子设备 | |
CN113051587A (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 |