Ethereum
文章平均质量分 78
Non_咕咚
focus on distributed system,blockchain tech,consensus science,programming languages,crypto,game theory
展开
-
君士坦丁堡可造成新的重入攻击
即将到来的以太坊网络Constantinople升级为SSTORE操作引入了更便宜的gas成本。作为一种不必要的副作用,当在Solidity智能合约中使用address.transfer(…)或address.send(…)时,这可能引发重入攻击。以前,这些函数被认为是重入安全的,现在它们不再安全。这段代码出了什么问题?以下是一个简短的智能合约,在Constantinople之前不易受到重入攻...翻译 2019-01-16 21:48:01 · 395 阅读 · 0 评论 -
以太坊小知识(六)——refund gas计算
准备知识以太坊黄皮书拜占庭版本中编号为65的公式刻画了单个交易执行结束后,总的可返还的gas的计算方法。refund gas就是要计算等式右边第二个项,即min( , )。其中Ar的含义如下【在黄皮书6.1节】:下面的代码是geth(core/state_transition.go)中对编号为65的公式的实现:func (st *StateTransition) refundGas(...原创 2019-01-21 22:40:04 · 1026 阅读 · 0 评论 -
以太坊小知识(五)——difficulty、totalDifficulty、cumulativeGasUsed、gasUsed
difficulty & totalDifficultyeth.getBlock(22)输出:{ difficulty: 17247064057, extraData: "0x476574682f6b6c6f737572652f76312e302e302d66633739643332642f6c696e ...原创 2019-01-11 00:11:39 · 2220 阅读 · 0 评论 -
以太坊Ethereum 2.0研发资料
以太坊2.0主要由Casper+Sharding(即Shasper)、以太坊下一代虚拟机EWASM等旨在改进以太坊1.0的基础层的项目。Shasper项目Must readSharding FAQs以太坊Ethereum2.0规范Shasper路线图Shasper技术路线图分为7个阶段。预计完整实施得到2020年了。Shasper工程实现目前有多个团队在对以太坊2.0规范进行工...原创 2018-10-08 22:21:04 · 747 阅读 · 0 评论 -
区块链:安全和隐私
区块链course课程1,ETH Zürich, spring 2018 课程2, Illinois,fall 2016 课程3, Standford,亮点是4个project智能合约安全EVM资料 todo系统安全todo网络安全todo共识Rethinking Large-Scale Consensus 术语false positive ...原创 2018-08-16 23:28:48 · 818 阅读 · 0 评论 -
以太坊小知识(四)—— Q&A
1、以太坊tps的理论计算方式The block gas limit is 7,999,992 Transaction costs 21,000 gas (let’s assume nothing else is attached) That’s ~380 transactions per block With a block time of around 15....原创 2018-08-01 00:03:24 · 784 阅读 · 0 评论 -
详尽的Casper v2
这是描述Casper + Sharding链第2版规范的工作进度文档。与早期版本严重依赖现有的以太坊PoW链作为中心链相比,本版本规范将基于RANDAO 信标,证明和Casper FFG机制的权益证明链作为基础,与PoW主链相对简单,包括块引用和单向存款。结构的宽泛描述有一条中心PoS链存储和管理当前活跃的PoS验证者集合。最初成为一名验证者唯一可用的机制是在现有的PoW主链上发送一条包含...翻译 2018-07-15 17:50:29 · 505 阅读 · 0 评论 -
notes on Scaling Ethereum with Raul Jordan and Preston Van Loon
播客很长,讲的干货很多,这里只梳理的部分干货。笔记1、不同的扩容解决方案,在去中心化,可扩展性和安全之间都有权衡。2、比特币扩容主要解决方案是闪电网络。3、已有的区块链面临一种局面,那就是如果你想创建一个去中心化的账本,那需要网络中的每一个node确认和验证交易,最终是获得了安全性但很慢。4、有两种不同的扩容方法。L1 (Layer 1)方案是修改区块链核心协议,需要硬分叉...原创 2018-07-15 14:36:58 · 393 阅读 · 0 评论 -
《GoEthereum Walkthrough》学习笔记(一)
不要试图使用Windows作者在这里建议我们不要用Windows来构建或调试go-ethereum。【注】事实上,在Windows上构建或调试go-ethereum也是可以的。安装geth下载go-ethereum源码,获取所有的依赖,并构建geth。这一步比较常规。这里就不展开。创建新的私有以太坊网络这一步也比较常规。这里就不展开。启动新的以太坊网络您可以...原创 2018-07-25 01:09:33 · 594 阅读 · 0 评论 -
以太坊小知识(二)——区块生成机制
Question:以太坊go-ethereum中,当一个miner找到一个新区块时,会将结果Result发送到管道returnCh中。那接下来的逻辑是怎样的呢?//miner/agent.gofunc (self *CpuAgent) mine(work *Work, stop <-chan struct{}) { if result, err := self.原创 2018-07-07 00:50:05 · 3545 阅读 · 0 评论 -
Debug以太坊go-ethereum实战
软硬件环境OS:macOS amd64geth version:go-ethereum v1.6.7IDE:golandgo version:go1.10.1 darwin/amd64搭建go-ethereum本地化开发环境搭建过程这里不细讲,具体可以参考Windows下搭建btcd本地化开发环境。只不过本文使用goland作为IDE。安装geth$ go instal...原创 2018-07-18 19:08:29 · 2723 阅读 · 2 评论 -
如何扩展以太坊:分片原理解释
【博主注】Raul Jordan(以太坊2.0开发者)在7月10号将以太坊2.0最新研究变化反映在了原文中,原文发表于今年1月,具体的变化主要包括信标链,验证者注册合约(弃用验证者管理合约),跨链路,以及成为一名验证者的门槛(抵押30ETH),相关学习资源链接等。【声明】最初的中译本发于以太坊爱好者,但是不能反映有关分片技术最新的变化。但除了涉及分片技术的部分有较大改动外,其他部分均保持不变。...翻译 2018-07-16 14:18:34 · 1025 阅读 · 0 评论 -
以太坊小知识(三)——区块奖励机制浅析
以太坊的区块奖励机制以太坊,区块奖励有三部分,它们是区块奖励(类似比特币中的50BTC),交易费(这一部分比特币中也有)和叔伯块奖励(这一部分比特币中没有)。以太坊的区块奖励以太坊中,每个区块奖励是5ether。blockReward *big.Int = big.NewInt(5e+18) // Block reward in wei for successfully minin...原创 2018-07-09 16:53:03 · 5128 阅读 · 0 评论 -
Remix调试solidity之疑问
问题描述:为什么将0x80存在内存位置0x50?指令序列:0000 PUSH1 800002 PUSH1 400004 MSTORE0005 CALLVALUE栈Stack:0: 0x0000000000000000000000000000000000000000000000000000000000000000内存Memory:0x0: 0000000000000000000...原创 2019-02-16 15:09:41 · 780 阅读 · 1 评论