一个离线的BIP39助记词恢复桌面应用程序,使用Go和Wails框架构建的前后端架构,前端采用Svelte。
本项目是一个用于恢复BIP39助记词的桌面应用程序。当您忘记了部分助记词时,可以通过输入您记得的数字来恢复完整的种子短语。
BIP39_Recovery_svelte/
├── main.go # 应用程序入口点
├── app.go # 后端业务逻辑
├── go.mod # Go模块配置
├── wails.json # Wails配置
├── frontend/ # 前端代码目录
│ ├── package.json # Node.js依赖
│ ├── src/
│ │ ├── App.svelte # 主应用组件
│ │ └── main.ts # 前端入口点
│ ├── index.html # HTML模板
│ └── wailsjs/ # Wails生成的桥接代码
├── wordlists/ # 词库文件
│ └── english.txt # BIP39英文词库
├── build/ # 构建配置和资源
└── README.md # 项目文档
克隆项目
git clone <repository-url>
cd BIP39_Recovery_svelte
安装后端依赖
go mod download
安装前端依赖
cd frontend
npm install
cd ..
运行开发版本
wails dev
构建生产版本
wails build
BIP39助记词基于一个数学原理:每个单词对应一个索引(0-2047),通过对数字求和来恢复对应的单词。
恢复算法:
目前支持以下语言:
可以通过右上角的语言切换按钮切换语言。
后端主要逻辑在 app.go 中:
InitBIP39() - 初始化BIP39逻辑和词库GetWord(index) - 根据索引获取单词IsValidNumber(num) - 验证数字是否为有效2的幂CalculateWordIndex(sum) - 计算单词索引ValidateWordIndex(index) - 验证索引范围前端使用Svelte框架,核心文件 App.svelte 包含:
wordlists/english.txtwails dev
wails build
构建产物位于 build/bin/ 目录下。
通过Wails框架支持多个平台:
欢迎提交Issue和Pull Request来改进这个项目!
本项目采用开源许可证,具体请查看LICENSE文件。
本工具仅用于教育和安全恢复目的。请妥善保管您的助记词,不要在不安全的环境中使用。作者不对使用本工具产生的任何损失承担责任。
安全提示: 在备份完您的种子短语后,请立即关闭应用程序窗口。