https://blog.conformal.com/category/btcd/

https://github.com/btcsuite/btcd/tree/master/docs

https://github.com/btcsuite/btcd

https://github.com/ethereum/go-ethereum

Secp256k1是比特币中使用的ECDSA(椭圆曲线数字签名算法)曲线的参数,其在高效密码学标准(Certicom Research,http://www.secg.org/sec2-v2.pdf)中进行了定义。

比特币工具之btcd

btcd 是一款基于 Go 语言的全节点比特币工具。目前,它通过使用精准的规则(包括 bugs),下载、验证和服务区块链。它同时依靠新发掘出来的区 块来维持交易池,同时依赖没有形成区块的单独交易。在缜密的规则以及检查下,确保了每笔独立交易的安全,并且可以过滤基于矿工需求的交易。

btcd 与 bitcoind 的一个主要区别是 btcd 不包含比特币钱包的功能,其实这是一个精心的设计。这意味着你不能直接通过 btcd 进行比特币交易。然而这项功能可以由正在研发的 btcwallet 与 btcgui 两个项目提供。另一个显著的区别是 btcd 同时支持 HTTP POST(比如 bitcoind)与推荐使用的 Websockets 两种通信协议的请求。并且 btcd 的 RPC 连接默认设置为 TLS-开启。

安装 btcd

若要安装 Windows 版 btcd,请从 GitHub 下载并运行 msi;如果你已经安装了 Go 语言,请在 Linux 中输入以下命令行:

$ go get github.com/conformal/btcd/...

若要更新 btcd 到最新版本,请输入:

$ go get -u -v github.com/conformal/btcd/...

调试 btcd

btcd 拥有许多配置选项,可以通过以下命令来查看:

$ btcd --help

btcd 预装了许多好用的功能包,比如 btcctl。它是一种可以通过 RPC 来控制和查询的令行工具。Btcd 并没有默认开启了 RPC 服务器,你必须通过以下命令行来配置 RPC 用户名及密码:

btcd.conf: [Application Options] rpcuser=myuser

rpcpass=SomeDecentp4ssw0rd

btcctl.conf: [Application Options] rpcuser=myuser

rpcpass=SomeDecentp4ssw0rd

若果你想要重写配置,请输入以下命令:

$ btcd -u myuser -P SomeDecentp4ssw0rd

$ btcctl -u myuser -P SomeDecentp4ssw0rd

可以通过以下命令来查询一系列的选项:

$ btcctl --help

golang语言实现的 ipfs 协议,听说有 zksnark 零知识验证的golang实现:

https://github.com/ipfs/go-ipfs

https://github.com/ipfs/specs

https://github.com/ipfs/ipfs

https://github.com/libp2p/go-libp2p           a deep dive into the internet's network stack, and plentiful peer-to-peer protocols, Building large scale peer-to-peer systems

https://github.com/libp2p/specs

go for cryptocurrency的更多相关文章

  1. L138 Cryptocurrency Exchanges at Risk of Manipulation

    Several cryptocurrency exchanges are plagued by poor market surveillance, pervasive conflicts of int ...

  2. 【课程笔记】比特币和数字货币技术[Bitcoin and Cryptocurrency Technologies] week1

    源地址(可能要FQ):https://www.coursera.org/learn/cryptocurrency/home/welcome 1.1 Cryptographic Hash Functio ...

  3. 加密货币 (Cryptocurrency) 市值 (market capitalization) 列表

    https://coinmarketcap.com/all/views/all/ ico 列表 https://www.icoalert.com/?q=&is_v=1 https://www. ...

  4. Open source cryptocurrency exchange

    Peatio: https://github.com/peatio/peatio ViaBTC: https://github.com/viabtc/viabtc_exchange_server

  5. 解读Gartner《2015年度新兴技术成熟度曲线报告》

    详细见:http://www.360doc.com/content/16/0209/16/26186435_533443133.shtml 今年的报告评估了112个领域超过2000项新型技术的市场类型 ...

  6. Day 4 @ RSA Conference Asia Pacific & Japan 2016

    09.00 – 09.45 hrs Advanced Malware and the Cloud: The New Concept of 'Attack Fan-out' Krishna Naraya ...

  7. HDOJ(HDU) 4847 Wow! Such Doge!(doge字符统计)

    Problem Description Chen, Adrian (November 7, 2013). "Doge Is An Ac- tually Good Internet Meme. ...

  8. hdu4847 Wow! Such Doge!(简单题+坑爹的输入)

    转载请注明出处:http://blog.csdn.net/u012860063?viewmode=contents 题目链接:http://acm.hdu.edu.cn/showproblem.php ...

  9. 50行Python代码构建小型区块链

    本文介绍了如何使用python构建一个小型的区块链技术,使用Python2实现,代码不到50行. Although some think blockchain is a solution waitin ...

随机推荐

  1. 【vue基础学习】vue.js开发环境搭建

    1.安装node.js(http://www.runoob.com/nodejs/nodejs-install-setup.html) 2.基于node.js,利用淘宝npm镜像安装相关依赖 在cmd ...

  2. 【Spring Boot && Spring Cloud系列】在spring-data-Redis中如何使用切换库

    前言 Redis默认有16个库,默认连接的是index=0的那一个.这16个库直接是相互独立的. 一.在命令行中切换 select 1; 二.在Spring中如何切换 1.在RedisConnecti ...

  3. 使用import取代require

    首先,Module 语法是 JavaScript 模块的标准写法,坚持使用这种写法.使用import取代require. // bad const moduleA = require('moduleA ...

  4. CacheDependency 的使用方法

    //创建缓存依赖项 CacheDependency dep = new CacheDependency(fileName); //创建缓存 HttpContext.Current.Cache.Inse ...

  5. 设置RabbitMQ远程ip登录

    由于账号guest具有所有的操作权限,并且又是默认账号,出于安全因素的考虑,guest用户只能通过localhost登陆使用,并建议修改guest用户的密码以及新建其他账号管理使用rabbitmq. ...

  6. wireshark和RawCap跟踪并解决中文乱码问题

    一.问题概述 说下程序的架构. 有个后台管理系统A,在页面修改数据后,会用httpClient发http请求给系统B: 系统B做了异步机制,收到A发的请求后,将数据封装为Mq消息发给RabbitMq, ...

  7. EJBCA的安装(基于Ubuntu 16.04 LTS + wildfly8 + ejbca6.3.11 + jdk7)

    前一段时间折腾了一下PKI,用EJBCA在研究院内网搭建了一个CA,目前是提供给手机端(安卓和IOS)来和服务器端(nginx + Java应用)做安全连接的(客户端和服务器端双向认证) 由于EJBC ...

  8. C# 未能加载文件或程序集“xxx”或它的某一个依赖项。参数错误。(异常来自 HRESULT:0x80070057 (E_INVALIDARG))

    错误信息: 因为电脑突然蓝屏,然后重启,再运行项目,报了这个错. 解决方案: 环境是:VS2012+Win7 通过网上查找, 4.0 删除 C:\Windows\Microsoft.NET\Frame ...

  9. iOS计算两个时间的时间差

    + (long)calculteHourL:(NSDate *)endDate startDate:(NSDate *)startDate { NSCalendar *cal = [NSCalenda ...

  10. php小记

    php获取日期: date_default_timezone_set('PRC'); //默认时区 "今天:",date("Y-m-d",time()),&qu ...