自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

mindcarver

开源项目:https://github.com/blockchainGuide/

  • 博客(179)
  • 资源 (15)
  • 收藏
  • 关注

原创 死磕以太坊源码分析之rlpx协议

死磕以太坊源码分析之rlpx协议本文主要参考自eth官方文档:rlpx协议符号X || Y:表示X和Y的串联X ^ Y: X和Y按位异或X[:N]:X的前N个字节[X, Y, Z, ...]:[X, Y, Z, …]的RLP递归编码keccak256(MESSAGE):以太坊使用的keccak256哈希算法ecies.encrypt(PUBKEY, MESSAGE, AUTHDATA):RLPx使用的非对称身份验证加密函数 AUTHDATA是身份认证的数据,并非密文的一部分 .

2020-11-24 16:50:32 24

原创 死磕以太坊源码分析之p2p节点发现

死磕以太坊源码分析之p2p节点发现在阅读节点发现源码之前必须要理解kadmilia算法,可以参考:KAD算法详解。节点发现概述节点发现,使本地节点得知其他节点的信息,进而加入到p2p网络中。以太坊的节点发现基于类似的kademlia算法,源码中有两个版本,v4和v5。v4适用于全节点,通过discover.ListenUDP使用,v5适用于轻节点通过discv5.ListenUDP使用,本文介绍的是v4版本。节点发现功能主要涉及 Server Table udp 这几个数据结构,它们有独自的事.

2020-11-23 21:21:16 11

原创 死磕以太坊源码分析之Kademlia算法

死磕以太坊源码分析之Kademlia算法KAD 算法概述Kademlia是一种点对点分布式哈希表(DHT),它在容易出错的环境中也具有可证明的一致性和性能。使用一种基于异或指标的拓扑结构来路由查询和定位节点,这简化了算法并有助于证明。该拓扑结构有一个特点:每次消息交换都能够传递或强化有效信息。系统利用这些信息进行并发的异步查询,可以容忍节点故障,并且故障不会导致用户超时。KAD算法要处理的问题如何分配存储内容到各个节点,新增/删除内容如何处理如何找到存储文件的节点/地址/路径节点状态节.

2020-11-22 15:08:28 21

原创 以太坊源码分析之P2P网络启动

文章目录p2p源码目录启动p2p网络Start()设置本地节点设置监听设置节点发现创建DialState运行p2p网络srv.run(dialer)发起TCP连接任务执行TCP连接任务管理TCP连接任务总结参考p2p源码目录discover/ 基于UDP的节点发现V4协议 discv5/ 节点发现V5协议 enode/ 节点信息 enr/ 以太坊节点记录(ethereum node records)

2020-11-21 15:10:53 47

原创 以太坊blockchain源码分析

blockchain关键元素db:持久化到底层数据储存,即leveldb;genesisBlock:创始区块currentBlock:当前区块,blockchain中并不是储存链所有的block,而是通过currentBlock向前回溯直到genesisBlock,这样就构成了区块链bodyCache、bodyRLPCache、blockCache、futureBlocks:区块链中的缓存结构,用于加快区块链的读取和构建;hc:headerchain区块头链,由blockchain额外维护的另一

2020-10-16 16:25:08 34 1

原创 以太坊交易池源码分析

文章目录交易池概念原理关键数据结构TxPoolConfigTxPooltxpool初始化添加交易到txpool交易升级交易降级重置交易池交易池概念原理关键数据结构TxPoolConfigTxPooltxpool初始化添加交易到txpool交易升级交易降级重置交易池交易池概念原理交易池工作概况:交易池的数据来源主要来自:本地提交,也就是第三方应用通过调用本地以太坊节点的RPC服务所提交的交易;远程同步,是指通过广播同步的形式,将其他以太坊节点的交易数据同步至本地节点;交易池中交易去向:被

2020-10-15 19:24:26 277 10

原创 以太坊启动过程源码解析

文章以及资料(开源):github地址文章目录启动参数源码分析加载配置和注册服务1.加载配置2.RegisterEthService3.RegisterShhService4.RegisterEthStatsService启动节点1.启动节点1.1 stack.Start()2.解锁账户3.注册钱包事件4.监听钱包事件5.启动挖矿启动守护线程总结启动参数以太坊是如何启动一个网络节点的呢?./geth --datadir "../data0" --nodekeyhex "27aa615f5fa54.

2020-10-13 14:11:10 48 1

翻译 以太坊启动参数详解

文章以及资料(开源):github地址文章目录命令ETHEREUM 选项开发者模式ETHASH选项交易池选项性能调优选项账户选项API 和控制台选项网络选项矿工选项GAS 价格选项:虚拟机的选项:日志和调试选项:WHISPER 实验选项:弃用选项:其他选项:命令account 管理账户attach 启动交互式JavaScript环境(连接到节点)bug 上报bug Issuesconsole 启动交互式JavaScript环境copydb 从文件夹.

2020-10-12 14:32:22 33

翻译 Istanbul算法详解

文章以及资料(开源):github地址文章目录Terminology:ConsensusConsensus statesState transitionsRound change flowProposer selectionValidator list votingFuture message and backlogOptimizationConstantsBlock headerBlock hash, proposer seal, and committed sealsProposer seal c.

2020-10-12 13:16:31 24

原创 详解私钥、密码、keystore和助记词

文章以及资料(开源):github地址文章目录密码私钥keystore助记词以太坊对BIP的支持密码、私钥、keystore与助记词的关系如何解锁账户密码首先明白密码不是私钥,它是在创建账户时候的密码(注意可以修改)。密码在以下情况下会使用到:作为转账的支付密码用keystore导入钱包的时候需要输入的密码,用来解锁keystore的私钥私钥由64位长度的十六进制的字符组成,比如:0xA4356E49C88C8B7AB370AF7D5C0C54F0261AAA006F6BDE09CD4.

2020-10-12 10:21:01 216

原创 github 修改了用户名,push 失效的解决方式

github 修改了用户名,push 失效的解决方式

2020-10-11 12:44:45 17

原创 什么是以太坊

文章以及资料(开源):github地址文章目录定义特点第二层功能以太币智能合约以太坊组件p2p网络共识规则交易状态机数据结构经济安全性扩展阅读定义以太坊(英语:Ethereum)是一个开源的有智能合约功能的公共区块链平台。通过其专用加密货币以太币(Ether,又称“以太币”)提供去中心化的虚拟机(称为“以太虚拟机”Ethereum Virtual Machine)来处理点对点合约。特点相较于较大多数其他加密货币或区块链技术,以太坊的特点包括下列:智能合约(smart contract):存.

2020-10-11 12:04:53 111 2

原创 go相关命令&gomoudle &go get

go基本命令go开启go moudlego moudle教程go path 工作目录详解cannot find module providing package或cannot find main modulego get 下载包失败问题

2020-09-22 16:31:51 19

原创 Go依赖管理及Go module使用

Go依赖管理及Go module使用

2020-09-21 13:38:51 17

原创 如何删除GIT中的.DS_Store

如何删除GIT中的.DS_Store

2020-09-20 10:51:30 38

原创 利用beyond-compare快速解决冲突

安装beyond-compare在git 中配置git config --local merge.tool bc3git config --local mergetool.path ‘/usr/local/bin/bcomp’git config --local mergetool.keepBackup false出现冲突之后运行git mergetool

2020-09-19 12:05:40 28

原创 markdown各种图形用法

markdown各种图形用法

2020-09-18 12:15:51 33

原创 gitbook安装到操作

node10下载gitbook在mac上的应用Mac环境安装Gitbook,并导出PDF教程macos安装gitbook出错GitBook的使用方式,快速创建网页文档Mac环境下node安装与卸载方法

2020-09-17 10:13:30 14

原创 Mac环境安装Gitbook,并导出PDF教程

https://www.jianshu.com/p/da1e536fe475

2020-09-16 20:23:47 27

原创 解决go包管理代理网址无法访问:proxy.golang.org

解决go包管理代理网址无法访问:proxy.golang.org

2020-09-08 10:02:23 40

原创 go select详解

https://www.jianshu.com/p/66edceabd5f6

2020-08-26 15:20:32 39

原创 linux查看某个时间段的日志(sed -n)-史上最详细

https://www.cnblogs.com/yoyoketang/p/11729966.html

2020-08-25 10:18:53 111

原创 linux ./geth text file busy

ps -aux |grep geth看到 scp正在拷贝geth中断就可以

2020-08-19 16:35:46 28

原创 golang定时器的陷阱详解& cpu使用率高

https://www.jb51.net/article/147116.htm

2020-07-23 10:16:50 58

原创 go语言 timer.reset分析

官方API定义func (t *Timer) Reset(d Duration) boolReset使t重新开始计时,(本方法返回后再)等待时间段d过去后到期。如果调用时t还在等待中会返回真;如果t已经到期或者被停止了会返回假。注:比如你的定时器设置的是3秒,中间sleep1秒 < 3,这时候如果reset的话返回的就是 true(因为定时器还在等待),如果你sleep4秒 > 3,那么返回的就是false案例解析/*1.*/func test1(){ start := t

2020-07-22 15:03:53 129

原创 报错:cannot load xxx/xxx: malformed module path “xxx/xxx“: missing dot in first path element

报错:cannot load xxx/xxx: malformed module path “xxx/xxx”: missing dot in first path element

2020-07-21 14:38:15 1405

原创 redis通过lua脚本,获取满足key pattern的所有值

redis通过lua脚本,获取满足key pattern的所有值示例:获取所有tx开头的个数1.SCRIPT LOAD “local keys = redis.call(‘keys’, KEYS[1]); local all = redis.call(‘mget’,unpack(keys)) return #all”得到值 :50b377ace3ec7772e8f2f585ff746e30541b8ffc2.EVALSHA “50b377ace3ec7772e8f2f585ff746e30541

2020-07-02 11:11:36 170

原创 linux查找某个端口下的进程号以及杀掉

lsof -i:8080 查找kill -9 8080 杀掉

2020-06-27 16:50:45 333

原创 git 解决每次更新代码都要输入用户名密码的解决方案--1

git config --global credential.helper storegit pull /git push (第一次输入,后续就不用再次数据)

2020-06-21 10:34:41 144

原创 Go1.13:使用go mod 管理依赖, 提示cannot find module providing package或cannot find main module

https://blog.csdn.net/fly910905/article/details/104299085

2020-06-16 10:18:44 402

原创 理解 Go 标准库中的 atomic.Value 类型

https://studygolang.com/articles/23242?fr=sidebar

2020-06-14 11:22:12 111

原创 ETH客户端的使用

https://www.jianshu.com/p/e1292dcc72c1

2020-06-02 09:18:55 132

原创 Go的json解析:Marshal与Unmarshal

https://blog.csdn.net/zxy_666/article/details/80173288

2020-03-17 19:59:22 146

原创 go包的管理,包一直是红色

https://segmentfault.com/a/1190000019572888

2020-03-17 17:58:24 475

原创 解决Ethereum导入报错

这里只需要设置vendoring mode 点上

2020-03-16 12:19:50 74

原创 SHA256算法原理详解

SHA256算法原理详解

2020-02-17 17:29:40 112

原创 以太坊header.extra字段

type Header struct { ... Extra []byte `json:"extraData" gencodec:"required"` ...}可以看到Extra数据是可变长度,但是以太坊为了避免作恶节点加入非常大的数据,对其长度进行了限制。```goMaximumExtraDataSize uint64 = 32 // Maximum...

2020-02-17 16:11:55 154

原创 goland 无法解析 go.mod里的包

goland-> preferences-> GO Moudules(vgo) vending mode 打上勾

2020-02-13 15:38:12 879 1

原创 scp出现stalled的原因和解决方法

scp出现stalled的原因和解决方法

2020-02-13 13:59:10 679

原创 scp和rsync基本用法与断点续传

scp和rsync基本用法与断点续传

2020-02-13 13:56:56 66

Spring源码深度解析

想学好spring,这本书必看,能让你更深刻的理解spring的工作流程,底层的一些实现细节。

2018-01-25

深入分析Java Web技术内幕高清PDF版

这是很全面的书籍,很适合那些想进一步提升自己的人看,很清楚,详细的目录都有。

2018-01-25

Effectivejava英文版第三版

对于想学好英语的小伙子来说,这本书是个不错的选择,并且这本书是基于jdk1.5之后的著作

2018-01-25

建材物资管理系统

完整的系统,只要装有 VS2010 和SQLServer2008 就可以运行,很简单,不会的要私我哦,还写好了论文,只要稍微修改下就可以啦

2018-01-15

宾馆客房管理系统

完整的系统,只要装有 VS2010 和SQLServer2008 就可以运行,很简单,不会的要私我哦,还写好了论文,只要稍微修改下就可以啦

2018-01-15

二手房管理系统

完整的系统,只要装有 myeclipse 和SQLServer2008 就可以运行,很简单,不会的要私我哦,还写好了论文,只要稍微修改下就可以啦

2018-01-15

高校教师信息管理系统

完整的系统,只要装有 VS2010 和SQLServer2008 就可以运行,很简单,不会的要私我哦,还写好了论文,只要稍微修改下就可以啦

2018-01-15

家具城进销存管理系统

完整的系统,只要装有 Eclipse 和mysql 就可以运行,很简单,不会的要私我哦,还写好了论文,只要稍微修改下就可以啦

2018-01-13

某高校科研管理系统

完整的系统,只要装有 VS2010 和SQLServer2008 就可以运行,很简单,不会的要私我哦,还写好了论文,只要稍微修改下就可以啦

2018-01-13

音响店出租零售管理系统

完整的系统,只要装有 VS2010 和SQLServer2008 就可以运行,很简单,不会的私我

2018-01-13

某单位人事管理系统

很简单的系统,环境也十分的简单,下载就可以自行运行,不会留言

2018-01-13

某期刊在线投稿审稿管理系统

包括论文和完整系统,系统容易看懂哦,有不会的可以在下方留言,一定解答哦

2018-01-03

医院信息管理系统

是用asp.net开发的医院信息管理系统,运行很简单,只要有相关环境,且还附有论文在里面,有不懂的请留言哦

2018-01-02

数据库 图书管理系统毕业设计

包括了论文和完整系统,里面包含了数据库的设计,表都有,系统也是很容易看的懂,不会的可以在下面留言帮助解决。

2018-01-02

商城毕业设计(包含源码和论文)不会的可以教如何运行

当时自己的毕业设计,可以重复使用,论文稍加改动就可以,有需要的联系我,626984947@qq.com 可以负责调试运行

2018-01-01

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除