blockchain
文章平均质量分 92
独正己身
这个作者很懒,什么都没留下…
展开
-
拜占庭将军问题
拜占庭将军问题很多人可能听过,但不知道是什么意思,本文从非专业的角度来讲讲,拜占庭将军问题到底是说什么的。拜占庭将军问题(Byzantine Generals Problem),首先由Leslie Lamport与另外两人在1982年提出,很简单的故事模型,却困扰了计算机科学家们数十年。故事大概是这么说的:拜占庭帝国即中世纪的土耳其,拥有巨大的财富,周围10个邻邦垂诞已久,但拜占庭高墙耸立,固若金...转载 2018-04-14 20:14:16 · 271 阅读 · 0 评论 -
Pair the miners (4/6)
This tutorial is part of a series of articles introduced here.In part 3, we configured the miners of our private blockchain.NB: It is important that what we mean by “private Ethereum blockchain” i...转载 2018-11-29 14:29:17 · 275 阅读 · 0 评论 -
Synchronize the Raspberry PI with the Private Blockchain (5/6)
This tutorial is part of a series of articles introduced here.In part 4, we paired the miners and ensured that the private blockchain is properly synchronised.NB: It is important that what we mean...转载 2018-11-29 14:36:00 · 779 阅读 · 0 评论 -
Create and deploy a Smart Contract (6/6)
This tutorial is part of a series of articles introduced here.In part 5, we finalized the configuration of the private blockchain. We sent ethers between our nodes and verified that the database is ...转载 2018-11-29 14:39:05 · 724 阅读 · 0 评论 -
ubuntu16.04下cpp-ethereum搭建
一、下载cpp-ethereum源码1、安装git输入 sudo apt-get install git2、下载cpp-ethereum源码git clone --recursive https://github.com/ethereum/aleth.gitcd aleth二、安装CMake编译工具在https://cmake.org/download/中直接下载Pl...原创 2018-12-26 21:25:45 · 451 阅读 · 0 评论 -
EthereumJ 编译导入IDEA
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/guokaikevin/article/details/53441025前两个帖子只相当于是感受了一下区块链应用的编译、运行,没有真正的着手搭建二次开发环境,本次基于Ethereum的Java版客户端EthereumJ进行学习,着手搭建Gradle+Idea的开发环境。在尝试的过程中,遇到...转载 2019-01-03 19:32:02 · 591 阅读 · 1 评论 -
以太坊源码分析(1)go-ethereum的设计思路及模块组织形式
版权声明:本文为博主尹成联系QQ77025077,微信18510341407原创文章,欢迎转载侵权不究。 https://blog.csdn.net/yincheng01/article/details/80304070go-ethereum的设计思路及模块组织形式===================================以太坊的目标是基于区块链技术打造一个运行智能合约的去中...转载 2019-01-08 11:10:47 · 580 阅读 · 0 评论 -
以太坊源码分析(2)go ethereum 目录大概介绍
go-ethereum项目的组织结构基本上是按照功能模块划分的目录,下面简单介绍一下各个目录的结构 accounts 实现了一个高等级的以太坊账户管理 bmt 二进制的默克尔树的实现 build 主要是编译和构建的一些脚本和配置 cmd 命令行工具,又分了很多的命令行工具,下面一个一个介绍...转载 2019-01-08 11:11:50 · 384 阅读 · 0 评论 -
以太坊源码分析(3)以太坊交易手续费明细
转载 2019-01-08 11:13:04 · 528 阅读 · 0 评论 -
以太坊源码分析(4)accounts包简介
accounts包实现了以太坊客户端的钱包和账户管理。账号的数据结构: typeAccount struct { Address common.Address `json:"address"` // Ethereum account addressderived from the key URLURL `json:"url"` // Optional resou...转载 2019-01-08 11:17:41 · 227 阅读 · 0 评论 -
以太坊源码分析(5)accounts代码分析
## 1.personal.newAccount创建账户方法用户在控制台输入personal.newAccount会创建一个新的账户,会进入到ethapi.api中的newAccount方法中,这个方法会返回一个地址。``` func (s *PrivateAccountAPI) NewAccount(password string) (common.Address, error) { ...转载 2019-01-08 11:24:48 · 406 阅读 · 0 评论 -
以太坊源码分析(6)accounts账户管理分析
##数据结构分析以太坊的账户管理定义在accounts/manager.go中,其数据结构为:```// Manager is an overarching account manager that can communicate with various// backends for signing transactions. type Manager struct { ...转载 2019-01-08 11:27:54 · 261 阅读 · 0 评论 -
以太坊源码分析(7)Ethereum 资源分享
# Awesome Ethereum [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)> collection of best...转载 2019-01-08 11:29:07 · 812 阅读 · 0 评论 -
以太坊源码分析(8)区块分析
## 区块存储区块的存储是由leveldb完成的,leveldb的数据是以键值对存储的。在这里保存区块信息时,key一般是与hash相关的,value所保存的数据结构是经过RLP编码的。在代码中,core/database_util.go中封装了区块存储和读取相关的代码。在存储区块信息时,会将区块头和区块体分开进行存储。因此在区块的结构体中,能够看到Header和Body两个结构体。区块...转载 2019-01-08 11:31:10 · 231 阅读 · 0 评论 -
以太坊源码分析(9)cmd包分析
### cmd包概述* geth 主要Ethereum CLI客户端。它是Ethereum网络(以太坊主网,测试网络或私有网)的入口点,使用此命令可以使节点作为full node(默认),或者archive node(保留所有历史状态)或light node(检索数据实时)运行。 其他进程可以通过暴露在HTTP,WebSocket和/或IPC传输之上的JSON RPC端点作为通向Ethe...转载 2019-01-08 11:32:20 · 233 阅读 · 0 评论 -
Set up the private chain – miners (3/6)
This tutorial is part of a series of articles introduced here.Part 2 described how to install Ethereum on your computer.Our development environment requires the setup of a private Ethereum chain....转载 2018-11-29 14:08:51 · 1248 阅读 · 0 评论 -
以太坊最靠谱搭建私有链方法(翻译setup-the-private-chain-miners)
原文:https://chainskills.com/2017/03/10/part-3-setup-the-private-chain-miners/第1步 - 创建datadir文件夹 运行专用区块链时,强烈建议使用特定文件夹来存储专用区块链的数据(数据库和钱包),而不会影响用于存储来自公共区块链的数据的文件夹。在您的计算机上,创建将托管您的第一个矿工的文件夹:命令:mkd...转载 2018-11-19 20:57:08 · 399 阅读 · 0 评论 -
阿里云Ubuntu 16.04安装Hyperledger Fabric(一)docker安装
一、卸载旧版本的Docker旧版本的Docker被称作docker或者docker-engine,Docker CE(社区版)包现在被叫做docker-ce。如果之前安装过了,需要先卸载:sudo apt-get remove docker docker-engine docker.io1二、使用存储库安装Docker1.设置存储库:(1).更新apt安装包索引:sudo apt-get upda...转载 2018-05-13 19:50:57 · 1354 阅读 · 0 评论 -
阿里云Ubuntu16.04 安装Hyperledger Fabric(二) fabric部署
一、先决条件1.安装docker和docker-compose参考博客:http://blog.csdn.net/diligent_lee/article/details/790983022.安装node只需要两条命令:curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -sudo apt-get install -y nod...转载 2018-05-13 19:52:13 · 1309 阅读 · 1 评论 -
docker images本地迁移
最近在学习docker,经常遇到的一个问题是,在下载docker image的时候,由于众所周知的网络原因导致失败,虽然网上也有很多解决方案,比如使用Docker Hub Mirror 之类的国内镜像服务,不过由于个人原因(侥幸有一台国外的VM),我更倾向于不通过docker registry共享下载的image。问题很明确:不通过docker registry,将A机器上的docker imag...转载 2018-05-16 10:05:45 · 4713 阅读 · 0 评论 -
fabric部署e2e_cli单节点和first-network示例及相关错误
一、下载docker镜像e2e_cli示例里有下载docker镜像的脚本download-dockerimages.sh,直接运行即可。 进入到e2e-cli路径中cd opt/gopath/src/github.com/hyperledger/fabric/examples/e2e_cli/source download-dockerimages.sh -c x86_64-1.0.0 -f x...转载 2018-05-16 15:51:08 · 2737 阅读 · 1 评论 -
docker-compose命令不存在、未找到命令
docker-compose not found、docker-compose命令不存在 centos 7中python-pip模块不存在,是因为像centos这类衍生的发行版,源跟新滞后,或者不存在。即使使用yum去search python-pip也找不到软件包。 为了使用安装滞后或源中不存在的安装包,需要安装扩展源EPEL。扩展源EPEL(http://fedoraproject.org...转载 2018-06-03 18:04:34 · 20045 阅读 · 0 评论 -
如何进入、退出docker的container
1 启动docker服务首先需要知道启动docker服务是:service docker start1或者:systemctl start docker12 关闭docker服务关闭docker服务是:service docker stop1或者:systemctl stop docker1Docker的镜像称为image,容器称为container。对于Docker来说,image是静态的,类似...转载 2018-06-03 18:09:28 · 4867 阅读 · 0 评论 -
npm install web3
npm install web3 bug特别多刚开始,看教程说如果遇到问题则npm install -global --production windows-build-tools可是我在运行过程中卡在visual studio tools的过程中,结果手贱点击了一下下载好的vs_BuildTools.exe,然后就报错了然后就上网搜如何安装web3,主要根据下述博客https...原创 2018-11-03 15:37:46 · 4736 阅读 · 0 评论 -
使用mocha测试报错Cannot find module './build/Release/scrypt'
我在学习mocha测试框架和ganache-cli测试环境时,遇到一个小问题在测试代码中安装视频写如下规则const assert = require('assert');const ganache = require('ganache-cli');//如果变量以大写字母开头,则它就是一个构造函数const Web3 = require('web3');//把ganache测试网...原创 2018-11-03 21:10:57 · 1770 阅读 · 0 评论 -
nodeJS设置淘宝镜像
node.js安装下载node.js安装包:https://nodejs.org/en/download/,下载相应版本的node.js.需注意,在window中,node的安装目录中,最好不要有空格或中文字符。nodeJS的资源仓库在国内使用过程中,偶尔会遇到各种资源问题,通常设置为淘宝的镜像,网上很多说法是安装淘宝镜像,即 $ npm install -g cnpm --registr...转载 2018-11-02 19:11:04 · 17166 阅读 · 1 评论 -
idea 对web3没有智能提示
开发工具要对源码产生提示,现在比较流行的是使用 *.d.ts 文件 来编写提示消息以下的解决办法不是根本之道,估计是开发工具有什么地方可以设置 自动下载 *.d.ts 文件,知道的读者还请留言赐教~使用 web3 来部署以太坊合约时,如果发现idea没有提示,可能是因为下载 web3 时没有把 index.d.ts 文件一起下载下来 解决方案:通过npm指定安装 ts 文件npm ...转载 2018-11-13 20:49:17 · 750 阅读 · 0 评论 -
java以太坊开发使用web3j和spring boot构建区块链应用
区块链最近IT世界的流行语之一。这项有关数字加密货币的技术,并与比特币一起构成了这个热门的流行趋势。它是去中心化的,不可变的分块数据结构,这是可以安全连接和使用的密码算法。在这种结构中的每一区块通常包含前一个区块的加密哈希,一个时间戳,和交易数据。区块链是点对点管理网络的,并在加入每一个新的块之前进行节点间通信的验证。这是关于区块链的部分理论。简而言之,这是一种技术,它允许我们使用一个去中心化的方...转载 2018-11-08 20:30:41 · 1069 阅读 · 0 评论 -
搭建以太坊联盟链教程windows平台
1、下载Geth.exe 运行文件,并安装https://github.com/ethereum/go-ethereum/releases/访问不了可以访问国内镜像地址下载下载geth-windows-amd64-1.8.2后安装2、cmd进入安装目录运行:geth -help看看是否可用geth命令3、在Geth安装目录下放置初始化创世块文件genesis.json{ "non...转载 2018-11-15 14:17:42 · 2014 阅读 · 1 评论 -
以太坊Geth命令详细
以太坊启动私有链还有一种参数较为复杂的启动方式,这种的作用是启动rpc通信,后续会讲解rpc的使用场景。geth --identity "secbro etherum" --rpc --rpccorsdomain "*" --datadir "./blockData" --port "30303" --rpcapi "db,eth,net,web3" --networkid 95518 co...转载 2018-11-16 14:54:42 · 915 阅读 · 0 评论 -
以太坊解决miner.start() 返回null
下面我列举了三种解决方案,前面两张是某两位大佬试出来的,第三种是我蒙出来的。 第一种解决方案转载自 http://mp.weixin.qq.com/s/AB9vj1EzOgWT7JyryfQhDg 问题场景最近技术群中的朋友经常问到这样的问题,环境搭建已经搭建好,geth节点也成功启动,可为什么当执行miner.start()方法时却没有挖矿,返回null。其实,不仅仅这些朋...转载 2018-11-16 15:55:16 · 2290 阅读 · 0 评论 -
运行geth attach报错:Unable to attach to remote geth: no known transport for URL scheme "c"
在window10上运行get attach命令启动交互式JavaScript环境连接到节点的时候,报错Unable to attach to remote geth: no known transport for URL scheme "c"。但是在windows7或者geth1.8以前的版本中都不会出现这个报错。解决方案:运行geth attach ipc:\\.\pipe\geth.i...转载 2018-11-19 20:49:50 · 1118 阅读 · 0 评论 -
以太坊源码分析(11)eth目前的共识算法pow的整理
### eth目前的共识算法pow的整理##### 涉及的代码子包主要有consensus,miner,core,geth```/consensus 共识算法 consensus.go 1. Prepare方法 2. CalcDifficulty方法:计算工作量 3. AccumulateRewards方法:计算每个块的出块奖...转载 2021-07-13 14:31:44 · 952 阅读 · 0 评论