oritwoen/vgen

GitHub: oritwoen/vgen

一个基于 Rust 和 GPU 加速的加密货币靓号地址生成器,支持正则表达式匹配多种地址格式,并可进行比特币谜题范围扫描。

Stars: 10 | Forks: 5

# vgen [![Crates.io](https://img.shields.io/crates/v/vgen?style=flat&colorA=130f40&colorB=474787)](https://crates.io/crates/vgen) [![Downloads](https://img.shields.io/crates/d/vgen?style=flat&colorA=130f40&colorB=474787)](https://crates.io/crates/vgen) [![License](https://img.shields.io/crates/l/vgen?style=flat&colorA=130f40&colorB=474787)](LICENSE) [![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/oritwoen/vgen) 带有正则表达式模式匹配和 GPU 加速的比特币靓号地址生成器。 ## 功能 - 生成匹配自定义正则表达式的加密货币地址 - 多种地址格式:P2PKH (1...)、P2WPKH (bc1q...)、P2TR (bc1p...)、P2SH-P2WPKH (3...)、Ethereum (0x...) - 通过 wgpu 实现的 GPU 加速(支持 Vulkan/Metal/DX12/OpenGL 后端) - 使用 rayon 进行并行 CPU 扫描 - 带有实时统计数据的交互式 TUI - 用于比特币谜题挑战的范围扫描 - 用于谜题/赏金集成的数据提供者 (boha) - 输出格式:text、JSON、JSON Lines、CSV、minimal ## 安装 ### 从 crates.io 安装 ``` cargo install vgen ``` ### Arch Linux (AUR) ``` paru -S vgen ``` ### 从源码安装 ``` cargo install --path . ``` ## 使用方法 ### 生成靓号地址 ``` # 查找以 "1Cat" 开头的地址 vgen generate -p "^1Cat" # 不区分大小写匹配 vgen generate -p "^1cat" -i # 以 "dead" 结尾的 Bech32 地址 vgen generate -p "dead$" -f p2wpkh # Taproot 地址 vgen generate -p "^bc1p.*cat" -f p2tr # P2SH-P2WPKH (嵌套 SegWit) vgen generate -p "^3Cat" -f p2sh-p2wpkh # Ethereum 地址 vgen generate -p "^0xdead" -f ethereum # 仅 CPU (默认启用 GPU) vgen generate -p "^1Cat" --no-gpu # 选择特定的 GPU 后端 vgen generate -p "^1Cat" --backend vulkan # 查找多个匹配项 vgen generate -p "^1Cat" -c 5 # 安静模式 vgen generate -p "^1Cat" -q ``` ### 估算难度 ``` vgen estimate -p "^1CatDog" ``` ### 扫描密钥范围(比特币谜题) ``` # 扫描 puzzle #66 范围 vgen range --puzzle 66 -p "." # 自定义范围 vgen range -r "20000000000000000:3FFFFFFFFFFFFFFFF" ``` ### 数据提供者 使用外部数据源进行模式生成: ``` # 带有 puzzle 地址前缀 (6个字符) 的 Vanity vgen generate -p "boha:b1000:66" -l 6 # → 解析为模式:^13zb1h # Puzzle 求解 (精确地址匹配 + 自动密钥范围) vgen range -p "boha:b1000:66" # → 范围:2^65..2^66-1 # → 模式:^13zb1hQbWVsc2S7ZTZnP2G4undNNpdh5so$ # 在范围模式下使用前缀匹配 vgen range -p "boha:b1000:66" -l 8 ``` 支持的提供者: - `boha:collection:id` - [boha](https://github.com/oritwoen/boha) 谜题库 (b1000, gsmg, bitaps 等) ### 验证私钥 ``` # 从 WIF 生成 vgen verify -k "5HueCGU8rMjxEXxiPuD5BDku4MkFqeZyd4dZ1jvhTVqvbTLvyTJ" # 从十六进制生成 vgen verify -k "0c28fca386c7a227600b2fe50b7cae11ec86d3bf1fbe471be89827e19d72aa1d" # 根据预期地址进行验证 vgen verify -k "5HueCGU8rMjxEXxiPuD5BDku4MkFqeZyd4dZ1jvhTVqvbTLvyTJ" -a "1GAehh7TsJAHuUAeKZcXf5CnwuGuGgyX2S" ``` ### 列出 GPU ``` vgen list-gpus ``` ## 输出格式 ``` # 默认文本输出 vgen generate -p "^1Cat" -o text # JSON 输出 (格式化打印) vgen generate -p "^1Cat" -o json # JSON Lines (每行一个 JSON 对象,用于数据管道) vgen generate -p "^1Cat" -o jsonl # CSV (带表头,用于数据目录/Iceberg) vgen generate -p "^1Cat" -o csv # 极简 (仅 WIF) vgen generate -p "^1Cat" -o minimal # 写入文件 vgen generate -p "^1Cat" -o jsonl --file results.jsonl vgen generate -p "^1Cat" -o csv --file results.csv ``` ## TUI ![vgen TUI](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/922781f9dc093702.png) 在终端会话中,默认启用交互式 TUI。使用 `--no-tui` 可将其禁用。 功能: - 实时算力显示 - 性能火花线图 - 运气指标 - 找到的匹配列表 ## 性能 GPU 加速默认开启,如果未找到兼容的 GPU,则回退到 CPU。使用 `--backend` 可强制指定后端 (vulkan, metal, dx12, gl),或使用 `--no-gpu` 仅运行 CPU。 - CPU:约 50,000-200,000 密钥/秒(取决于 CPU) - GPU:约 500,000-2,000,000 密钥/秒(取决于 GPU) ## 模式语法 模式使用 Rust 正则表达式语法: | Pattern | Description | |---------|-------------| | `^1Cat` | 以 "1Cat" 开头 | | `dead$` | 以 "dead" 结尾 | | `^1[Cc]at` | 以 "1Cat" 或 "1cat" 开头 | | `^1.*dead$` | 以 "1" 开头,以 "dead" 结尾 | ## 比较 | Project | Language | GPU | Patterns | Notes | |---------|----------|-----|----------|-------| | **vgen** | Rust | wgpu (Vulkan/Metal/DX12) | regex | TUI,范围扫描,内存安全 | | [VanitySearch](https://github.com/JeanLucPons/VanitySearch) | C++ | CUDA | prefix | 最快(约 7 Gkeys/s),仅限 NVIDIA | | [vanitygen-plusplus](https://github.com/10gic/vanitygen-plusplus) | C++ | OpenCL | prefix/regex | 支持 100+ 种加密货币 | | [btc-vanity](https://github.com/Emivvvvv/btc-vanity) | Rust | - | prefix/regex | BTC/ETH/SOL,仅限 CPU | | [nakatoshi](https://github.com/ndelvalle/nakatoshi) | Rust | - | prefix | 简单,仅支持前缀 | | [supervanitygen](https://github.com/klynastor/supervanitygen) | C | - | prefix | ASM 优化 (AVX2/SHA-NI) | | [vanitygen](https://github.com/samr7/vanitygen) | C | - | prefix/regex | 经典版本,已停止维护 | **为什么选择 vgen?** - 通过 wgpu 实现跨平台 GPU 支持(不局限于 NVIDIA CUDA) - 内存安全的 Rust 实现 - 完整的正则表达式模式支持 - 带有实时统计数据的交互式 TUI - 内置比特币谜题范围扫描 ## Agent 技能 本项目包含 [agent skills](https://skills.sh/),旨在教授 AI 编程代理如何使用 vgen。 ### 静态技能 由项目作者精心整理: ``` npx skills add oritwoen/vgen ``` | Skill | Description | |-------|-------------| | `vgen` | 带有 GPU 加速的比特币靓号地址生成 CLI 和库 API | ### 动态技能 使用 [skilld](https://github.com/harlan-zw/skilld) 从实时文档、问题和版本发布中自动生成: ``` npx skilld add oritwoen/vgen ``` ## 路线图 - [ ] 支持更多加密货币(Litecoin、Dogecoin、Solana 等) - [ ] GPU 性能改进(CUDA 后端,着色器优化) - [ ] 更多数据提供者(mempool、blockchair 等) ## 安全性 生成的私钥是加密安全的随机数。在使用前,请务必验证生成的密钥是否能生成预期的地址。 ## 许可证 MIT
标签:CPU并行, DX12, Metal, P2PKH, P2TR, P2WPKH, rayon, Rust, TUI, Vulkan, wgpu, 以太坊, 以太坊地址, 信息收集, 加密工具, 加密货币, 加密货币钱包, 区块链, 区块链安全, 可视化界面, 地址扫描, 密码学, 手动系统调用, 正则表达式, 比特币, 比特币谜题, 网络流量审计, 范围扫描, 虚荣地址生成, 通知系统