usdt钱包开发

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

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

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

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

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

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协议的一种代币: https://omniexplorer.info/asset/31 ID是31

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

usdt钱包开发,比特币协议 Omni 层协议 USDT的更多相关文章

  1. 开发架构+osi七层协议+socket(day26)

    目录 软件开发架构 C/S架构 B/S架构 网络编程 互联网协议/OSI七层协议 传输层 网络层 数据链路层 物理连接层 socket 什么是socket 为什么用socket 如何使用 软件开发架构 ...

  2. python网络编程-Json序列化功能扩展-软件开发架构-OSI七层协议-TCP-01

    面向对象补充知识点(面向对象的应用) 扩展json序列化所支持的数据类型(分析源码) import json from datetime import datetime, date # ------- ...

  3. 区块链钱包开发 - USDT - 一、Omni本地钱包安装

    背景 Tether(USDT)中文又叫泰达币,是一种加密货币,是Tether公司推出的基于稳定价值货币美元(USD)的代币Tether USD,也是目前数字货币中最稳定的币,USDT目前发行了两种代币 ...

  4. 软件开发架构介绍||OSI七层协议之物理层、数据链路层、网络层、传输层(mac地址、ip协议、断开协议、tcp协议之三次握手四次挥手)

    一.网络编程 软件开发架构 C/S架构 C:客户端 想体验服务的时候才会去找服务端体验服务 S:服务端   24小时不间断的提供服务,即时监听,随时待命 B/S架构 B:浏览器    想体验服务的时候 ...

  5. 软件开发架构与网络之OSI七层协议(五层)

    本期内容概要 python回顾 软件开发架构 网络理论前瞻 osi七层协议(五层) 以太网协议 IP协议 port协议 交换机 路由器 局域网 广域网 TCP协议 三次握手 四次挥手 UDP协议 内容 ...

  6. 1、网络并发编程--简介、软件开发架构、OSI七层协议

    python复习 变量与常量 基本数据类型 内置方法 字符编码.文件操作 函数 函数参数.闭包函数.装饰器 面向对象 封装.继承.多态 """ 什么是对象 数据与功能的结 ...

  7. 软件开发架构,网络编程简介,OSI七层协议,TCP和UDP协议

    软件开发架构 什么是软件开发架构 1.软件架构是一个系统的草图. 2.软件架构描述的对象是直接构成系统的抽象组件. 3.各个组件之间的连接则明确和相对细致地描述组件之间的通讯. 4.在实现阶段,这些抽 ...

  8. 区块链钱包开发 - USDT - 三、实战(nodejs版本)

    一.安装钱包 请参考另一篇随笔: 入口 二.获取测试usdt(TestOmni)步骤: 1.导入地址到钱包,往该地址充值测试比特币, 2.然后往 moneyqMan7uh8FqdCA2BV5yZ8qV ...

  9. 在网络7层协议中,如果想使用UDP协议达到TCP协议的效果,可以在哪层做文章?(QQ 为什么采用 UDP 协议,而不采用 TCP 协议实现?)

    为了解决这题,可以具体看看下面这个讨论. 解灵运工程师 185 人赞同 某次架构师大会上那个58同城做即时通信的人说:原因是因为当时没有epoll这种可以支持成千上万tcp并发连接的技术,所以他们使用 ...

随机推荐

  1. 剑指offer-合并两个排列的链接

    题目描述 输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则.   public ListNode Merge(ListNode list1,ListNode ...

  2. pymysql 模块 使用目录

    mysql python pymysql模块 基本使用 mysql python pymysql模块 增删改查 插入数据 介绍 commit() execute() executemany() 函数 ...

  3. 前端 HTML 标签嵌套规则

    标签嵌套规则 块元素可以包含内联元素或某些块元素,但内联元素却不能包含块元素,它只能包含其它的内联元素,例如: <div><div></div><h1> ...

  4. ORACLE环境变量定义.md

    export在linux的bash中可以理解为设置环境变量.设置后能够被当前的shell及子shell使用.这些变量的含义有一些有意义,可以查看相应的文档,我给你解释一些我知道的:ORACLE_HOM ...

  5. H3C 网管交换机快速配置指南(转)

    H3C交换机,5XXX,3XXX,还有部分2XXX系列都带有网管功能,可以帮助网络维护非常好的控制网络.基本的配置顺序: Console接口连接,开启Telnet登陆功能,Telnet后进行具体设置. ...

  6. wx 文件编辑框

    # -*- coding: utf- -*- import wx import os class my_frame(wx.Frame): """This is a sim ...

  7. pycharm的安装和使用

    python开发IDE:  pycharm.eclipse 1.要专业版 2.不要汉化版 一.运算符 +  -  * ./  **   %  // 判断某个东西是否在东西里面包含 in   not   ...

  8. php-fpm sock 进程池优化

    更改tcp为sock ;listen = 127.0.0.1:9000 listen = /dev/shm/php-cgi.sock pm = static \\静态进程池 pm.max_childr ...

  9. 如何用Win7远程链接ubuntu14.04桌面

    如何用Win7远程链接ubuntu14.04桌面 采用vnc技术 参考:http://blog.csdn.net/hnjztyx/article/details/69739137

  10. koa2的文件上传

    使用koa2搭建文件上传服务,后端代码 const os = require('os'); const path = require('path'); const koaBody = require( ...