8个版本
1.0.0-beta.2 |
|
---|---|
0.7.1 | 2024年8月23日 |
0.6.0 | 2024年8月14日 |
0.5.4 | 2024年5月31日 |
0.5.1 | 2023年1月17日 |
#184 in 魔法豆
41,526 每月下载量
用于 36 个crate (11 直接)
74KB
2K SLoC
ethereum_ssz
SimpleSerialize (SSZ)实现,针对速度和安全优化。
由Sigma Prime维护,用于Lighthouse,并考虑在更广泛的Rust以太坊生态系统中有用。我们欢迎新的贡献者!
请参阅文档以获取更多信息。
lib.rs
:
提供SimpleSerialize (SSZ)格式的编码(序列化)和解码(反序列化),该格式设计用于在以太坊2.0中使用。
遵循以太坊2.0 SSZ规范 v0.12.1。
示例
use ssz_derive::{Encode, Decode};
use ssz::{Decode, Encode};
#[derive(PartialEq, Debug, Encode, Decode)]
struct Foo {
a: u64,
b: Vec<u16>,
}
fn ssz_encode_decode_example() {
let foo = Foo {
a: 42,
b: vec![1, 3, 3, 7]
};
let ssz_bytes: Vec<u8> = foo.as_ssz_bytes();
let decoded_foo = Foo::from_ssz_bytes(&ssz_bytes).unwrap();
assert_eq!(foo, decoded_foo);
}
请参阅examples/
以查看手动实现Encode
和Decode
特征的示例。
依赖项
~5.5MB
~106K SLoC