bitcoind_bitcoind 命令 秘钥 - CSDN
精华内容
参与话题
  • 比特币客户端bitcoind的高级用法

    千次阅读 2018-05-21 13:28:40
    Bitcoin 比特币官方客户端有两个版本:一个是图形界面的版本,通常被称为 Bitcoin(首字母大写),以及一个简洁命令行的版本(称为 bitcoind)。它们相互间是兼容的,有着同样的命令行参数,读取相同的配置文件,也...
    Bitcoin 比特币官方客户端有两个版本:一个是图形界面的版本,通常被称为 Bitcoin(首字母大写),以及一个简洁命令行的版本(称为 bitcoind)。它们相互间是兼容的,有着同样的命令行参数,读取相同的配置文件,也读写相同的数据文件。您可以在一台电脑中运行 Bitcoin 客户端或是 bitcoind 客户端的其中一个(如果您不小心尝试同时运行另外一个客户端,它会提示您已经有一个客户端在运行并且自动退出)。

    命令行参数
    使用 -? 或 –help 参数运行 Bitcoin 或 bitcoind,它会提示常用的命令行参数并退出。

    用法:

      bitcoind [选项]
      bitcoind [选项] <命令> [参数]  将命令发送到 -server 或 bitcoind
      bitcoind [选项] help           列出命令
      bitcoind [选项] help <命令>    获取该命令的帮助

    选项:

      -conf=<文件名>     指定配置文件(默认:bitcoin.conf)
      -pid=<文件名>      指定 pid (进程 ID)文件(默认:bitcoind.pid)
      -gen               生成比特币
      -gen=0             不生成比特币
      -min               启动时最小化
      -splash            启动时显示启动屏幕(默认:1)
      -datadir=<目录名>  指定数据目录
      -dbcache=<n>       设置数据库缓存大小,单位为兆字节(MB)(默认:25)
      -dblogsize=<n>     设置数据库磁盘日志大小,单位为兆字节(MB)(默认:100)
      -timeout=<n>       设置连接超时,单位为毫秒
      -proxy=<ip:端口>   通过 Socks4 代理链接
      -dns               addnode 允许查询 DNS 并连接
      -port=<端口>       监听 <端口> 上的连接(默认:8333,测试网络 testnet:18333)
      -maxconnections=<n>  最多维护 <n> 个节点连接(默认:125)
      -addnode=<ip>      添加一个节点以供连接,并尝试保持与该节点的连接
      -connect=<ip>      仅连接到这里指定的节点
      -irc               使用 IRC(因特网中继聊天)查找节点(默认:0)
      -listen            接受来自外部的连接(默认:1)
      -dnsseed           使用 DNS 查找节点(默认:1)
      -banscore=<n>      与行为异常节点断开连接的临界值(默认:100)
      -bantime=<n>       重新允许行为异常节点连接所间隔的秒数(默认:86400)
      -maxreceivebuffer=<n>  最大每连接接收缓存,<n>*1000 字节(默认:10000)
      -maxsendbuffer=<n>  最大每连接发送缓存,<n>*1000 字节(默认:10000)
      -upnp              使用全局即插即用(UPNP)映射监听端口(默认:0)
      -detachdb          分离货币块和地址数据库。会增加客户端关闭时间(默认:0)
      -paytxfee=<amt>    您发送的交易每 KB 字节的手续费
      -testnet           使用测试网络
      -debug             输出额外的调试信息
      -logtimestamps     调试信息前添加时间戳
      -printtoconsole    发送跟踪/调试信息到控制台而不是 debug.log 文件
      -printtodebugger   发送跟踪/调试信息到调试器
      -rpcuser=<用户名>  JSON-RPC 连接使用的用户名
      -rpcpassword=<密码>  JSON-RPC 连接使用的密码
      -rpcport=<port>    JSON-RPC 连接所监听的 <端口>(默认:8332)
      -rpcallowip=<ip>   允许来自指定 <ip> 地址的 JSON-RPC 连接
      -rpcconnect=<ip>   发送命令到运行在 <ip> 地址的节点(默认:127.0.0.1)
      -blocknotify=<命令> 当最好的货币块改变时执行命令(命令中的 %s 会被替换为货币块哈希值)
      -upgradewallet     将钱包升级到最新的格式
      -keypool=<n>       将密匙池的尺寸设置为 <n>(默认:100)
      -rescan            重新扫描货币块链以查找钱包丢失的交易
      -checkblocks=<n>   启动时检查多少货币块(默认:2500,0 表示全部)
      -checklevel=<n>    货币块验证的级别(0-6,默认:1)

    SSL 选项:

      -rpcssl                                  使用 OpenSSL(https)JSON-RPC 连接
      -rpcsslcertificatechainfile=<文件.cert>  服务器证书文件(默认:server.cert)
      -rpcsslprivatekeyfile=<文件.pem>         服务器私匙文件(默认:server.pem)
      -rpcsslciphers=<密码>                    可接受的密码(默认:TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!AH:!3DES:@STRENGTH)

    bitcoin.conf 配置文件

    除了 -datadir 和 -conf 以外的所有命令行参数都可以通过一个配置文件来设置,而所有配置文件中的选项也都可以在命令行中设置。命令行参数设置的值会覆盖配置文件中的设置。

    配置文件是“设置=值”格式的一个列表,每行一个。您还可以使用 # 符号来编写注释。

    配置文件不会自动创建;您可以使用您喜爱的纯文本编辑器来创建它。默认情况下,Bitcoin(或 bitcoind)会在比特币数据文件夹下查找一个名为“bitcoin.conf”的文件,但是数据文件夹和配置文件的路径都可以分别通过 -datadir 和 -conf 命令行参数分别指定。

    操作系统

    默认数据文件夹

    配置文件路径

    Windows

    %APPDATA%\Bitcoin\

    (XP) C:\Documents and Settings\username\Application Data\Bitcoin\bitcoin.conf

    (Vista, 7) C:\Users\username\AppData\Roaming\Bitcoin\bitcoin.conf

    Linux

    $HOME/.bitcoin/

    /home/username/.bitcoin/bitcoin.conf

    Mac OSX

    $HOME/Library/Application Support/Bitcoin/

    /Users/username/Library/Application Support/Bitcoin/bitcoin.conf

    注意:如果 Bitcoin 比特币客户端测试网模式运行,在数据文件夹下客户端会自动创建名为“testnet”的子文件夹。
    bitcoin.conf 示例

    # bitcoin.conf 配置文件。以 # 开头的行是注释。


    # 网络相关的设置:

    # 在测试网络中运行,而不是在真正的比特币网络
    #testnet=0

    # 通过一个 Socks4 代理服务器连接
    #proxy=127.0.0.1:9050

    ##############################################################
    ##            addnode 与 connect 的区别                     ##
    ##                                                          ##
    ##  假设您使用了 addnode=4.2.2.4 参数,那么 addnode 便会与   ##
    ##  您的节点连接,并且告知您的节点所有与它相连接的其它节点。   ##
    ##  另外它还会将您的节点信息告知与其相连接的其它节点,这样它   ##
    ##  们也可以连接到您的节点。                                 ##
    ##                                                          ##
    ##  connect 在您的节点“连接”到它的时候并不会做上述工作。仅  ##
    ##  它会与您连接,而其它节点不会。                           ##
    ##                                                          ##
    ##  因此如果您位于防火墙后,或者因为其它原因无法找到节点,则   ##
    ##  使用“addnode”添加一些节点。                            ##
    ##                                                          ##
    ##  如果您想保证隐私,使用“connect”连接到那些您可以“信任” ##
    ##  的节点。                                                ##
    ##                                                          ##
    ##  如果您在一个局域网内运行了多个节点,您不需要让它们建立许多 ##
    ##  连接。您只需要使用“connect”让它们统一连接到一个已端口转  ##
    ##  发并拥有多个连接的节点。                                 ##
    ##############################################################

    # 您可以在下面使用多个 addnode= 设置来连接到指定的节点
    #addnode=69.164.218.197
    #addnode=10.0.0.2:8333

    # ... 或使用多个 connect= 设置来仅连接到指定的节点
    #connect=69.164.218.197
    #connect=10.0.0.1:8333

    # 不使用因特网中继聊天(IRC)(irc.lfnet.org #bitcoin 频道)
    # 来查找其它节点
    #noirc=0

    # 入站+出站的最大连接数
    #maxconnections=


    # JSON-RPC 选项(用于控制运行中的 Bitcoin/bitcoind 进程):

    # server=1 告知 Bitcoin-QT 接受 JSON-RPC 命令
    #server=0

    # 您必须设置 rpcuser 和 rpcpassword 以确保 JSON-RPC 的安全
    #rpcuser=Ulysseys
    #rpcpassword=YourSuperGreatPasswordNumber_DO_NOT_USE_THIS_OR_YOU_WILL_GET_ROBBED_385593

    # 客户端在 HTTP 连接建立后,等待多少秒以完成一个 RPC HTTP 请求
    #rpctimeout=30

    # 默认仅允许来自本机的 RPC 连接。在这里您可以指定多个
    # rpcallowip=,来设置您想允许连接的其它主机 IP 地址。
    # 您可以使用 * 作为通配符。
    #rpcallowip=10.1.1.34
    #rpcallowip=192.168.1.*

    # 在如下端口监听 RPC 连接
    #rpcport=8332

    # 您可以通过如下设置使用 Bitcoin 或 bitcoind 来发送命令到一个在
    # 其它主机远程运行的 Bitcoin/bitcoind 客户端
    #rpcconnect=127.0.0.1

    # 使用安全套接层(也称为 TLS 或 HTTPS)来
    # 连接到 Bitcoin -server 或 bitcoind
    #rpcssl=1

    # 当 rpcssl=1 时使用的 OpenSSL 设置
    #rpcsslciphers=TLSv1+HIGH:!SSLv2:!aNULL:!eNULL:!AH:!3DES:@STRENGTH
    #rpcsslcertificatechainfile=server.cert
    #rpcsslprivatekeyfile=server.pem


    # 其它选项:

    # 设置 gen=1 以尝试生成比特币(采矿)
    #gen=0

    # 预生成如下数目的公匙和私匙,这样钱包备份便可以对已有的交易以及未来
    # 多笔交易有效
    #keypool=100

    # 每次您发送比特币的时候支付一个可选的额外的交易手续费。包含手续费的交易
    # 会更快的被包含在新生成的货币块中,因此会更快生效
    #paytxfee=0.00

    # 允许直接连接,实现“通过 IP 地址支付”功能
    #allowreceivebyip=1

    # 用户界面选项:

    # 最小化启动比特币客户端
    #min=1

    # 最小化到系统托盘
    #minimizetotray=1
    展开全文
  • bitcoind命令 中文文档

    2019-01-25 15:48:00
    2019独角兽企业重金招聘Python工程师标准>>> ...

    比特币核心守护程序版本v0.17.1

    用法:bitcoind [options]启动比特币核心守护进程

    选项:

       - ?
           打印此帮助信息并退出

      -alertnotify = <CMD>
           收到相关警报或我们真的看到时执行命令
           long fork(cmd中的%s被消息替换)

      -assumevalid = <六角>
           如果该块在链中,则认为它及其祖先是有效的
           并可能跳过他们的脚本验证(0来验证所有,
           默认:
           0000000000000000002e63058c023a9a1de233554f28c7b21380b6c9003f36a8,
           testnet:
           0000000000000037a8cd3e06cd5edbfe9dd1dbcc5dacab279376ef7cfc2b4c75)

      -blocknotify = <CMD>
           最佳块更改时执行命令(cmd中的%s替换为
           块哈希)

      -blockreconstructionextratxn = <N>
           为紧凑块重建保留在内存中的额外事务
           (默认值:100)

      -blocksdir = <DIR>
           指定块目录(默认值:<datadir> / blocks)

      -conf = <文件>
           指定配置文件。相对路径将以datadir为前缀
           地点。 (默认:bitcoin.conf)

      -datadir = <DIR>
           指定数据目录

      -dbcache = <N>
           设置数据库缓存大小(以兆字节为单位)(4到16384,默认值:450)

      -debuglogfile = <文件>
           指定调试日志文件的位置。相对路径将以a为前缀
           特定于网络的数据库位置。 (-nodebuglogfile禁用;
           默认值:debug.log)

      -includeconf = <文件>
           指定相对于-datadir路径的其他配置文件
           (仅可从配置文件使用,不能使用命令行)

      -loadblock = <文件>
           在启动时从外部blk000 ??。dat文件导入块

      -maxmempool = <N>
           将事务内存池保持在<n>兆字节以下(默认值:300)

      -maxorphantx = <N>
           在内存中保留最多<n>个不可连接的事务(默认值:100)

      -mempoolexpiry = <N>
           不要在mempool中保留超过<n>小时的事务(默认值:
           336)

      -par = <N>
           设置脚本验证线程数(-4到16,0 = auto,<0 =
           保留许多核心免费,默认:0)

      -persistmempool
           是否在关机时保存mempool并在重启时加载(默认值:1)

      -prune = <N>
           通过启用旧的修剪(删除)来降低存储要求
           块。这允许调用pruneblockchain RPC
           删除特定块,并启用旧的自动修剪
           如果提供MiB中的目标大小,则阻止。这种模式是
           与-txindex和-rescan不兼容。警告:还原它
           设置需要重新下载整个区块链。 (默认:
           0 =禁用修剪块,1 =允许通过RPC手动修剪,
           > = 550 =自动修剪块文件以保持在
           MiB中指定的目标尺寸)

      -reindex
           从磁盘上的blk * .dat文件重建链状态和块索引

      -reindex-chainstate
           从当前索引的块重建链状态

      -txindex
           维护getrawtransaction rpc使用的完整事务索引
           通话(默认:0)

      -版
           打印版本并退出

    连接选项:

      -addnode = <IP>
           添加要连接的节点并尝试保持连接打开(请参阅
           `addnode` RPC命令帮助获取更多信息)。这个选项可以
           多次指定添加多个节点。

      -banscore = <N>
           断开行为不端的对等体的阈值(默认值:100)

      -bantime = <N>
           让行为不端的同伴重新连接的秒数(默认值:
           86400)

      -bind = <地址>
           绑定到给定地址并始终听取它。使用[host]:端口表示法
           对于IPv6

      -connect = <IP>
           仅连接到指定的节点; -noconnect禁用自动
           连接(此对等体的规则与for相同
           -addnode)。可以多次指定此选项进行连接
           到多个节点。

      -发现
           发现自己的IP地址(默认:收听时为1,没有--externalip
           或者 - 代理)

      -dns
           允许DNS查找-addnode,-seednode和-connect(默认值:1)

      -dnsseed
           如果地址较低,则通过DNS查询查询对等地址(默认值:1
           除非使用-connect)

      -enablebip61
           按BIP61发送拒绝消息(默认值:1)

      -externalip = <IP>
           指定您自己的公共地址

      -forcednsseed
           始终通过DNS查找查询对等地址(默认值:0)

      -听
           接受来自外部的连接(默认值:如果没有-proxy或-connect,则为1)

      -listenonion
           自动创建Tor隐藏服务(默认值:1)

      -maxconnections = <N>
           最多保持与同伴的<n>连接(默认值:125)

      -maxreceivebuffer = <N>
           最大每连接接收缓冲区,<n> * 1000字节(默认值:5000)

      -maxsendbuffer = <N>
           最大每连接发送缓冲区,<n> * 1000字节(默认值:1000)

      -maxtimeadjustment
          

    允许的最大中值对等时间偏移调整。地方视角
           时间可能受到同伴向前或向后的影响
           量。 (默认:4200秒)

      -maxuploadtarget = <N>
           试图保持给定目标下的出站流量(每24小时MiB),
           0 =无限制(默认值:0)

      -onion = <IP:端口>
           使用单独的SOCKS5代理通过Tor隐藏服务设置到达对等体
           -noonion禁用(默认值:-proxy)

      -onlynet = <净>
           仅通过网络<net>(ipv4,ipv6或.net)建立传出连接
           洋葱)。传入连接不受此选项的影响。
           可以多次指定此选项以允许多个
           网络。

      -peerbloomfilters
           支持使用bloom过滤器过滤块和事务(默认值:
           1)

      -permitbaremultisig
           中继非P2SH multisig(默认值:1)

      -port = <端口>
           侦听<port>上的连接(默认值:8333或testnet:18333)

      -proxy = <IP:端口>
           通过SOCKS5代理连接,将-noproxy设置为禁用(默认值:
           禁用)

      -proxyrandomize
           随机化每个代理连接的凭据。这使Tor成为可能
           流隔离(默认值:1)

      -seednode = <IP>
           连接到节点以检索对等地址,并断开连接。这个
           可以多次指定选项以连接到多个
           节点。

      -timeout = <N>
           以毫秒为单位指定连接超时(最小值:1,默认值:5000)

      -torcontrol = <IP>:<端口>
           如果启用了洋葱侦听,则使用Tor控制端口(默认值:
           127.0.0.1:9051)

      -torpassword = <传递>
           Tor控制端口密码(默认值:空)

      -upnp
           使用UPnP映射侦听端口(默认值:0)

      -whitebind = <地址>
           绑定到给定地址并将连接到它的白名单列入白名单。使用
           [host]:IPv6的端口表示法

      -whitelist = <IP地址或网络>
           从给定IP地址连接的白名单对等体(例如1.2.3.4)或
           CIDR标记网络(例如1.2.3.0/24)。可以指定多个
           倍。白名单同行不能被DoS禁止和他们的
           交易总是被转发,即使它们已经在交易中
           mempool,有用的例如用于网关

    钱包选项:

      -地址类型
           要使用哪种类型的地址(“legacy”,“p2sh-segwit”或“bech32”,
           默认值:“p2sh-segwit”)

      -avoidpartialspends
           按地址分组输出,选择全部或全部,而不是选择开
           每个输出的基础。隐私得到改善,因为地址是唯一的
           使用一次(除非有人在花钱后发给它),
           但由于次优硬币可能导致费用略高
           选择可能由于添加的限制而导致(默认值:0)

      -changetype
           使用什么类型的更改(“遗留”,“p2sh-segwit”或“bech32”)。
           默认值与-addresstype相同,除非
           -addresstype = p2sh-segwit使用本机segwit输出时
           发送到本地segwit地址)

      -disablewallet
           不要加载钱包并禁用钱包RPC调用

      -discardfee = <AMT>
           费率(BTC / kB)表示您对丢弃的容忍度
           通过将其添加到费用来更改(默认值:0.0001)。注意:输出
           如果它是以这个速度的灰尘被丢弃,但我们将永远
           丢弃灰尘接力费和高于此的丢弃费
           受最长目标的费用估算限制

      -fallbackfee = <AMT>
           费用估算时将使用的费率(BTC / kB)
           数据不足(默认值:0.0002)

      -keypool = <N>
           将密钥池大小设置为<n>(默认值:1000)

      -mintxfee = <AMT>
           小于此的费用(BTC / kB)被视为零费用
           事务创建(默认值:0.00001)

      -paytxfee = <AMT>
           费用(以BTC / kB为单位)添加到您发送的交易中(默认值:0.00)

      -rescan
           在启动时重新扫描块链以查找丢失的钱包事务

      -salvagewallet
           尝试在启动时从损坏的钱包中恢复私钥

      -spendzeroconfchange
           发送事务时花费未经证实的更改(默认值:1)

      -txconfirmtarget = <N>
           如果未设置paytxfee,请包含足够的费用以便开始交易
           n块内平均确认(默认值:6)

      -upgradewallet
           在启动时将钱包升级到最新格式

      -wallet = <路径>
           指定钱包数据库路径。可以多次指定加载
           多个钱包。路径是相对于<walletdir> if解释的
           它不是绝对的,如果它不存在将被创建(如
           包含wallet.dat文件和日志文件的目录。对于
           向后兼容性这也将接受现有的名称
           <walletdir>中的数据文件。)

      -walletbroadcast
           制作钱包广播交易(默认值:1)

      -walletdir = <DIR>
           指定保存钱包的目录(默认值:<datadir> / wallets,如果它
           存在,否则<datadir>)

    -walletnotify = <CMD>
           钱包交易发生变化时执行命令(替换cmd中的%s)
           通过TxID)

      -walletrbf
           使用全RBF选择加入发送事务(仅限RPC,默认值:0)

      -zapwallettxes = <模式>
           删除所有钱包交易,只恢复那些部分
           在启动时通过-rescan进行区块链(1 =保留tx元数据,例如
           帐户所有者和付款请求信息,2 = drop tx meta
           数据)

    ZeroMQ通知选项:

      -zmqpubhashblock = <地址>
           在<address>中启用发布哈希块

      -zmqpubhashtx = <地址>
           在<address>中启用发布哈希事务

      -zmqpubrawblock = <地址>
           在<address>中启用发布原始块

      -zmqpubrawtx = <地址>
           在<address>中启用发布原始事务

    调试/测试选项:

      -debug = <类别>
           输出调试信息(默认值:-nodebug,提供<category>是
           可选的)。如果未提供<category>或<category> = 1,
           输出所有调试信息。 <category>可以是:net,tor,
           mempool,http,bench,zmq,db,rpc,estimatefee,addrman,
           selectcoins,reindex,cmpctblock,rand,prune,proxy,mempoolrej,
           libevent,coindb,qt,leveldb。

      -debugexclude = <类别>
           排除类别的调试信息。可以结合使用
           使用-debug = 1输出除一个以外的所有类别的调试日志
           或更多指定的类别。

      -help调试
           显示所有调试选项(用法: -  help -help-debug)

      -logips
           在调试输出中包含IP地址(默认值:0)

      -logtimestamps
           使用时间戳预先调试输出(默认值:1)

      -maxtxfee = <AMT>
           在单个钱包交易或原始交易中使用的最大总费用(以BTC计)
           交易;将此设置得太低可能会中止大型事务
           (默认值:0.10)

      -printtoconsole
           将跟踪/调试信息发送到控制台(默认值:1,当没有-daemon时。禁用
           记录到文件,设置-nodebuglogfile)

      -shrinkdebugfile
           在客户端启动时收缩debug.log文件(默认值:1,没有-debug时)

      -uacomment = <CMT>
           将注释附加到用户代理字符串

    连锁选择:

      -testnet
           使用测试链

    节点中继选项:

      -bytespersigop
           中继和挖掘事务中每个sigop的等效字节数
           (默认值:20)

      -datacarrier
           中继和我的数据载体交易(默认值:1)

      -datacarriersize
           我们中继和挖掘的数据载体交易中的最大数据大小
           (默认:83)

      -mempoolreplacement
           在内存池中启用事务替换(默认值:1)

      -minrelaytxfee = <AMT>
           小于此的费用(BTC / kB)被认为是中继的零费用,
           挖掘和创建事务(默认值:0.00001)

      -whitelistforcerelay
           即使违反了白名单同伴的交易强制中继也是如此
           本地中继政策(默认:1)

      -whitelistrelay
           接受从列入白名单的同行收到的中继交易,即使是
           不转发交易(默认:1)

    块创建选项:

      -blockmaxweight = <N>
           设置最大BIP141块重量(默认值:3996000)

      -blockmintxfee = <AMT>
           为要包含在块中的交易设置最低费率(BTC / kB)
           创建。 (默认值:0.00001)

    RPC服务器选项:

      -休息
           接受公共REST请求(默认值:0)

      -rpcallowip = <IP>
           允许来自指定源的JSON-RPC连接。适用于<ip>的是
           单个IP(例如1.2.3.4),网络/网络掩码(例如,
           1.2.3.4/255.255.255.0)或网络/ CIDR(例如1.2.3.4/24)。这个
           选项可以多次指定

      -rpcauth = <userpw>
           JSON-RPC连接的用户名和散列密码。场
           <userpw>的格式为:<USERNAME>:<SALT> $ <HASH>。一个
           canonical python脚本包含在share / rpcauth中。客户端
           然后通常使用
           rpcuser = <USERNAME> / rpcpassword = <PASSWORD>参数对。这个
           选项可以多次指定

      -rpcbind = <地址> [:端口]
           绑定到给定地址以侦听JSON-RPC连接。这个选项是
           除非-rpcallowip也被传递,否则将被忽略。端口是可选的
           覆盖-rpcport。使用[host]:IPv6的端口表示法。这个
           可以多次指定选项(默认值:127.0.0.1和
           :: 1即localhost,或者如果指定了-rpcallowip,
           0.0.0.0和::即所有地址)

      -rpccookiefile = <LOC>
           身份验证cookie的位置。相对路径将以a为前缀
           特定于网络的数据库位置。 (默认:数据目录)

      -rpcpassword = <PW>
           JSON-RPC连接的密码

      -rpcport = <端口>
           在<port>上侦听JSON-RPC连接(默认值:8332或testnet:
           18332)

      -rpcserialversion
           设置返回的原始事务或块十六进制的序列化
           非详细模式,非segwit(0)或segwit(1)(默认值:1)

    -rpcthreads=<N>
            设置服务RPC调用的线程数(默认值:4)

      -rpcuser= <用户>
            JSON-RPC连接的用户名

      -server
            接受命令行和JSON-RPC命令

    转载于:https://my.oschina.net/feistel/blog/3005964

    展开全文
  • bitcoind环境搭建

    千次阅读 2018-07-16 22:20:58
     钱包有很多种,其中bitcoind就是其中的一种钱包。本文介绍bitcoin的安装。此外本博客将会是一个系列文章,记录自己一步一步搭建矿池的过程,如果有什么不足之处,请大家多提宝贵意见。 二、注意事项: (1)本文...

    一、简介:

        钱包有很多种,其中bitcoind就是其中的一种钱包。本文介绍bitcoin的安装。此外本博客将会是一个系列文章,记录自己一步一步搭建矿池的过程,如果有什么不足之处,请大家多提宝贵意见。

    二、注意事项:

    (1)本文中的命令都是亲自实践,均可复制。

    (2)本文所使用的环境是阿里云服务器,操作系统是ubuntu16.04版本。

    (3)本文安装的比特币全节点,安装需要磁盘空间超过150G,本文的环境是500G硬盘。

    (4)第一次安装bitcoind,需要下载150G数据文件,所以安装比较耗时。

    (5)本文一共设计4台服务器,为了方便理解,命名为server1, server2, server3,server4,本文的操作都是在server1上。

    三、安装步骤

    1. 安装所有依赖的库。这个非常快,不到一分钟就安装完毕。这里安装的所有的库,在github中都有介绍,具体请参照文末的参考资料。

    apt-get -y install build-essential libtool autotools-dev automake autoconf pkg-config bsdmainutils python3
    apt-get -y install libssl-dev libboost-all-dev libevent-dev
    apt-get -y install libdb-dev libdb++-dev
    apt-get -y install libminiupnpc-dev libzmq3-dev
    apt-get -y install libqt5gui5 libqt5core5a libqt5dbus5 qttools5-dev qttools5-dev-tools libprotobuf-dev protobuf-compiler libqrencode-dev

    2.  下载bitcoind源码、编译源码。编译的过程比较耗时,请耐心等待。

    wget https://github.com/bitcoin/bitcoin/archive/v0.15.1.tar.gz
    tar -zxvf bitcoin-0.15.1.tar.gz
    cd bitcoin-0.15.1/
    ./autogen.sh
    ./configure --with-incompatible-bdb --prefix=/work/bitcoin
    make
    make install

    三、启动服务。启动服务之后需要下载数据,也是比较耗时的。这里的--daemon表示以守护进程的方式在后台执行。-testnet表示运行的是测试网络

    cd /work/bitcoin/bin/
    ./bitcoind --daemon -testnet -zmqpubhashtx=tcp://0.0.0.0:18331 -zmqpubhashblock=tcp://0.0.0.0:18331

    最后,这是系列文章的第一篇,非常简单,但是又非常耗时,基于此,所以专门安排一篇文章。感谢所有读者。

    本文参考资料:

    (1)https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md

    (2)https://blog.csdn.net/itcastcpp/article/details/80380262

     

     

    展开全文
  • bitcoind的使用和bitcoin.conf配置文件

    千次阅读 2018-09-08 13:40:00
    参考: https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File

    bitcoin.conf文件:

    ##
    ## bitcoin.conf configuration file. Lines beginning with # are comments.
    ##
    
    # Network-related settings:
    
    # Run on the test network instead of the real bitcoin network.
    #testnet=0
    
    # Run a regression test network
    #regtest=0
    
    # Connect via a SOCKS5 proxy
    #proxy=127.0.0.1:9050
    
    # Bind to given address and always listen on it. Use [host]:port notation for IPv6
    #bind=<addr>
    
    # Bind to given address and whitelist peers connecting to it. Use [host]:port notation for IPv6
    #whitebind=<addr>
    
    ##############################################################
    ##            Quick Primer on addnode vs connect            ##
    ##  Let's say for instance you use addnode=4.2.2.4          ##
    ##  addnode will connect you to and tell you about the      ##
    ##    nodes connected to 4.2.2.4.  In addition it will tell ##
    ##    the other nodes connected to it that you exist so     ##
    ##    they can connect to you.                              ##
    ##  connect will not do the above when you 'connect' to it. ##
    ##    It will *only* connect you to 4.2.2.4 and no one else.##
    ##                                                          ##
    ##  So if you're behind a firewall, or have other problems  ##
    ##  finding nodes, add some using 'addnode'.                ##
    ##                                                          ##
    ##  If you want to stay private, use 'connect' to only      ##
    ##  connect to "trusted" nodes.                             ##
    ##                                                          ##
    ##  If you run multiple nodes on a LAN, there's no need for ##
    ##  all of them to open lots of connections.  Instead       ##
    ##  'connect' them all to one node that is port forwarded   ##
    ##  and has lots of connections.                            ##
    ##       Thanks goes to [Noodle] on Freenode.               ##
    ##############################################################
    
    # Use as many addnode= settings as you like to connect to specific peers
    #addnode=69.164.218.197
    #addnode=10.0.0.2:8333
    
    # Alternatively use as many connect= settings as you like to connect ONLY to specific peers
    #connect=69.164.218.197
    #connect=10.0.0.1:8333
    
    # Listening mode, enabled by default except when 'connect' is being used
    #listen=1
    
    # Maximum number of inbound+outbound connections.
    #maxconnections=
    
    #
    # JSON-RPC options (for controlling a running Bitcoin/bitcoind process)
    #
    
    # server=1 tells Bitcoin-Qt and bitcoind to accept JSON-RPC commands
    #server=0
    
    # Bind to given address to listen for JSON-RPC connections. Use [host]:port notation for IPv6.
    # This option can be specified multiple times (default: bind to all interfaces)
    #rpcbind=<addr>
    
    # If no rpcpassword is set, rpc cookie auth is sought. The default `-rpccookiefile` name
    # is .cookie and found in the `-datadir` being used for bitcoind. This option is typically used
    # when the server and client are run as the same user.
    #
    # If not, you must set rpcuser and rpcpassword to secure the JSON-RPC api. The first
    # method(DEPRECATED) is to set this pair for the server and client:
    #rpcuser=Ulysseys
    #rpcpassword=YourSuperGreatPasswordNumber_DO_NOT_USE_THIS_OR_YOU_WILL_GET_ROBBED_385593
    #
    # The second method `rpcauth` can be added to server startup argument. It is set at intialization time
    # using the output from the script in share/rpcuser/rpcuser.py after providing a username:
    #
    # ./share/rpcuser/rpcuser.py alice
    # String to be appended to bitcoin.conf:
    # rpcauth=alice:f7efda5c189b999524f151318c0c86$d5b51b3beffbc02b724e5d095828e0bc8b2456e9ac8757ae3211a5d9b16a22ae
    # Your password:
    # DONT_USE_THIS_YOU_WILL_GET_ROBBED_8ak1gI25KFTvjovL3gAM967mies3E=
    #
    # On client-side, you add the normal user/password pair to send commands:
    #rpcuser=alice
    #rpcpassword=DONT_USE_THIS_YOU_WILL_GET_ROBBED_8ak1gI25KFTvjovL3gAM967mies3E=
    #
    # You can even add multiple entries of these to the server conf file, and client can use any of them:
    # rpcauth=bob:b2dd077cb54591a2f3139e69a897ac$4e71f08d48b4347cf8eff3815c0e25ae2e9a4340474079f55705f40574f4ec99
    
    # How many seconds bitcoin will wait for a complete RPC HTTP request.
    # after the HTTP connection is established. 
    #rpcclienttimeout=30
    
    # By default, only RPC connections from localhost are allowed.
    # Specify as many rpcallowip= settings as you like to allow connections from other hosts,
    # either as a single IPv4/IPv6 or with a subnet specification.
    
    # NOTE: opening up the RPC port to hosts outside your local trusted network is NOT RECOMMENDED,
    # because the rpcpassword is transmitted over the network unencrypted.
    
    # server=1 tells Bitcoin-Qt to accept JSON-RPC commands.
    # it is also read by bitcoind to determine if RPC should be enabled 
    #rpcallowip=10.1.1.34/255.255.255.0
    #rpcallowip=1.2.3.4/24
    #rpcallowip=2001:db8:85a3:0:0:8a2e:370:7334/96
    
    # Listen for RPC connections on this TCP port:
    #rpcport=8332
    
    # You can use Bitcoin or bitcoind to send commands to Bitcoin/bitcoind
    # running on another host using this option:
    #rpcconnect=127.0.0.1
    
    # Create transactions that have enough fees so they are likely to begin confirmation within n blocks (default: 6).
    # This setting is over-ridden by the -paytxfee option.
    #txconfirmtarget=n
    
    # Miscellaneous options
    
    # Pre-generate this many public/private key pairs, so wallet backups will be valid for
    # both prior transactions and several dozen future transactions.
    #keypool=100
    
    # Pay an optional transaction fee every time you send bitcoins.  Transactions with fees
    # are more likely than free transactions to be included in generated blocks, so may
    # be validated sooner.
    #paytxfee=0.00
    
    # Enable pruning to reduce storage requirements by deleting old blocks. 
    # This mode is incompatible with -txindex and -rescan.
    # 0 = default (no pruning).
    # 1 = allows manual pruning via RPC.
    # >=550 = target to stay under in MiB. 
    #prune=550
    
    # User interface options
    
    # Start Bitcoin minimized
    #min=1
    
    # Minimize to the system tray
    #minimizetotray=1

    参考:
    https://en.bitcoin.it/wiki/Running_Bitcoin#Bitcoin.conf_Configuration_File

    展开全文
  • BTC ... 或者 sudo apt install software-properties-common sudo add-apt-repository ppa:bitcoin/bitcoin sudo apt-get update 安装bitcoind: sudo apt-get install bitcoind ...
  • bitcoind

    2018-06-01 07:41:34
    sudo apt install build-essential libtool autotools-dev automake pkg-config libssl-dev libevent-dev bsdmainutils python3 sudo apt install libboost-system-dev libboost-filesystem-dev libboost-chrono-dev...
  • Bitcoind 安装配置

    千次阅读 2014-10-23 16:51:17
    rpm方式 rpm -ivh http://linux.ringingliberty.com/bitcoin/el6/x86_64/bitcoin-release-1-6.noarch.rpm... yum install bitcoin-server CentOS5参考 ...Ok let's get this tutorial section started off with one.
  • bitcoind配置文件说明

    千次阅读 2019-04-25 14:35:23
    bitcoin.conf是比特币核心程序bitcoind的配置文件,本文将介绍bitcoin.conf的默认路径,并给出bitcoin.conf文件中主要配置项的说明。 如果要快速掌握比特币的对接与应用开发,推荐汇智网的在线互动课程: Java比特...
  • 学习完区块链枯燥乏味的、高深的、必备的基础知识后,终于可以走上开发之路了!真是迫不及待啦!之后博客更新主要放在区块链的开发上,相信这才是大多数同学更加感兴趣的地方!学习过程从最经典的区块链鼻祖-比特币...
  • 比特币开发--bitcoind常用参数解析

    千次阅读 2018-07-16 14:58:14
    $ ./src/bitcoind --help 常用参数解析 -blocksdir=&lt;dir&gt; Specify blocks directory (default: &lt;datadir&gt;/blocks) 定义blocks的路径,linux下默认~/.bitcoin/blocks,视datadir...
  • 比特币bitcoind-cli 常用命令学习记录

    千次阅读 2018-08-08 18:08:04
    比特币bitcoind-cli 常用命令学习记录 接触比特币只有半个月,很多都是萌新阶段,本文记录开发时常用到的bitcoin-cli 命令。 开发环境 ubuntu 16.04LTS ; Bitcoin Core Daemon version v0.16.2.0; 搭建开发...
  • bitcoin全节点部署及bitcoind bitcoin-cli命令使用解释 服务器配置: 操作系统: ubuntu 16.04 CPU: 4U 内存: 16G #一般来说4G就够,但如果要查历史记录,需要加载完整的交易索引表-tindex,这导致需要...
  • 0x01 AppInit - Continue对于AppInit中剩下的一部分代码,我们首先浏览一下主要实现...// src/bitcoind.cpp line 127-185 // -server defaults to true for bitcoind but not for the GUI so do this here gArgs.S...
  • 0x00 摘要我使用的是Ubuntu 16.04 系统所以直接按照https://github.com/bitcoin/bitcoin/blob/master/doc/build-unix.md 编译就可以成功,编译完成之后,生成了一下几个可执行文件:bench_bitcoin:根据...
  • 0x01 AppInit接下来分析main函数中的最后一个函数AppInit,首先看前面一部分代码, // src/bitcoind.cpp line 65-95 boost::thread_group threadGroup; CScheduler scheduler;bool fRet = false; // Parameters // /...
  • http://8btc.com/thread-11038-1-1.html bitcoind 是什么? http://8btc.com/article-1702-1.html 比特币客户端bitcoind的高级用法 http://www.linuxdiyf.com/linux/30942.html 聊聊比特币(Bitcoin)客户端源码...
  • 0x01 InitParameterInteraction下面我们来看上一章第二个函数的实现代码,这个函数中包括一系列的if语句,我们一个个来看。 // when specifying an explicit binding address, you want to listen on it ...
  • bitcoind命令 原文文档

    2019-01-25 15:47:00
    2019独角兽企业重金招聘Python工程师标准>>> ...
1 2 3 4 5 ... 20
收藏数 884
精华内容 353
关键字:

bitcoind