主页 > 苹果可以下载imtoken钱包吗 > 联科讲座|【区块链钱包+应用开发基础课】干货分享

联科讲座|【区块链钱包+应用开发基础课】干货分享

4月16日,“联科谈”有幸邀请到Udun首席架构师Alex Yang,分享他独家的Udun钱包开发经验,学习他多年工作的钱包开发核心技能。

演讲者亚历克斯·杨

以下是问答:

主持人:什么是区块链钱包?

AlexYang:区块链钱包是指利用区块链技术开发的虚拟数字货币产品的管理工具,具有货币可交易的特点——收款和支付。通过收款可以生成一个符合链规则的有效地址,其他地址可以向该地址转账;支付可以将地址中的资金转移到其他地址,这需要支付地址的私钥和地址的私钥。密钥可以完全控制地址的资金。

主持人:区块链钱包的发展情况如何?

链客和比特币区别

AlexYang:区块链钱包的发展大致分为几个阶段:

区块链技术开发的第一款产品仅作为一种新型技术进行研究和研究,其流通仅限于通过命令执行的技术人员;

初始阶段:为了降低使用门槛,比特币钱包诞生了。安装软件后链客和比特币区别,只需同步数据,即可通过图形化操作界面生成地址、发送交易;

开发阶段:早期比特币钱包虽然解决了使用门槛问题,但受限于数据同步,同步数据经常面临磁盘空间过大和网络连接异常的压力,所以是仍然难以广泛使用。这时,一个团队开始研发轻钱包,不仅解决了数据同步的问题,还支持创建多个比特币钱包,每个钱包还支持生成多个地址使用;

百花齐放阶段:轻钱包出现后,比特币进入大众视野。由于比特币钱包的开源,基于区块链技术开发的公链越来越多,如以太坊、葡萄柚、波场TRON、Ripple等。为了增强各自的流动性,每条公链都有对应的钱包,但是对于用户安装和管理各种钱包,却造成了很大的麻烦。在这种情况下,支持多链的钱包就诞生了。这个阶段称为开花期;

应用阶段:每条公链被广泛认可后,大家关心的是如何应用和体现。的价值。目前,公链的价值在于数字货币,而数字货币最大的应用场景就是交易所。交易所运营中最重要的就是数字货币资产。如何保证其正常运行成为运营中首先要解决的问题。技术人员不断思考并逐步形成用于交易所的区块链钱包的标准和规范。

主持人:如何开发区块链钱包?

Alex Yang:目前个人钱包技术已经成熟,网上可以找到很多开源代码。谈谈交易所钱包的发展。

交易所钱包需要解决的是交易所用户充提币的问题。对于交易所的运营来说,核心是安全问题,一个是交易安全;另一个是钱包安全。如果事务出现错误,技术人员还可以通过数据回滚、脏数据处理等方法进行处理;由于区块链技术的去中心化特性,一旦钱包资产出现问题,资产将无法收回。

链客和比特币区别

对于第一代交易所钱包,我们直接通过rpc调用方式处理钱包的充值和提现。首先,我们需要准备服务器来部署btc和eth等节点。同步完成后,我们会调用rpc接口生成地址提供给交易所用户;然后开发一个服务来处理交易所地址的充值数据,然后通知交易所;如果用户提币,通过调用开发的程序,在服务器上获取地址的私钥,并构造签名。然后广播交易,这就是热钱包的概念。

这个热钱包的实现需要我们将私钥信息存储在服务器上或者通过网络传输。事实证明,这种方法逃不过黑客的攻击或内部人员的暗箱操作。

基于之前的实现和存在的问题,我们开始了第二代交易所钱包的研发。在这个版本中,我们将着重考虑资金安全和用户体验链客和比特币区别,经过多次迭代,我们目前的Udun企业钱包已经逐步形成。

主持人:在开发Udun钱包的过程中遇到了哪些困难?

亚历克斯杨:

人才问题

在确定了产品定位和技术选型后,在实现阶段,我们遇到了最大的困难——专业人才的缺乏。那个时候,真的很难找到合适的人。最后只能自己买课本,上网查资料,自己研究。

技术问题

首先是区块链的底层实现。为了保证安全,所有涉及私钥的地方都必须在客户端本地完成,不能接触互联网。因此,各种链底层的跨平台研究、集成和支持需要很长时间。

链客和比特币区别

第二个是数据处理。我们知道,区块链上的数据是巨大的,需要支持各种主流公链。如何处理数据的完整性和时效性也让我们困惑了很久。

财务问题

解决了技术问题后,我们不得不面对一个非常现实的问题——财务问题。要支持这样一个完整系统的开发和运行,我们需要使用各种技术人员和大量的服务器。这对我们当时没有收入来源的研究团队来说是一个很大的压力。

维护问题

在我们0.1 版本的早期,已经有很多客户在试用。当时由于很多方面的不成熟,问题不断。我们的运维和核心开发人员一直支持到深夜。

主持人:有盾钱包的实现原理是什么?

AlexYang:从结果来看,我们支持在客户端创建钱包,支持多币种,每个币种可以有多个地址,支持客户端生成地址或者调用API生成地址。而我们只需要保留助记词,将助记词导入钱包后,就可以使用钱包发送交易了。

要实现这些:

首先:我们需要在不同地域的服务器上在线部署多套各种公链的全节点,防止服务器异常、网络异常、节点升级等突发事件;

链客和比特币区别

其次:通过我们开发的UBDA系统,收集和存储各链的区块数据和交易数据;

同时,我们开发了一套UKMA系统,用于存储通过我们的钱包生成的地址;

然后通过我们的BBCS系统对区块链上的数据进行分析转换,通过UKMA系统过滤出我们需要的数据;

得到我们需要的数据后,我们将对应的数据发送到对应的网关服务器(BGS系统),每个网关服务器保存数据然后推送消息给客户端,同时通知事务给交易地点。

对于发送交易,我们在客户端进行操作,在客户端完成交易的构建和签名,将签名后的交易字符串发送到对应的网关服务器,再通过网关发送到BBCS系统,最后在 BBCS 系统中,将交易广播到对应的公链节点,从而完成充值和提现的整个交易过程。

主持人:为什么Udun钱包可以保证用户的资金安全?

AlexYang:主要体现在以下几个方面

底层技术的实现

钱包助记词用户自持,保证私钥永不接触互联网,通过授权码授权使用,线下签署交易再线上广播交易等技术手段保障私钥安全。

链客和比特币区别

管理

在管理方面,我们实现了多维度的管理,包括多钱包、多员工、多资产、多权限。

多钱包:我们支持创建多个钱包,每个钱包可以管理不同的资产,可以分散管理资产,也方便账单查询和对账;

多个员工:我们支持创建多个员工账户,同时配合多个权限,安排指定人员做相应的事情,支持审核、审核、多签等流程。

风险控制

(1)新设备需要手机验证码才能登录;

(2)可以限制固定电脑的使用;

(3)可以限制使用固定IP;

(4)未经授权的钱包无法导入使用;

界面