9 个版本
0.2.0 | 2019 年 9 月 17 日 |
---|---|
0.1.7 | 2019 年 9 月 4 日 |
0.1.6 | 2019 年 5 月 18 日 |
0.1.5 | 2019 年 4 月 17 日 |
#2 in #cryptonote
每月 21 次下载
17KB
261 代码行
基于 CryptoNote 的加密货币的钱包库
纯钱包,无缓存
用法
钱包创建方法
- 从密钥中创建
let spend = b"f644de91c7defae58ff9136dcc8b03a2059fda3294865065f86554d3aaeb310c";
let view = b"3dd9d71a6fe2b909e1603c9ac325f13f2c6ac965e7e1ec98e5e666ed84b4d40c";
let wallet = Wallet::from_secret_keys(spend, view);
- 从密钥字符串中创建
let spend_str = "f644de91c7defae58ff9136dcc8b03a2059fda3294865065f86554d3aaeb310c";
let view_str = "3dd9d71a6fe2b909e1603c9ac325f13f2c6ac965e7e1ec98e5e666ed84b4d40c";
let wallet = Wallet::from_secret_string(String::from(spend_str), String::from(view_str));
钱包文件处理
- 加载和保存钱包
// Create a wallet object
let mut wallet = Wallet::new();
// Load wallet from a wallet file with a password.
wallet.load(String::from("tests/vig.wallet"), String::from(""));
// Save current wallet to a new file with a new password.
wallet.save(String::from("tests/vig-new.wallet"), String::from("abcd"));
钱包实例函数
钱包地址生成
- 到地址
let prefix: u64 = 0x3d;
let mut wallet = Wallet::new();
wallet.load(String::from("tests/vig.wallet"), String::from(""));
// Get an Address object
let address = wallet.to_address(prefix);
let addressStr = address.get();
println!("{}" , addressStr);
- 更新密钥
let prefix: u64 = 0x3d;
let mut wallet = Wallet::new();
let spend_str = "f644de91c7defae58ff9136dcc8b03a2059fda3294865065f86554d3aaeb310c";
let view_str = "3dd9d71a6fe2b909e1603c9ac325f13f2c6ac965e7e1ec98e5e666ed84b4d40c";
wallet.update_secret_keys(String::from(spend_str), String::from(view_str));
// Get an Address object
let address = wallet.to_address(prefix);
let addressStr = address.get();
println!("{}" , addressStr);
依赖项
~9–13MB
~157K SLoC