#opencl #cryptocurrency #nano-currency

app nano-vanity

生成具有给定前缀的NANO加密货币地址

26个版本

使用旧的Rust 2015

0.4.14 2022年9月16日
0.4.13 2021年8月16日
0.4.11 2021年6月30日
0.4.10 2019年10月1日
0.4.0 2018年3月3日

#2084 in 神奇豆

BSD-2-Clause

73KB
829

nano-vanity

生成具有您选择的任意前缀的NANO地址。前缀越长,计算时间越长。

安装

首先,设置Rust。最好的方法是使用 rustup

从crates.io安装 nano-vanity

cargo install nano-vanity

从源代码安装 nano-vanity

cargo install --path .

如果需要启用GPU支持,请安装OpenCL并在安装命令中添加 --features gpu

使用 nano-vanity --help 可以查看 nano-vanity 的选项列表。

种子生成

默认情况下,nano-vanity 生成私钥而不是种子。您可以在桌面钱包中使用这些私钥(它们被称为一次性密钥),然而,大多数其他钱包目前还不支持它们。

您可以使用 --generate-seed 生成种子而不是私钥。请注意,这样做会稍微慢一些。

为了解释种子和私钥之间的区别

  • 种子加上索引(第1个密钥、第2个密钥等)生成一个私钥。目前,此项目将始终使用第一个索引(索引0)。
  • 私钥生成一个公钥。
  • 地址是公钥的另一种写法。

通配符

您可以使用 .* 来让一个字符由机会决定。

您可以使用 # 指定一个字符必须是数字。

使用您的GPU

此项目支持使用您的GPU来计算地址。这利用了OpenCL,因此您需要安装并启用OpenCL。

要使用GPU支持构建此项目,请通过cargo传递 --features gpu

要启用GPU使用,请使用 --gpu(或 -g)选项。要禁用CPU的使用,请使用 --threads 0(或 -t 0)。

由于在大多数情况下,在集成GPU上运行代码并不比在CPU上运行更快,因此不支持Intel GPU。

要更改您的GPU设备,请使用 --gpu-device [index],其中 [index] 是从0开始的GPU索引。要更改您的GPU平台,请使用 --gpu-platform [index]

测试随机性

要测试此程序种子生成的随机性,您可以使用dieharder(有关它的文章在这里:here)。

然而,dieharder不应被视为此程序安全的证明,而应与程序源代码的检查一起使用作为证据。

以下是如何使用dieharder运行此程序的示例

nano-vanity --threads 1 --no-progress --limit 0 --simple-output nano_1 | cut -d' ' -f1 | xxd -r -p | dieharder -a -g stdin_input_raw

如果您得到一个弱或失败的测试结果,可以通过传递dieharder -d [test] 再次运行该测试。虽然一个测试失败在统计上不太可能发生,尽管没有错误,但它可能发生,尤其是在dieharder运行的大量测试中。

为了更加小心,您可以修改nano-vanity的参数。其中重要的参数包括 --simple-output,这使得输出格式易于解析,以及 -l 0,它生成无限密钥而不是一个。

依赖项

~3.5–4.5MB
~84K SLoC