助记词创建以太坊钱包源码_手把手教你创建一个区块链钱包
发布日期:2021-06-24 10:54:17 浏览次数:3 分类:技术文章

本文共 1653 字,大约阅读时间需要 5 分钟。

区块链

前言

这几年区块链在全球卷起一场热潮,很多人都投入去研究区块链及其相关技术。目前区块链的应用还是相对比较狭窄,最广的还是在金融领域,特别是在数字货币这方面,我们比较熟悉的有BTC,ETH,XRP,BCH等。下面让我们也来创建一个基于以太坊的钱包吧。

概念

在开始前,需要理清这几个概念。

钱包:钱包就是地址,由公钥通过hash计算得出,以0x开头后跟40个字符,代表你的钱包。

密码:这个没啥好说的,像银行卡密码一样,创建助记词,私钥,Keystore等都需要用到。

助记词:结合密码,可以找回你的钱包,由内置的比较流行的单词列表通过一定的算法筛选出12个单词,每个单词以一个空格分隔,创建钱包时,最好抄下来,保存好。

私钥:用于找回你的钱包,非对称加密中的私钥,由助记词和密码生成得到种子seed,然后于通过sha256算法得到。

公钥:非对称加密中的公钥,由私钥计算得出。

Keystore:结合密码,可以找回你的钱包,存储了钱包的一些加密信息和其它的一些元数据信息,默认以Json格式的文件存放。

可以看出,他们的关系如下:

借助密码生成助记词,助记词可以生成私钥,私钥得到公钥,公钥得到钱包地址。

私钥+密码又可以得到Keystore

以太坊客户端API

现在比较流行的有:

web3基于JavaScript

web3j基于Java

我们主要使用web3j进行开发。

创建钱包

1、创建Maven工程,并导入web3j的依赖

web3j Maven依赖:

web3j依赖

2、生成钱包

代码实现如下:

创建钱包源码

生成钱包源码截图

这是最简单的一种以太坊坊钱包生成方式。

通过WalletUtils直接通过密码生成Bip39以太坊钱包。通过钱包,可以直接获取Keystore和助记词列表,助记词要保存好。通过助记词列表,获取到Credentilals。通过Credentilals即可获取到钱包地址。结果:

创建钱包结果截图

创建钱包结果截图

从图中可以看出,我们的钱包就创建出来了,这样就可以用以太坊上任意一个钱包给这个地址转账了。

钱包地址:0x8bb0d94c855a746513f8e2ca1ba8c821e44fe777

密码:123456

助记词:share moment wonder drift orbit clump company test current iron text cruise

私钥:e5ad0fb1b35051ceb9732d24fc1940b7115e0ed2ee5174f9ce8cb7eebc2b8580

要注意一点的是,密码、助记词、私钥、Keystore一定要保存好。否则钱包地址忘记了,你就找不回你的钱包了。

找回钱包/导入钱包

有时候,我们在别的平台也创建了一个钱包,需要导入已有的钱包,获取钱包地址已经忘记,需要找回钱包。

可以通过三种方式找回钱包,上面源码截图也有说明。

1、通过私钥找回:

私钥找回源码

私钥找回源码

结果:

通过私钥找回的地址为:0x8bb0d94c855a746513f8e2ca1ba8c821e44fe777

2、通过助记词列表+密码找回:

助记词列表+密码源码

助记词密码找回密码

结果:

通过助记词+密码找回的地址为:0x8bb0d94c855a746513f8e2ca1ba8c821e44fe777

3、通过Keystore+密码找回:

Keystore+密码源码

Keystore密码找回源码

结果:

通过Keystore+密码找回的地址为:0x8bb0d94c855a746513f8e2ca1ba8c821e44fe777

可以看出,无论通过哪种方式,获取到的钱包地址都是一样的。

总结

以太坊钱包创建过程不复杂,但有很多知识点需要我们提前去熟悉掌握,以太坊整个生态也比较庞大,很多知识点现在暂时还没有涉猎,后续我会再出一系列有关以太坊钱包的文章,希望大家多多支持,喜欢的也可以点个关注,谢谢。

转载地址:https://blog.csdn.net/weixin_32309879/article/details/111966526 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:zebradesginer zpl代码_ZebraDesigner Pro 斑马打印机命令 解读
下一篇:单系统 台电x80pro_台电x80 pro (ID:E3E6)安装remix OS系统教程整理

发表评论

最新留言

哈哈,博客排版真的漂亮呢~
[***.90.31.176]2024年04月17日 08时13分08秒