#serialization #digest #hashing #structures

无std hashing-serializer

直接将serde实现的结构体序列化为哈希

3个不稳定版本

0.2.0-pre.02024年8月1日
0.1.1 2024年6月12日
0.1.0 2024年6月12日

100无标准库 中排名

Download history 201/week @ 2024-06-09 49/week @ 2024-06-16 32/week @ 2024-06-23 4/week @ 2024-07-07 91/week @ 2024-07-14 157/week @ 2024-07-21 387/week @ 2024-07-28

每月下载量 639

MIT 许可证

15KB
336

crate Docs License Coverage

serde::Serializer 的实现,直接将结构体序列化为哈希摘要(任何实现 digest::Update 的类型)。

use digest::Digest;
use k256::ecdsa::SigningKey;
use rand_core::OsRng;
use serde::Serialize;
use sha2::Sha256;

use hashing_serializer::HashingSerializer;

let sk = SigningKey::random(&mut OsRng);
let vk = sk.verifying_key();

let mut digest = Sha256::new();
let serializer = HashingSerializer { digest: &mut digest };
vk.serialize(serializer).unwrap();

依赖

~400–670KB
~16K SLoC