zoukankan      html  css  js  c++  java
  • .NET对接交易所钱包教程

    未来未知,瞬息瞬变。随着区块链技术成为社会关注的热点,以比特币为代表的加密数字货币实力出圈,愈来愈多的普罗大众开始涌入加密资产的投资队伍。

     

    在过去很长一段时间里,吸金无数的数字货币交易所行业趋近于一种肆无忌惮、为所欲为,又比较舒适的发展状态。但在近三年,多国政策监管以及牛熊变化的背景下,整个行业正逐步迈入正轨。

     

    交易所对接钱包背景

     

    但强大现金流的交易所,也成为黑客团体垂涎三尺的香饽饽。保护平台内数字资产安全成为行业发展最大的瓶颈,被各类交易所上升至战略地位。以优盾钱包为代表的区块链交易所钱包管理系统筑起了资产与黑客之间强大有力的屏障,成为守护交易平台加密资产的“守护神”。

     

    交易所行业激烈的竞争,每天都会有老的交易所倒下,也会有新的交易所诞生。一些新成立的交易所,面临着技术团队资历尚浅,行业经验不足的窘境,由于钱包系统开发难度系数高,不仅要掌握各种链的机制,还要掌握具体的技术细节,因此技术上也一度成为了圈外人员进入区块链领域的壁垒。

     

    自建团队出于技术实力、内鬼、运营维护成本等现实问题,对平台以及技术团队实力有很高的要求,对于项目方计划快速运营来说是比较大的考验。自从优盾钱包这个交易所钱包管理系统的面世,成功解决了交易所项目方的燃眉之急。

     

    .NET对接交易所钱包

     

    基于.NETC#开发的交易所平台如何对接钱包,既能实现生成地址、充币、提币、代付等基础金融功能,还能实现多币种多地址多资产一键归集呢?

     

    以优盾钱包为例,.NETC#SDK下载地址:

    https://github.com/uduncloud/udun-sdk-csharp

     

    .NET对接交易所钱包 详细步骤如下:

     

    一、说明

    1.所有请求接口为http-post接口,传参形式为body形式

     

    2.所有请求接口的参数首先Json序列化为body,根据SignUtil.sign方法进行签名,最终转成4(body,sign,timestamp,nonce),再将四参Json序列化为reqBody,使用reqBody为真实参数进行发送

     

    3.回调接口使用多参,其中bodyJson序列化

     

    4.Udun.ApiWebServiceDemo,相关业务参数在Web.config

    CallbackController.asmx为回调Demo

    RequestController.asmx为请求Demo

     

    5.Udun.FormDemo.ApiWinformDemo,相关业务参数在app.config

    config配置参数含义

    CallBackUrl ---- 回调地址

    MerchantId ---- 商户号

    MerchantKey ---- 商户接入Key

    Gateway ---- 商户服务host

     

    二、接口

     

    1.申请生成地址

    接口 /mch/address/create

    参数

    含义

    值类型

    说明

    meichantId

    商户号

    string

     

    coinType

    币种

    string

    代币使用主币coinType,如USDT-OMNI,使用BTC(0)

    callUrl

    回调地址

    string

    用于充币、提币等业务回调使用

    alias

    别名

    string

     

    walletId

    钱包Id

    string

    优盾钱包创建的钱包编号

    返回结构ResponseMessage

    ,若code = 200,Address不为空

    2.提币申请

    接口 /mch/withdraw

    类为Trade,类结构如下

    参数

    含义

    值类型

    说明

    meichantId

    商户号

    string

     

    mainCoinType

    主币种

    string

     

    coinType

    币种

    string

     

    callUrl

    回调地址

    string

    用于充币、提币等业务回调使用

    amount

    金额

    string

    实际为BigDecimal,由于C#无BigDecimal类型,无法序列化。

    businessId

    业务编号

    string

    由接入方生成

    memo

    业务标识

    string

    EOS等系列币的转账业务标识

    返回结构为ResponseMessage,若code = 200,则为成功

     

    3.申请代付

    接口 /mch/withdraw/proxypay

    入参、出参 2(提币申请)

     

    4.检测地址是否合法

    接口/mch/check/address

    参数

    含义

    值类型

    说明

    meichantId

    商户号

    string

     

    mainCoinType

    主币种

    string

     

    address

    地址

    string

     

    返回结构为ResponseMessage,若code = 200,则为成功

     

    5.获取支持币种

    接口/mch/support-coins

    参数

    含义

    值类型

    说明

    meichantId

    商户号

    string

     

    showBalance

    是否显示资金

    bool

     

    返回结构为ResponseMessage<List>SupportCoin

     

    三、回调接口

    1、需由接入方提供,使用

    参数

    含义

    值类型

    说明

    timestamp

    毫秒时间戳

    string

     

    nonce

    随机值

    string

     

    sign

    币种

    string

     

    body

    回调结构

    string

    提币等业务回调

    body结构为类Trade,类结构同 2

     

    优秀靠谱的区块链技术服务商,成熟、稳定且功能强大的交易所钱包系统,使得交易所平台0安全事故的平稳运营成为现实,助力更多企业从交易所赛道的千军万马中突出重围。

     

  • 相关阅读:
    echarts之tooltip
    js随笔
    在wex5平台grid显示问题
    JSON.parse()和JSON.stringify()区别
    在wex5平台grid里面的gridselect下拉不能显示汉字问题
    wex5平台放入tabs组件后运行时显示空白
    正整数求n不用sqrt
    leetcode1143最长公共子序列
    美团Java一面(2020.3.19)
    leetcode138. 复制带随机指针的链表
  • 原文地址:https://www.cnblogs.com/fly-l/p/13206164.html
Copyright © 2011-2022 走看看