PII masking for logs and pipelines in Rust.
Mask email addresses and global phone numbers safely, quickly, and with minimal dependencies. Designed for logging and data processing workflows.
Email Masking
Preserves the domain and the first local character: alice@example.com -> a****@example.com.
Global Phone Formats
Keeps formatting and the last 4 digits: +1 (800) 123-4567 -> +1 (***) ***-4567.
Custom & Lightweight
Change the mask character and keep dependencies minimal (regex only).
Installation & Basic Usage
Use cargo add mask-pii (or add mask-pii = "0.2.0" to Cargo.toml) and enable masking with the builder pattern.
Quraşdırma
cargo add mask-pii
[TRANSLATE THIS]
main.rs
use mask_pii::Masker;
fn main() {
// Configure the masker
let masker = Masker::new()
.mask_emails()
.mask_phones()
.with_mask_char('#');
let input = "Contact: alice@example.com or 090-1234-5678.";
let output = masker.process(input);
println!("{}", output);
// Output: "Contact: a####@example.com or 090-####-5678."
}
Important Note
By default, Masker::new() performs no masking. Enable email/phone filters explicitly before processing text.
Əvvəlki
Language indexNövbəti
GitHub