private-key - 我在哪里可以找到可以生成每个可能的私钥的脚本?
问题描述
如何制作一个可以生成每个私钥(比特币)的脚本?
我找到了一个代码,但没有奏效。
解决方案
在比特币中,私钥只是一个 256 位的数字,可以用许多不同的方式表示。最简单的方法是用十六进制表示。
这是一个打印出所有键的 C 程序:
#include <inttypes.h>
#include <stdio.h>
#include <stdint.h>
int
main()
{
uint64_t parts[4] = {0, 0, 0, 1};
while (!(parts[0] == 0xFFFFFFFFFFFFFFFF && parts[1] == 0xFFFFFFFFFFFFFFFE && parts[2] == 0xBAAEDCE6AF48A03B && parts[3] == 0xBFD25E8CD0364140)) {
printf("%016"PRIX64"%016"PRIX64"%016"PRIX64"%016"PRIX64"\n", parts[0], parts[1], parts[2], parts[3]);
if (++parts[3] == 0)
if (++parts[2] == 0)
if (++parts[1] == 0)
++parts[0];
}
}
然而,生成每一个私钥需要数百万年的时间;而且基本上是不可能的。
有超过 10^77 种可能的私钥组合,这大约是整个宇宙中原子的数量。
推荐阅读
- php - 在 foreach 循环中存储唯一值
- javascript - Browserify - ParseError:“import”和“export”可能只出现在“sourceType:module”中
- java - Spring @Service 逻辑与构建器模式
- java - BufferedStreamReader 如何在 java 中工作
- angular - 无法以角度生成新模块 - 规则结果无效:Function()
- r - 成对比较的效应大小 (Cohen's d)
- flutter - Flutter 应用在 Oppo A31 上的行为异常
- isabelle - 搜索 ML 常量
- aws-lambda - 调用 aws lambda 时解压缩要求
- python - Tkinter 检查一个字母/单词是否被删除并突出显示替换的字母/单词