smcli 是一个简单的命令行工具,可用于管理钱包文件(将来可能会通过附加功能进行扩展)。
目前它支持以下功能。请注意,本文档并不像应用程序本身的内置帮助文档那样完整,后者完整地记录了所有命令、标志和功能。运行smcli -h
查看此文档。
钱包
smcli 允许您读取加密的钱包文件(包括使用 Smapp 和其他兼容工具创建的文件),并生成新的钱包文件。
阅读
要读取加密的钱包文件,请运行:
smcli wallet read <filename>
系统将提示您输入用于加密钱包文件的(可选)密码。如果输入正确的密码,您将看到打印的钱包内容,包括其中包含的帐户。包括--full用于查看完整密钥以及--private除了公钥之外还可以查看私钥和助记符的标志。
请注意,您可以读取使用创建的钱包文件smcli以及使用Smapp或支持标准 Spacemesh 钱包格式的任何其他工具创建的钱包文件。
一代
要生成新钱包,请运行:
smcli wallet create
该命令将提示您输入BIP39 兼容的助记符,或者为您生成一个新的随机助记符。然后,它会提示您输入密码来加密钱包文件(可选,但强烈推荐),然后使用一个或多个新密钥对生成加密的钱包文件。
请注意,这些密钥对(公钥和私钥)与 Spacemesh 钱包地址不同。公钥可以直接且确定性地转换为您的钱包地址;换句话说,公钥和钱包地址之间存在一对一的映射。公钥作为钱包地址的转换和输出将很快推出。
硬件钱包支持
smcli支持使用 Ledger 硬件设备(包括 Nano S、Nano S+ 和 Nano X)生成密钥。要使用硬件钱包生成钱包文件,首先将Spacemesh Ledger 应用程序旁加载到您的设备上(按照自述文件中的说明进行操作)。确保设备已连接并解锁并且 Spacemesh 应用程序已打开,然后运行:
smcli wallet create --ledger
请注意,创建的钱包文件将不包含任何私钥或助记词(因为这些显然保留在 Ledger 设备上)。如果您随后用来smcli wallet read
读取该文件,这些将不会被打印。出于隐私目的,我们仍然建议使用安全密码加密钱包文件。
注意:我们强烈建议仅在硬件钱包或安全的气隙计算机上创建新钱包。您有责任安全存储您的助记词和钱包文件。如果您丢失了钱包文件,助记词是恢复钱包和帐户访问权限的唯一方法,因此安全可靠地备份它至关重要。如果您放错了文件或助记词,我们绝对无法帮助您恢复钱包。
创世纪
smcli 包含用于验证创世分类帐中包含的信息的命令。
核实
要验证特定创世归属金库的归属(所有者)地址和金库地址,请运行:
smcli genesis verify
此命令将提示您输入一个或多个公钥,以及多重签名参数(所需的最少签名者)和保管金额。随后它将输出与金库相关的归属和金库地址。
建筑
构建应用程序相当简单。唯一的先决条件是libudev在 Linux(sudo apt-get install libudev-devDebian/Ubuntu 上)上支持 CGO 的 Golang 以及将静态链接到二进制文件中的两个库。所有细节均在MakefileLinux(AMD64 和 ARM64)、macOS(Intel 和 Apple Silicon)和 Windows 中处理并应适用。只需运行make build,它就会下载适合您的操作系统和平台的正确库。