Python生成以太坊和比特币vanity虚荣地址

今天,咱们将编写一个很是简单的python脚原本生成虚荣地址,这些地址是以某个短语或字母序列开头的加密货币地址。该过程涉及生成私钥并检查目标短语的地址,直到找到满意的地址。php

安装包

首先,咱们须要安装一些能够执行计算的软件包,以便从私钥生成有效的公共地址。要生成比特币地址,须要转到终端并输入下面命令安装比特币:java

pip install bitcoin

要生成以太坊地址,你须要经过输入下面命令来安装以太坊:node

pip install ethereum

编写代码

代码很是简单,你只须要建立一个不断生成地址的while循环,并根据你的目标短语进行检查。这是比特币地址的代码:python

from bitcoin import *

target = input('Input Target Phrase\n>')

priv = random_key()
addr = pubtoaddr(privtopub(priv))

while not addr.lower().startswith('1{}'.format(target)):
    priv = random_key()
    addr = pubtoaddr(privtopub(priv))

print('Address: {}\nPrivate Key: {}'.format(addr, priv))

以太坊有点不一样,由于它没有内置的随机密钥生成器,因此你必须导入os来生成随机数并使用SHA3来哈希它们以生成私钥。android

另外,请注意,以太坊地址是十六进制的,只使用了字符a-f和0-9,所以你能够生成的地址类型受到限制。若是输入的目标不是十六进制,它将无限循环,由于它永远不会生成包含非十六进制字符的地址。程序员

from ethereum import utils
import os

target = input('Input Target Phrase\n>')

priv = utils.sha3(os.urandom(4096))
addr = utils.checksum_encode(utils.privtoaddr(priv))

while not addr.lower().startswith('0x{}'.format(target)):
    priv = utils.sha3(os.urandom(4096))
    addr = utils.checksum_encode(utils.privtoaddr(priv))

print('Address: {}\nPrivate Key: {}'.format(addr, priv.hex()))

我但愿你对这些有一些乐趣!此外,请注意目标短语中的每一个附加字符都会以指数方式增长生成难度,所以请勿过长。web

======================================================================mongodb

分享一些以太坊、EOS、比特币等区块链相关的交互式在线编程实战教程:编程

python以太坊,主要是针对python工程师使用web3.py进行区块链以太坊开发的详解。app

  • java以太坊开发教程,主要是针对java和android程序员进行区块链以太坊开发的web3j详解。
  • php以太坊,主要是介绍使用php进行智能合约开发交互,进行帐号建立、交易、转帐、代币开发以及过滤器和交易等内容。
  • 以太坊入门教程,主要介绍智能合约与dapp应用开发,适合入门。
  • 以太坊开发进阶教程,主要是介绍使用node.js、mongodb、区块链、ipfs实现去中心化电商DApp实战,适合进阶。
  • C#以太坊,主要讲解如何使用C#开发基于.Net的以太坊应用,包括帐户管理、状态与交易、智能合约开发与交互、过滤器和交易等。
  • EOS教程,本课程帮助你快速入门EOS区块链去中心化应用的开发,内容涵盖EOS工具链、帐户与钱包、发行代币、智能合约开发与部署、使用代码与智能合约交互等核心知识点,最后综合运用各知识点完成一个便签DApp的开发。
  • java比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Java代码中集成比特币支持功能,例如建立地址、管理钱包、构造裸交易等,是Java工程师不可多得的比特币开发学习课程。
  • php比特币开发教程,本课程面向初学者,内容即涵盖比特币的核心概念,例如区块链存储、去中心化共识机制、密钥与脚本、交易与UTXO等,同时也详细讲解如何在Php代码中集成比特币支持功能,例如建立地址、管理钱包、构造裸交易等,是Php工程师不可多得的比特币开发学习课程。

这里是原文如何用Python为以太坊和比特币生成虚拟地址

相关文章
相关标签/搜索
本站公众号
   欢迎关注本站公众号,获取更多信息