Tether USDT 节点钱包安装与使用

什么是USDT

本文中,我们介绍Tether公司利用bitcoin区块网络构造的omni layer,在这个overlay network上各方可以发行token,tether公司

在omni layer上发行了代号为USDT的token, 1:1锚定美元。

tether的思想很简单,大家把美元给我,给我1美元,我发行1USDT,美元存放到指定的资产账户,大家都可以查询,发行的USDT总量也可以在区块上进行查询。当兑换的时候,给我1USDT,我返还1美元。

Omni(USDT)钱包安装

一.下载Omni Layer钱包
    wget https://bintray.com/artifact/download/omni/OmniBinaries/omnicore-0.3.0-x86_64-linux-gnu.tar.gz

二.解压并运行
    解压   tar -xzvf omnicore-0.3.0-x86_64-linux-gnu.tar.gz
    拷贝依赖库至本地   sudo cp omnicore-0.3.0/lib/* /lib
    打开钱包目录  cd omnicore-0.3.0/bin
    运行   ./omnicored
    初次启动会生成     ~/.bitcoin/ 文件夹

三.编写配置文件
    vim ~/.bitcoin/bitcoin.conf
    配置文件说明文档
    txindex=1 #代表事务初始索引
    listen=1  #监听模式,默认启动
    server=1  #代表开启RPC访问
    rpcuser=username #RPC用户名
    rpcpassword=password #RPC密码
    rpcport=8888 #RPC端口
    rpcallowip=127.0.0.1 #允许RPC访问ip
    
四.后台启动服务
    nohup ./omnicored --datadir=/data/btcdata --conf=/root/.bitcoin/bitcoin.conf 2>/data/btclog.log &
    
五.启动方式
    ./omnicored -testnet 连接test3测试网络,会同步test3网络的区块数据(约20G)
    ./omnicored -regtest 单机运行,不需要连接其他网络,区块数据在本地运行。
    ./omnicored          连接比特币主网网络,会同步真实区块数据(约250G,要4-5天时间同步完成)

USDT api 常用命令行示例

新建账户地址
    ./omnicore-cli getnewaddress hjlAddress  #(hjlAddress 账户名称)
一个账户名可以对应多个地址
    ./omnicore-cli getaddressesbyaccount hjlAddress

获取钱包比特币数量
    ./omnicore-cli getinfo

获取USDT数量
    ./omnicore-cli "omni_getbalance" "14Nzwd3SU4eWgiPW68RuvsgsazYEgBXjKQ" 31

发送代币-转账
   ./omnicore-cli "omni_send" "14Nzwd3SU4eWgiPW68s" "1KzU8ATU6bzbC7MDaQw8od2f" 31 "1000"
    return: 7ccbf34be07e0de14c63bef01807b3095d4faf05288 
        (USDT的转账实际上是代号为31的OmniCore令牌转账。Omnicore提供了多套api实现令牌转账功能,
        v0.3.1版本之前,可以使用omni_send和omni_sendall。这种方式必须保证发送地址上不仅需要有令牌余额,
        还需要有一定数量的比特币用于支付手续费。
        从v0.3.1版本开始,Omnicore提供了两个新的api omni_funded_sendomni_funded_sendall,
        这种方式的好处在于可以指定手续费的支付方,所有的令牌交易都可以使用统一的地址进行支付比特币手续费,
        而不需要发送者自身拥有比特币。但这里并未设定手续费的具体数量,
        系统将根据在配置文件中的关于手续费的配置文件进行动态设定。)
        
获取单笔交易详情(钱包中创建的用户才可以转账,)
    ./omnicore-cli "omni_gettransaction" 7ccbf34be07e0de14c63bef01807b3095d4faf05288

查询本地事务列表(充值,转账记录)
    ./omnicore-cli "omni_listtransactions" '*' 10

JSON-RPC API 使用PHP二次开发

omni的JSON-RPC API与bitcoin的完全相同,使用的时候只是相当于将bitcoin的命令集进行了扩展。

具体的JOSN-RPC API可以查询 这里 二次开发过程中,可以使用原有的bitcoin的JSON-RPC

API包进行开发。例如,使用EasyBitcoin-PHP.

include_once "easybitcoin.php";
$bitcoin = new Bitcoin("rpc-user","rpc-pass",'127.0.0.1','8888');
var_dump($bitcoin->getinfo());
var_dump($bitcoin->omni_getbalance($address,31))//查询$address上USDT(property id = 31)余额

参考文档:

1.https://www.jianshu.com/p/bd573e2df746
2.https://blog.csdn.net/guokaikevin/article/details/79440230
3.https://www.cnblogs.com/X-knight/p/9164955.html
4.https://www.codetd.com/article/1692438
5.https://www.jianshu.com/p/4a8054146ef1
    原文作者:hufeng
    原文地址: https://segmentfault.com/a/1190000017943286
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞