E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
BTCD
打怪升级GO语言,从零开始...
包括2018年很火的区块链技术,主流的类似
btcd
比特币、go-ethereum以太坊等都是用GO语言作为开发。
to_the_moon
·
2019-01-22 16:02
go
golang
go语言
比特币全节点部署-比特币核心部署-比特币节点部署全过程
选型比特币节点有很多实现bitcoincore:官方节点,c/c++实现,正式网络大多数都是用这个来运行全节点
btcd
:golang的实现版本,如果用golang来写一些功能,可以参考这个代码libbitcoin
比特币又开叉了
·
2018-11-07 16:59
比特币
区块链
比特币节点之Remote Procedure Calls (RPCs)
比特币很多全节点软件提供了RPC功能,包括BitcoinCore、
BTCD
。通过RPC可以调用管理任务、钱包操作、网络查询、区块数据等。
SuperChain
·
2018-08-27 19:37
Bitcoin比特币
bitcoin
rpc
btcd
(Bitcoin go)所支持的命令行详解
btcd
所支持的命令行Usage:
btcd
[OPTIONS]ApplicationOptions:-V,--version打印版本号-C,--configfile=指定配置文件-b,--datadir=
terryc007
·
2018-08-27 19:45
btcd
(Bitcoin go)启动流程
btcdMain流程简化版代码1.main包
btcd
.gopackagemainimport("runtime/debug""runtime""github.com/btcsuite/
btcd
/limits
terryc007
·
2018-08-25 16:27
Debug以太坊go-ethereum实战
go-ethereumv1.6.7IDE:golandgoversion:go1.10.1darwin/amd64搭建go-ethereum本地化开发环境搭建过程这里不细讲,具体可以参考Windows下搭建
btcd
Non_咕咚
·
2018-07-18 19:29
Ethereum
btcd
代码之私钥、公钥及地址
上文《比特币
btcd
代码之初体验》提到比特币除了主网外,还有Testnet以及Regtest网络。
晓涛_Klaus
·
2018-07-15 23:43
比特币全节点Go语言实现
BTCD
之网络连接过程
启动server://Startbeginsacceptingconnectionsfrompeers.func(s*server)Start(){....gos.peerHandler()if!cfg.DisableRPC{s.wg.Add(1)gos.rebroadcastHandler()s.rpcServer.Start()}//StarttheCPUminerifgenerationis
SuperChain
·
2018-07-10 18:04
Bitcoin比特币
比特币全节点Go语言实现
BTCD
之挖矿流程及难度计算
全网中每新增2016个区块,全网难度将重新计算,该新难度值将依据前2016个区块的哈希算力而定Ifittookfewerthantwoweekstogeneratethe2,016blocks,theexpecteddifficultyvalueisincreasedproportionally(byasmuchas300%)sothatthenext2,016blocksshouldtakeex
SuperChain
·
2018-07-09 20:02
Bitcoin比特币
比特币全节点Go语言实现
BTCD
之区块与节点的几个问题
有一本书上写,每个节点要求连接的节点(node)数量至少为5,但是看代码是至少8个,代码如下:func(cm*ConnManager)Start(){//Alreadystarted?ifatomic.AddInt32(&cm.start,1)!=1{return}log.Trace("Connectionmanagerstarted")cm.wg.Add(1)gocm.connHandler()
SuperChain
·
2018-07-09 16:08
Bitcoin比特币
比特币全节点Go语言实现
BTCD
之交易的独立校验源码
钱包软件通过收集UTXO、提供正确的解锁脚本、构造一个新的支出(支付)给接收者这一系列的方式来创建交易。产生的交易随后将被发送到比特币网络临近的节点,从而使得该交易能够在整个比特币网络中传播。然而,在交易传递到临近的节点前,每一个收到交易的比特币节点将会首先验证该交易,这将确保只有有效的交易才会在网络中传播,而无效的交易将会在第一个节点处被废弃。每一个节点在校验每一笔交易时,都需要对照一个长长的标
SuperChain
·
2018-07-06 16:56
Bitcoin比特币
比特币全节点Go语言实现
BTCD
之脚本
比特币使用脚本系统来处理交易。脚本有着类Forth语言、简单、基于堆栈以及从左向右处理的特点。脚本故意限定为非图灵完备的,没有循环计算功能。比特币中脚本最常用的是pubkeyhash脚本,即大家常说的P2PKH交易,还有一些其他的交易。如下:functypeOfScript(pops[]parsedOpcode)ScriptClass{ifisPubkey(pops){returnPubKeyTy
SuperChain
·
2018-07-06 16:52
Bitcoin比特币
比特币全节点Go语言实现
BTCD
之双重支付代码解析
双重支付是成功支付了1次以上的情况。比特币通过对添加到区块中的每笔交易进行验证来防止双重支付,确保交易的输入没有被支付过。区块中的交易采用的是UTXO模型,每个节点进行打包的时候都会对交易进行验证,交易的输入是否在之前区块存在过,每个节点收到区块时也会对区块及区块中的交易进行合法性校验。OK,看代码:funcbtcdMain(serverChanchan0{returnmissingParents
SuperChain
·
2018-07-04 21:26
Bitcoin比特币
比特币全节点Go语言实现
BTCD
之地址编码解析
咱们看代码实现,
btcd
仅仅实现全节点,没有钱包功能,所以没有提供地址的创建的客户端,不过咱们可以大概分析下地址解码过程。
SuperChain
·
2018-07-03 20:58
Bitcoin比特币
修复开源项目
btcd
RPC 实现比特币获取区块的问题
原文首发于个人主页:https://huangwenwei.com/blogs/fix-verbocity-in-getblock-command-for-btcdbtcd提供的RPC接口中,获取区块和交易详情接口GetBlockVerboseTx存在一个BUG,具体可以查看issue:[RPC]getblockcommandhasbeenchangedgetblock接口详情如下getblock
老码农不上班
·
2018-07-03 14:57
Btcd
区块链的构建(五)
在《
Btcd
区块链的构建(三)》和《
Btcd
区块链的构建(四)》中我们分析了区块扩展主链的完整过程,本文将分析区块扩展侧链且侧链变主链的情况和“孤儿”区块加入区块链的过程。
oceanken
·
2018-07-02 18:01
比特币全节点Go语言实现
BTCD
之启动流程
~~~直接执行
btcd
启动:[root@bitcoin~]#
btcd
2018-07-0115:07:34.645[INF]
BTCD
:Version0.12.0-beta2018-07-0115:07:34.645
SuperChain
·
2018-07-01 17:01
Bitcoin比特币
比特币
BTCD
源码
Btcd
区块链的构建(四)
上一篇文章我们介绍了maybeAcceptBlock()中将区块连入主链的主要步骤,其中checkConnectBlock()在区块最终写入主链前作了较为复杂的检查,本文将对它涉及到的CheckTransactionInputs()、UtxoViewpoint的fetchInputUtxos()和connectTransaction()、BlockChain的calcSequenceLock()、
oceanken
·
2018-06-21 17:23
打造公链-造轮子(11)
BTCD
区块链blockchain实现
BTCD
区块链blockchain实现通过
BTCD
的协议消息,在各个节点上进行同步transaction和block,最终在整个网络中形成一个一致的区块链。
建怀
·
2018-06-20 18:50
打造公链-造轮子(8)
BTCD
区块存储ffldb实现
BTCD
区块存储ffldb实现在database这个目录,是
BTCD
的存储框架,能使得
btcd
支持多种数据库。其中ffldb是database包中提供的默认数据库。
建怀
·
2018-06-14 10:54
Btcd
区块链的构建(三)
上一篇文章中,我们分析了checkBlockSanity()的完整过程,了解了对区块结构验证的过程,如对区块头中目标难度值、工作量证明、时间戳和Merkle树及区块中的交易集合的验证,这些验证通过之后,节点就会调用maybeAcceptBlock()对区块上下文进一步验证,并最终将区块写入区块链。maybeAcceptBlock()将基于链上预期的难度值进一步检查区块头中的难度值,还要检查交易中的
oceanken
·
2018-06-13 22:01
Btcd
区块链的构建(二)
上一篇文章我们分析了ProcessBlock()的主要步骤,其中的checkBlockSanity()、maybeAcceptBlock()及processOrphans()等调用又涉及到更详细的验证过程,我们将逐步深入它们的实现及调用。按照ProcessBlock()的流程,我们先来分析checkBlockSanity(),它主要对区块结构进行了综合验证,保证在进一步验证之前区块本身是正确的。/
oceanken
·
2018-05-18 17:47
Btcd
区块链的构建(一)
我们在介绍
Btcd
协议消息时提到,协议设计的目标就是同步transaction或者block,最终在各节点上形成一致的区块链。
oceanken
·
2018-05-15 16:23
Btcd
区块链协议消息解析
介绍完BitcoinP2P网络的组网机制后,本文将介绍Peer之间交换的协议消息。Bitcoin节点将Transaction和Block在全网广播,就是通过在Peer与Peer之间同步Transaction和Block实现的,这正是Bitcoin协议的设计目标。同时,为了新建或者维持Peer关系,协议也定义了ping/pong心跳和getaddr/addr等消息,我们在前文的分析中均提到过。协议消
oceanken
·
2018-04-13 14:50
区块链系列----比特币go语言源码-
BTCD
整体架构
本文将讲下第一代区块链(比特币),go语言版本
BTCD
源码整体架构。如果你是刚入门区块链技术,那么笔者建议可以先学习下blockchain_go。
逆月林
·
2018-04-12 15:18
go
区块链
package btcec
package:btcecgithub.com/btcsuite/
btcd
/btcecbtcec实现了对比特币所需的椭圆曲线ellipticcurve的支持。
Garlgee
·
2018-04-03 16:44
比特币
Btcd
区块在P2P网络上的传播之Peer
start()方法中的第一步便是交换Version消息,我们来看看negotiateInboundProtocol()方法://
btcd
/peer/peer.go//negotiateInboundProtocolwaitstoreceiveaversionmessagefro
oceanken
·
2018-03-08 22:42
Palindrome Magic 输出n位数的第k个回文串 codechef赛事
http://www.codechef.com/
BTCD
2012/problems/T02/PalindromeMagicProblemcode:T02SubmitMySubmissionsAllSubmissionsInMath-World
hnust_xiehonghao
·
2012-08-25 20:00
list
input
each
output
pair
上一页
1
2
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他