9 个版本

0.2.0 2022 年 8 月 29 日
0.2.0-alpha.02021 年 11 月 11 日
0.1.2 2021 年 11 月 8 日
0.0.0 2021 年 11 月 7 日

#887 in 开发工具

Download history • Rust 包仓库 132/week @ 2024-04-23 • Rust 包仓库 399/week @ 2024-04-30 • Rust 包仓库 252/week @ 2024-05-07 • Rust 包仓库 392/week @ 2024-05-14 • Rust 包仓库 155/week @ 2024-05-21 • Rust 包仓库 208/week @ 2024-05-28 • Rust 包仓库 356/week @ 2024-06-04 • Rust 包仓库 262/week @ 2024-06-11 • Rust 包仓库 168/week @ 2024-06-18 • Rust 包仓库 496/week @ 2024-06-25 • Rust 包仓库 440/week @ 2024-07-02 • Rust 包仓库 658/week @ 2024-07-09 • Rust 包仓库 345/week @ 2024-07-16 • Rust 包仓库 645/week @ 2024-07-23 • Rust 包仓库 654/week @ 2024-07-30 • Rust 包仓库 573/week @ 2024-08-06 • Rust 包仓库

2,388 每月下载量
用于 2 crates

0BSD 许可证

17KB
388

Redacted

提供用于控制 DebugDisplay 行为的透明包装类型,包括完全删除敏感字节数组。

此库旨在帮助控制敏感类型(如加密类型)在日志中的显示,包括完全删除它们以防止通过调试输出泄露敏感信息。然而,它更有一般用途,也可以简单地用于强制将字节数组以十六进制等形式在调试输出中显示。

示例

完全删除内容

use redacted::FullyRedacted;

let item = FullyRedacted::new(vec![0_u8; 32]);
let output = format!("{:?}", item);

assert_eq!(output, "[32 BYTES REDACTED]");

以十六进制形式渲染内容

use redacted::{Redacted, formatter::FullHex};

let item: Redacted<_, FullHex> = Redacted::new(vec![0_u8; 8]);
let output = format!("{:?}", item);

assert_eq!(output, "0x0000000000000000");

以截断的十六进制字符串形式渲染内容

use redacted::{Redacted, formatter::TruncHex};

let item: Redacted<_, TruncHex<8>> = Redacted::new(vec![0_u8; 32]);
let output = format!("{:?}", item);

assert_eq!(output, "0x00000000...(32 bytes)");

依赖项

~230KB