在比特币中,每个区块的出块时间被设置为10分钟,为什么需要10分钟呢?按照常识来说,出块速度越快可以打包的交易就越多,系统的吞吐率也就越高。
- ...more
深入理解比特币脚本
...more每一笔交易除了铸币交易(coinbase)外,每一笔交易都拥有至少一个输入(TxIn)和至少一个输出(TxOut),和我们直觉上理解的交易的TxIn和TxOut应该是数字不太一样,在比特币中是以脚本的形式存在。
比特币挖矿原理
...more比特币网络中,源源不断的收到交易,需要节点不断的打包这些交易,而网络中的所有节点都是对等的,如何判断谁可以打包这些交易,如何避免重复打包这些交易呢?
UTXO模型和Account模型对比
...more目前主流的区块链采用
UTXO(Unspent Transaction Output)
和账户(Account)
模型来组织交易,其中比特币采用UTXO模型,以太坊采用Account模型。默克尔证明
...more假设有这样一种场景需要用到比特币支付,支付完成以后我需要向对方证明这笔交易已经写到区块中了,比较容易想到的办法就是拿到打包交易的对应区块,然后对比区块中的所有交易来确认是否已经被打包其中。
P2P网络核心技术之Gossip协议
...more在Hyperledger Fabric中,节点间同步数据采用的是
Gossip
协议,当节点因为异常缺少账本数据时,可以通过Gossip
协议从邻近的节点获得账本数据,保证集群中节点账本的一致性。以太坊区块结构
...more区块就是交易的集合,公链链或者联盟链将交易打包成区块以后会进行持久化存储。
Merkle Patricia Tree (MPT) 树详解之实际应用(三)
...more以太坊区块中有三颗MPT树,分别是状态树,交易树,收据树 ,分别存储了以太坊中的世界状态,本区块的交易,本区块的交易回执,其中交易和交易回执是一一对应的。
Merkle Patricia Tree (MPT) 树详解之数据持久化(二)
...more在「Merkle Patricia Tree (MPT) 树详解之数据结构(一)」介绍了以太坊MPT树的结构,但是如何将MPT树持久化呢?以太坊采用LevelDB做数据库,如何将MPT树的节点映射成键值对存储到LevelDB呢?
Merkle Patricia Tree (MPT) 树详解之数据结构(一)
...more在之前的EVM系列的文章中,其实一直有一个问题没有解决,那就是Storage持久化的数据最终是以什么样的形式,保存在哪里?数以万计的合约有数以万计的storage变量,这些变量如何快速的读写?