CN108683669A - 数据验证方法和安全多方计算*** - Google Patents

数据验证方法和安全多方计算*** Download PDF

Info

Publication number
CN108683669A
CN108683669A CN201810483279.1A CN201810483279A CN108683669A CN 108683669 A CN108683669 A CN 108683669A CN 201810483279 A CN201810483279 A CN 201810483279A CN 108683669 A CN108683669 A CN 108683669A
Authority
CN
China
Prior art keywords
data
verify
promise
credential
undertake
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.)
Granted
Application number
CN201810483279.1A
Other languages
English (en)
Other versions
CN108683669B (zh
Inventor
梅彦铮
佘士东
郭成
沈海寅
季申
翟翌华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Turing Singularity Intelligent Technology Co Ltd
Leauto Intelligent Technology Beijing Co Ltd
Original Assignee
Shenzhen Turing Singularity Intelligent Technology Co Ltd
Leauto Intelligent Technology Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Turing Singularity Intelligent Technology Co Ltd, Leauto Intelligent Technology Beijing Co Ltd filed Critical Shenzhen Turing Singularity Intelligent Technology Co Ltd
Priority to CN201810483279.1A priority Critical patent/CN108683669B/zh
Publication of CN108683669A publication Critical patent/CN108683669A/zh
Application granted granted Critical
Publication of CN108683669B publication Critical patent/CN108683669B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

本发明实施例公开了一种数据验证方法和安全多方计算***,其中,方法包括:基于数据运算任务获取待运算数据和运算模型;基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于所述承诺凭证数据验证所述待运算数据的可信性。基于本发明上述实施例保证了数据运算过程中的隐私性,通过证明待运算数据的可信性,解决了在复杂不诚实网络中可靠计算的问题。

Description

数据验证方法和安全多方计算***
技术领域
本发明涉及数据验证技术,尤其是一种数据验证方法和安全多方计算***。
背景技术
可验证计算,主要用于解决分布式多方协同计算环境下,各方分节点及主节点的数据、计算结果的可靠性、可信性问题。主要分为两类技术路线,一类采用硬件方式,通过各类安全协处理器等可验证硬件模块或设备,提供安全存储和运算环境,保证数据存储的隐私性和完整性,以及运算过程的抗干扰、可审计;另一类采用计算复杂性和密码学方式实现对数据可靠性、可信性进行验证。
发明内容
本发明实施例提供的一种数据验证方法和安全多方计算***。
根据本发明实施例的一个方面,提供的一种数据验证方法,包括:
基于数据运算任务获取待运算数据和运算模型;
基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于所述承诺凭证数据验证所述待运算数据的可信性。
可选地,所述基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于所述承诺凭证数据验证所述待运算数据的可信性,包括:
基于所述运算模型将所述待处理数据转换为多项式,基于所述多项式获得可验证等式;
利用盲评价验证方式,基于所述可验证等式获得基于承诺凭证数据构成的可验证表达式,基于所述可验证表达式证明所述待运算数据是否为可信数据。
可选地,所述基于所述运算模型将所述待处理数据转换为多项式,基于所述多项式获得可验证等式,包括:
利用多项式复杂程度的非确定性问题归约技术,基于所述运算模型将所述待处理数据转换为多项式复杂程度的非确定性问题,得到多项式;
利用二次张成程序,将所述多项式转换为可验证等式。
可选地,所述利用盲评价验证方式,基于所述可验证等式获得基于承诺凭证数据构成的可验证表达式,基于所述可验证表达式证明所述待运算数据是否为可信数据,包括:
从综合运算方获取随机数据,对所述随机数据加密获得随机加密结果;
基于所述随机加密结果和所述可验证等式,获得基于承诺凭证数据构成的可验证表达式;
基于所述可验证表达式证明所述待运算数据是否为可信数据。
可选地,所述基于所述随机加密结果和所述可验证等式,获得基于承诺凭证数据构成的可验证表达式,包括:
从所述综合运算方随机获得第一数据和第二数据,基于所述第一数据、所述第二数据、所述随机加密结果和所述可验证等式,获得一对承诺凭证数据;
获取所述一对承诺凭证数据,并基于所述一对承诺凭证数据获得可验证表达式。
可选地,所述一对承诺凭证数据包括第一承诺凭证数据和第二承诺凭证数据;
所述从所述综合运算方随机获得第一数据和第二数据,基于所述第一数据、所述第二数据、所述随机加密结果和所述可验证等式,获得一对承诺凭证数据,包括:
从所述综合运算方随机获取第一数据和第二数据,将所述第一数据输入所述可验证等式并乘以所述随机加密结果,获得第一承诺凭证数据;
将所述第一数据输入所述可验证等式并依次乘以所述第二数据和所述随机加密结果,获得第二承诺凭证数据。
可选地,所述获取所述一对承诺凭证数据,并基于所述一对承诺凭证数据获得可验证表达式,包括:
通过一个等号连接第一承诺凭证数据与第二承诺凭证数据和第二数据,获得所述可验证表达式,所述可验证表达式的等号一边为所述第一承诺凭证数据,所述可验证表达式的等号的另一边为所述第二承诺凭证数据和所述第二数据的乘积。
可选地,所述从综合运算方获取随机数据,包括:
基于比特承诺从综合运算方获取随机数据;
所述综合运算方获取承诺凭证数据,包括:
所述综合运算方基于比特承诺获取承诺凭证数据。
可选地,所述基于所述可验证表达式证明所述待运算数据是否为可信数据,包括:
响应于所述可验证表达式的等号成立,确定所述待运算数据为可信数据;
响应于所述可验证表达式的等号不成立,确定所述待运算数据为不可信数据。
可选地,所述基于数据运算任务获取待运算数据和运算模型,包括:
基于数据运算任务从数据提供方获取所述数据运算任务对应的待运算数据;
基于所述数据运算任务从综合运算方获取所述数据运算任务对应的运算模型。
可选地,所述数据提供方和所述综合运算方分别为区块链网络中的任一节点,所述数据提供方和所述综合运算方不为同一节点。
可选地,所述基于任务从数据提供方获取待运算数据,包括:
所述数据提供方根据所述数据运算任务,基于比特承诺输出待运算数据;
所述基于数据运算任务从综合运算方获取运算模型,包括:
所述综合运算方根据所述数据运算任务,基于比特承诺输出所述数据运算任务对应的运算模型。
可选地,还包括:
所述综合运算方接收所述数据提供方共享的承诺凭证数据后,对所述承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果;
基于所述数据分析和/或智能挖掘的过程生成综合运算凭证,并将所述运算结果和所述综合运算凭证作为所述区块链网络中的一个区块进行保存;
从所述区块链网络获取所述综合运算凭证和所述运算结果,利用盲评价验证方式,确定所述运算结果是否为可信数据。
可选地,所述对所述承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果,包括:
调用相关机器学习和/或人工智能相关模型,对所述承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果。
可选地,所述基于所述数据分析和/或智能挖掘的过程生成综合运算凭证,包括:
基于所述数据分析和/或智能挖掘的过程将所述运算结果转换为结果多项式,基于所述结果多项式获得结果可验证等式;
基于所述结果可验证等式和从所述综合运算方获得的综合随机数据,获得所述综合运算凭证。
可选地,所述基于所述数据分析和/或智能挖掘的过程将所述运算结果转换为结果多项式,基于所述结果多项式获得结果可验证等式,包括:
利用多项式复杂程度的非确定性问题归约技术,基于所述数据分析和/或智能挖掘的过程将所述运算结果转换为多项式复杂程度的非确定性问题,得到结果多项式;
利用二次张成程序,将所述结果多项式转换为结果可验证等式。
可选地,所述基于所述结果可验证等式和从所述综合运算方获得的综合随机数据,获得所述综合运算凭证,包括:
从所述综合运算方获得综合随机数据,对所述综合随机数据加密获得综合随机加密结果;
基于所述综合随机加密结果和所述结果可验证等式,获得所述综合运算凭证。
可选地,所述综合运算凭证包括第一综合运算凭证和第二综合运算凭证;
所述基于所述综合随机加密结果和所述结果可验证等式,获得所述综合运算凭证,包括:
从所述综合运算方随机获取第一综合数据和第二综合数据,将所述第一综合数据输入所述结果可验证等式并乘以所述综合随机加密结果,获得第一综合运算凭证;
将所述第一综合数据输入所述结果可验证等式并依次乘以所述第二综合数据和所述综合随机加密结果,获得第二综合运算凭证。
可选地,所述从所述区块链网络获取所述综合运算凭证和所述运算结果,利用盲评价验证方式,确定所述运算结果是否为可信数据,包括:
从所述区块链网络获取所述综合运算凭证和所述运算结果;
基于所述综合运算凭证获得综合可验证等式,基于所述综合可验证等式证明所述运算结果是否为可信数据。
可选地,所述基于所述综合运算凭证获得综合可验证等式,基于所述综合可验证等式证明所述运算结果是否为可信数据,包括:
通过一个等号连接第一综合承诺凭证与第二综合承诺凭证和第二综合数据,获得所述综合可验证表达式,所述综合可验证表达式的等号一边为所述第一综合承诺凭证,所述综合可验证表达式的等号的另一边为所述第二综合承诺凭证和所述第二综合数据的乘积;
基于所述综合可验证等式是否成立,确定所述运算结果是否为可信数据。
可选地,所述基于所述综合可验证等式是否成立,确定所述运算结果是否为可信数据,包括:
响应于所述综合可验证表达式的等号成立,确定所述运算结果为可信数据;
响应于所述综合可验证表达式的等号不成立,确定所述运算结果为不可信数据。
根据本发明实施例的另一个方面,提供的一种安全多方计算***,包括:
数据提供方,用于存储对应不同数据运算任务的待运算数据;
综合运算方,用于存储对应不同数据运算任务的运算模型,基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于所述承诺凭证数据验证所述待运算数据的可信性。
可选地,所述综合运算方,包括:
数据转换模块,用于基于所述运算模型将所述待处理数据转换为多项式,基于所述多项式获得可验证等式;
盲评价验证模块,用于利用盲评价验证方式,基于所述可验证等式获得基于承诺凭证数据构成的可验证表达式,基于所述可验证表达式证明所述待运算数据是否为可信数据。
可选地,所述数据转换模块,包括:
完全归约模块,用于利用多项式复杂程度的非确定性问题归约技术,基于所述运算模型将所述待处理数据转换为多项式复杂程度的非确定性问题,得到多项式;
二次张成模块,用于利用二次张成程序,将所述多项式转换为可验证等式。
可选地,所述盲评价验证模块,包括:
随机数据获取模块,用于从综合运算方获取随机数据,对所述随机数据加密获得随机加密结果;
表达式获取模块,用于基于所述随机加密结果和所述可验证等式,获得基于承诺凭证数据构成的可验证表达式;
验证模块,用于基于所述可验证表达式证明所述待运算数据是否为可信数据。
可选地,所述表达式获取模块,包括:
承诺凭证数据模块,用于从所述综合运算方随机获得第一数据和第二数据,基于所述第一数据、所述第二数据、所述随机加密结果和所述可验证等式,获得一对承诺凭证数据;
表达式确定模块,用于获取所述一对承诺凭证数据,并基于所述一对承诺凭证数据获得可验证表达式。
可选地,所述随机数据包括第一随机数据和第二随机数据;
所述承诺凭证数据模块,具体用于从所述综合运算方随机获取第一数据和第二数据,将所述第一数据输入所述可验证等式并乘以所述随机加密结果,获得第一承诺凭证数据;将所述第一数据输入所述可验证等式并依次乘以所述第二数据和所述随机加密结果,获得第二承诺凭证数据。
可选地,所述表达式确定模块,具体用于通过一个等号连接第一承诺凭证数据与第二承诺凭证数据和第二数据,获得所述可验证表达式,所述可验证表达式的等号一边为所述第一承诺凭证数据,所述可验证表达式的等号的另一边为所述第二承诺凭证数据和所述第二数据的乘积。
可选地,所述随机数据获取模块,具体用于基于比特承诺从综合运算方获取随机数据;
所述综合运算方,具有用于基于比特承诺获取承诺凭证数据。
可选地,所述验证模块,具体用于响应于所述可验证表达式的等号成立,确定所述待运算数据为可信数据;
响应于所述可验证表达式的等号不成立,确定所述待运算数据为不可信数据。
可选地,所述数据提供方和所述综合运算方分别为区块链网络中的任一节点,所述数据提供方和所述综合运算方不为同一节点。
可选地,所述数据提供方,具体用于根据所述数据运算任务,基于比特承诺输出所述数据运算任务对应的待运算数据;
所述综合运算方,具体用于根据所述数据运算任务,基于比特承诺输出所述数据运算任务对应的运算模型。
可选地,所述综合运算方,还用于接收所述数据提供方共享的承诺凭证数据后,对所述承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果;
所述***还包括:保存单元,用于基于所述数据分析和/或智能挖掘的过程生成综合运算凭证,将所述运算结果和所述综合运算凭证作为所述区块链网络中的一个区块进行保存;
数据验证方,用于从所述区块链网络获取所述综合运算凭证和所述运算结果,利用盲评价验证方式,确定所述运算结果是否为可信数据。
可选地,所述综合运算方,具体用于调用相关机器学习和/或人工智能相关模型,对所述承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果。
可选地,所述保存单元,包括:
结果转换模块,用于基于所述数据分析和/或智能挖掘的过程将所述运算结果转换为结果多项式,基于所述结果多项式获得结果可验证等式;
凭证获得模块,用于基于所述结果可验证等式和从所述综合运算方获得的综合随机数据,获得所述综合运算凭证。
可选地,所述结果转换模块,具体用于利用多项式复杂程度的非确定性问题归约技术,基于所述数据分析和/或智能挖掘的过程将所述运算结果转换为多项式复杂程度的非确定性问题,得到结果多项式;利用二次张成程序,将所述结果多项式转换为结果可验证等式。
可选地,所述凭证获得模块,包括:
加密模块,用于从所述综合运算方获得综合随机数据,对所述综合随机数据加密获得综合随机加密结果;
凭证模块,用于基于所述综合随机加密结果和所述结果可验证等式,获得所述综合运算凭证。
可选地,所述综合运算凭证包括第一综合运算凭证和第二综合运算凭证;
所述凭证模块,具体用于从所述综合运算方随机获取第一综合数据和第二综合数据,将所述第一综合数据输入所述结果可验证等式并乘以所述综合随机加密结果,获得第一综合运算凭证;
将所述第一综合数据输入所述结果可验证等式并依次乘以所述第二综合数据和所述综合随机加密结果,获得第二综合运算凭证。
可选地,所述数据验证方,包括:
凭证获取模块,用于从所述区块链网络获取所述综合运算凭证和所述运算结果;
可信性判断模块,用于基于所述综合运算凭证获得综合可验证等式,基于所述综合可验证等式证明所述运算结果是否为可信数据。
可选地,所述可信性判断模块,具体用于通过一个等号连接第一综合承诺凭证与第二综合承诺凭证和第二综合数据,获得所述综合可验证表达式,所述综合可验证表达式的等号一边为所述第一综合承诺凭证,所述综合可验证表达式的等号的另一边为所述第二综合承诺凭证和所述第二综合数据的乘积;响应于所述综合可验证表达式的等号成立,确定所述运算结果为可信数据;响应于所述综合可验证表达式的等号不成立,确定所述运算结果为不可信数据。
基于本发明上述实施例提供的一种数据验证方法和安全多方计算***,基于数据运算任务获取待运算数据和运算模型,基于所述运算模型对所述待运算数据进行处理,获得运算结果,并基于所述运算结果验证所述待运算数据的可信性,保证了数据运算过程中的隐私性,通过证明待运算数据的可信性,解决了在复杂不诚实网络中可靠计算的问题。
下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本发明的实施例,并且连同描述一起用于解释本发明的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本发明,其中:
图1为本发明数据验证方法一个实施例的流程图。
图2为本发明安全多方计算***一个实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本发明实施例可以应用于计算机***/服务器,其可与众多其它通用或专用计算***环境或配置一起操作。适于与计算机***/服务器一起使用的众所周知的计算***、环境和/或配置的例子包括但不限于:个人计算机***、服务器计算机***、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的***、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机***、大型计算机***和包括上述任何***的分布式云计算技术环境,等等。
计算机***/服务器可以在由计算机***执行的计算机***可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机***/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算***存储介质上。
现有技术中采用计算复杂性和密码学方式实现对数据可靠性、可信性进行验证,例如:采用交互式证明***、PCP定理、二次张成程序、同态MAC/签名等技术。
其中,交互式证明***:交互式证明是发生在证明者和验证者之间的动态,通讯中,通过来回的消息序列交流,证明者(the prover,简称为P)试图使验证者(theverifier,简称为V)相信某个(数学)事实的真相的过程。
PCP定理:PCP定理是PCPs(概率可验证证明***)的重要定理。Arora、Lund、Motwani、Sudan和Szegedy证明验证和逼近问题的硬度(Proof Verification andHardness of Approximation Problems)证明了NP=PCP(O(log(n)),O(1)),也就是只需使用对数长度的随机串(验证者使用,用于PCP验证),并且访问常数位的神谕带就可以验证一个输入。
其中,确定了神谕带以后,对验证者问题的回答都是确定的,而不像在交互证明***中,证明者可以根据以前的回答来调整当前的回答,以达到欺骗验证者的目的。PCP定理从概率的角度重新刻画了NP类。
同态MAC/签名:同态MAC(message authentication code),即全同态加密和消息认证码。
同态MAC应该满足以下两个属性:
(1)同态性。给定两个由信息(message)和其标签(Tag)组成的二元组(m1,T1),(m2,T2),对于任何关于信息的加性带权重融合操作,都能形成与融合信息码匹配的有效标签Tag。
(2)可抵御选择信息攻击。
图1为本发明数据验证方法一个实施例的流程图。如图1所示,该实施例方法包括:
步骤110,基于数据运算任务获取待运算数据和运算模型。
在一个或多个可选的实施例中,包括:基于数据运算任务从数据提供方获取待运算数据;基于数据运算任务从综合运算方获取运算模型。例如:从数据提供方采集获取的大量、各类整车运行数据和驾驶习惯数据,运用数据挖掘相关技术方法(运算模型,对应数据挖掘任务),进行抽取、转换、分析和特殊模型化处理,从中分析提取出规律性、隐含性、关键性信息和知识,为车险定制、车辆驾驶辅助、车辆维修养护、交通事故分析等应用提供智能服务和决策辅助。
在复杂不诚实网络(复杂不诚实网络,是指网络中的各个节点彼此不信任,存在恶意节点可能,且大多情况下没有中心化的授信节点)中,由于公开透明性,不排除存在着各种动机使得数据提供方不如实提供数据、不诚实计算等情况,或者存在恶意第三方对数据提供方进行数据篡改或计算扰乱,或者在数据传输过程遭攻击篡改。
可选地,本实施例为了保证获取的数据的可靠性,数据提供方根据数据运算任务,基于比特承诺输出待运算数据,综合运算方根据数据运算任务,基于比特承诺输出运算模型;基于比特承诺,实现了数据传输的不透明性,保证了数据提供方如实提供数据,并且保证了不会出现第三方对数据进行篡改或计算扰乱、或数据传输过程中遭攻击篡改。
比特承诺包括以下两个阶段:
(1)承诺阶段:承诺方产生两个随机比特串(例如:R1和R2)。承诺方产生消息,该消息由随机比特串和希望承诺的数据(例如:比特b)组成,表示为:(R1,R2,b)。承诺方计算消息的单向函数值(比特承诺可以使用多种密码学方法,例如采用哈希算法计算单向函数值),将结果以及其中一个随机串发送给验证方(例如:H(R1,R2,b),R1)。这个来自承诺方的传送就是承诺证据。
(2)验证阶段:承诺方将原消息发给验证方(例如:(R1,R2,b))。验证方计算消息的单向函数值,并将该值及R1与原先收到的值及随机串比较。如匹配,则比特承诺有效。
可选地,数据提供方和综合运算方分别为区块链网络中的任一节点,并且数据提供方和综合运算方不是同一节点。
区块链网络是去中心化的,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
本实施例通过专有的区块链网络实现各方(数据提供方、综合运算方)数据的共享和存储。该区块链网络是一种分布式基础架构体系,利用区块链式数据结构来存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的。该区块链网络可实现全网共享验证、抗篡改抵赖、承诺及兑现。
步骤120,基于运算模型对待运算数据进行处理,获得承诺凭证数据,并基于承诺凭证数据验证待运算数据的可信性。
基于本发明上述实施例提供的一种数据验证方法,基于数据运算任务获取待运算数据和运算模型,基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于承诺凭证数据验证待运算数据的可信性,保证了数据运算过程中的隐私性,通过证明待运算数据的可信性,解决了在复杂不诚实网络中可靠计算的问题。
本发明基于安全多方计算的数据验证方法的另一个实施例中,在上述各实施例的基础上,操作120可以包括:
将基于运算模型将待处理数据转换为多项式,基于多项式获得可验证等式;
不同的数据运算任务对应不同的运算模型,例如:针对一个数据挖掘任务,从数据提供方获取的大量、各类整车运行数据和驾驶习惯数据(待运算数据),运用数据挖掘相关技术方法(运算模型),进行抽取、转换、分析和特殊模型化处理,从中分析提取出规律性、隐含性、关键性的数据,获得的数据可以为车险定制、车辆驾驶辅助、车辆维修养护、交通事故分析等应用提供智能服务和决策辅助。
利用盲评价验证方式,基于可验证等式获得基于承诺凭证数据构成的可验证表达式,基于所述可验证表达式证明待运算数据是否为可信数据。
本实施例通过知识系数测试方法(d-KCA),实现了非交互式的盲评价验证,其主要思想是:
知识系数测试方法(d-KCA),对于α∈Fp(表示α是Fp中的非零元素),如果a,b≠0和b=α·a成立,则我们称G中的一组元素(a,b)为α-pair。
知识系数(KC)测试按照如下的步骤进行:
甲随机选择了α∈Fp和a∈G。他计算得到了b=α·a。
甲发送“挑战”对(a,b)给乙。注意,(a,b)是一个α-pair。
乙现在必须回复一个不同的对(a′,b′),同时也必须是α-pair。
如果(a′,b′)确实是一个α-pair,则甲接受乙的回复。(由于甲知道α,甲可以检查b′=α·a′是否成立。)
现在,让我们思考乙如何成功地回复挑战。让我们假设乙知道α。在这种情况下,乙便可以在G中简单地挑选出a′,并计算出b′=α·a′;同时返回(a′,b′)表示乙得到了新的α-pair。
然而,由于乙在α·a中仅有唯一的信息α,并且G存在难解的离散对数问题,我们可以假设乙并不能得到α。
因此,如何让乙在不知道α的前提下成功回复挑战呢?
以下是实现这一目标的自然做法:乙简单地选择一些γ∈Fp,并且回复(a′,b′)=(γ·a,γ·b)。
在这种情况下,我们有:
b′=γ·b=γα·a=α(γ·a)=α·a′,
确实(a′,b′)是这里需要的α-pair。
注意到,如果乙使用这种策略进行回复,乙将知道a和a′的比例。也就是说,乙知道系数γ根据a′=γ·a。
知识系数假设(KCA)称这总是如此,也就是说:
KCA:如果乙返回一个有效的回复(a′,b′)给甲的挑战(a,b)此时有不可忽视的可能性甲选择了a,α,此时乙便知道γ因此得到a′=γ·a。
用数学的方法定义“乙知道γ”,定义一个可访问乙的内部状态的提取器,“乙知道γ”可表达为:当乙使用一个α-pair(a′,b′)成功回复时,乙的提取器将γ从而得到a′=γ·a。
非交互式的盲评价验证,其主要思想是:
(1)随机选取一个数据s,计算并公布g(s)。其中g为一种加密运算,例如:采用椭圆曲线加密。运算完成后,将s进行严格保密或者舍弃。
(2)为了验证证明方知道多项式P,验证方选择随机的α和β,并且发送给证明方隐藏的g,β·g,…,βd·g(对应1,β,…,βd)和同样隐藏的α·g,αβ·g,…,αβd·g(对应α,αβ,…,αβd)。
(3)证明方使用验证方发送的数据计算a=P(β)·g和b=αP(β)·g,并且都发送给验证方。
(4)验证方检查b=α·a,如果这个等式成立就会将其接受,验证证明方不知道多项式P的概率几乎可以忽略。
利用盲评价验证,可以在不知道具体运算结果和多项式的情况下,证明运行结果的可信性。
可选地,基于运算模型将待处理数据转换为多项式,基于多项式获得可验证等式,包括:
利用多项式复杂程度的非确定性问题归约技术,基于运算模型将待处理数据转换为多项式复杂程度的非确定性问题(NP完全问题),得到多项式;
本实施例中通过将待处理数据输入运算模型,构成一个运算问题,再通过构建规则二次算术程序(QAP)把各类运算问题表示为NP完全问题。
归约是使用解题的"黑盒"来解决另一个问题的思维方式。归约让我们理解两个问题间的关系,它是一种技术,用于寻找解决某个问题或它的变形。本实施例中多项式复杂程度的非确定性(NP完全)问题规约实现将运算模型和运算结果建立的等式转换为多项式。
运算问题大体可归为P、NP两类:P问题的计算复杂度为输入参数个数的多项式级别,一般是多项式运算问题;NP问题的计算复杂度为输入参数个数的指数级别,一般是搜索问题。任意NP问题都可以通过一个NP完全问题进行表示。
本实施例采用环路算术化方法构建规则二次算术程序(QAP)把各类运算问题表示为NP完全问题,为后续验证计算做好准备。一个数字环路(例如:多项式)由多个数字计算门组成(例如:加法门、减法门、乘法门等),其功能类似于加法和乘法,通过使用线路链接门。在底部的线路是输入线路,在顶部的线路是输出线路,输出线路输出对输入的数据计算得到的结果。
算术化(arithmetization)也称为哥德尔编码技巧,是一种证明方法。使用基于素数因数分解的哥德尔编码***。他首先把唯一的自然数指派到在他所处理的算术的形式语言中的每个基本符号。
为了编码是符号序列的整个公式,哥德尔使用了如下***。给出正整数的序列x1x2x3…xn,哥德尔对这个序列的编码是第n个素数自乘这个序列中对应值的次数:
依据算术基本定理,用这种方式获得的任何数都可以唯一的因数分解到素因子,所以可以有效的从其哥德尔数恢复最初的序列。
二次算术程序(QAP)方法的主要思想示意如下:对于一个固定取值的(c1,…,c6),使用它作为系数来定义一个多项式的左、右和输出的“相加”。也就是说,定义如下所示:
再定义多项式P:=L*R-O,完成环路算术化,其中,“:=”表示定义为。
利用二次张成程序,将多项式转换为可验证等式。
二次张成程序(Quadratic Span Program,QSP)是由一组多项式和寻找给定多项式倍数的线性组合任务构成。
本实施例基于二次张成程序(QSP)原理构建简明的非交互知识论证***。QSP的基本思想是:QSP由两个多项式集合V={v1,v2,…,vn+m}和W={w1,w2,…,wn+m},以及一个目标多项式t组成。当且仅当对任意满足F(x)=1的x=x1,…,xn∈{0,1}n,有
而且满足当xi=0时,ai=bi=0。
利用QSP验证即证明:成立,也就是证明th=vawb
验证th=vawb的方法是:选择任意随机值s,证明t(s)h(s)=va(s)wb(s)。本实施例的安全性基于q-power数据线Diffie-Hellman(是一种确保共享KEY安全穿越不安全网络的方法,它是OAKLEY的一个组成部分,Diffie-Hellman密钥交换协议/算法(Diffie-HellmanKey Exchange/Agreement Algorithm),这个机制的巧妙在于需要安全通信的双方可以用这个方法确定对称密钥。然后可以用这个密钥进行加密和解密)假设,验证者在输入准备阶段的时间复杂度是线性的,验证时间是常数。
在一个或多个可选的实施例中,利用盲评价验证方式,基于可验证等式获得基于承诺凭证数据构成的可验证表达式,基于所述可验证表达式证明待运算数据是否为可信数据,包括:
从综合运算方获取随机数据,对随机数据加密获得随机加密结果;
基于随机加密结果和可验证等式,获得基于承诺凭证数据构成的可验证表达式;
基于可验证表达式证明待运算数据是否为可信数据。
本实施例中通过随机数据和可验证等式,获得承诺凭证数据,综合运算方获得承诺凭证数据(如:a和b),基于承诺凭证数据可建立一个可验证表达式(如:b=α·a),基于该可验证表达式即可确定承诺方已知可验证等式,此时基于可验证表达式可证明待运算数据是否为可信数据,具体地,响应于可验证表达式的等号成立,确定待运算数据为可信数据;响应于可验证表达式的等号不成立,确定待运算数据为不可信数据;实现了在不知道具体待运算数据的情况下,确定数据提供方提供的待运算数据是否是可信的,或者在运算过程中是否被篡改或攻击。
可选地,基于随机加密结果和可验证等式,获得基于承诺凭证数据构成的可验证表达式,具体过程可以包括:
从综合运算方随机获得第一数据和第二数据,基于第一数据、第二数据、随机加密结果和可验证等式,获得一对承诺凭证数据;
可选地,一对承诺凭证数据包括第一承诺凭证数据和第二承诺凭证数据;从综合运算方随机获取第一数据和第二数据,将第一数据输入可验证等式并乘以随机加密结果,获得第一承诺凭证数据;
将第一数据输入可验证等式并依次乘以第二数据和随机加密结果,获得第二承诺凭证数据。
获取一对承诺凭证数据,并基于一对承诺凭证数据获得可验证表达式。
可选地,通过一个等号连接第一承诺凭证数据与第二承诺凭证数据和第二数据,获得可验证表达式。
其中,可验证表达式的等号一边为第一承诺凭证数据,可验证表达式的等号的另一边为第二承诺凭证数据和第二数据的乘积。
在一个可选的示例中,承诺凭证数据通常表示为字符串,例如:第一承诺凭证数据a,第二承诺凭证数据b,证明方使用验证方发送的数据计算a=P(β)·g和b=αP(β)·g,并且都发送给验证方;其中P为可验证等式,β和α为从综合运算方随机获得的第一数据和第二数据,g为从综合运算方获取随机数据,对随机数据加密(例如:椭圆曲线加密等加密方法)获得的随机加密结果,此时验证方(综合运算方)得到第一承诺凭证数据a,第二承诺凭证数据b,检查b=α·a(可验证表达式),如果这个等式成立就会将其接受,验证证明方不知道多项式P的概率几乎可以忽略,即可确定待处理数据是可信的;而当这个等式不成立,验证证明方不知道多项式P,即可确定待处理数据是不可信的。
可选地,从综合运算方获取的随机数据,包括:
基于比特承诺从综合运算方获取随机数据;
综合运算方获取承诺凭证数据,包括:
综合运算方基于比特承诺获取承诺凭证数据。
通过比特承诺,保证了随机数据和承诺凭证数据传输的不透明性和数据的可靠性。
本实施例中的比特承诺可以采用单向函数(例如:散列Hash函数)、梅克尔树(Merkle Tree)相结合的方式,进行比特承诺,保护关键数据安全。单向函数保障了承诺的不可逆性和安全性,梅克尔树能高效、安全地证明其树上数据是未损坏且未改变的。梅克尔树是区块链的重要数据结构,其作用是快速归纳和校验区块数据的存在性和完整性。一般意义上来讲,它是哈希大量聚集数据“块”的一种方式;其特点包括:梅克尔树是一种树,大多数是二叉树,也可以多叉树,无论是几叉树,它都具有树结构的所有特点;梅克尔树的叶子节点的值(value)是数据集合的单元数据或者单元数据散列Hash;非叶子节点的value是根据它下面所有的叶子节点值,然后按照Hash算法计算而得出的。
在一个或多个可选的实施例中,还包括:
综合运算方接收数据提供方共享的承诺凭证数据后,对承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果;
可选地,调用相关机器学习和/或人工智能相关模型,对承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果。
基于数据分析和/或智能挖掘的过程生成综合运算凭证,并将运算结果和综合运算凭证作为区块链网络中的一个区块进行保存;
从区块链网络获取运算结果,利用盲评价验证方式,确定运算结果是否为可信数据。
通过上述实施例中的数据验证方法实现了基于承诺凭证数据即可确定数据提供方提供的待处理数据是真实的,但不会直接获得待处理数据,而是基于承诺凭证数据,此时对承诺凭证数据进行相应的处理,以得到运算结果,此时的运算结果与直接基于待处理数据进行处理得到的结果是相同的,在区块链网络中保存运算结果,使区块链网络中的所有节点均可获得该运算结果,此时,基于盲评价验证方式,对综合运算凭证进行盲评价验证,验证综合运算方的运算过程是否按要求汇聚预定体量数据、按规范流程模型运算,即运算过程是否安全可靠,以确定分析结果数据是否可靠可信。
可选地,基于数据分析和/或智能挖掘的过程生成综合运算凭证,包括:
基于数据分析和/或智能挖掘的过程将运算结果转换为结果多项式,基于结果多项式获得结果可验证等式;
可选地,基于数据分析和/或智能挖掘的过程将运算结果转换为结果多项式,基于结果多项式获得结果可验证等式,包括:
利用多项式复杂程度的非确定性问题归约技术,基于数据分析和/或智能挖掘的过程将运算结果转换为多项式复杂程度的非确定性问题,得到结果多项式;
利用二次张成程序,将结果多项式转换为结果可验证等式。
基于结果可验证等式和从综合运算方获得的综合随机数据,获得综合运算凭证。
本实施例中的综合运算凭证与上述实施例中的承诺凭证数据类似,是基于获取的数据经过NP完全问题归约将数据处理问题转换为多项式,经过二次张成程序将多项式转换为可验证等式,通过盲评价验证方式基于可验证等式获得综合运算凭证,承诺凭证数据是基于待运算数据获得,而综合运算凭证是基于运算结果获得。
可选地,基于结果可验证等式和从综合运算方获得的综合随机数据,获得综合运算凭证,包括:
从综合运算方获得综合随机数据,对综合随机数据加密获得综合随机加密结果;
基于综合随机加密结果和结果可验证等式,获得综合运算凭证。
可选地,综合运算凭证包括第一综合运算凭证和第二综合运算凭证;
从综合运算方随机获取第一综合数据和第二综合数据,将第一综合数据输入结果可验证等式并乘以综合随机加密结果,获得第一综合运算凭证;
将第一综合数据输入结果可验证等式并依次乘以第二综合数据和综合随机加密结果,获得第二综合运算凭证。
可选地,从区块链网络获取综合运算凭证和运算结果,利用盲评价验证方式,确定运算结果是否为可信数据,包括:
从区块链网络获取综合运算凭证和运算结果;
基于综合运算凭证获得综合可验证等式,基于综合可验证等式证明运算结果是否为可信数据。
具体地,基于综合运算凭证获得综合可验证等式,可以包括:
通过一个等号连接第一综合承诺凭证与第二综合承诺凭证和第二综合数据,获得综合可验证表达式。
其中,综合可验证表达式的等号一边为第一综合承诺凭证,综合可验证表达式的等号的另一边为第二综合承诺凭证和第二综合数据的乘积。
本实施例中通过综合随机数据和可验证等式,获得综合运算凭证,数据提供方获得综合运算凭证(如:a和b),基于综合运算凭证可建立一个综合可验证表达式(如:b=α·a),基于该综合可验证表达式即可确定承诺方已知综合可验证等式,此时基于综合可验证表达式可证明运算结果是否为可信数据,具体地,响应于综合可验证表达式的等号成立,确定运算结果为可信数据;响应于综合可验证表达式的等号不成立,确定运算结果为不可信数据;实现了在不知道具体运算结果的情况下,确定综合运算方提供的运算结果是否是可信的,或者在运算过程中是否被篡改或攻击。
将本发明数据验证方法应用到行程数据的验证中的一个具体示例,可以包括以下两个阶段:
阶段一:各类行车数据的承诺及验证:
1.数据提供方根据不同的应用场景,将车辆行驶、车辆状况以及驾驶习惯等相关行车数据,输入安全多方计算***。安全多方计算***内部,根据不同应用场景,调用不同模型对输入数据进行NP问题归约,构造简明非交互式知识论证***,去除敏感信息和冗余数据(例如:删除或物理屏蔽处理),生成承诺凭证数据。
2.安全多方计算***将降维归约后的数据挂载到区块链网络,在全网进行数据共享。
3.特定应用场景对应的综合运算方对区块链网络进行监听,将相关的承诺凭证数据输入安全多方计算***。安全多方计算***内部,通过知识系数测试方法,对数据提供方的承诺凭证进行盲评价验证,确保输入数据通过规范方式采集,标准流程处理,且安全可靠。
阶段二:综合运算结果数据的承诺及验证
4.综合运算方接收到相关数据提供方共享的承诺凭证数据后,调用相关机器学习、人工智能相关模型方法,进行数据分析、智能挖掘。
5.综合运算方完成数据分析运算后,通过安全多方计算***处理,生成综合运算凭证,连同分析运算结果一并挂载到区块链网络进行数据共享。
6.相关数据提供方从区块链网络获取分析运算结果,通过安全多方计算***,对综合运算凭证进行盲评价验证,验证综合运算方确实按要求汇聚预定体量数据、按规范流程模型运算,确保分析结果数据的可靠可信。
综上所述,基于安全多方计算方法的行车数据验证方法,可有效确保在复杂不诚实网络中,各数据提供方数据的可靠性、综合运算结果的可验证、敏感数据的保密性以及验证过程的公开高效性。实现在保证数据隐私保密的条件下,支持任意数据提供方进行公开的、非交互式的、高效的验证。
一个可选的具体示例中,以车辆运行数据和驾驶习惯数据为例,综合运算方从各数据提供方获取的大量、各类整车运行数据和驾驶习惯数据,运用数据挖掘相关技术方法,进行抽取、转换、分析和特殊模型化处理,从中分析提取出规律性、隐含性、关键性信息和知识作为运算结果,基于运算结果为车险定制、车辆驾驶辅助、车辆维修养护、交通事故分析等应用提供智能服务和决策辅助。在实际应用中,通过本发明上述实施例提供的数据验证方法,可有效确保整个运算过程的敏感数据保密性及验证过程的公开。具体来讲,满足两个特性:一是综合运算方可以在***漏隐私数据的前提下整合至少一个数据提供方提供的整车运行数据和驾驶习惯数据,并进行综合运算;二是作为第三方的数据验证方,可以在不掌握数据提供方的隐私数据的情况下,验证综合运算方的运算有效性和可靠性。
由于综合运算方可能存在出于避免运算资源消耗、提高运算效率、隐瞒数据缺陷等目的,对运算过程“弄虚”、“偷懒”等情况,甚或遭受外部恶意攻击,破坏运算结果等风险,通过上述任一实施例提供的数据验证方法,基于得到的承诺凭证数据从各数据提供方获取的车辆运行数据和驾驶习惯数据是否可信,综合运算方基于车辆运行数据和驾驶习惯数据获得运算结果的过程是否安全。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图2为本发明安全多方计算***一个实施例的结构示意图。该实施例的***可用于实现本发明上述各方法实施例。如图2所示,该实施例的装置包括:
数据提供方21,用于根据数据运算任务提供待运算数据。
在复杂不诚实网络(复杂不诚实网络,是指网络中的各个节点彼此不信任,存在恶意节点可能,且大多情况下没有中心化的授信节点)中,由于公开透明性,不排除存在着各种动机使得数据提供方不如实提供数据、不诚实计算等情况,或者存在恶意第三方对数据提供方进行数据篡改或计算扰乱,或者在数据传输过程遭攻击篡改。
可选地,本实施例为了保证获取的数据的可靠性,数据提供方根据数据运算任务,基于比特承诺输出待运算数据,综合运算方根据数据运算任务,基于比特承诺输出运算模型;基于比特承诺,实现了数据传输的不透明性,保证了数据提供方如实提供数据,并且保证了不会出现第三方对数据进行篡改或计算扰乱、或数据传输过程中遭攻击篡改。
可选地,数据提供方和综合运算方分别为区块链网络中的任一节点,并且数据提供方和综合运算方不是同一节点。
本实施例通过专有的区块链网络实现各方(数据提供方、综合运算方)数据的共享和存储。该区块链网络是一种分布式基础架构体系,利用区块链式数据结构来存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的。该区块链网络可实现全网共享验证、抗篡改抵赖、承诺及兑现。
综合运算方22,用于根据数据运算任务提供对应的运算模型,基于运算模型对待运算数据进行处理,获得承诺凭证数据,并基于承诺凭证数据验证待运算数据的可信性。
基于本发明上述实施例提供的一种安全多方计算***,基于数据运算任务获取待运算数据和运算模型,基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于承诺凭证数据验证待运算数据的可信性,保证了数据运算过程中的隐私性,通过证明待运算数据的可信性,解决了在复杂不诚实网络中可靠计算的问题。
本发明基于安全多方计算的数据验证装置的另一个实施例中,在上述各实施例的基础上,综合运算方22,包括:
数据转换模块,用于基于运算模型将待处理数据转换为多项式,基于多项式获得可验证等式;
盲评价验证模块,用于利用盲评价验证方式,基于可验证等式证明待运算数据是否为可信数据。
本实施例通过知识系数测试方法(d-KCA),实现了非交互式的盲评价验证,其主要思想是:
(1)随机选取s,计算并公布g(s)。其中g为一种加密运算,例如:采用椭圆曲线加密。运算完成后,将s进行严格保密或者舍弃。
(2)为了验证证明方知道多项式P,验证方选择随机的α和s,并且发送给证明方隐藏的g,s·g,…,sd·g(对应1,s,…,sd)和同样隐藏的α·g,αs·g,…,αsd·g(对应α,αs,…,αsd)。
(3)证明方使用验证方发送的数据计算a=P(s)·g和b=αP(s)·g,并且都发送给验证方。
(4)验证方检查b=α·a,如果这个等式成立就会将其接受,验证证明方不知道多项式P的概率几乎可以忽略。
利用盲评价验证方式,可以在不知道具体运算结果和多项式的情况下,证明运行结果的可信性。
可选地,数据转换模块,包括:
完全归约模块,用于利用多项式复杂程度的非确定性问题归约技术,基于运算模型将待处理数据转换为多项式复杂程度的非确定性问题,得到多项式;
二次张成模块,用于利用二次张成程序,将多项式转换为可验证等式。
本实施例采用环路算术化方法构建规则二次算术程序(QAP)把各类运算问题表示为NP完全问题,为后续验证计算做好准备。一个数字环路(例如:多项式)由多个数字计算门组成(例如:加法门、减法门、乘法门等),其功能类似于加法和乘法,通过使用线路链接门。在底部的线路是输入线路,在顶部的线路是输出线路,输出线路输出对输入的数据计算得到的结果。
在一个或多个可选的实施例中,盲评价验证模块,包括:
随机数据获取模块,用于从综合运算方获取随机数据,对随机数据加密获得随机加密结果;
表达式获取模块,用于基于随机加密结果和可验证等式,获得可验证表达式;
可选地,表达式获取模块,包括:
承诺凭证数据模块,用于从综合运算方随机获得第一数据和第二数据,基于第一数据、第二数据、随机加密结果,获得一对承诺凭证数据;
表达式确定模块,用于综合运算方获取一对承诺凭证数据,并基于一对承诺凭证数据确定可验证表达式。
其中,随机数据包括第一随机数据和第二随机数据;
承诺凭证数据模块,具体用于从综合运算方随机获取第一数据和第二数据,将第一数据输入可验证等式并乘以随机加密结果,获得第一承诺凭证数据;将第一数据输入可验证等式并依次乘以第二数据和随机加密结果,获得第二承诺凭证数据。
证明模块,用于基于可验证表达式证明待运算数据是否为可信数据。
可选地,表达式确定模块,具体用于通过一个等号连接第一承诺凭证数据与第二承诺凭证数据和第二数据,获得可验证表达式。
其中,可验证表达式的等号一边为第一承诺凭证数据,可验证表达式的等号的另一边为第二承诺凭证数据和第二数据的乘积。
可选地,随机数据获取模块,具体用于基于比特承诺从综合运算方获取随机数据;
综合运算方,具有用于基于比特承诺获取承诺凭证数据。
可选地,验证模块,具体用于响应于可验证表达式的等号成立,确定待运算数据为可信数据;
响应于可验证表达式的等号不成立,确定待运算数据为不可信数据。
在一个或多个可选的实施例中,综合运算方,还用于接收数据提供方共享的承诺凭证数据后,对承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果;
***还包括:保存单元,用于基于数据分析和/或智能挖掘的过程生成综合运算凭证,将运算结果和综合运算凭证作为区块链网络中的一个区块进行保存;
数据验证方,还用于从区块链网络获取运算结果,利用盲评价验证方式,确定运算结果是否为可信数据。
数据验证方也可以是区块链网络中的节点,但与综合运算方不是同一节点。
通过上述实施例中的数据验证方法实现了基于承诺凭证数据即可确定数据提供方提供的待处理数据是真实的,但不会直接获得待处理数据,而是基于承诺凭证数据,此时对承诺凭证数据进行相应的处理,以得到运算结果,此时的运算结果与直接基于待处理数据进行处理得到的结果是相同的,在区块链网络中保存运算结果,使区块链网络中的所有节点均可获得该运算结果,此时,基于盲评价验证方式,对综合运算凭证进行盲评价验证,验证综合运算方的运算过程是否按要求汇聚预定体量数据、按规范流程模型运算,即运算过程是否安全可靠,以确定分析结果数据是否可靠可信。
可选地,综合运算方,具体用于调用相关机器学习和/或人工智能相关模型,对承诺凭证数据进行数据分析和/或智能挖掘,得到运算结果。
可选地,保存单元,包括:
结果转换模块,用于基于数据分析和/或智能挖掘的过程将运算结果转换为结果多项式,基于结果多项式获得结果可验证等式;
凭证获得模块,用于基于结果可验证等式和从综合运算方获得的综合随机数据,获得综合运算凭证。
可选地,结果转换模块,具体用于利用多项式复杂程度的非确定性问题归约技术,基于数据分析和/或智能挖掘的过程将运算结果转换为多项式复杂程度的非确定性问题,得到结果多项式;利用二次张成程序,将结果多项式转换为结果可验证等式。
可选地,凭证获得模块,包括:
加密模块,用于从综合运算方获得综合随机数据,对综合随机数据加密获得综合随机加密结果;
凭证模块,用于基于综合随机加密结果和结果可验证等式,获得综合运算凭证。
可选地,综合运算凭证包括第一综合运算凭证和第二综合运算凭证;
凭证模块,具体用于从综合运算方随机获取第一综合数据和第二综合数据,将第一综合数据输入结果可验证等式并乘以综合随机加密结果,获得第一综合运算凭证;
将第一综合数据输入结果可验证等式并依次乘以第二综合数据和综合随机加密结果,获得第二综合运算凭证。
可选地,数据验证方,包括:
凭证获取模块,用于从区块链网络获取综合运算凭证和运算结果;
可信性判断模块,用于基于综合运算凭证获得综合可验证等式,基于综合可验证等式证明运算结果是否为可信数据。
可选地,可信性判断模块,具体用于通过一个等号连接第一综合承诺凭证与第二综合承诺凭证和第二综合数据,获得综合可验证表达式,综合可验证表达式的等号一边为第一综合承诺凭证,综合可验证表达式的等号的另一边为第二综合承诺凭证和第二综合数据的乘积;响应于综合可验证表达式的等号成立,确定运算结果为可信数据;响应于综合可验证表达式的等号不成立,确定运算结果为不可信数据。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于***实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
可能以许多方式来实现本发明的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本发明的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本发明的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本发明实施为记录在记录介质中的程序,这些程序包括用于实现根据本发明的方法的机器可读指令。因而,本发明还覆盖存储用于执行根据本发明的方法的程序的记录介质。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。

Claims (10)

1.一种数据验证方法,其特征在于,包括:
基于数据运算任务获取待运算数据和运算模型;
基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于所述承诺凭证数据验证所述待运算数据的可信性。
2.根据权利要求1所述的方法,其特征在于,所述基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于所述承诺凭证数据验证所述待运算数据的可信性,包括:
基于所述运算模型将所述待处理数据转换为多项式,基于所述多项式获得可验证等式;
利用盲评价验证方式,基于所述可验证等式获得基于承诺凭证数据构成的可验证表达式,基于所述可验证表达式证明所述待运算数据是否为可信数据。
3.根据权利要求2所述的方法,其特征在于,所述基于所述运算模型将所述待处理数据转换为多项式,基于所述多项式获得可验证等式,包括:
利用多项式复杂程度的非确定性问题归约技术,基于所述运算模型将所述待处理数据转换为多项式复杂程度的非确定性问题,得到多项式;
利用二次张成程序,将所述多项式转换为可验证等式。
4.根据权利要求2或3所述的方法,其特征在于,所述利用盲评价验证方式,基于所述可验证等式获得基于承诺凭证数据构成的可验证表达式,基于所述可验证表达式证明所述待运算数据是否为可信数据,包括:
从综合运算方获取随机数据,对所述随机数据加密获得随机加密结果;
基于所述随机加密结果和所述可验证等式,获得基于承诺凭证数据构成的可验证表达式;
基于所述可验证表达式证明所述待运算数据是否为可信数据。
5.根据权利要求4所述的方法,其特征在于,所述基于所述随机加密结果和所述可验证等式,获得基于承诺凭证数据构成的可验证表达式,包括:
从所述综合运算方随机获得第一数据和第二数据,基于所述第一数据、所述第二数据、所述随机加密结果和所述可验证等式,获得一对承诺凭证数据;
获取所述一对承诺凭证数据,并基于所述一对承诺凭证数据获得可验证表达式。
6.根据权利要求5所述的方法,其特征在于,所述一对承诺凭证数据包括第一承诺凭证数据和第二承诺凭证数据;
所述从所述综合运算方随机获得第一数据和第二数据,基于所述第一数据、所述第二数据、所述随机加密结果和所述可验证等式,获得一对承诺凭证数据,包括:
从所述综合运算方随机获取第一数据和第二数据,将所述第一数据输入所述可验证等式并乘以所述随机加密结果,获得第一承诺凭证数据;
将所述第一数据输入所述可验证等式并依次乘以所述第二数据和所述随机加密结果,获得第二承诺凭证数据。
7.根据权利要求6所述的方法,其特征在于,所述获取所述一对承诺凭证数据,并基于所述一对承诺凭证数据获得可验证表达式,包括:
通过一个等号连接第一承诺凭证数据与第二承诺凭证数据和第二数据,获得所述可验证表达式,所述可验证表达式的等号一边为所述第一承诺凭证数据,所述可验证表达式的等号的另一边为所述第二承诺凭证数据和所述第二数据的乘积。
8.根据权利要求5-7任一所述的方法,其特征在于,所述从综合运算方获取随机数据,包括:
基于比特承诺从综合运算方获取随机数据;
所述综合运算方获取承诺凭证数据,包括:
所述综合运算方基于比特承诺获取承诺凭证数据。
9.根据权利要求7或8所述的方法,其特征在于,所述基于所述可验证表达式证明所述待运算数据是否为可信数据,包括:
响应于所述可验证表达式的等号成立,确定所述待运算数据为可信数据;
响应于所述可验证表达式的等号不成立,确定所述待运算数据为不可信数据。
10.一种安全多方计算***,其特征在于,包括:
数据提供方,用于根据数据运算任务提供待运算数据;
综合运算方,用于根据所述数据运算任务提供对应的运算模型,基于所述运算模型对所述待运算数据进行处理,获得承诺凭证数据,并基于所述承诺凭证数据验证所述待运算数据的可信性。
CN201810483279.1A 2018-05-19 2018-05-19 数据验证方法和安全多方计算*** Active CN108683669B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810483279.1A CN108683669B (zh) 2018-05-19 2018-05-19 数据验证方法和安全多方计算***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810483279.1A CN108683669B (zh) 2018-05-19 2018-05-19 数据验证方法和安全多方计算***

Publications (2)

Publication Number Publication Date
CN108683669A true CN108683669A (zh) 2018-10-19
CN108683669B CN108683669B (zh) 2021-09-17

Family

ID=63805379

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810483279.1A Active CN108683669B (zh) 2018-05-19 2018-05-19 数据验证方法和安全多方计算***

Country Status (1)

Country Link
CN (1) CN108683669B (zh)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109685934A (zh) * 2018-12-18 2019-04-26 福州大学 一种基于车辆数据隐私保护与压缩感知的交通估计方法
WO2019072275A3 (en) * 2018-11-27 2019-10-03 Alibaba Group Holding Limited System and method for information protection
CN110363509A (zh) * 2019-07-19 2019-10-22 华中师范大学 一种信息保护方法及装置
CN110765473A (zh) * 2019-10-11 2020-02-07 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN110800252A (zh) * 2019-03-18 2020-02-14 阿里巴巴集团控股有限公司 防止安全多方计算中参与者错误表示输入数据
CN110995438A (zh) * 2019-10-24 2020-04-10 南京可信区块链与算法经济研究院有限公司 一种非交互零知识证明方法、***及存储介质
CN110990853A (zh) * 2019-11-29 2020-04-10 天津市滨海新区信息技术创新中心 动态异构冗余的数据访问保护方法及装置
US10700850B2 (en) 2018-11-27 2020-06-30 Alibaba Group Holding Limited System and method for information protection
US10715500B2 (en) 2018-11-27 2020-07-14 Alibaba Group Holding Limited System and method for information protection
US10726657B2 (en) 2018-11-27 2020-07-28 Alibaba Group Holding Limited System and method for information protection
CN111628991A (zh) * 2020-05-25 2020-09-04 安徽大学 一种通用且抗恶意敌手的安全计算方法
WO2020181933A1 (zh) * 2019-03-12 2020-09-17 阿里巴巴集团控股有限公司 基于秘密分享的安全模型预测方法和装置
WO2021052033A1 (zh) * 2019-09-18 2021-03-25 深圳壹账通智能科技有限公司 数据调用方法、装置、设备及计算机可读存储介质
US11080694B2 (en) 2018-11-27 2021-08-03 Advanced New Technologies Co., Ltd. System and method for information protection
US11102184B2 (en) 2018-11-27 2021-08-24 Advanced New Technologies Co., Ltd. System and method for information protection
CN113326541A (zh) * 2021-08-03 2021-08-31 之江实验室 一种基于智能合约的云边协同多模式隐私数据流转方法
US11144918B2 (en) 2018-08-06 2021-10-12 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
CN114401117A (zh) * 2021-12-27 2022-04-26 浙江数秦科技有限公司 基于区块链的账户登录验证***
CN114692149A (zh) * 2022-03-31 2022-07-01 北京九章云极科技有限公司 一种多方安全计算验证方法及***
CN115277031A (zh) * 2021-04-13 2022-11-01 华为技术有限公司 一种数据处理的方法和装置
TWI826863B (zh) * 2021-11-11 2023-12-21 財團法人國家實驗研究院 Qap型式同態加密中的公鑰系統設計的方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621520A (zh) * 2008-06-30 2010-01-06 英特尔公司 用于多方验证的基于平台的可信性验证服务的方法和***
US20110087885A1 (en) * 2009-10-13 2011-04-14 Lerner Sergio Demian Method and apparatus for efficient and secure creating, transferring, and revealing of messages over a network
CN103313142A (zh) * 2013-05-26 2013-09-18 中国传媒大学 面向三网融合的视频内容安全责任认定方法
US20140122899A1 (en) * 2012-10-29 2014-05-01 Sony Corporation Information processing apparatus, information processing method, computer program, and information processing system
CN106682530A (zh) * 2017-01-10 2017-05-17 杭州电子科技大学 一种基于区块链技术的医疗信息共享隐私保护方法及装置
CN107592195A (zh) * 2017-09-12 2018-01-16 北京电子科技学院 一种准全同态密文数据操作方法和***
US20180096166A1 (en) * 2016-09-30 2018-04-05 Northwestern University System and Method for Secure Query Processing for Private Data Networks

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101621520A (zh) * 2008-06-30 2010-01-06 英特尔公司 用于多方验证的基于平台的可信性验证服务的方法和***
US20110087885A1 (en) * 2009-10-13 2011-04-14 Lerner Sergio Demian Method and apparatus for efficient and secure creating, transferring, and revealing of messages over a network
US20140122899A1 (en) * 2012-10-29 2014-05-01 Sony Corporation Information processing apparatus, information processing method, computer program, and information processing system
CN103313142A (zh) * 2013-05-26 2013-09-18 中国传媒大学 面向三网融合的视频内容安全责任认定方法
US20180096166A1 (en) * 2016-09-30 2018-04-05 Northwestern University System and Method for Secure Query Processing for Private Data Networks
CN106682530A (zh) * 2017-01-10 2017-05-17 杭州电子科技大学 一种基于区块链技术的医疗信息共享隐私保护方法及装置
CN107592195A (zh) * 2017-09-12 2018-01-16 北京电子科技学院 一种准全同态密文数据操作方法和***

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马远: ""基于全同态体制下的安全多方计算协议的研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 *

Cited By (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11144918B2 (en) 2018-08-06 2021-10-12 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
US11295303B2 (en) 2018-08-06 2022-04-05 Advanced New Technologies Co., Ltd. Method, apparatus and electronic device for blockchain transactions
US10938549B2 (en) 2018-11-27 2021-03-02 Advanced New Technologies Co., Ltd. System and method for information protection
US11282325B2 (en) 2018-11-27 2022-03-22 Advanced New Technologies Co., Ltd. System and method for information protection
WO2019072275A3 (en) * 2018-11-27 2019-10-03 Alibaba Group Holding Limited System and method for information protection
US11277389B2 (en) 2018-11-27 2022-03-15 Advanced New Technologies Co., Ltd. System and method for information protection
US11218455B2 (en) 2018-11-27 2022-01-04 Advanced New Technologies Co., Ltd. System and method for information protection
RU2719311C1 (ru) * 2018-11-27 2020-04-17 Алибаба Груп Холдинг Лимитед Система и способ защиты информации
KR20200066256A (ko) * 2018-11-27 2020-06-09 알리바바 그룹 홀딩 리미티드 정보 보호를 위한 시스템 및 방법
US10700850B2 (en) 2018-11-27 2020-06-30 Alibaba Group Holding Limited System and method for information protection
US11080694B2 (en) 2018-11-27 2021-08-03 Advanced New Technologies Co., Ltd. System and method for information protection
US10715500B2 (en) 2018-11-27 2020-07-14 Alibaba Group Holding Limited System and method for information protection
US10726657B2 (en) 2018-11-27 2020-07-28 Alibaba Group Holding Limited System and method for information protection
US10748370B2 (en) 2018-11-27 2020-08-18 Alibaba Group Holding Limited System and method for information protection
US11127002B2 (en) 2018-11-27 2021-09-21 Advanced New Technologies Co., Ltd. System and method for information protection
US11102184B2 (en) 2018-11-27 2021-08-24 Advanced New Technologies Co., Ltd. System and method for information protection
KR102128210B1 (ko) 2018-11-27 2020-06-30 알리바바 그룹 홀딩 리미티드 정보 보호를 위한 시스템 및 방법
US10885735B2 (en) 2018-11-27 2021-01-05 Advanced New Technologies Co., Ltd. System and method for information protection
US10892888B2 (en) 2018-11-27 2021-01-12 Advanced New Technologies Co., Ltd. System and method for information protection
CN109685934A (zh) * 2018-12-18 2019-04-26 福州大学 一种基于车辆数据隐私保护与压缩感知的交通估计方法
WO2020181933A1 (zh) * 2019-03-12 2020-09-17 阿里巴巴集团控股有限公司 基于秘密分享的安全模型预测方法和装置
TWI720622B (zh) * 2019-03-12 2021-03-01 開曼群島商創新先進技術有限公司 基於秘密分享的安全模型預測方法和裝置
CN110800252A (zh) * 2019-03-18 2020-02-14 阿里巴巴集团控股有限公司 防止安全多方计算中参与者错误表示输入数据
US10790971B1 (en) 2019-03-18 2020-09-29 Alibaba Group Holding Limited Preventing misrepresentation of input data by participants in a secure multi-party computation
CN110363509A (zh) * 2019-07-19 2019-10-22 华中师范大学 一种信息保护方法及装置
WO2021052033A1 (zh) * 2019-09-18 2021-03-25 深圳壹账通智能科技有限公司 数据调用方法、装置、设备及计算机可读存储介质
CN110765473A (zh) * 2019-10-11 2020-02-07 矩阵元技术(深圳)有限公司 数据处理方法、装置、计算机设备和存储介质
CN110995438A (zh) * 2019-10-24 2020-04-10 南京可信区块链与算法经济研究院有限公司 一种非交互零知识证明方法、***及存储介质
CN110995438B (zh) * 2019-10-24 2022-07-12 南京可信区块链与算法经济研究院有限公司 一种非交互零知识证明方法、***及存储介质
CN110990853A (zh) * 2019-11-29 2020-04-10 天津市滨海新区信息技术创新中心 动态异构冗余的数据访问保护方法及装置
CN110990853B (zh) * 2019-11-29 2022-05-06 天津市滨海新区信息技术创新中心 动态异构冗余的数据访问保护方法及装置
CN111628991A (zh) * 2020-05-25 2020-09-04 安徽大学 一种通用且抗恶意敌手的安全计算方法
CN115277031A (zh) * 2021-04-13 2022-11-01 华为技术有限公司 一种数据处理的方法和装置
CN115277031B (zh) * 2021-04-13 2024-05-10 华为技术有限公司 一种数据处理的方法和装置
CN113326541A (zh) * 2021-08-03 2021-08-31 之江实验室 一种基于智能合约的云边协同多模式隐私数据流转方法
CN113326541B (zh) * 2021-08-03 2021-11-16 之江实验室 一种基于智能合约的云边协同多模式隐私数据流转方法
TWI826863B (zh) * 2021-11-11 2023-12-21 財團法人國家實驗研究院 Qap型式同態加密中的公鑰系統設計的方法
CN114401117A (zh) * 2021-12-27 2022-04-26 浙江数秦科技有限公司 基于区块链的账户登录验证***
CN114401117B (zh) * 2021-12-27 2024-03-19 浙江数秦科技有限公司 基于区块链的账户登录验证***
CN114692149A (zh) * 2022-03-31 2022-07-01 北京九章云极科技有限公司 一种多方安全计算验证方法及***

Also Published As

Publication number Publication date
CN108683669B (zh) 2021-09-17

Similar Documents

Publication Publication Date Title
CN108683669A (zh) 数据验证方法和安全多方计算***
Bhutta et al. A survey on blockchain technology: Evolution, architecture and security
Stavroulakis et al. Handbook of information and communication security
Hardin et al. Amanuensis: Information provenance for health-data systems
Dubey et al. Cloud-user security based on RSA and MD5 algorithm for resource attestation and sharing in java environment
Vashishtha et al. Security and detection mechanism in IoT-based cloud computing using hybrid approach
Deebak et al. A robust and distributed architecture for 5G-enabled networks in the smart blockchain era
US11829486B1 (en) Apparatus and method for enhancing cybersecurity of an entity
Cherbal et al. Security in internet of things: a review on approaches based on blockchain, machine learning, cryptography, and quantum computing
Weng et al. pvcnn: Privacy-preserving and verifiable convolutional neural network testing
Nesa et al. A lightweight security protocol for IoT using Merkle hash tree and chaotic cryptography
Barta et al. On succinct arguments and witness encryption from groups
Jiang et al. GAIN: Decentralized privacy-preserving federated learning
Zhang et al. A dual auditing protocol for fine-grained access control in the edge-cloud-based smart home
Karakaya et al. A review on latest developments in post-quantum based secure Blockchain systems
Eldridge et al. One-time programs from commodity hardware
Huang et al. A verifiable fully homomorphic encryption scheme
Tang et al. A Survey on Blockchain-Based Federated Learning: Categorization, Application and Analysis.
Funde et al. Big data privacy and security using abundant data recovery techniques and data obliviousness methodologies
Kumar et al. Privacy preserving, verifiable and efficient outsourcing algorithm for regression analysis to a malicious cloud
Mo et al. Privacy Data Management Mechanism Based on Blockchain and Federated Learning.
Wang et al. A blockchain consensus protocol based on quantum attack algorithm
Salman et al. Smart cloud security using hybrid encryption algorithms with 4-d chaotic key
Sahai Srivastava et al. Blockchain and its application in cybersecurity
Zand et al. Efficient cyber-evidence sharing using zero-knowledge proofs

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