君士坦丁堡分叉引起的安全问题
摘要:君士坦丁堡分叉引起的安全问题 <! @import "[TOC]" {cmd="toc" depthFrom=1 depthTo=6 orderedList=false} 一. 什么是君士坦丁堡分叉 君士坦丁堡是最近以太坊的大事,主要做了一下改进 EIP 145:由两位以太坊开发人员Alex Ber
阅读全文
posted @
2019-01-18 22:40
baizx
阅读(502)
推荐(0) 编辑
从一起“盗币”事件再谈合约安全问题
摘要:从一起“盗币”事件再谈合约安全问题 <! @import "[TOC]" {cmd="toc" depthFrom=1 depthTo=6 orderedList=false} 本来是受到 "从一起“盗币”事件看以太坊存储 hash 碰撞问题" 一文启发,但是我并不太认同文中的观点.并且文中有一些技
阅读全文
posted @
2018-11-15 12:05
baizx
阅读(1583)
推荐(0) 编辑
Plasma Cash合约解读
摘要:Plasma Cash合约解读 "SmartPlasma 合约解读" "1. 合约代码" "2. 合约文件简单介绍" "3. Plasma Cash 的基础数据结构" "3.1 Plasma Cash 中的资产" "3.2 Plasma Cash中的交易" "3.3 Plasma Cash 中的 B
阅读全文
posted @
2018-09-14 21:46
baizx
阅读(632)
推荐(0) 编辑
比特币指令集
摘要:比特币指令集 本文主要译自 "比特币 wiki" 约定 数字是小端编码,也就是遵循英特尔处理器的规则 整数的编码规则是最高位表示付好,对于一个字节的整数,0x81表示 1,0x80表示负0,0x03 表示3,0x83表示 3 0表示 False, 其他表示 True 常数指令 名字 | 指令| 十
阅读全文
posted @
2018-08-14 17:29
baizx
阅读(1979)
推荐(0) 编辑
以太坊系列之十八: 百行go代码构建p2p聊天室
摘要:百行go代码构建p2p聊天室 "百行go代码构建p2p聊天室" "1. 上手使用" "2. whisper 原理" "3. 源码解读" "3.1 参数说明" "3.1 连接主节点" "3.2 我的标识" "3.2 配置我的节点" "3.3 哪个聊天室" "3.3 加入聊天室" "3.4 群发消息"
阅读全文
posted @
2017-09-11 15:07
baizx
阅读(6511)
推荐(1) 编辑
以太坊系列之十: 使用Etherum Wallet(Mist)连接私有链
摘要:使用Etherum Wallet(Mist)连接私有链 "使用Etherum Wallet(Mist)连接私有链" 连接私有链) "首先启动geth" "启动钱包(Mist)" ) 直接启动Mist的时候,钱包会直接连接公有链,而在开发过程中,我们希望连接私有链. 首先启动geth 先启动geth,
阅读全文
posted @
2017-08-03 11:57
baizx
阅读(4936)
推荐(0) 编辑
以太坊系列之九: 从零一步一步搭建以太坊私有链
摘要:从零一步一步搭建以太坊私有链 我会说明一步一步怎么做,同时说明可能的注意事项。 1.下载geth 这一步网上很多,就不细说了,windows的,linux的,mac都有。 2. 创建genesis.json 关于genesis文件的介绍,在此处:http://blog.csdn.net/sports
阅读全文
posted @
2017-08-02 15:42
baizx
阅读(2740)
推荐(0) 编辑
以太坊系列之七: p2p模块的dial--以太坊源码学习
摘要:dial.go阅读手记 dial.go是负责和peer建立连接关系的地方,主要是实现 其中最复杂的是newTasks,是建立新的连接,从test代码中可以看出, 要在指定的最大连接数(peers)基之上去创建新的连接 lookupBuf // current discovery lookup res
阅读全文
posted @
2017-06-08 16:43
baizx
阅读(3635)
推荐(0) 编辑
以太坊系列之六: p2p模块--以太坊源码学习
摘要:p2p模块 p2p模块对外暴露了Server关键结构,帮助上层管理复杂的p2p网路,使其集中于Protocol的实现,只关注于数据的传输. Server使用discover模块,在指定的UDP端口管理网络中结点的发现以及维护,discover模块能够直接和临近结点交换各自已知结点信息,从而不断的更新
阅读全文
posted @
2017-06-08 16:42
baizx
阅读(3062)
推荐(1) 编辑
以太坊系列之三: 以太坊的crypto模块--以太坊源码学习
摘要:以太坊的crypto模块 该模块分为两个部分一个是实现sha3,一个是实现secp256k1(这也是比特币中使用的签名算法). 需要说明的是secp256k1有两种实现方式,一种是依赖libsecp256k1,需要cgo,另外一种是依赖 "github.com/btcsuite/btcd" ,这是一
阅读全文
posted @
2017-06-03 09:21
baizx
阅读(12717)
推荐(2) 编辑
以太坊系列之二: 单调时间monotime-以太坊源码学习
摘要:在程序中需要测量时间时最好使用monotime.Now()而不是time.Now(),相比之下前者更准确. 来个示例: 可以看到,精确到毫秒级 ,以太坊中用来度量时间
阅读全文
posted @
2017-06-01 14:35
baizx
阅读(2641)
推荐(1) 编辑
以太坊系列之一: 以太坊RLP用法-以太坊源码学习
摘要:"RLP" (递归长度前缀)提供了一种适用于任意二进制数据数组的编码,RLP已经成为以太坊中对对象进行序列化的主要编码方式。RLP的唯一目标就是解决结构体的编码问题;对原子数据类型(比如,字符串,整数型,浮点型)的编码则交给更高层的协议;以太坊中要求数字必须是一个大端字节序的、没有零占位的存储的格式
阅读全文
posted @
2017-06-01 14:15
baizx
阅读(10778)
推荐(1) 编辑