usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发

比特币协议 -> Omni 层协议 -> USDT

USDT是基于比特币omni协议的一种代币: https://omniexplorer.info/asset/31 ID是31

Tether(USDT 的发行方)的官方钱包已关闭注册,无法注册钱包就无法获得 API Key,也就意味着无法实现类似基于钱包接口的开发方案,但我们可以基于 USDT 的底层协议(叫做 Omni 层协议)进行开发

1. Tether(USDT 的发行方)的官方钱包已关闭注册,无法注册钱包就无法获得 API Key,也就意味着无法实现比特币入金那样基于钱包接口的开发方案

usdt钱包开发,比特币协议 Omni 层协议 USDT

2. 但是,大量的数字货币交易所都支持 USDT,所以显然是有其他办法可以开发的,于是,我写了邮件过去问 Tether 官方,得到了如下回复,大意就是,虽然他们的钱包及 API 不能用了,但我们可以基于 USDT 的底层协议(叫做 Omni 层协议)进行开发,这也与我币圈的朋友给我的答复是吻合的

usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发,比特币协议 Omni 层协议 USDT

3. USDT 的协议结构从底层到顶层大致是:「比特币协议 -> Omni 层协议 -> USDT」,也就是说,USDT 是基于比特币的一种代币(token),就像大大小小的山寨币大多是基于以太坊(ETH)的一种代币一样;另外 USDT 也出了最新的以太坊(ERC20 标准)版本,但我看了下发行量和流通量都太小,所以我们这里还是只讨论前面说的基于比特币 Omni 层协议的经典 USDT

我顺着 Tether 官方给我回复的邮件,去这几个地方进行了研究:
- Omni Core 项目主页:https://github.com/OmniLayer/omnicore
- Omni Core RPC 接口文档:https://github.com/OmniLayer/omnicore/blob/master/src/omnicore/doc/rpc-api.md
- Omni Core 客户端下载页:https://bintray.com/omni/OmniBinaries/OmniCore/view

调研结论大致是这样:我们可以安装并运行一个 Omni Core 节点客户端,然后利用其提供的 RPC 接口,实现我们 USDT 出入金所需的代币发送、接收等功能;我看了下,接口都是挺全的;其中,对于 USDT 来说,接口所需要的代币 ID 参数「propertyid」值应该是「31」

https://omniexplorer.info/tx/480670ddd44541bea1ad77d8a42ada3303539fb8fcf90e9b439a171c8645783c

https://api.omniexplorer.info/v1/transaction/tx/480670ddd44541bea1ad77d8a42ada3303539fb8fcf90e9b439a171c8645783c

{
"amount": "12215.00000000",
"blocktime": 1533545081,
"confirmations": 0,
"divisible": true,
"fee": "0.00002565",
"ismine": false,
"propertyid": 31,
"propertyname": "TetherUS",
"referenceaddress": "1DUb2YYbQA1jjaNYzVXLZ7ZioEhLXtbUru",
"sendingaddress": "12SbF4mj7v2RaDfK2aY7z1BfVGT4MKaNbV",
"txid": "480670ddd44541bea1ad77d8a42ada3303539fb8fcf90e9b439a171c8645783c",
"type": "Simple Send",
"type_int": 0,
"version": 0
}

usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发,比特币协议 Omni 层协议 USDT

usdt钱包开发,比特币协议 Omni 层协议 USDT

USDT是基于比特币omni协议的一种代币: https://omniexplorer.info/asset/31 ID是31

usdt钱包开发,比特币协议 Omni 层协议 USDT

4. 接下来需要研发团队做的:
i) 详细研究这个方案
ii) 详细调研这套 API 并进行测试
iii) 弄清楚它是否能实现我们的需求,比如我暂时还没看到可以生成收款地址的 API,实际上比特币的地址就可以用来接收 USDT,所以可以考虑:还是用原来 block.io 钱包来生成地址,然后再通过 Omni Core 来收发 USDT

------------------------

ominlayer 应该不能和bip44 的coin type 兼容,可以生成地址的策略要独立开,需要单独维护

https://github.com/OmniLayer/omnicore
usdt如果没有第三方的api,那需要我们自己跑node

自己跑node 会有各种坑,要测试稳定和安全性,灰度上线beta

上一篇:从零开始实现RPC框架 - RPC原理及实现


下一篇:(转)复习TCP/IP协议与Http协议的区别