在以太坊上使用的随机数来源主要有链上和链下两种途径,其中链上生成核心要解决随机数生成种子的不可预测性。
以太坊在去年升级的go-ethereum(geth)1.9.0大版本,除了性能得到大幅提升之外,引入了GraphQL,一种节点接口查询机制,用以补充JSON-RPC。
找遍中文资料,没有哪篇文章能对以太坊工作量证明有一个全面的介绍。对于没有把数学学会的同学来说,如果希望从算法层了解以太坊的工作量证明是非常困难的。一本黄皮书会难倒一大批吃瓜群众。因此,本文将试图使用图文和尽量简单的数学来解释以太坊挖矿工作量证明,包括以太坊是如何对抗ASIC1、如何动态调整挖矿难度、如何校验挖矿正确性的。
通过本文,你会了解到:1、典型区块链网络的治理机制有哪些;2、什么是链上治理;3、Kusama网络的治理机制。
比特币中使用哈希指针保存前一个区块头的哈希值,将多个区块连接成一条链,保证了区块链的不可篡改特性。比特币还使用梅克尔树保存区块体中的交易数据,从最底层的交易数据通过哈希指针层层传递到根哈希,浓缩了所有的交易数据,提高了篡改交易的难度。梅克尔树还提供交易数据隶属证明和非隶属证明的高效方法,时间复杂度均为O(log N)。
预言机本质上是一种数据调用和访问的中间件。本文从预言机的起源开始,详细对比中心化预言机Oracle与去中心化预言机Chainlink。
种子是怎么一步步生成地址的?为何种子能管理那么多地址?为何能在不生成私钥的情况下直接派生出很多公钥?本文为您揭晓。
看看如何利用OpenZeppelin Upgrades 为我们的合约插上可升级的翅膀.
在我们基于智能合约做应用的时候,很多时候需要创建同一个合约的很多份实例。这里有个更省 gas 费的做法。
在编写合约时,有时候需要使用汇编来帮助我们完成Solidity没法完成的事情(得益于汇编可以直接与EVM交互), 本文介绍了使用汇编的优缺点及如何在Solidity中编写汇编。