BtcTool有什么用

  介绍

小编给大家分享一下BtcTool有什么用,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获、下面让我们一起去了解一下吧!

<强> BtcTool 是一个基于第三方服务和离线裸交易实现的PHP比特币应用开发包,适合不希望部署本地节点旳PHP开发者,开发包主要包含以下特性:

<李>

利用第三方服务获取指定地址的utxo集合

<李>

离线生成消费裸交易

<李>

利用第三方服务广播裸交易

BtcTool目前支持的第三方服务包括,并且可以非常简单进行扩展:

<李>

blockchain.info

<李> btc.com

BtcTool下载地址:http://sc.hubwiz.com/codebag/btc-php-lib/

1。代码清单

BtcTool运行Php 7.1 + * *在* *环境下,当前版本1.0.0,主要代码文件清单如下:

 BtcTool有什么用“> </p> <h4> 2。使用说明</h4> <p> BtcTool的入口是钱包<强> </强>类,基本的使用步骤如下:</p> <ol类= <李>

创建一个钱包实例

<李>

将私钥加入该钱包实例

<李>

使用钱包实例的* * sendTx() * *方法获取编码后的裸交易

<李>

使用钱包实例的* *广播()* *方法广播裸交易

示例例代码如下,说明见注释:

 & lt; ? php
  要求(& # 39;. ./供应商/autoload.php& # 39;);
  
  use  BtcTool \钱包,,,,,,,,,,,,,//引入开发包
  
  $ wallet =, new 钱包(& # 39;testnet& # 39;);,,//创建钱包,主网传入,mainnet
  
  时间=美元prvKey  & # 39;……& # 39;;,,,,,,,,,,,,,,,,,//向钱包中添加私钥,可添加多个
  美元的钱包→addKey ($ prvKey);
  
  toAddr 美元;=,& # 39;mgYPLmNuZymK…e2XUNF6VFnT& # 39;,,,//地址应当与testnet/mainnet保持一致
  amount 美元;=,10000,,,,,,,,,,,,,,,,,//单位:satoshi
  美元$ rawtx =,钱包→sendTx (toAddr美元,美元金额);,,//构造裸交易,返回16进制字符串
  
  ret 美元;=,美元的钱包→广播($ rawtx);,,,//广播裸交易

注意:

<李>

钱包实例利用钱包中的私钥生成地址列表,并利用这些地址从第三方服务获取utxo信息,因此需要钱包中的私钥对应地址在链上有utxo存在,钱包对象才能够成功构造裸交易。

<李>

在调用钱包对象的sendTx()方法构造裸交易时,可以指定找零地址和手续费,例如:

 rawtx 美元;=,美元的钱包→sendTx (toAddr美元,美元金额,changeAddr美元,美元费用),

如果未指定后面两个参数,找零地址默认为钱包中第一个私钥对应的地址,手续费默认为10000 satoshi(高费率)。3。转账目标地址应当与创建钱包对象时指定的链ID一致,例如mainnet的p2pkh地址,前缀应当为1

3。主要模型

3.1 UtxoCollector接口

利用钱包地址列表,获取候选UTXO。

接口方法:

<李>

收集():提取候选UTXO,返回TUXO集合

当前实现类:

<李>

CloudUtxoCollector

3.2 UtxoSelector接口

根据目标金额从候选UTXO中选择可消费UTXO

接口方法:

<李>

select():选择可消费UTXO,返回UtxoBag对象

当前实现类:

<李>

DefaultUtxoSelector

3.3广播接口

裸交易广播器

接口方法:

<李>

播出():广播裸交易

当前实现类:

<李>

CloudBroadcaster

3.4钱包类

管理私钥,地址和脚本,同时提供构造和广播裸交易的方法

主要方法:

<李>

::负载():静态方法,利用硬盘的钱包文件构造钱包对象

<李>

addKey():添加私钥

<李>

save():将钱包对象保存到钱包文件

<李>

sendTx():构造裸交易,返回裸交易码流,该方法可自动搜索可用UTXO集合

<李>

播出():广播裸交易,调用广播完成

以上是“BtcTool有什么用”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

BtcTool有什么用