8 个版本

0.3.1 2020年1月29日
0.3.0 2019年9月4日
0.2.5 2019年3月7日

#17 in #random-key


2 crates 中使用

GPL-3.0 许可证

19KB
360 代码行

EthKey

Ethereum 密钥管理支持geth、parity和pyethereum使用的密钥存储格式。

功能

  • 随机密钥对生成
  • 密钥序列化/反序列化
  • 密钥存储密码更改
  • 签名和验证

用法

将此内容添加到您的 Cargo.toml

[dependencies]
ethkey = "0.3"

示例

(Rust 版本 2018)

use ethkey::prelude::*;

fn main() {
    let key = EthAccount::load_or_generate("/tmp/path/to/keystore", "passwd")
        .expect("should load or generate new eth key");

    println!("{:?}", key.address());

    let message = [7_u8; 32];

    // sign the message
    let signature = key.sign(&message).unwrap();

    // verify the signature
    let result = key.verify(&signature, &message).unwrap();
    println!("{}", if result {"verification ok"} else {"wrong signature"});
}

lib.rs:

Ethereum 密钥管理支持geth、parity和pyethereum使用的密钥存储格式。

功能

  • 随机密钥对生成
  • 密钥序列化/反序列化
  • 密钥存储密码更改
  • 签名和验证

用法

[dependencies]
ethkey = "0.3"

示例

use ethkey::prelude::*;

fn main() {
    let key = EthAccount::load_or_generate("/tmp/path/to/keystore", "passwd")
        .expect("should load or generate new eth key");

    println!("{:?}", key.address());

    let message = [7_u8; 32];

    // sign the message
    let signature = key.sign(&message).unwrap();

    // verify the signature
    let result = key.verify(&signature, &message).unwrap();
    println!("{}", if result {"verification ok"} else {"wrong signature"});
}

ethkey crate用户的一个“入门”。

use ethkey::prelude::*;

随时间,入门可能会增长。

依赖项

~11–21MB
~387K SLoC