本文从技术角度对交易所钱包系统搭建流程进行了梳理,分为搭建区块链钱包节点、搭建交易所钱包系统、实现充提币对接、指令和调用方式四大模块。
本文从技术角度分析中心化交易所的主要技术及其相关难点,主要要求做到币不丢、帐不乱、系统可用。
在前面两篇帖子中,我们实现了signature-machine离线签名机项目和chains-union-rpc多链统一rpc服务。在这一篇帖子中,我们正式来开始实现一个钱包的业务层。
在之前的开发步骤中,我们实现了交易的同步器,负责将区块链上的区块扫描下来,并解析交易筛选出与我们交易所内所有项目方有关的地址,放到一个同步管道中。(属于生产者的角色)在这步的开发中,我们将实现一个消费者角色,也就是交易的发现器。
在交易所的业务中,有充值业务,那自然也会有提现业务。在上一讲中,我们在交易的发现器中处理了充值业务,而在这一讲中,我们将会来处理提现业务。
使用Uniswap V2部署自己的去中心化交易所
钱包地址生成业务,通常指的是根据特定区块链协议规范,从一对密钥(公钥、私钥)生成唯一的钱包地址的过程。这是区块链系统中非常核心的基础设施服务之一,广泛用于交易所、托管服务、Web3项目等。
在钱包开发中,我们经常要使用到rpc节点的调用,但是每一个链的rpc接口又有着差异,我们必须去对每一个链进行适配,十分麻烦。而多链RPC应用这个项目将会拯救你。
扫链同步器是一个钱包业务的核心。无论是充值、提现、归集、还是热转冷、冷转热和回滚业务,都是需要和链上交易数据进行交互。而我们如何获取链上的交易数据呢,扫链同步器就是获取链上交易数据到本地环境上的一个核心组件。可以说,扫链同步器是一个交易所业务系统的核心驱动引擎。