本文转载自https://lhalcyon.com/blockchain-usdt-node/

Tether Limited 公司基于 Omni Layer 这层协议(Omni Layer protocol)发行tetherUSD . Omni Layer 是基于比特币区块链的通信协议 , 它实现了智能合约的特性 , 也就是说 tetherUSD是 Omni Layer的一个智能合约 . 而实现 Omni Layer protocol 的开源软件项目是 Omni Core .

搭建环境

服务器配置

  • 硬盘: 500G
  • 内存: 16G
  • CPU: 4核
  • 带宽: 一般
  • 系统: CenterOS 7

节点搭建

1. 进入 Omni Layer Download 下载对应包

2. 上传服务器并解压

这里笔者使用的路径统一为 /opt/usdt/...

cd /opt/usdt
tar -xzvf omnicore-0.3.1-x86_64-linux-gnu.tar

3. bitcoin 配置

bitcoin的默认配置文件目录为

~/.bitcoin/bitcoin.conf

若没有指定, 默认则会在该目录下创建个新的.

同步数据比较占硬盘空间,建议自定义存储路径,避免后期空间不足的尴尬.

此处笔者在 /opt/usdt/data/ 下新建了 bitcoin.conf 文件

bitcoin.conf:

# 数据存储目录
datadir=/opt/usdt/data
# 使用测试网络
testnet=1
# 告知 Bitcoin-Qt 和 bitcoind 接受JSON-RPC命令
server=1
# 后台执行
daemon=1
# 设置 gen=1 以尝试比特币挖矿
gen=1
# 启用交易索引
txindex=1# 监听 RPC,正式默认端口8333 测试默认18333
#rpcport=18333
#rpcuser=123456
#rpcpassword=abcdef
#rpcallowip=0.0.0.0/0
#rpcconnect=127.0.0.1

这里和比特币节点的配置文件类似 , 更多的配置请参考 Bitcoin Core配置文件解读

如若机器已经启用了比特币节点 , 此处需要修改端口等配置

配置设置好 , 开始同步

cd /opt/usdt/omnicored-0.3.1/bin
nohup ./omnicored --datadir=/opt/usdt/data/ &
Initializing Omni Core v0.3.1 [regtest]
2018-07-20 05:34:34 Loading trades database: OK
2018-07-20 05:34:34 Loading send-to-owners database: OK
2018-07-20 05:34:34 Loading tx meta-info database: OK
2018-07-20 05:34:34 Loading smart property database: OK
2018-07-20 05:34:34 Loading master transactions database: OK
2018-07-20 05:34:34 Loading fee cache database: OK
2018-07-20 05:34:34 Loading fee history database: OK
2018-07-20 05:34:34 Loading persistent state: NONE (no usable previous state found)
2018-07-20 05:34:34 Exodus balance: 0.00000000 OMNI
2018-07-20 05:34:34 Omni Core initialization completed

如无意外 , 同步则开始 . 同步的进度可以在 /opt/usdt/data/testnet3 目录下的 debug.log 中看同步进度.

USDT 节点的数据同步相对 Bitcoin 的会慢很多,笔者的服务器花了两天半左右的时间 .

一定要等数据同步完成之后再进行后续操作 , 否则不能成功 .

相关命令

ominicored

启动 ominicore (自己视实际情况修改)

cd /opt/usdt/omnicored-0.3.1/bin
nohup ./omnicored --datadir=/opt/usdt/data/ &

命令中用 bitcoin.conf 文件包裹了一系列配置,如果不用此文件则需要指明各个参数.比如 ./omnicored -datadir=xxx -rpcuser=xxx .....

如若不确定 omnicore 是否已经启用过 , 可先用命令查询 netstat --ip -lpan | grep omnicore

# 帮助
./omnicored -h

更多 bitcoind 命令

omnicore-cli

关闭 omnicore

./omnicore-cli -conf=/opt/usdt/data/bitcoin.conf stop

更多 bitcoin-cli 命令

bitcoin-cli RPC 命令总结

bitcoin-api

更多 omnicore-cli 命令

API 官方文档

比较好用的中文API文档

交易测试

创建账户及地址

./omnicore-cli -conf=/opt/usdt/data/bitcoin.conf "getnewaddress" pluto

pluto 是账户名 , 需要唯一.

返回的 n1FuLiRf7fHDVL2wKy9ibVan2iQK3s2UZV 是地址

getnewaddress 是比特币的命令 , 可以了解更多 比特币命令

获取测试币

为了在 testnet 上收到 OMNI 和 TOMNI , 需要给 moneyqMan7uh8FqdCA2BV5yZ8qVrc9ikLP 发送 TBTC(测试网络比特币), 一个 TBTC 可以收到 100 个 OMNI 和 100 个 TOMNI .

首先去申请一些测试比特币

在以下测试币水龙头网页中申请测试比特币 , 注意科学上网 .

  • http://bitcoinfaucet.uo1.net/send.php
  • https://coinfaucet.eu/en/btc-testnet/

等待确认 , 然后查询余额 .

./omnicore-cli -conf=/opt/usdt/data/bitcoin.conf listaddressgroupings

2. 然后是获取 Omni 币

转测试比特币给 moneyqMan7uh8FqdCA2BV5yZ8qVrc9ikLP

多账户的情况下建议不要用 sendtoaddress 命令 , 用 sendfrom 指定账户转账比较好

sendfrom命令说明

./omnicore-cli -conf=/opt/usdt/data/bitcoin.conf sendfrom "pluto" "moneyqMan7uh8FqdCA2BV5yZ8qVrc9ikLP" 0.0015

返回的是一串字符串 txhash , 可以去比特币浏览器 上查找

等待交易确认后 , 可以通过命令查询 Omni 币余额

这里有个问题 , 得到的 Omni 全打到钱包下另一个地址myVftRaBb8Vy3upWaL8TueAhDE2QAsQy1h了.

./omnicore-cli -conf=/opt/usdt/data/bitcoin.conf "omni_getbalance" "myVftRaBb8Vy3upWaL8TueAhDE2QAsQy1h" 1

这里的 1 是 propertyid 即 资产标识ID , 在 OMNI 钱包中 , 不同资产都有一个唯一的 ID 来标识 . 常见的 1代表 OMNI , 2 代表 TOMNI , 31 代表 USDT .

其他资产ID查询

测试网络中 , 通常直接用 OMNI 作为 USDT 进行研发 . 切换到生产网络时注意变更ID

交易

再转账.

从 myVftRaBb8Vy3upWaL8TueAhDE2QAsQy1h 转 1 个 OMNI 到 n1FuLiRf7fHDVL2wKy9ibVan2iQK3s2UZV

./omnicore-cli -conf=/opt/usdt/data/bitcoin.conf "omni_send" "myVftRaBb8Vy3upWaL8TueAhDE2QAsQy1h" "n1FuLiRf7fHDVL2wKy9ibVan2iQK3s2UZV" 1 "1.0"

查询 n1FuLiRf7fHDVL2wKy9ibVan2iQK3s2UZV 余额

Linux 常用命令:

# 查看磁盘空间
df -hl
# 递归删除
rm -rf [目录]
# 查看所有网络端口
netstat -an
# 查看端口具体被哪个进程占用
lsof -i :[端口号]
# 查看进程详细信息
ps -aux | grep [进程号]
# 杀掉进程
kill -9 [进程号]
# 查看关键字进程
netstat --ip -lpan | grep [关键字]

区块链-Linux下USDT测试节点搭建相关推荐

  1. linux如何测试ftp服务器,linux下FTP服务器的搭建

    1.FTP服务器的简介 关于ftp的介绍,大家也一定不陌生了.我就直接把百度百科上的介绍拿过来,和大家一起温习一下概念. FTP 是File Transfer Protocol(文件传输协议)的英文简 ...

  2. 陀螺研究院×BSN丨解析区块链视角下的消费者权益保护访谈全文发布

    3月是我国消费者权益保护月,在近日播出的3.15晚会中,央视曝光了科勒卫浴.宝马.Max Mara多家知名商店安装人脸识别摄像头.手机清理软件泄露老人隐私.瘦肉精羊等多个极其恶劣的消费者权益侵害行为. ...

  3. 用java写一个简单的区块链(下)

    用java写一个简单的区块链(下) 2018年03月29日 21:44:35 java派大星 阅读数:725 标签: 区块链java 更多 个人分类: 区块链 版权声明:本文为博主原创文章,转载请标明 ...

  4. 【天光学术】国际金融学论文:区块链背景下数字货币发展的机遇与问题(节选)

    摘要:区块链技术区块链技术被部分学者认为是继互联网之后, 下一代对世界有颠覆性影响的核心技术.而这种技术作为数字货币技术的基础, 有助于推动数字金融以及数字金融的发展.在对已有文献进行综述的基础上, ...

  5. 区块链技术下数字货币发展现状与挑战分析

    区块链技术区块链技术被部分学者认为是继互联网之后,下一代对世界有颠覆性影响的核心技术.而这种技术作为数字货币技术的基础,有助于推动数字金融以及数字金融的发展.在对已有文献进行综述的基础上,主要研究区块 ...

  6. Linux下的DNS服务器搭建

    Linux下的DNS服务器搭建 一.DNS介绍 1.dns域名系统 2.正向解析和反向解析 二.检查环境 三.搭建主DNS 1.安装dns相关包 2.设置服务开机自启 3.编辑DNS主配置文件 4.编 ...

  7. linux系统配置php环境,linux下php环境的搭建

    linux下php环境的搭建 下面我们来学习一下linux下php环境的搭建: 1.我们要先下载 php-5.4.0.tar.gz 网址为: 2.下载完成之后我们可以通过前面的文章中linux访问wi ...

  8. Linux下SVN服务器的搭建

    Linux下SVN服务器的搭建 宗旨:技术的学习是有限的,分享的精神是无限的. 1.下载工具(下载地址:) subversion-1.6.1.tar.gz subversion-deps-1.6.1. ...

  9. linux下git和github搭建使用教程

    一:linux下git和github搭建 1.注册gihub账号: github官网:https://github.com/自行创建即可. 登录,create repository新建仓库一个测试库t ...

最新文章

  1. 微软和 SAP 扩展了云环境中的合作关系
  2. CodeForces - 540B School Marks —— 贪心
  3. cc2530定时器和捕获比较_STM32定时器PWM和输入捕获事件
  4. 高德地图上加入坐标拾取、轨迹、点标记、poi搜索等
  5. ubuntu安装nginx报错:Failed to start A high performance web server and a reverse proxy server
  6. Java中的回溯算法
  7. 百度地图3.1教程—检索功能演示
  8. GBase 8s部署SDS集群
  9. 谷歌浏览器怎么打开开发者模式 谷歌浏览器打开开发者模式的方法
  10. GNSS系列(2)------OneMO模组LBS定位使用方法全攻略
  11. 上海富士康 软件测试 工程师 bcb 职责,富士康面试测试题.doc
  12. 异或、同或和奇、偶校验
  13. 游戏数据逆向分析系列课程之封包和线程发包
  14. 大数据精准投放平台_大数据精准营销+全媒体精准投放+信息流广告=真实有效得客户...
  15. 入门学习-Python-小甲鱼学习资料-Day023-递归:这帮小兔崽子
  16. python线程创建对象_python线程池菜鸟教程
  17. php连接不同编码oracle,PHP连接Oracle出现中文乱码问题
  18. PS2060L-ASEMI肖特基二极管PS2060L
  19. 仿淘宝Android实现底部导航栏图标溢出效果-clipChildren属性
  20. 《Adobe After Effects CS4经典教程》——1.2 创建项目并导入素材

热门文章

  1. 微信服务号开发时获取授权遇到的问题
  2. Windows10 如何降低浏览器的IE版本
  3. 如何解决医美行业获客难得问题,我是一名医美行业的营销人员
  4. madlife 交叉编译
  5. linux驱动 ioctl 小结
  6. Burpsuite 下
  7. go中race数据竞态用法
  8. 职业软件测试工程师的修炼之道!
  9. 用java写七夕_一位JAVA程序员的七夕情书
  10. 实现淘宝搜索后界面显示商品列表效果