[Blockchain翻译]开发Ledger应用程序(第一部分:建立开发环境)

309 阅读4分钟

本文由 简悦SimpRead 转码,原文地址 medium.com

*这些文章是我的个人发展日志,如果我对某些东西有错误的理解,请感觉......。

读者:这些文章是我的个人发展日志,如果我在某些方面有错误的理解,请随时告诉我。

第二部分:手动创建菜单屏幕
第三部分:与Ledger通信
第四部分:生成公钥和签署数据

image.png

Ledger Nano S的启动显示

我很确定,比特币和以太坊对我们很多人来说已经不再陌生。虽然只是区块链的一个使用案例,但区块链技术本身已经存在了相当长的时间,并开始被广泛使用。随着区块链能力的扩大,许多人将其作为交易方法、交易,甚至作为自动化的基础。不仅是专家,非技术人员甚至开始定期与区块链技术互动。但不幸的是,与区块链应用程序的互动与与普通的客户端-服务器应用程序的互动略有不同。区块链应用程序用户的痛点之一是:保持他们的私钥安全。

私钥在区块链应用中的作用就像密码。但与普通应用不同,区块链应用的私钥通常有特定的长度,用户可能不容易记住。私钥也不能被改变,它与你的账户有直接关系。因此,如果你的私钥被泄露,你的账户(当然还有你的资金)就会被接管。这已被称为区块链应用的可用性问题之一。硬件钱包设备来试图解决这个问题。

对于一些在区块链领域工作了一段时间的人来说,你可能听说过 "硬件钱包":一种保存你的区块链私钥的设备。这种设备现在开始流行起来,因为它提供了一个便携、安全和易于使用的设备来使用区块链。

该设备在设备本身内执行安全操作,如签署信息,所以它可以确保你的私钥从未离开设备。因此,它比将私钥存储在浏览器或本地应用程序存储中更安全。

ZoomBc

所以目前我的公司正在开发一种叫做Zoobc的区块链技术,我有幸开发了硬件钱包应用来支持签署Zoobc交易。经过一些研究,我们把我们最初的硬件钱包支持选择在一个流行的硬件钱包上。Ledger Nano S

开发Ledger Nano S的应用对我来说不是一件容易的事,因为它的文档非常少,几乎没有关于开发应用的教程。SDK和其他可用的应用程序是我开发应用程序的唯一指导。这方面的社区也非常有限(我只知道Slack),询问有关开发的问题不会给你即时反馈,也不能保证你能迅速找到解决方案。因此,我觉得我必须开始把我在开发应用程序时已经获得的东西写出来。我希望其他想加入开发Ledger应用的开发者能从我的经验中得到帮助,并在开发中减少阻力。

在进行开发之前,这里有一些你需要知道的关于开发Ledger的事实。

设置环境

image.png

开发账本应用程序的最佳环境实际上是Linux,因为我们使用的大多数工具在Linux中得到了更好的支持(正如账本文档中的警告所述)。但幸运的是,如果你使用的不是Linux(在我看来是MacOS),也有一些变通的方法。如果你使用windows或MacOS,最好使用Linux虚拟机或Docker,以避免在开发过程中遇到一些问题,然后按照同样的程序,将主操作系统连接到Linux虚拟机或Docker上。 一旦你有了Linux环境,你可以按照以下步骤来设置你的环境 ledger.readthedocs.io/en/latest/u…

另外,你需要下载Ledger Nano S的SDK github.com/LedgerHQ/na…

示例应用程序

为了测试你所建立的环境,尝试编译这个样本应用程序,并使用make clean && make load命令在你的Ledger Nano S github.com/LedgerHQ/le… 中运行它。

image.png

在Ledger Nano S中的Hello World应用程序

如果你找到了你的应用程序,在Ledger Nano S中打开它,并显示如上图所示,恭喜你成功设置了开发Ledger Nano S应用程序的环境。🎉🎉


了解更多关于我们正在开发的区块链技术。Zoobczoobc.com/


www.deepl.com 翻译