前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何使用PHP批量生成以太坊账户

如何使用PHP批量生成以太坊账户

作者头像
零云
发布2023-07-24 21:21:27
6460
发布2023-07-24 21:21:27
举报

1. HD钱包简介

Hierarchical Deterministic wallet (简称 "HD Wallet"),是目前最常用的分层确定性钱包,BIP32是HD Wallet的核心提按。确定性钱包特点是可以通过一个主私钥可以推导出多个子私钥,各个子私钥可以独立使用且互不影响。这样就能简化系统中地址管理的问题,无需大量备份私钥,只需要备份主私钥即可。

2.相关提案

BIP32是 HD Wallet的核心提案,通过种子来生成主私钥,然后派生海量的子私钥和地址。

BIP39是通过算法将种子转化成方便记忆的助记词来保存,也可以将助记词转化成种子,通过BIP32来找回私钥和子私钥

BIP44是对BIP32路径的一种规范,用于扩展和支持更多币种,五层建议路径如下:

3.钱包创建过程

  1. 生成一个助记词
  2. 将助记词使用 PBKDF2 转化为种子
  3. 把种子使用 HMAC-SHA512 生成根私钥
  4. 通过根私钥导出子私钥
  5. 通过子私钥推导出子公钥,并生成地址
ezgif.com-webp-to-png 1.png
ezgif.com-webp-to-png 1.png

4.PHP实践

1. 项目依赖

bitcoin-php bitcoin的php实现库,用于创建助记词和生成私钥

ethereum-util 以太坊常用函数php实现库

2. 创建助记词
3. 助记词产生主私钥和主公钥
4. 批量生成主私钥生成子私钥、子公钥和地址
5. 输出结果

5.总结

通过HD Wallet,可以方便的生成海量账户,具体应用在虚拟货币交易所,去中心化钱包等场景,方便备份私钥。通过冷钱包的方式,主私钥不与外网接触,利用主公钥来生成多个子公钥以及对应的地址,能够大大提高资产的安全性,降低风险。

6.参考

https://github.com/bitcoin/bips/blob/master/bip-0032.mediawiki

https://github.com/bitcoin/bips/blob/master/bip-0039.mediawiki

https://github.com/bitcoin/bips/blob/master/bip-0044.mediawiki

https://github.com/web3p/ethereum-tx

https://github.com/Bit-Wasp/bitcoin-php

https://github.com/satoshilabs/slips/blob/master/slip-0044.md

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-06-24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. HD钱包简介
  • 2.相关提案
  • 3.钱包创建过程
  • 4.PHP实践
    • 1. 项目依赖
      • 2. 创建助记词
        • 3. 助记词产生主私钥和主公钥
          • 4. 批量生成主私钥生成子私钥、子公钥和地址
            • 5. 输出结果
            • 5.总结
            • 6.参考
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档