主页 > 以太坊钱包imtoken安装 > Plutus:一个可以暴力破解随机钱包地址的自动比特币钱包碰撞器

Plutus:一个可以暴力破解随机钱包地址的自动比特币钱包碰撞器

以太坊钱包imtoken安装 2023-03-06 05:19:18

Plutus 比特币暴力破解器

暴力破解随机钱包地址的比特币钱包碰撞器

喜欢这个项目? 给它一颗星

比特币私钥格式转换器_比特币 私钥恢复钱包_比特币 私钥 密码

依赖关系

Python3.6或更高版本

Python 模块列在 requirements.txt 中

比特币私钥格式转换器_比特币 私钥 密码_比特币 私钥恢复钱包

最低内存要求

安装

$ git clone https://github.com/Isaacdelly/Plutus.git plutus

$ cd plutus && pip3 install -r requirements.txt

比特币私钥格式转换器_比特币 私钥 密码_比特币 私钥恢复钱包

快速开始

$ python3 plutus.py

概念验证

私钥是允许使用比特币的秘密数字。 如果钱包中有比特币,那么私钥将允许一个人控制钱包并花费钱包中的任何余额。 所以这个程序试图找到与正余额钱包相关联的比特币私钥。 但是,由于无法知道哪些私钥控制富钱包,哪些私钥控制空钱包,我们必须随机查看存在的每一个可能的私钥,并希望找到一个平衡的。

该程序本质上是一种蛮力算法。 它不断生成随机的比特币私钥,将私钥转换为各自的钱包地址,然后检查地址的余额。 如果找到有余额的钱包,私钥、公钥和钱包地址将保存到用户硬盘上的文本文件 plutus.txt 中。 最终目标是在现有的2160个钱包中随机找到一个有余额的钱包。

比特币私钥格式转换器_比特币 私钥恢复钱包_比特币 私钥 密码

怎么运行的

私钥是使用加密安全的 os.urandom() 函数随机生成的比特币私钥格式转换器,以创建一个 32 字节的十六进制字符串。

使用 starkbank-ecdsaPython 模块将私钥转换为它们各自的公钥。 然后使用 binascii 和 hashlib 标准库将公钥转换为其比特币钱包地址。

该项目包括一个预先计算的数据库,其中包含每个 P2PKH 比特币地址的正余额。 在数据库中搜索生成的地址比特币私钥格式转换器,如果发现该地址有余额,则将私钥、公钥和钱包地址保存到用户硬盘上的文本文件plutus.txt中。

该程序还通过 multiprocessing.Process() 函数利用多处理进行并发计算。

效率

该程序需要 0.0032457721 秒来暴力破解单个比特币地址。

比特币 私钥 密码_比特币私钥格式转换器_比特币 私钥恢复钱包

但是,通过 multiprocessing.Process() 为计算机的每个 CPU 创建一个并发进程。 所以这个程序可以在 0.0032457721 ÷ cpu_count() 秒内暴力破解一个地址。

数据库常见问题

离线数据库用于查找生成的比特币地址的余额。 访问 /database 获取信息。

预期产出

程序每次检查生成地址的余额时,都会将结果打印给用户。 如果发现空钱包,钱包地址将打印到终端。 例如:

1Kz2CTvjzkZ3p2BQb5x5DX6GEoHX2jFS45

但是,如果找到有余额的钱包,有关该钱包的所有必要信息都会保存到文本文件 plutus.txt 中。 例如:

比特币 私钥 密码_比特币私钥格式转换器_比特币 私钥恢复钱包

十六进制私钥:5A4F3F1CAB44848B2C2C515AE74E9CC487A9982C9DD695810230EA48B1DCEADD WIF私钥:5JW4RCAXDBOCFLK9BXQW5CBQWUSN86FPBMZ2HHT9NVKMTHJM公钥:04393B30BC950F358326062FF28D194A5B28751C1FF2562C02CA4DF2A864DE63280CC140D540EA1A5711D1E519C842684F4245C41CB501B7EA0036169C320地址1KZ2CTVJZZ3P2BQB5X5DX6GEOHX2JFS45

内存消耗

该程序每个 CPU 使用大约 2GB 的 RAM。 由于程序使用多处理,一些数据在线程之间共享,因此很难准确测量 RAM 使用情况。

Imgur

内存消耗堆栈跟踪使用 mprof 进行监控,以在具有 8GB RAM 的 4 逻辑处理器机器上暴力破解程序的 10000 个地址。 结果,创建了 4 个子进程,每个子进程消耗 2100MiB 的 RAM(约 2GB)。

最近的改进和积压

创建一个问题,以便我可以添加更多内容以进行改进