美文网首页程序员
搭建比特币环境 Java调用RPC

搭建比特币环境 Java调用RPC

作者: 织梦少年666 | 来源:发表于2018-11-05 15:32 被阅读128次

    BTC环境搭建

    1.准备服务器 (推荐linux centos环境 windows不稳定)
    最近在准备一个比特币钱包的项目,需要在CENTOS服务器上部署比特币钱包,由于该项目是部署的核心钱包,需要同步所有的blocks, 需要的磁盘空间大约在170G左右。
    服务器的配置:
    CPU: 2核以上
    内存: 2G以上
    数据盘: 170G以上(注意需要专门增加一块存储盘,否则全节点区块链存不下)
    带宽: 2Mbps以上
    操作系统:centos 7.0 64位

    2.下载资源
    最新下载地址:https://bitcoin.org/zh_CN/download

    进入linux 解压:tar -zxvf ...


    image.png

    进入 cd bitcoin-0.17.0/bin


    image.png
    执行 ./bitcoind --datadir=/data/data/
    /data/data/ 为节点资源的路径 如果不定义则采用系统自定义的路径
    运行命令./bitcoin-cli getblockchaininfo   (查看当前钱包信息)
    {
      "deprecation-warning": "WARNING: getinfo is deprecated and will be fully removed in 0.16. Projects should transition to using getblockchaininfo, getnetworkinfo, and getwalletinfo before upgrading to 0.16",
      "version": 150100,
      "protocolversion": 70015,
      "walletversion": 139900,
      "balance": 0.01000000,
      "blocks": 509920,
      "timeoffset": -1,
      "connections": 8,
      "proxy": "",
      "difficulty": 2874674234415.941,
      "testnet": false,
      "keypoololdest": 1517114450,
      "keypoolsize": 1999,
      "paytxfee": 0.00000000,
      "relayfee": 0.00001000,
      "errors": ""
    }
    

    Java RPC接口访问

    查看日志最后1000行:cat debug.log | tail -n 1000
    查看正在运行的bitcoin进程: ps -ef | grep bit
    将配置文件复制到root:cp /data/data/bitcoin.conf /root/.bitcoin/
    启动带有配置的bitcoin: ./bitcoind -datadir=/data/data/ -conf=/data/data/bitcoin.conf -daemon

    编辑配置文件 vim /root/.bitcoin/bitcoin.conf
    #监听模式,默认启动
    listen=1  
    #允许bitcoin接收JSON-RPC
    server=1  
    #RPC用户名
    rpcuser=bitcoincash
    #RPC密码
    rpcpassword=123456
    #RPC端口
    rpcport=8888
    #允许RPC访问ip 不限制ip
    rpcallowip=0.0.0.0/0
    
    将配置文件复制到root:cp /root/.bitcoin/bitcoin.conf /data/data/
    启动带有配置的bitcoin:nohup ./bin/bitcoind -datadir=/data/data/ -conf=/data/data/bitcoin.conf >/dev/null 2>log &
    

    备注:
    默认同步端口:8333
    默认RPC端口:8332
    API:https://en.bitcoin.it/wiki/Original_Bitcoin_client/API_calls_list

    Java代码

    <!--比特币-->
        <dependency>
                <groupId>wf.bitcoin</groupId>
                <artifactId>JavaBitcoindRpcClient</artifactId>
                <version>0.9.13</version>
        </dependency>
    
    public void btc(){
            String user = "admin";
            String password = "admin_ecc";
            String host = "47.244.0.0";
            String port = "8332";
            try {
                URL url = new URL("http://" + user + ':' + password + "@" + host + ":" + port + "/");
                BitcoinJSONRPCClient bitcoinClient = new BitcoinJSONRPCClient(url);
                System.out.println(bitcoinClient.getNewAddress("kevens"));
            } catch (MalformedURLException e) {
                System.out.println("error"+e.getMessage());
                e.printStackTrace();
            }
        }
    

    相关文章

      网友评论

        本文标题:搭建比特币环境 Java调用RPC

        本文链接:https://www.haomeiwen.com/subject/rjusxqtx.html