v1lleneuve/sys-shred
GitHub: v1lleneuve/sys-shred
一款多线程、取证级的 Rust 安全文件擦除 CLI 工具,支持多种军工级销毁算法并提供企业级合规审计功能。
Stars: 0 | Forks: 0
# sys-shred
`sys-shred` 是一个多线程、取证级的 Rust 库和 CLI,用于不可逆地销毁敏感文件。
## 免责声明
本项目不隶属于任何政府或军事机构。其仅供用于合法的数据清理、隐私保护和合规目的。用户需对合法且合乎道德地使用本工具负责。维护者不鼓励任何恶意或未经授权的使用,且不对任何滥用行为承担责任。
## 主要功能
- **硬件级同步:** 使用 `fsync` 和 `sync_all` 绕过易失性 OS 缓存,确保数据写入物理介质。
- **真正的流式并行:** v1.2.0 的重大升级,将文件发现和销毁过程并行化,即使在处理数百万个文件时也能保持恒定的 RAM 占用。
- **积极的缓存绕过:** 利用特定于平台的提示(macOS 上的 `F_NOCACHE`,Linux 上的 `posix_fadvise`)确保数据绕过 OS 页面缓存,以实现最大的取证可靠性。
- **SSD 优化:** 支持硬件 `TRIM` 命令,以减轻现代闪存上的磨损均衡伪影。
- **并行性能:** 由 `rayon` 和 `par_bridge` 驱动,实现高吞吐量执行。
## 快速开始
有关选项的详细列表,请运行 `sys-shred --help`。
对文件执行标准的加密覆盖:
```
sys-shred target_file.txt
```
### 安装
**通过 Cargo(推荐):**
```
cargo install sys-shred
```
**通过 AUR (Arch Linux):**
```
yay -S sys-shred
```
## 文档索引
- [擦除算法](#erasure-algorithms)
- [标准加密](#standard-cryptographic)
- [军工级 (DoD)](#military-grade-dod)
- [最高安全性 (Gutmann)](#maximum-security-gutmann)
- [高级目标定位](#advanced-targeting)
- [递归销毁](#recursive-destruction)
- [Glob 排除](#glob-exclusions)
- [试运行模拟](#dry-run-simulation)
- [企业级功能](#enterprise-features)
- [SSD TRIM / Discard](#ssd-trim--discard)
- [JSON 审计日志](#json-audit-logging)
- [硬件回读验证](#hardware-read-back-verification)
- [安全防护](#safety-guards)
## 擦除算法
### 标准加密
使用三遍加密安全的随机熵覆盖数据(默认)。
```
sys-shred confidential.pdf
```
### 军工级 (DoD)
实现美国国防部 5220.22-M 标准(第 1 遍:全 0,第 2 遍:全 1,第 3 遍:随机)。
```
sys-shred sensitive_data.bin --method dod
```
### 最高安全性 (Gutmann)
严格的 35 遍 Gutmann 算法,专为较旧的磁性介质设计。
```
sys-shred classified_archive.tar.gz --method gutmann
```
## 高级目标定位
### 递归销毁
使用高度优化的无锁并行执行引擎销毁整个目录树。
```
sys-shred ./project_folder --recursive
```
### Glob 排除
使用通配符模式排除特定的文件或目录。
```
sys-shred ./server_logs --recursive --exclude "*.git/*"
```
### 试运行模拟
在不修改文件系统的情况下预览哪些文件将被作为目标。
```
sys-shred ./directory --recursive --dry-run
```
## 企业级功能
### SSD TRIM / Discard
发送硬件级块解除分配命令(Linux 上的 `FALLOC_FL_PUNCH_HOLE`,Windows 上的 `FSCTL_SET_ZERO_DATA`)以处理 SSD 磨损均衡。
```
sys-shred ./nvme_drive --method zero --trim
```
### JSON 审计日志
生成可验证的销毁报告,以满足 GDPR/HIPAA 合规性。
```
sys-shred ./financials -r --audit-log ./report.json --audit-format json
```
### 硬件验证
通过将物理块读回内存来验证销毁效果,确保其已被正确覆盖。
```
sys-shred ./target --verify
```
## 安全防护
- **符号链接保护:** 隔离符号链接,仅解除对引用的链接,而不遍历或销毁外部目标。
- **交互式提示:** 确认提示有助于防止意外的递归销毁。使用 `--force` 绕过。
## 链接
- [GitHub 仓库](https://github.com/v1lleneuve/sys-shred)
- [Crates.io](https://crates.io/crates/sys-shred)
- [AUR 包](https://aur.archlinux.org/packages/sys-shred)
## 许可证
Copyright (c) 2026 V1lleneuve。基于 [MIT 许可证](LICENSE) 授权。
标签:C++, Rust, 反取证, 可视化界面, 安全评估, 数据擦除, 数据销毁, 文件系统, 网络安全, 网络流量审计, 通知系统, 隐私保护