CN113591113B - 一种隐私计算方法、装置、系统及电子设备 - Google Patents
一种隐私计算方法、装置、系统及电子设备 Download PDFInfo
- Publication number
- CN113591113B CN113591113B CN202110863682.9A CN202110863682A CN113591113B CN 113591113 B CN113591113 B CN 113591113B CN 202110863682 A CN202110863682 A CN 202110863682A CN 113591113 B CN113591113 B CN 113591113B
- Authority
- CN
- China
- Prior art keywords
- ciphertext
- protocol information
- protocol
- scheme
- difference item
- 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
- 238000004364 calculation method Methods 0.000 title claims abstract description 168
- 239000003999 initiator Substances 0.000 claims abstract description 91
- 230000004044 response Effects 0.000 claims abstract description 77
- 238000000034 method Methods 0.000 claims abstract description 37
- 238000005259 measurement Methods 0.000 claims description 67
- 238000012360 testing method Methods 0.000 claims description 37
- 238000004590 computer program Methods 0.000 claims description 14
- 238000003860 storage Methods 0.000 claims description 12
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 238000005516 engineering process Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000007477 logistic regression Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010422 painting Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
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/602—Providing cryptographic facilities or services
-
- 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
-
- 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/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/0838—Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- Bioethics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mobile Radio Communication Systems (AREA)
- Communication Control (AREA)
Abstract
本申请公开了一种一种隐私计算方案确定方法、装置、系统及电子设备,包括:按照与响应方设备共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务;基于能够实现该多个隐私计算子任务的各种底层密码协议,确定用于实现该隐私计算任务的第一隐私计算方案;对第一隐私计算方案包含的多个第一协议信息进行加密;向响应方设备发送方案协商请求;接收响应方设备发送的方案协商响应。采用本申请方案,发起方设备和响应方设备通过各自隐私计算方案的密文协议信息的比对,实现各自方案中所采用的底层密码协议的比对,并对是否采用比对结果中的差异项进行协商,进而实现通过互联互通确定双方将共同所采用的隐私计算方案。
Description
技术领域
本申请涉及隐私计算技术领域,尤其涉及一种隐私计算方法、装置、系统及电子设备。
背景技术
随着隐私计算技术的发展,异构隐私计算系统的互联互通成为重要的问题。不同的数据方可能选择不同厂家开发的隐私计算系统,这些系统可能采用不同的底层密码协议和算法实现方案,从而在采用不同的隐私计算系统的数据方之间产生了新的数据孤岛。
因此,需要设计一种可以互联互通的隐私计算系统,可以在实际应用中打破数据孤岛,促进隐私计算技术的发展和数据更好地进行安全流动。
互联互通的难题除了在于实现方案的不同外,不同厂家对于所开发的隐私计算系统,为了提升隐私计算系统的性能,投入大量的人力研究了各自的优化方案,彼此间不希望将具体的优化方案互相提供给对方。
发明内容
本申请实施例提供一种隐私计算方法、装置、系统及电子设备,用以解决现有技术中存在的不同设备之间无法通过互联互通实现隐私计算方案确定的问题。
本申请实施例提供一种隐私计算方法,应用于发起方设备,包括:
按照与响应方设备共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务;
基于能够实现所述多个隐私计算子任务的各种底层密码协议,确定用于实现所述隐私计算任务的第一隐私计算方案,所述第一隐私计算方案包含多个第一协议信息,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
对所述第一隐私计算方案包含的所述多个第一协议信息进行加密,得到多个第一密文协议信息;
向响应方设备发送方案协商请求,所述方案协商请求中携带所述多个第一密文协议信息,使得所述响应方设备比对出所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,并基于是否采用所述各第一差异项的判断结果生成方案协商响应,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
接收所述响应方设备发送的所述方案协商响应。
进一步的,所述接收所述响应方设备发送的所述方案协商响应,包括:
接收所述响应方设备发送的表示协商未成功的所述方案协商响应,所述方案协商响应为所述响应方设备确定存在不采用的第一差异项时发送的,所述方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项;
所述方法,还包括:
确定是否采用所述各第二差异项;
如果均采用所述各第二差异项,向所述响应方设备发送方案协商成功消息;
如果存在不采用的第二差异项,向所述响应方设备发送差异项实测请求,所述差异项实测请求表示所述发起方设备与所述响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果;
基于所述实际测试结果,确定双方将要采用的底层密码协议。
进一步的,所述确定是否采用所述各第二差异项,包括:
基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第二差异项表示的底层密码协议的实现复杂度,是否大于对应的第一密文协议信息表示的底层密码协议的实现复杂度;
如果存在实现复杂度大于的第二差异项,则确定不采用该第二差异项。
进一步的,所述实际测试结果为实测复杂度;
所述基于所述实际测试结果,确定双方将要采用的底层密码协议,包括:
基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
进一步的,所述第一协议信息和所述第二协议信息均包含一级编码和二级编码;
所述一级编码为对底层密码协议的协议名称的编码,所述二级编码为对底层密码协议的类别名称的编码;
所述第一密文协议信息和所述第二密文协议信息均包含一级密文编码和二级密文编码;
使得所述响应方设备基于所述第一密文协议信息和所述第二密文协议信息中包含的所述一级密文编码和所述二级密文编码,比对出所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项。
本申请实施例还提供一种隐私计算方法,应用于响应方设备,包括:
接收发起方设备发送的方案协商请求,所述方案协商请求中携带多个第一密文协议信息,所述多个第一密文协议信息为对第一隐私计算方案包含的多个第一协议信息进行加密得到的,所述第一隐私计算方案为基于能够实现多个隐私计算子任务的各种底层密码协议,所确定用于实现隐私计算任务的方案,所述隐私计算任务包括所述多个隐私计算子任务,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
将所述多个第一密文协议信息与多个第二密文协议信息进行比对,得到所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
确定是否采用所述各第一差异项,得到判断结果;
基于所述判断结果生成方案协商响应;
向所述发起方设备发送所述方案协商响应。
进一步的,所述确定是否采用所述各第一差异项,包括:
基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度;
如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项。
进一步的,所述基于所述判断结果生成方案协商响应,包括:
当所述判断结果为均采用所述各第一差异项时,生成表示协商成功的方案协商响应;
当所述判断结果为存在不采用的第一差异项时,生成表示协商未成功的方案协商响应,该方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项。
进一步的,在向所述发起方设备发送表示协商未成功的所述方案协商响应后,还包括:
接收所述发起方设备发送的协商成功消息,所述协商成功消息为所述发起方设备确定均采用所述各第二差异项时发送的;或者
接收所述发起方设备发送的差异项实测请求,所述差异项实测请求为所述发起方设备确定存在不采用的第二差异项时发送的,所述差异项实测请求表示所述发起方设备与所述响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果;
基于所述实际测试结果,确定双方将要采用的底层密码协议。
进一步的,所述实际测试结果为实测复杂度;
所述基于所述实际测试结果,确定双方将要采用的底层密码协议,包括:
基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
进一步的,所述第一协议信息和所述第二协议信息均包含一级编码和二级编码;
所述一级编码为对底层密码协议的协议名称的编码,所述二级编码为对底层密码协议的类别名称的编码;
所述第一密文协议信息和所述第二密文协议信息均包含一级密文编码和二级密文编码;
所述将所述多个第一密文协议信息与多个第二密文协议信息进行比对,得到所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,包括:
将所述多个第一密文协议信息中的一级密文编码与多个第二密文协议信息中的一级密文编码进行比对,得到相同一级密文编码和不同一级密文编码;
针对每个相同一级密文编码,将分别属于第一密文协议信息和第二密文协议信息,且与该相同一级密文编码对应的两个二级密文编码进行比对,得到具有该相同一级密文编码的各第一密文协议信息与第二密文协议信息相比的各差异项,作为各第一差异项;
针对每个不同一级密文编码,将具有该不同一级密文编码的各第一密文协议信息,确定为各第一差异项。
本申请实施例还提供一种隐私计算方案确定装置,应用于发起方设备,包括:
任务拆分模块,用于按照与响应方设备共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务;
方案创建模块,用于基于能够实现所述多个隐私计算子任务的各种底层密码协议,确定用于实现所述隐私计算任务的第一隐私计算方案,所述第一隐私计算方案包含多个第一协议信息,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
第一加密模块,用于对所述第一隐私计算方案包含的所述多个第一协议信息进行加密,得到多个第一密文协议信息;
第一发送模块,用于向响应方设备发送方案协商请求,所述方案协商请求中携带所述多个第一密文协议信息,使得所述响应方设备比对出所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,并基于是否采用所述各第一差异项的判断结果生成方案协商响应,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
第一接收模块,用于接收所述响应方设备发送的所述方案协商响应。
进一步的,所述第一接收模块,具体用于接收所述响应方设备发送的表示协商未成功的所述方案协商响应,所述方案协商响应为所述响应方设备确定存在不采用的第一差异项时发送的,所述方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项;
该装置,还包括:
第一判断模块,用于确定是否采用所述各第二差异项;
所述第一发送模块,还用于如果均采用所述各第二差异项,向所述响应方设备发送方案协商成功消息;以及如果存在不采用的第二差异项,向所述响应方设备发送差异项实测请求,所述差异项实测请求表示所述发起方设备与所述响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果;
第一实测模块,用于基于所述实际测试结果,确定双方将要采用的底层密码协议。
进一步的,所述第一判断模块,具体用于基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第二差异项表示的底层密码协议的实现复杂度,是否大于对应的第一密文协议信息表示的底层密码协议的实现复杂度;以及如果存在实现复杂度大于的第二差异项,则确定不采用该第二差异项。
进一步的,所述实际测试结果为实测复杂度;
所述第一实测模块,具体用于基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
进一步的,所述第一协议信息和所述第二协议信息均包含一级编码和二级编码;
所述一级编码为对底层密码协议的协议名称的编码,所述二级编码为对底层密码协议的类别名称的编码;
所述第一密文协议信息和所述第二密文协议信息均包含一级密文编码和二级密文编码;
使得所述响应方设备基于所述第一密文协议信息和所述第二密文协议信息中包含的所述一级密文编码和所述二级密文编码,比对出所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项。
本申请实施例还提供一种隐私计算方案确定装置,应用于响应方设备,包括:
第二接收模块,用于接收发起方设备发送的方案协商请求,所述方案协商请求中携带多个第一密文协议信息,所述多个第一密文协议信息为对第一隐私计算方案包含的多个第一协议信息进行加密得到的,所述第一隐私计算方案为基于能够实现多个隐私计算子任务的各种底层密码协议,所确定用于实现隐私计算任务的方案,所述隐私计算任务包括所述多个隐私计算子任务,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
比对模块,用于将所述多个第一密文协议信息与多个第二密文协议信息进行比对,得到所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
第二判断模块,用于确定是否采用所述各第一差异项,得到判断结果;
响应生成模块,用于基于所述判断结果生成方案协商响应;
第二发送模块,用于向所述发起方设备发送所述方案协商响应。
进一步的,所述第二判断模块,具体用于基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度;以及如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项。
进一步的,所述响应生成模块,具体用于当所述判断结果为均采用所述各第一差异项时,生成表示协商成功的方案协商响应;当所述判断结果为存在不采用的第一差异项时,生成表示协商未成功的方案协商响应,该方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项。
进一步的,所述第二接收模块,还用于在所述第二发送模块向所述发起方设备发送表示协商未成功的所述方案协商响应后,接收所述发起方设备发送的协商成功消息,所述协商成功消息为所述发起方设备确定均采用所述各第二差异项时发送的;或者,接收所述发起方设备发送的差异项实测请求,所述差异项实测请求为所述发起方设备确定存在不采用的第二差异项时发送的,所述差异项实测请求表示所述发起方设备与所述响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果;
该装置,还包括:
第二实测模块,用于基于所述实际测试结果,确定双方将要采用的底层密码协议。
进一步的,所述实际测试结果为实测复杂度;
所述第二实测模块,具体用于基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
进一步的,所述第一协议信息和所述第二协议信息均包含一级编码和二级编码;
所述一级编码为对底层密码协议的协议名称的编码,所述二级编码为对底层密码协议的类别名称的编码;
所述第一密文协议信息和所述第二密文协议信息均包含一级密文编码和二级密文编码;
所述比对模块,具体用于将所述多个第一密文协议信息中的一级密文编码与多个第二密文协议信息中的一级密文编码进行比对,得到相同一级密文编码和不同一级密文编码;以及针对每个相同一级密文编码,将分别属于第一密文协议信息和第二密文协议信息,且与该相同一级密文编码对应的两个二级密文编码进行比对,得到具有该相同一级密文编码的各第一密文协议信息与第二密文协议信息相比的各差异项,作为各第一差异项;以及针对每个不同一级密文编码,将具有该不同一级密文编码的各第一密文协议信息,确定为各第一差异项。
本申请实施例还提供一种隐私计算系统,包括:
上述任一发起方设备,以及上述任一响应方设备。
本申请实施例还提供一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述任一应用于发起方设备的隐私计算方法,或者,实现上述任一应用于响应方设备的隐私计算方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一应用于发起方设备的隐私计算方法,或者,实现上述任一应用于响应方设备的隐私计算方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一应用于发起方设备的隐私计算方法,或者,执行上述任一应用于响应方设备的隐私计算方法。
本申请有益效果包括:
本申请实施例提供的方法中,发起方设备和响应方设备各自基于各种底层密码协议,分别生成用于实现隐私计算任务的第一隐私计算方案和第二隐私计算方案,且第一隐私计算方案包含多个第一协议信息,第二隐私计算方案包含多个第二协议信息,各自方案所包含的协议信息均表示实现隐私计算子任务的底层密码协议,双方通过各自方案的密文协议信息的比对,从而实现各自方案中所采用用于实现每个隐私计算子任务的底层密码协议的比对,并对是否采用比对结果中的差异项进行协商,进而实现通过互联互通确定双方将共同所采用的隐私计算方案。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中:
图1为本申请实施例提供的应用于发起方设备的隐私计算方法的流程图;
图2为本申请实施例提供的应用于响应方设备的隐私计算方法的流程图;
图3为本申请实施例提供的隐私计算方法的流程图;
图4-1为本申请实施例提供的应用于发起方设备的隐私计算装置的结构示意图;
图4-2为本申请另一实施例提供的应用于发起方设备的隐私计算装置的结构示意图;
图5-1为本申请实施例提供的应用于响应方设备的隐私计算装置的结构示意图;
图5-2为本申请另一实施例提供的应用于响应方设备的隐私计算装置的结构示意图;
图6为本申请实施例提供的隐私计算系统的结构示意图;
图7为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为了给出不同设备之间通过互联互通确定隐私计算方案的实现方案,本申请实施例提供了一种隐私计算方案确定方法、装置、系统及电子设备,以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本申请实施例提供一种隐私计算方法,应用于发起方设备,如图1所示,包括:
步骤11、按照与响应方设备共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务。
步骤12、基于能够实现该多个隐私计算子任务的各种底层密码协议,确定用于实现该隐私计算任务的第一隐私计算方案,第一隐私计算方案包含多个第一协议信息,该多个第一协议信息分别对应表示实现该多个隐私计算子任务的底层密码协议。
步骤13、对第一隐私计算方案包含的多个第一协议信息进行加密,得到多个第一密文协议信息。
步骤14、向响应方设备发送方案协商请求,方案协商请求中携带该多个第一密文协议信息,使得响应方设备比对出多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,并基于是否采用各第一差异项的判断结果生成方案协商响应,其中,该多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,该多个第二协议信息分别对应表示实现该多个隐私计算子任务的底层密码协议。
步骤15、接收响应方设备发送的方案协商响应。
相应的,本申请实施例还提供一种隐私计算方法,应用于响应方设备,如图2所示,包括:
步骤21、接收发起方设备发送的方案协商请求,方案协商请求中携带多个第一密文协议信息,该多个第一密文协议信息为对第一隐私计算方案包含的多个第一协议信息进行加密得到的,第一隐私计算方案为基于能够实现多个隐私计算子任务的各种底层密码协议,所确定用于实现隐私计算任务的方案,该隐私计算任务包括该多个隐私计算子任务,该多个第一协议信息分别对应表示实现该多个隐私计算子任务的底层密码协议。
步骤22、将该多个第一密文协议信息与多个第二密文协议信息进行比对,得到该多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,其中,该多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,该多个第二协议信息分别对应表示实现该多个隐私计算子任务的底层密码协议。
步骤23、确定是否采用各第一差异项,得到判断结果。
步骤24、基于判断结果生成方案协商响应。
步骤25、向发起方设备发送方案协商响应。
采用本申请实施例提供的上述隐私计算方法,发起方设备和响应方设备各自基于各种底层密码协议,分别生成用于实现隐私计算任务的第一隐私计算方案和第二隐私计算方案,且第一隐私计算方案包含多个第一协议信息,第二隐私计算方案包含多个第二协议信息,各自方案所包含的协议信息均表示实现隐私计算子任务的底层密码协议,双方通过各自方案的密文协议信息的比对,从而实现各自方案中所采用用于实现每个隐私计算子任务的底层密码协议的比对,并对是否采用比对结果中的差异项进行协商,进而实现通过互联互通确定双方将共同所采用的隐私计算方案。
本申请实施例中,隐私计算任务可以是用于进行机器学习、SQL(StructuredQuery Language,结构化查询语言)查询等上层计算的任务,这类上层计算任务可以被拆分成多个隐私计算子任务。
各种底层密码协议,用于实现基本计算功能(如加法、乘法、比较等)的密码协议,如各类多方安全计算协议等(PrivPy、SPDZ、Yao’s GC、BMR、sharemind)。不同的多方安全计算协议具备不同的特点,适合计算不同的隐私计算子任务。
隐私计算方案,也可以称作算法实现方案,即基于底层密码协议所提供的基本计算功能,实现机器学习、SQL查询等上层计算任务的实现方案。
下面结合附图,用具体实施例对本申请提供的方法及装置和相应系统进行详细描述。
本申请实施例提供了一种隐私计算方法,如图3所示,包括:
步骤301、发起方设备和响应方设备,基于双方通过信息交互共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务。
隐私计算任务可以用于完成上层计算的任务,例如,可以是神经网络、逻辑回归、XGB(extreme gradient boost,极值梯度提升)等。
相应的,将隐私计算任务所拆分成的多个隐私计算子任务,可以包括:输入层、线性组合、激活函数、输出层等。
步骤302、发起方设备和响应方设备,均基于能够实现该多个隐私计算子任务的各种底层密码协议,确定各自用于实现隐私计算任务的隐私计算方案,隐私计算方案包括多个协议信息,该多个协议信息分别对应表示实现该多个隐私计算子任务的底层密码协议,多个协议信息与多个隐私计算子任务是一一对应的。
其中,为描述方便,发起方设备确定的隐私计算方案称作第一隐私计算方案,第一隐私计算方案包括的协议信息称作第一协议信息,响应方设备确定的隐私计算方案称作第二隐私计算方案,第二隐私计算方案包括的协议信息称作第二协议信息。
针对每种隐私计算子任务,可以采用多种底层密码协议实现该隐私计算子任务,发起方设备和响应方设备,在创建各自的隐私计算方案时,各自从该多种底层密码协议中选择一种底层密码协议,用于实现该隐私计算子任务。
并且,生成表示该底层密码协议的协议信息,作为隐私计算方案的一部分。
进一步的,本申请实施例所生成的表示底层密码协议的协议信息,可以包含一级编码和二级编码,即第一协议信息和第二协议信息均包含一级编码和二级编码,其中,一级编码为对底层密码协议的协议名称的编码,二级编码为对该底层密码协议的类别名称的编码。
本申请实施例中,所生成的协议信息,可以如下表所示:
其中,GC(Garbled Circuits,混淆电路)、SS(Secret-Sharing,秘密分享)、HE(Homomorphic Encryption,同态加密),为底层密码协议的类别,底层密码协议Yao’s GC和BMR属于类别GC,底层密码协议SPDZ和PrivPy属于类别SS,底层密码协议Paillier和BGV属于类别HE。
从上述表中可见,一级编码为对类别名称的编码,二级编码为对协议名称的编码,两者共同组成协议信息。
通过编码,可以减少后续协议信息比对时所需要比对的比特数,进一步的,当进行了一级编码和二级编码后,也可以先通过比对一级编码再比对二级编码,以便进一步的减少比对次数,节省比较时间,提高比对效率。
步骤303、发起方设备和响应方设备,均对各自隐私计算方案包含的多个协议信息进行加密,得到多个密文协议信息。
也就是说,发起方设备对第一隐私计算方案包含的多个第一协议信息进行加密,得到多个第一密文协议信息,响应方设备对第二隐私计算方案包含的多个第二协议信息进行加密,得到多个第二密文协议信息。
当协议信息包含一级编码和二级编码时,密文协议信息即包含一级密文编码和二级密文编码,即第一密文协议信息和第二密文协议信息均包含一级密文编码和二级密文编码。
本申请实施例中,可以采用已知可行的各种加密算法对协议信息进行加密,在此不再举例进行详细描述。
步骤304、发起方设备向响应方设备发送方案协商请求,其中,方案协商请求中携带该多个第一密文协议信息。
步骤305、响应方设备在接收到方案协商请求后,从中获取携带的多个第一密文协议信息,并将多个第一密文协议信息中的一级密文编码与多个第二密文协议信息中的一级密文编码进行比对,得到相同一级密文编码和不同一级密文编码。
步骤306、响应方设备基于比对出的相同一级密文编码和不同一级密文编码,将多个第一密文协议信息与多个第二密文协议信息进行比对,得到多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项。
具体的,针对每个相同一级密文编码,将分别属于第一密文协议信息和第二密文协议信息,且与该相同一级密文编码对应的两个二级密文编码进行比对,得到具有该相同一级密文编码的各第一密文协议信息与第二密文协议信息相比的各差异项,作为各第一差异项。
针对每个不同一级密文编码,将具有该不同一级密文编码的各第一密文协议信息,确定为各第一差异项。
将上述确定的所有各第一差异项,确定为多个第一密文协议信息中与多个第二密文协议信息相比的各差异项。
本申请实施例中,在进行编码比对时,可以采用密文求和的方式,即两个二进制的编码进行求和,结果为零则表示相同,结果不为零,则表示不相同。
先进行表示类别名称的一级密文编码的比对,再进行表示协议名称的二级密文编码的比对,可以减少比对的次数,从而减少比对所花费的时间,提高比对效率。
本申请实施例中,通过本步骤中的比对,如果确定出第一差异项,则执行步骤307,如果未确定出第一差异项,则执行步骤308。
步骤307、确定是否采用各第一差异项,得到判断结果,当判断结果为均采用各第一差异项时,执行步骤308,当判断结果为存在不采用的第一差异项时,执行步骤309。
本申请实施例中,响应方设备可以基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度。
如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项,如果存在实现复杂度不大于的第一差异项,则确定采用该第一差异项。
本申请实施例中,基于上述关于是否采用每个第一差异项的判断,所得到的判断结果可能是均采用各第一差异项,也可能是存在不采用的第一差异项。
本申请实施例中,响应方设备本地存储有密码协议特征库,其中,存储了各种底层密码协议的实现复杂度,例如,通信复杂度,计算复杂度等。
在进行实现复杂度比对时,相对应的第一差异项与第二密文协议信息所表示的底层密码协议,均用于实现同一个隐私计算子任务。
步骤308、响应方设备向发起方设备发送表示协商成功的方案协商响应。
如果是从上述步骤306进入本步骤308,即当未确定出第一差异项时,表示多个第一密文协议信息与多个第二密文协议信息相同,即发起方设备所提供的第一隐私计算方案与响应方设备所提供的第二隐私计算方案相同,此时,响应方设备向发起方设备发送表示协商成功的方案协商响应,协商所确定的方案为相同的第一隐私计算方案和第二隐私计算方案。
如果是从上述步骤307进入本步骤308,即当判断结果为均采用各第一差异项时,表示响应方设备接受各第一差异项表示的底层密码协议,即响应方设备接受发起方设备所提供的第一隐私计算方案,则向发起方设备发送表示协商成功的方案协商响应,此时,协商所确定的方案为第一隐私计算方案。
步骤309、当判断结果为存在不采用的第一差异项时,表示响应方设备不接受所不采用的第一差异项,则向发起方设备发送表示协商未成功的方案协商响应,并且,该协商未成功的方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项。
步骤310、发起方设备在接收到表示协商未成功的方案协商响应后,确定是否采用方案协商响应中携带的各第二差异项,如果均采用各第二差异项,执行步骤311,如果存在不采用的第二差异项,执行步骤312。
本申请实施例中,发起方设备可以基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定各第二差异项表示的底层密码协议的实现复杂度,是否大于对应的第一密文协议信息表示的底层密码协议的实现复杂度。
如果存在实现复杂度大于的第二差异项,则确定不采用该第二差异项,如果存在实现复杂度不大于的第二差异项,则确定采用该第二差异项。
本申请实施例中,发起方设备本地存储有密码协议特征库,其中,存储了各种底层密码协议的实现复杂度,例如,通信复杂度,计算复杂度等。
在进行实现复杂度比对时,相对应的第二差异项与第一密文协议信息所表示的底层密码协议,均用于实现同一个隐私计算子任务。
步骤311、响应方设备向发起方设备发送表示协商成功的方案协商成功消息。
此时,所协商成功的方案包括:相同的第一密文协议信息和第二密文协议信息所表示的底层密码协议,以及响应方设备采用的各第一差异项所表示的底层密码协议,以及各第二差异项所表示的底层密码协议。
步骤312、发起方设备向响应方设备发送差异项实测请求,所述差异项实测请求中携带发起方设备不采用的各第二差异项。
步骤313、发起方设备与响应方设备之间,针对发起方设备所不采用的各第二差异项进行实际测试,得到实际测试结果。
本申请实施例中,实际测试结果可以为实测复杂度。
步骤314、基于实际测试结果,确定双方将要采用的底层密码协议。
本申请实施例中,发起方设备和响应方设备,针对发起方设备不采用的每个第二差异项,可以基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
在实测过程中,发起方设备和响应方设备均可以将实际测试得到的实测复杂度记录在记录模块中,记录模块可以使用区块链等可信数据记录技术,以提高数据记录的准确性和可信度。
在确定双方将要采用的底层密码协议之后,即确定了双方所协商成功的隐私计算方案,包括:相同的第一密文协议信息和第二密文协议信息所表示的底层密码协议,以及响应方设备采用的各第一差异项所表示的底层密码协议,以及发起方设备采用的各第二差异项所表示的底层密码协议,以及双方针对发起方设备不采用的第二差异项进行实测后所采用的底层密码协议。
本申请实施例中,双方创建的隐私计算方案所包含的协议信息,是以密文形式在参与方之间进行保存和使用,使用中可依据不经意随机访问机(Oblivious Random AccessMachine,ORAM)等技术,在保证协议信息密文的情况下进行底层密码协议的选择。不经意随机访问机(ORAM)可以采用任意一种方案,不做限定。
采用本申请实施例提供的上述隐私计算方法,发起方设备与响应方设备,通过各自隐私计算方案的密文协议信息的比对,从而实现各自方案中所采用用于实现每个隐私计算子任务的底层密码协议的比对,并对是否采用比对结果中的差异项进行协商,进而实现通过互联互通确定双方将共同所采用的隐私计算方案。
并且,生成协议信息时,协议信息包括底层密码协议的类别名称的一级编码,一级底层密码协议的协议名称的二级编码,相应的,在密文协议信息比对时,先进行一级密文编码的比对,再进行二级密文编码的比对,一级密文编码不同时不再需要进行二级密文编码的比对,从而减少了比对次数,节省了比对时间,提高了比对效率。
基于同一发明构思,根据本申请上述实施例提供的上述应用于发起方设备的隐私计算方法,相应地,本申请另一实施例还提供了一种隐私计算方案确定装置,应用于发起方设备,其结构示意图如图4-1所示,具体包括:
任务拆分模块41,用于按照与响应方设备共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务;
方案创建模块42,用于基于能够实现多个隐私计算子任务的各种底层密码协议,确定用于实现隐私计算任务的第一隐私计算方案,第一隐私计算方案包含多个第一协议信息,多个第一协议信息分别对应表示实现多个隐私计算子任务的底层密码协议;
第一加密模块43,用于对第一隐私计算方案包含的多个第一协议信息进行加密,得到多个第一密文协议信息;
第一发送模块44,用于向响应方设备发送方案协商请求,方案协商请求中携带多个第一密文协议信息,使得响应方设备比对出多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,并基于是否采用各第一差异项的判断结果生成方案协商响应,其中,多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,多个第二协议信息分别对应表示实现多个隐私计算子任务的底层密码协议;
第一接收模块45,用于接收响应方设备发送的方案协商响应。
进一步的,第一接收模块45,具体用于接收响应方设备发送的表示协商未成功的方案协商响应,方案协商响应为响应方设备确定存在不采用的第一差异项时发送的,方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项;
该装置,如图4-2所示,还包括:
第一判断模块46,用于确定是否采用各第二差异项;
第一发送模块44,还用于如果均采用各第二差异项,向响应方设备发送方案协商成功消息;以及如果存在不采用的第二差异项,向响应方设备发送差异项实测请求,差异项实测请求表示发起方设备与响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果;
第一实测模块47,用于基于实际测试结果,确定双方将要采用的底层密码协议。
进一步的,第一判断模块46,具体用于基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定各第二差异项表示的底层密码协议的实现复杂度,是否大于对应的第一密文协议信息表示的底层密码协议的实现复杂度;以及如果存在实现复杂度大于的第二差异项,则确定不采用该第二差异项。
进一步的,实际测试结果为实测复杂度;
第一实测模块47,具体用于基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
进一步的,第一协议信息和第二协议信息均包含一级编码和二级编码;
一级编码为对底层密码协议的协议名称的编码,二级编码为对底层密码协议的类别名称的编码;
第一密文协议信息和第二密文协议信息均包含一级密文编码和二级密文编码;
使得响应方设备基于第一密文协议信息和第二密文协议信息中包含的一级密文编码和二级密文编码,比对出多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项。
基于同一发明构思,根据本申请上述实施例提供的上述应用于响应方设备的隐私计算方法,相应地,本申请另一实施例还提供了一种隐私计算方案确定装置,应用于响应方设备,其结构示意图如图5-1所示,具体包括:
第二接收模块51,用于接收发起方设备发送的方案协商请求,方案协商请求中携带多个第一密文协议信息,多个第一密文协议信息为对第一隐私计算方案包含的多个第一协议信息进行加密得到的,第一隐私计算方案为基于能够实现多个隐私计算子任务的各种底层密码协议,所确定用于实现隐私计算任务的方案,隐私计算任务包括多个隐私计算子任务,多个第一协议信息分别对应表示实现多个隐私计算子任务的底层密码协议;
比对模块52,用于将多个第一密文协议信息与多个第二密文协议信息进行比对,得到多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,其中,多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,多个第二协议信息分别对应表示实现多个隐私计算子任务的底层密码协议;
第二判断模块53,用于确定是否采用各第一差异项,得到判断结果;
响应生成模块54,用于基于判断结果生成方案协商响应;
第二发送模块55,用于向发起方设备发送方案协商响应。
进一步的,第二判断模块53,具体用于基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度;以及如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项。
进一步的,响应生成模块54,具体用于当判断结果为均采用各第一差异项时,生成表示协商成功的方案协商响应;当判断结果为存在不采用的第一差异项时,生成表示协商未成功的方案协商响应,该方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项。
进一步的,第二接收模块51,还用于在第二发送模块向发起方设备发送表示协商未成功的方案协商响应后,接收发起方设备发送的协商成功消息,协商成功消息为发起方设备确定均采用各第二差异项时发送的;或者,接收发起方设备发送的差异项实测请求,差异项实测请求为发起方设备确定存在不采用的第二差异项时发送的,差异项实测请求表示发起方设备与响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果;
该装置,如图5-2所示,还包括:
第二实测模块56,用于基于实际测试结果,确定双方将要采用的底层密码协议。
进一步的,实际测试结果为实测复杂度;
第二实测模块56,具体用于基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
进一步的,第一协议信息和第二协议信息均包含一级编码和二级编码;
一级编码为对底层密码协议的协议名称的编码,二级编码为对底层密码协议的类别名称的编码;
第一密文协议信息和第二密文协议信息均包含一级密文编码和二级密文编码;
比对模块52,具体用于将多个第一密文协议信息中的一级密文编码与多个第二密文协议信息中的一级密文编码进行比对,得到相同一级密文编码和不同一级密文编码;以及针对每个相同一级密文编码,将分别属于第一密文协议信息和第二密文协议信息,且与该相同一级密文编码对应的两个二级密文编码进行比对,得到具有该相同一级密文编码的各第一密文协议信息与第二密文协议信息相比的各差异项,作为各第一差异项;以及针对每个不同一级密文编码,将具有该不同一级密文编码的各第一密文协议信息,确定为各第一差异项。
上述各模块的功能可对应于图1-图3所示流程中的相应处理步骤,在此不再赘述。
本申请的实施例所提供的应用于发起方设备的隐私计算装置,以及应用于响应方设备的隐私计算装置可通过计算机程序实现。本领域技术人员应该能够理解,上述的模块划分方式仅是众多模块划分方式中的一种,如果划分为其他模块或不划分模块,只要墙体彩绘打印装置具有上述功能,都应该在本申请的保护范围之内。
本申请实施例还提供了一种隐私计算系统,如图6所示,包括:
上述任一发起方设备61,以及上述任一响应方设备62。
发起方设备61和响应方设备62的功能可对应于图1-图3所示流程中的相应处理步骤,在此不再赘述。
本申请实施例还提供一种电子设备如图7所示,包括处理器71和机器可读存储介质62,机器可读存储介质62存储有能够被处理器61执行的机器可执行指令,处理器61被机器可执行指令促使:实现上述任一应用于发起方设备的隐私计算方法,或者,实现上述任一应用于响应方设备的隐私计算方法。
本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质内存储有计算机程序,计算机程序被处理器执行时实现上述任一应用于发起方设备的隐私计算方法,或者,实现上述任一应用于响应方设备的隐私计算方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一应用于发起方设备的隐私计算方法,或者,执行上述任一应用于响应方设备的隐私计算方法。
上述电子设备中的机器可读存储介质可以包括随机存取存储器(Random AccessMemory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、系统、计算机可读存储介质,计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种隐私计算方法,其特征在于,应用于发起方设备,包括:
按照与响应方设备共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务;
基于能够实现所述多个隐私计算子任务的各种底层密码协议,确定用于实现所述隐私计算任务的第一隐私计算方案,所述第一隐私计算方案包含多个第一协议信息,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
对所述第一隐私计算方案包含的所述多个第一协议信息进行加密,得到多个第一密文协议信息;
向响应方设备发送方案协商请求,所述方案协商请求中携带所述多个第一密文协议信息,使得所述响应方设备比对出所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,并基于是否采用所述各第一差异项的判断结果生成方案协商响应,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议,以及基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度,如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项;
接收所述响应方设备发送的所述方案协商响应,当所述判断结果为均采用所述各第一差异项时,所述方案协商响应为表示协商成功的方案协商响应,当所述判断结果为存在不采用的第一差异项时,所述方案协商响应为表示协商未成功的方案协商响应。
2.如权利要求1所述的方法,其特征在于,表示协商未成功的所述方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项;
所述方法,还包括:
基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第二差异项表示的底层密码协议的实现复杂度,是否大于对应的第一密文协议信息表示的底层密码协议的实现复杂度;
如果存在实现复杂度大于的第二差异项,则确定不采用该第二差异项;
如果均采用所述各第二差异项,向所述响应方设备发送方案协商成功消息;
如果存在不采用的第二差异项,向所述响应方设备发送差异项实测请求,所述差异项实测请求表示所述发起方设备与所述响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果,所述实际测试结果为实测复杂度;
基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
3.如权利要求1所述的方法,其特征在于,所述第一协议信息和所述第二协议信息均包含一级编码和二级编码;
所述一级编码为对底层密码协议的协议名称的编码,所述二级编码为对底层密码协议的类别名称的编码;
所述第一密文协议信息和所述第二密文协议信息均包含一级密文编码和二级密文编码;
使得所述响应方设备基于所述第一密文协议信息和所述第二密文协议信息中包含的所述一级密文编码和所述二级密文编码,比对出所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项。
4.一种隐私计算方法,其特征在于,应用于响应方设备,包括:
接收发起方设备发送的方案协商请求,所述方案协商请求中携带多个第一密文协议信息,所述多个第一密文协议信息为对第一隐私计算方案包含的多个第一协议信息进行加密得到的,所述第一隐私计算方案为基于能够实现多个隐私计算子任务的各种底层密码协议,所确定用于实现隐私计算任务的方案,所述隐私计算任务包括所述多个隐私计算子任务,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
将所述多个第一密文协议信息与多个第二密文协议信息进行比对,得到所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度;
如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项;
当均采用所述各第一差异项时,生成表示协商成功的方案协商响应;
当存在不采用的第一差异项时,生成表示协商未成功的方案协商响应;
向所述发起方设备发送所述方案协商响应。
5.如权利要求4所述的方法,其特征在于,表示协商未成功的所述方案协商响应中携带不采用的第一差异项对应的第二密文协议信息,作为各第二差异项;
在向所述发起方设备发送表示协商未成功的所述方案协商响应后,还包括:
接收所述发起方设备发送的协商成功消息,所述协商成功消息为所述发起方设备确定均采用所述各第二差异项时发送的;或者
接收所述发起方设备发送的差异项实测请求,所述差异项实测请求为所述发起方设备确定存在不采用的第二差异项时发送的,所述差异项实测请求表示所述发起方设备与所述响应方设备之间,针对该不采用的第二差异项进行实际测试,得到实际测试结果,所述实际测试结果为实测复杂度;
基于该不采用的第二差异项表示的底层密码协议的实测复杂度,以及该不采用的第二差异项对应的第一密文协议信息表示的底层密码协议的实测复杂度,选择实测复杂度低的底层密码协议,作为双方将要采用的底层密码协议。
6.如权利要求4所述的方法,其特征在于,所述第一协议信息和所述第二协议信息均包含一级编码和二级编码;
所述一级编码为对底层密码协议的协议名称的编码,所述二级编码为对底层密码协议的类别名称的编码;
所述第一密文协议信息和所述第二密文协议信息均包含一级密文编码和二级密文编码;
所述将所述多个第一密文协议信息与多个第二密文协议信息进行比对,得到所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,包括:
将所述多个第一密文协议信息中的一级密文编码与多个第二密文协议信息中的一级密文编码进行比对,得到相同一级密文编码和不同一级密文编码;
针对每个相同一级密文编码,将分别属于第一密文协议信息和第二密文协议信息,且与该相同一级密文编码对应的两个二级密文编码进行比对,得到具有该相同一级密文编码的各第一密文协议信息与第二密文协议信息相比的各差异项,作为各第一差异项;
针对每个不同一级密文编码,将具有该不同一级密文编码的各第一密文协议信息,确定为各第一差异项。
7.一种隐私计算方案确定装置,其特征在于,应用于发起方设备,包括:
任务拆分模块,用于按照与响应方设备共同确定的拆分方式,将待执行的隐私计算任务,拆分成多个隐私计算子任务;
方案创建模块,用于基于能够实现所述多个隐私计算子任务的各种底层密码协议,确定用于实现所述隐私计算任务的第一隐私计算方案,所述第一隐私计算方案包含多个第一协议信息,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
第一加密模块,用于对所述第一隐私计算方案包含的所述多个第一协议信息进行加密,得到多个第一密文协议信息;
第一发送模块,用于向响应方设备发送方案协商请求,所述方案协商请求中携带所述多个第一密文协议信息,使得所述响应方设备比对出所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,并基于是否采用所述各第一差异项的判断结果生成方案协商响应,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议,以及基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度,如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项;
第一接收模块,用于接收所述响应方设备发送的所述方案协商响应,当所述判断结果为均采用所述各第一差异项时,所述方案协商响应为表示协商成功的方案协商响应,当所述判断结果为存在不采用的第一差异项时,所述方案协商响应为表示协商未成功的方案协商响应。
8.一种隐私计算方案确定装置,其特征在于,应用于响应方设备,包括:
第二接收模块,用于接收发起方设备发送的方案协商请求,所述方案协商请求中携带多个第一密文协议信息,所述多个第一密文协议信息为对第一隐私计算方案包含的多个第一协议信息进行加密得到的,所述第一隐私计算方案为基于能够实现多个隐私计算子任务的各种底层密码协议,所确定用于实现隐私计算任务的方案,所述隐私计算任务包括所述多个隐私计算子任务,所述多个第一协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
比对模块,用于将所述多个第一密文协议信息与多个第二密文协议信息进行比对,得到所述多个第一密文协议信息中与多个第二密文协议信息相比的各差异项,作为各第一差异项,其中,所述多个第二密文协议信息为对第二隐私计算方案包含的多个第二协议信息进行加密得到的,所述多个第二协议信息分别对应表示实现所述多个隐私计算子任务的底层密码协议;
第二判断模块,用于基于存储的密码协议特征库中每种底层密码协议的实现复杂度,分别确定所述各第一差异项表示的底层密码协议的实现复杂度,是否大于对应的第二密文协议信息表示的底层密码协议的实现复杂度;如果存在实现复杂度大于的第一差异项,则确定不采用该第一差异项;
响应生成模块,用于当均采用所述各第一差异项时,生成表示协商成功的方案协商响应;当存在不采用的第一差异项时,生成表示协商未成功的方案协商响应;
第二发送模块,用于向所述发起方设备发送所述方案协商响应。
9.一种隐私计算系统,其特征在于,包括:
具有上述权利要求7所述装置的发起方设备,以及具有上述权利要求8所述装置的响应方设备。
10.一种电子设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-3任一所述的方法,或者,实现权利要求4-6任一所述的方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-3任一所述的方法,或者,实现权利要求4-6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110863682.9A CN113591113B (zh) | 2021-07-29 | 2021-07-29 | 一种隐私计算方法、装置、系统及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110863682.9A CN113591113B (zh) | 2021-07-29 | 2021-07-29 | 一种隐私计算方法、装置、系统及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113591113A CN113591113A (zh) | 2021-11-02 |
CN113591113B true CN113591113B (zh) | 2024-04-05 |
Family
ID=78251825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110863682.9A Active CN113591113B (zh) | 2021-07-29 | 2021-07-29 | 一种隐私计算方法、装置、系统及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113591113B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114172958B (zh) * | 2021-11-19 | 2023-10-20 | 云从科技集团股份有限公司 | 隐私计算节点、系统、方法、装置以及存储介质 |
CN114944960B (zh) * | 2022-06-20 | 2023-07-25 | 成都卫士通信息产业股份有限公司 | 一种密码应用方法、装置、设备及存储介质 |
CN115310145A (zh) * | 2022-07-15 | 2022-11-08 | 中国银联股份有限公司 | 一种隐私计算系统、方法、装置、设备及介质 |
CN116055564A (zh) * | 2022-12-28 | 2023-05-02 | 支付宝(杭州)信息技术有限公司 | 跨平台的任务调度方法、计算任务执行方法和装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018076365A1 (zh) * | 2016-10-31 | 2018-05-03 | 美的智慧家居科技有限公司 | 密钥协商方法及装置 |
WO2019006966A1 (zh) * | 2017-07-03 | 2019-01-10 | 深圳大学 | 一种隐私保护空间众包的任务分配系统模型及实现方法 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA2652084C (en) * | 2006-06-09 | 2015-05-12 | Verisign, Inc. | A method and apparatus to provide authentication and privacy with low complexity devices |
EP2778951B1 (en) * | 2011-11-11 | 2017-04-26 | NEC Corporation | Database encryption system, method and program |
US11552805B2 (en) * | 2018-02-05 | 2023-01-10 | Onboard Security, Inc. | Connected vehicle communication with improved misbehavior processing |
US11050762B2 (en) * | 2018-07-06 | 2021-06-29 | Nec Corporation Of America | High throughput secure multi-party computation with identifiable abort |
US11050725B2 (en) * | 2018-07-16 | 2021-06-29 | Sap Se | Private benchmarking cloud service with enhanced statistics |
-
2021
- 2021-07-29 CN CN202110863682.9A patent/CN113591113B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018076365A1 (zh) * | 2016-10-31 | 2018-05-03 | 美的智慧家居科技有限公司 | 密钥协商方法及装置 |
WO2019006966A1 (zh) * | 2017-07-03 | 2019-01-10 | 深圳大学 | 一种隐私保护空间众包的任务分配系统模型及实现方法 |
Non-Patent Citations (2)
Title |
---|
一种改进PSI协议的基因数据隐私保护方案;田美金 等;《西安电子科技大学学报》;20200831;94-101页 * |
隐私计算研究范畴及发展趋势;李凤华 等;《通信学报》;20160430;1-11页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113591113A (zh) | 2021-11-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113591113B (zh) | 一种隐私计算方法、装置、系统及电子设备 | |
US20210279342A1 (en) | Neural-network training using secure data processing | |
Liu et al. | Privacy of outsourced k-means clustering | |
CN110414567B (zh) | 数据处理方法、装置和电子设备 | |
CN111475854B (zh) | 保护两方数据隐私的协同计算方法及系统 | |
Tauman Kalai et al. | Delegation for bounded space | |
Blanton et al. | Secure and efficient outsourcing of sequence comparisons | |
CN111125727B (zh) | 混淆电路生成方法、预测结果确定方法、装置和电子设备 | |
US20180367293A1 (en) | Private set intersection encryption techniques | |
CN110166446B (zh) | 一种基于安全多方计算的地理加权平均中心的实现方法 | |
US8533487B2 (en) | Secure logical vector clocks | |
CN110427969B (zh) | 数据处理方法、装置和电子设备 | |
CN111428887B (zh) | 一种基于多个计算节点的模型训练控制方法、装置及系统 | |
CN112182644A (zh) | 一种数据处理方法、装置和电子设备 | |
Jayapandian et al. | Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption | |
US11409907B2 (en) | Methods and systems for cryptographically secured decentralized testing | |
US10972261B1 (en) | Secure data processing | |
Dwork et al. | Spooky interaction and its discontents: Compilers for succinct two-message argument systems | |
CN116302102A (zh) | 一种同态运算装置和方法 | |
Paul et al. | On the importance of cryptographic agility for industrial automation: Preparing industrial systems for the quantum computing era | |
CN111050326A (zh) | 基于区块链的短信验证方法、装置、设备及介质 | |
US20230208639A1 (en) | Neural network processing method and server and electrical device therefor | |
Tang et al. | Efficient non-interactive verifiable outsourced computation for arbitrary functions | |
CN110569659B (zh) | 数据处理方法、装置和电子设备 | |
CN115037442B (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 |