零知识有条件支付:真正做到「一手交钱、一手交货」

当前位置:首页 > 币圈百科 > 零知识有条件支付:真正做到「一手交钱、一手交货」

零知识有条件支付:真正做到「一手交钱、一手交货」

2022-11-30币圈百科388

如果我们现在要交易,我想把我的数据卖给你,最安全的交易是怎样的?

显然,这里会出现两个问题:

1。因为我卖数据,所以不能直接给你。不然拿到数据跑了怎么办?

2。但是我肯定不能先拿你的钱,因为可能我给你的数据不符合你的要求,或者我拿了钱跑了。

要解决以上问题,需要一个完善准确的“一手交钱一手交货”方案。这时候零知识证明和区块链就可以派上用场了。

在这篇文章中,SECBIT实验室创始人郭宇用一种普通人尽可能听得懂的语言完整地解释了这样一个有趣的解决方案:零知识有条件付费。

很少有像郭灿先生这样有学术背景的从业者亲自为我们小白解释一个具体的技术原理。这篇文章看三遍就明白了。同学们要抓住这个机会,好好学习~

原标题:《有趣的「零知识有条件支付」:真正完美的「一手交钱一手交货」是什么样的?》作者:郭宇,

,SECBIT实验室创始人,以下是正文:

零知识有条件支付:真正做到「一手交钱、一手交货」比特币核心团队Greg Maxwell早在2011年就提到了一个非常非常牛逼的概念:

ZKCP—“零知识有条件支付”3359EN

简单来说,就是达成一个_完美而公平的”_一手交钱一手交货

敲黑板这里。我在上面的句子中使用了三个学术俚语。想象一个交易场景。如果双方都不放心有第三方在场,谁也不愿意先给对蓑衣网小编2022方打款/发货,否则对方会跑路。一手交钱一手交货是指交钱/交货动作必须是原子性的(说白了就是:要么交易完成,要么不交易,任何一方都没有违约的余地)。

所谓完全公平,就是任何一方都不能占更多的小便宜。然而,这个概念并不是格雷格最初的想法。这是一个老话题。早在20世纪80蓑衣网小编2022 年代,许多学者就在研究如何实现完美的公平交易。但长期以来,人们一致认为,一个可信的第三方是必不可少的。后来比特币诞生的时候,格雷格敏锐地意识到,可以利用比特币这个不可信的第三方来完成。

在2016年发表的一篇博文中,Greg宣布,他与来自ZCash团队的Sean Bowe等人一起,演示了如何借助比特币(作为不可信的第三方)进行一次完美的公平交易。演示演示了如何完美公平地交易一个16x16的数独答案。

接下来,请原谅我用非常隐晦的语言解释ZKCP原理。

Greg的ZKCP方案使用了ZKSARKS技术。首先,大家需要知道ZKSARKS能做什么。传说中的zksnarks可以提供一个零知识证明。能证明什么?证明一个已知算法的计算过程是否真实发生过(白话:地球人都知道的一段程序代码是否曾经运行过)。

这个计算过程可以发生在一个遥远的星球上,程序运行过程顺带产生一个证书,这个证书可以送回地球验证。如果验证通过,那么我们就可以知道一个已知的程序确实在一个遥远的星球上运行过,程序的输入是某个未知数。

最难的部分已经做完了。如果你不明白,就不要读下去。

假设卖方A和买方B要交易一个数D,此时买方B要提前知道D是否是自己想要的,B会提供一个函数F()来判断D是否满足B的要求,A得到F后,运行F(D)。如果返回true,那么A继续使用一个加密函数E()得到密文D'=E(K,D),其中K是A为这次交易新生成的随机数,然后A计算hash (k)=h.

接下来,A给B三样东西,第一是密钥的hash值H,第二是加密数据D ',第三是zksnarks生成的计算过程证明。 计算过程是:F(D)=true;E(K,D)=D ',HASH(K)=H .b最后,构造一个比特币脚本:声明任何提供H的前像的人(即任何拥有K的人)都可以花费脚本带来的0.1 BTC。最后,A发起交易,提供K,取钱;从B的区块链看到K,解密D 蓑衣网小编2022'得到D.

当我们回头看的时候,比特币脚本提供了一个原子操作(说白了就是:一手支付密钥,一手交付back同时,zksnarks技术提供了零知识证明,保证了在B的BTC被A拿走之前,B无法得到D,从而实现了完美的公平性。

零知识有条件支付:真正做到「一手交钱、一手交货」 | 分享给朋友: