死磕以太坊源码分析之EVM动态数据类型

死磕以太坊源码分析之EVM动态数据类型 配合以下代码进行阅读:https://github.com/blockchainGuide/ 写文不易,给个小关注,有什么问题可以指出,便于大家交流学习。 Solidity提供了在其他编程语言常见的数据类型。除了简单的值类型比如数字和结构体,还有一些其他数据类 ... »

死磕以太坊源码分析之EVM指令集

死磕以太坊源码分析之EVM指令集 配合以下代码进行阅读:https://github.com/blockchainGuide/ 写文不易,给个小关注,有什么问题可以指出,便于大家交流学习。 以下指令集持续更新,最新文章请参考上面 EVM 指令集概念 EVM执行的是字节码。由于操作码被限制在一个字节以 ... »

死磕密码学|ECDSA算法

死磕密码学|ECDSA算法 文章资料代码请star https://github.com/blockchainGuide/ 生成签名 假设 Alice 希望对消息$m$进行签名,所采用的椭圆曲线参数为$D=(p,a,b,G,n,h)(,对应的密钥对为)(k,Q)$,其中为公钥$Q$,$k$为私钥 ... »

死磕以太坊源码分析之state

死磕以太坊源码分析之state 配合以下代码进行阅读:https://github.com/blockchainGuide/ 希望读者在阅读过程中发现问题可以及时评论哦,大家一起进步。 源码目录 |-database.go 底层的存储设计 |-dump.go 用来dumpstateDB数据 |-it ... »

死磕以太坊源码分析之MPT树-下

死磕以太坊源码分析之MPT树-下 文章以及资料请查看:https://github.com/blockchainGuide/ 上篇主要介绍了以太坊中的MPT树的原理,这篇主要会对MPT树涉及的源码进行拆解分析。trie模块主要有以下几个文件: |-encoding.go 主要讲编码之间的转换 |-h ... »

死磕以太坊源码分析之MPT树-上

死磕以太坊源码分析之MPT树-上 前缀树Trie 前缀树(又称字典树),通常来说,一个前缀树是用来存储字符串的。前缀树的每一个节点代表一个字符串(前缀)。每一个节点会有多个子节点,通往不同子节点的路径上有着不同的字符。子节点代表的字符串是由节点本身的原始字符串,以及通往该子节点路径上所有的字符组成的 ... »

死磕以太坊源码分析之txpool

死磕以太坊源码分析之txpool 请结合以下代码阅读:https://github.com/blockchainGuide/ 写文章不易,也希望大家多多指出问题,交个朋友,混个圈子哦 交易池概念原理 交易池工作概况: 交易池的数据来源主要来自: 本地提交,也就是第三方应用通过调用本地以太坊节点的RP ... »

死磕以太坊源码分析之区块上链入库

死磕以太坊源码分析之区块上链入库 配合以下代码进行阅读:https://github.com/blockchainGuide/ 写文不易,给个小关注,有什么问题可以指出,便于大家交流学习。 引言 不管是矿工挖矿还是Fetcher同步,Downloader同步,或者是导入本地文件等等,最中都是将区块上 ... »

死磕以太坊源码分析之downloader同步

死磕以太坊源码分析之downloader同步 需要配合注释代码看:https://github.com/blockchainGuide/ 这篇文章篇幅较长,能看下去的是条汉子,建议收藏 希望读者在阅读过程中,指出问题,给个关注,一起探讨。 概览 downloader 模块的代码位于 eth/down ... »

以太坊blockchain源码分析

blockchain关键元素 db:持久化到底层数据储存,即leveldb; genesisBlock:创始区块 currentBlock:当前区块,blockchain中并不是储存链所有的block,而是通过currentBlock向前回溯直到genesisBlock,这样就构成了区块链 body ... »

以太坊交易池源码解析

交易池概念原理 交易池工作概况: 交易池的数据来源主要来自: 本地提交,也就是第三方应用通过调用本地以太坊节点的RPC服务所提交的交易; 远程同步,是指通过广播同步的形式,将其他以太坊节点的交易数据同步至本地节点; 交易池中交易去向:被Miner模块获取并验证,用于挖矿;挖矿成功后写进区块并被广播 ... »

什么是以太坊

文章以及资料(开源):github地址 定义 以太坊(英语:Ethereum)是一个开源的有智能合约功能的公共区块链平台。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的虚拟机(称为“以太虚拟机”Ethereum Virtual Machine)来处理点对点合约。 特点 相较于较 ... »

深入理解HashMap原理

HashMap工作原理 [TOC] 一.HashMap概述 HashMap基于哈希表的实现的 接口。而哈希表是一种以 键 值(key value) 存储数据的结构,只需要根据key即可找到对应的值。 哈希的思路很简单,如果所有的键都是整数,那么就可以使用一个简单的无序数组来实现:将键作为索引,值即为 ... »

设计模式之门面模式

门面模式 一:门面模式概述 在现实世界中,外墙都在我们身边。操作系统就是这样一个例子 您没有看到计算机的所有内部工作方式,但操作系统提供了使用机器的简化界面。简而言之,门面模式旨在使事物看起来更清洁,更容易操作。 定义:为子系统中的一组接口提供统一接口。Façade定义了一个更高级别的接口,使子系统 ... »

设计模式之装饰模式

装饰模式 一:装饰模式概述 装饰模式可以在不改变一个对象本身功能的基础上给对象增加额外的新行为,比如把房子装修就是一个很典型的场景。 装饰模式是一种用于替代继承的技术,它通过一种无须定义子类的方式来给对象动态增加职责,使用对象之间的关联关系取代类之间的继承关系。在装饰模式中引入了装饰类,在装饰类中既 ... »