System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 多片语法零知识联合证明方法、装置及系统制造方法及图纸_技高网

多片语法零知识联合证明方法、装置及系统制造方法及图纸

技术编号:40537822 阅读:18 留言:0更新日期:2024-03-01 14:00
提供了一种用于实现零知识证明的方法、装置和系统。分区的混淆电路用于实现具有完整语法验证的联合零知识证明系统。多片语法用于处理涉及多个要证明和验证的语句的复杂语义。多个验证方可以协调参与执行验证。不同的验证方可以执行不同的验证部分。

【技术实现步骤摘要】
【国外来华专利技术】

本专利技术大体上涉及安全信息交换和加密计算领域,尤其涉及计算机化通信系统中的零知识证明。


技术介绍

1、零知识证明(zero-knowledge proof),也称为零知识协议,是指一方(证明方)可以向另一方(验证方)证明(或演示)语句为真而不透露任何超出语句本身有效性的信息所遵照的协议。例如,给定一个随机数的哈希值,证明方(prover)可以使用零知识证明让验证方(verifier)相信证明方确实拥有(或知道)这个数。具体地,在不透露这个数的情况下,证明方可以构建一个证明系统,所述系统在实现时令人信服地引导验证方得出结论:证明方拥有或知道这个数。在理想情况下,零知识证明能让验证方相信一个语句,但只透露该语句本身的有效性。

2、自goldwasser、micali和rackoff推出零知识(zero-knowledge,zk)证明以来,零知识证明已在用户或设备认证和签名方案、安全计算、以及区块链技术中新兴的屏蔽交易等多个领域得到应用。零知识证明在密码学和(例如,电子设备之间的)安全通信中有多种应用。

3、零知识技术的两个示例是zk-snark和zkboo。这些技术可用于为现有的通信和计算网络基础设施带来各种新的功能。使用这些技术,并给定任何np完全问题的交互式证明,设备就能为任意np语句构建零知识证明或变量参数。np语句是与np完全问题相关的语句,证明方试图通过零知识证明方案证明np语句为真(或假)。然而,现有的零知识技术仅限于单片状态。也就是说,主题np语句一次只能包含一个变量参数。现有零知识技术的另一个限制是计算开销很大,有待改进。这是因为,例如,此类技术通常需要进行多次迭代(例如,多次迭代查找多项式方程的算术根),才能达到可接受的较小(例如,可忽略不计的)合理性误差。合理性误差是指以下特性:如果np语句为假,证明方不能错误地让验证方相信np语句为真,除非概率小到可以接受的程度。

4、因此,需要一种涉及零知识证明的安全信息交换的方法、装置和系统,以克服或减少现有技术中的一个或多个限制。

5、本背景信息旨在提供可能与本公开相关的信息。并不旨在承认也不应解释为前述任何信息构成与本公开相对的现有技术。


技术实现思路

1、本公开的实施例提供了一种零知识证明方法、装置和系统。具体地,实施例展示了多片语法能力和联合验证的属性。本公开的实施例可应用于安全信息交换、密码学、用户或设备认证、安全计算、区块链或其它计算或通信技术。

2、根据本公开的实施例,提供了一种用于执行零知识证明的方法。所述方法包括:由证明方对要证明的语句执行多片语法分解(polylithic syntax decomposition)。所述方法还包括:由所述证明方在多片语法分解后生成指示所述语句的混淆电路(garbledcircuit)。所述方法还包括:由所述证明方将所述混淆电路分为多个混淆电路部分,这些部分共同构成分区的混淆电路。所述方法还包括:由所述证明方通过共享仓库(sharedrepository)向多个验证方发送所述分区的混淆电路。所述方法还包括:由所述多个验证方联合计算所述混淆电路的摘要(digest),其中所述多个验证方中的每个验证方计算所述多个混淆电路部分中对应的一个混淆电路部分的输出。所述方法还包括:由属于所述多个验证方的聚合方(aggregator)计算共同应用于所述多个混淆电路部分的所有所述输出的统一布尔运算(unified boolean operation)的值。所述方法还包括:由所述聚合方确定所述统一布尔运算的所述值是否等于预期值,并指示当且仅当所述统一布尔运算的所述值等于所述预期值时所述证明得到验证。

3、在一些实施例中,所述语句具有多个方面或变量,并且所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示(boolean circuit representation)。在这些实施例中,所述混淆电路是由布尔电路表示生成的。

4、在一些实施例中,所述方法还包括将所述语句转换为一个或多个正则表达式,并从所述正则表达式生成布尔电路表示。所述混淆电路直接或间接地从所述布尔电路表示中生成。在其它实施例中,所述方法还包括在所述布尔电路表示上实现卡诺图运算(karnaughmap operation),以生成所述布尔电路表示的简化版本。在这些其它实施例中,所述混淆电路直接或间接地从所述布尔电路表示的简化版本生成。

5、在一些实施例中,使用非交互式不经意传输执行向多个验证方发送所述分区的混淆电路。

6、在一些实施例中,所述方法还包括执行多方不经意传输方案,以促进所述证明方和所述验证方之间的交互和/或所述验证方之间的交互。

7、根据本公开的实施例,提供了一种装置,该装置包括可操作地耦合到存储器的处理器,并且用于通过所述处理器执行存储在所述存储器中的程序指令,以执行如上所述的方法。

8、根据本公开的实施例,提供了一种包括多个计算设备的系统,所述计算设备协同用于执行如上所述的方法。

9、根据本公开的实施例,提供了一种计算机程序产品,所述计算机程序产品包括其上存储有指令的非瞬时性计算机可读介质,当所述指令由计算机处理器执行时,使所述计算机执行如上所述的方法。

10、根据本公开的实施例,提供了一种用于执行上述方法的装置。所述装置可以是具有可操作地耦合到存储器的处理器的计算设备,所述存储器存储由所述处理器执行的程序指令,以便执行根据所述方法的运算。所述装置可以是多个计算设备。

11、根据本公开的实施例,提供了一种用于执行上述方法的系统。所述系统可以包括多个计算设备,每个计算设备具有可操作地耦合到相应存储器的相应处理器。每个相应的存储器存储由所述相应的处理器执行的程序指令,以便根据所述方法执行运算。所述系统可以包括由证明方操作的计算设备和由一个或多个验证方中的每个相应验证方操作的其它计算设备。所述系统可以包括由协调方操作的中间计算设备,所述协调方不一定是证明方,或验证方之一。

12、根据实施例,所述系统包括证明方计算设备和多个验证方计算设备。所述证明方计算设备用于:对要证明的语句进行多片语法分解;在多片语法分解后生成指示所述语句的混淆电路;将所述混淆电路分为多个混淆电路部分,上述部分共同构成分区的混淆电路;以及通过共享仓库向所述多个验证方设备发送所述分区的混淆电路。所述多个验证方计算设备用于:联合计算所述混淆电路的摘要,其中,所述多个验证方设备中的每个验证方设备计算所述多个混淆电路部分中对应的一个混淆电路部分的输出。属于所述多个验证方设备的聚合方设备用于:计算共同应用于所述多个混淆电路部分的所有所述输出的统一布尔运算的值;以及确定所述统一布尔运算的所述值是否等于预期值,并指示当且仅当所述统一布尔运算的所述值等于所述预期值时所述证明得到验证。

13、根据实施例,提供了一种方法,包括由证明方(如计算设备)进行的多个操作。所述方法包括对要证明的语句执行多片语法分本文档来自技高网...

【技术保护点】

1.一种用于执行零知识证明的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述语句具有多个方面或变量,并且其中,所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示,所述混淆电路从所述布尔电路表示生成。

3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括将所述语句转换为一个或多个正则表达式,并从所述正则表达式生成布尔电路表示,所述混淆电路直接或间接从所述布尔电路表示生成。

4.根据权利要求3所述的方法,其特征在于,所述方法还包括在所述布尔电路表示上实现卡诺图运算,以产生所述布尔电路表示的简化版本,所述混淆电路直接或间接从所述布尔电路表示的所述简化版本生成。

5.根据权利要求1至4中任一项所述的方法,其特征在于,使用非交互式不经意传输执行向多个验证方发送所述分区的混淆电路。

6.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括执行多方不经意传输方案,以促进所述证明方和所述验证方之间的交互和/或所述验证方之间的交互。

7.一种计算机程序产品,其特征在于,所述计算机程序产品包括其上存储有指令的非瞬时性计算机可读介质,当所述指令由计算机处理器执行时,使计算机执行根据权利要求1至6中任一项所述的方法。

8.一种系统,其特征在于,所述系统包括:

9.根据权利要求8所述的系统,其特征在于,所述语句具有多个方面或变量,并且其中,所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示,所述混淆电路从所述布尔电路表示生成。

10.根据权利要求8或9所述的系统,其特征在于,所述证明方设备还用于:将所述语句转换为一个或多个正则表达式,并从所述正则表达式生成布尔电路表示,所述混淆电路直接或间接从所述布尔电路表示生成。

11.根据权利要求10所述的系统,其特征在于,所述证明方设备还用于在所述布尔电路表示上实现卡诺图运算,以产生所述布尔电路表示的简化版本,所述混淆电路直接或间接从所述布尔电路表示的所述简化版本生成。

12.根据权利要求8至11中任一项所述的系统,其特征在于,所述证明方设备用于使用非交互式不经意传输向所述多个验证方设备发送所述分区的混淆电路。

13.根据权利要求8至12中任一项所述的系统,其特征在于,所述证明方设备和所述验证方设备和/或多个验证方设备用于执行多方不经意传输方案,以促进所述证明方设备和所述验证方设备和/或多个验证方设备之间的交互。

14.一种用于执行零知识证明的方法,其特征在于,所述方法包括:

15.根据权利要求14所述的方法,其特征在于,所述语句具有多个方面或变量,并且其中,所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示,所述混淆电路从所述布尔电路表示生成。

16.据权利要求14或15所述的方法,其特征在于,所述方法还包括将所述语句转换为一个或多个正则表达式,并从所述正则表达式生成布尔电路表示,所述混淆电路直接或间接从所述布尔电路表示生成。

17.根据权利要求16所述的方法,其特征在于,所述方法还包括在所述布尔电路表示上实现卡诺图运算,以产生所述布尔电路表示的简化版本,所述混淆电路直接或间接从所述布尔电路表示的所述简化版本生成。

18.根据权利要求14至17中任一项所述的方法,其特征在于,使用非交互式不经意传输执行向所述多个验证方发送所述分区的混淆电路。

19.根据权利要求14至18中任一项所述的方法,其特征在于,所述方法还包括执行多方不经意传输方案,以促进所述证明方和所述验证方之间的交互。

20.一种用于执行零知识证明的方法,其特征在于,所述方法包括:

21.根据权利要求20所述的方法,其特征在于,所述方法还包括执行多方不经意传输方案,以促进所述证明方设备和所述验证方之间的交互和/或所述多个验证方之间的交互。

22.一种计算机程序产品,所述计算机程序产品包括其上存储有指令的非瞬时性计算机可读介质,当所述指令由计算机处理器执行时,使所述计算机执行根据权利要求14至21中任一项所述的方法。

23.一种计算设备,其特征在于,包括处理器、存储器和网络接口,并且所述计算设备用于:

24.根据权利要求23所述的计算设备,其特征在于,所述语句具有多个方面或变量,并且其中,所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示,所述混淆电路从所述布尔电路表示生成。

25.根据权利要求23或24所述的计算设备,其特征在于,所述计算设备还用于将...

【技术特征摘要】
【国外来华专利技术】

1.一种用于执行零知识证明的方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,所述语句具有多个方面或变量,并且其中,所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示,所述混淆电路从所述布尔电路表示生成。

3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括将所述语句转换为一个或多个正则表达式,并从所述正则表达式生成布尔电路表示,所述混淆电路直接或间接从所述布尔电路表示生成。

4.根据权利要求3所述的方法,其特征在于,所述方法还包括在所述布尔电路表示上实现卡诺图运算,以产生所述布尔电路表示的简化版本,所述混淆电路直接或间接从所述布尔电路表示的所述简化版本生成。

5.根据权利要求1至4中任一项所述的方法,其特征在于,使用非交互式不经意传输执行向多个验证方发送所述分区的混淆电路。

6.根据权利要求1至5中任一项所述的方法,其特征在于,所述方法还包括执行多方不经意传输方案,以促进所述证明方和所述验证方之间的交互和/或所述验证方之间的交互。

7.一种计算机程序产品,其特征在于,所述计算机程序产品包括其上存储有指令的非瞬时性计算机可读介质,当所述指令由计算机处理器执行时,使计算机执行根据权利要求1至6中任一项所述的方法。

8.一种系统,其特征在于,所述系统包括:

9.根据权利要求8所述的系统,其特征在于,所述语句具有多个方面或变量,并且其中,所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示,所述混淆电路从所述布尔电路表示生成。

10.根据权利要求8或9所述的系统,其特征在于,所述证明方设备还用于:将所述语句转换为一个或多个正则表达式,并从所述正则表达式生成布尔电路表示,所述混淆电路直接或间接从所述布尔电路表示生成。

11.根据权利要求10所述的系统,其特征在于,所述证明方设备还用于在所述布尔电路表示上实现卡诺图运算,以产生所述布尔电路表示的简化版本,所述混淆电路直接或间接从所述布尔电路表示的所述简化版本生成。

12.根据权利要求8至11中任一项所述的系统,其特征在于,所述证明方设备用于使用非交互式不经意传输向所述多个验证方设备发送所述分区的混淆电路。

13.根据权利要求8至12中任一项所述的系统,其特征在于,所述证明方设备和所述验证方设备和/或多个验证方设备用于执行多方不经意传输方案,以促进所述证明方设备和所述验证方设备和/或多个验证方设备之间的交互。

14.一种用于执行零知识证明的方法,其特征在于,所述方法包括:

15.根据权利要求14所述的方法,其特征在于,所述语句具有多个方面或变量,并且其中,所述多片语法分解包括使用多个线路和多个门生成所述语句的布尔电路表示,所述混淆电路从所述布尔电路表示生成。

1...

【专利技术属性】
技术研发人员:孙晟童文
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1