首页 > 编程知识 正文

区块链源码搭建教程,批量创建以太坊钱包

时间:2023-05-04 00:05:33 阅读:22638 作者:1345

区块链

前言

近几年,区块链在世界范围内掀起了热潮,很多人投资研究区块链及其相关技术。 目前区块链的应用比较狭窄,最广泛的是金融领域,特别是在数字货币方面,BTC、ETH、XRP、BCH等是众所周知的。 那么,也做一个基于以太坊的钱包吧。

概念

在开始之前,需要整理一下这些概念。

钱包:钱包是地址。 根据公钥用散列计算。 以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获取钱包地址。 结果:

为钱包结果创建屏幕快照

为钱包结果创建屏幕快照

从图中可以看到,我们的钱包已经制作好了,以太坊上的任何一个钱包都可以汇款到这个地址。

钱包地址:0x8bb0d 94 c 855 a 746513 F8 e2ca 1b A8 c 821 e 44 Fe 777

密码: 123456

助记符号: sharemomentwonderdriftorbitclumpcompanytestcurrentirontextcruise

私钥: e5a d0f b1b 35051 CEB 9732 d 24 fc 1940 b 7115 E0 ed 2ee 5174 F9 ce 8cb 7e EB c2b 8580

需要注意的是,必须保存密码、助记符、私钥和Keystore。 否则,我会忘记钱包的地址,拿不回钱包了。

找回钱包/引入钱包

有时候,我们需要在另一个平台上做钱包,引进现有的钱包。 我已经忘了获取钱包的地址,需要拿回钱包。

找回钱包有三种方法。 上面的源代码截图也有说明。

1、用私钥找回:

用私钥找回源代码

用私钥找回源代码

结果:

用私钥返回的地址是0x8bb0d 94 c 855 a 746513 F8 e2ca 1b A8 c 821 e 44 Fe 777

2、用助记列表密码找回:

助记符列表密码源

记住密码找回密码

结果:

助记符密码返回的地址是0x8bb0d 94 c 855 a 746513 F8 e2ca 1b A8 c 821 e 44 Fe 777

3、用Keystore密码找回:

Keystore密码源

Keystore密码找回源代码

结果:

使用Keystore密码返回的地址是0x8bb0d 94 c 855 a 746513 F8 e2ca 1b A8 c 821 e 44 Fe 777

在这两种方法中,都可以看到获取的钱包地址相同。

总结

以太坊钱包的制作过程并不复杂,但你需要知道很多知识点。 以太坊的整个生态也很庞大,很多知识点还没有涉猎。 我稍后会拿出一系列关于以太坊钱包的文章,请支持。 喜欢的东西也请关注。 谢谢你。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。