Blockchain 什么';这是仲裁区块链上公共交易和私人交易的区别

Blockchain 什么';这是仲裁区块链上公共交易和私人交易的区别,blockchain,Blockchain,我搜索了这么多的网站和博客,但没有得到Quorum区块链中公共交易和私人交易的确切区别?我似乎很清楚- 公共事务以标准以太坊方式执行,因此,如果将公共事务发送到持有合同代码的帐户,则每个参与者将执行相同的代码,其基础StateDB将相应更新 但是,私有事务不是按照标准以太坊执行的:在发送方的仲裁节点将事务传播到网络的其余部分之前,它将原始事务负载替换为从Constellation/Tessera接收的加密负载的散列。作为交易一方的参与者将能够通过其Constellation/Tessera实例用

我搜索了这么多的网站和博客,但没有得到Quorum区块链中公共交易和私人交易的确切区别?

我似乎很清楚-

公共事务以标准以太坊方式执行,因此,如果将公共事务发送到持有合同代码的帐户,则每个参与者将执行相同的代码,其基础StateDB将相应更新

但是,私有事务不是按照标准以太坊执行的:在发送方的仲裁节点将事务传播到网络的其余部分之前,它将原始事务负载替换为从Constellation/Tessera接收的加密负载的散列。作为交易一方的参与者将能够通过其Constellation/Tessera实例用实际有效负载替换哈希,而非参与者将只看到哈希

结果是,如果将私人交易发送到持有合同代码的帐户,则非交易方的参与者将跳过交易,因此不会执行合同代码。但是,作为事务一方的那些参与者将在调用EVM执行之前用原始有效负载替换哈希,并且他们的StateDB将相应地更新。如果没有对geth客户机进行相应的更改,这两组参与者最终将拥有不同的StateDBs,无法达成共识。因此,为了支持合同状态的这种分歧,Quorum将公共合同状态存储在全局同步的公共状态Trie中,并将私人合同状态存储在非全局同步的私有状态Trie中。有关如何就此达成共识的详细信息,请参阅共识一节


公共交易与常规Eth交易类似,而私人交易似乎是限制能够在交易中成功执行智能合约的网络实体数量的一种方式。作为一个类比,考虑互联网和HTTP vs HTTPS网站。当您使用http时,网络中的任何人(您和远程站点之间的任何人)都可以窥探您的流量并知道您在做什么。在https中,只有目标站点和您可以知道自己在做什么。这两种流量类型都是在公共网络上传输的,可以看到各方之间的一些数据流,但这两种数据对每个人都有意义,还是只有一些有权访问的人才有意义,这是区别。同样的,每个人都可以看到公共合同并根据其行事,只有某些人可以看到私人合同并根据其行事。它在更大的人群中建立了知道秘密的小群体

仲裁区块链中的公共交易与以太坊中的交易完全相同。它们只修改区块链的公共状态。 而私人交易是通过指定额外的feildprivateFor以及其他feild来完成的。其中,我们给出了节点的星座公钥,该节点的事务应该是私有的。 在私有事务中,仅p修改为其执行事务的各个节点的rivate状态。 并且不能在同一事务中同时修改仲裁中的公共和私有状态。 希望它能为您提供一个起点,了解更多信息