Skip to content

lakshya-004/RustyDusty

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛡️ Rusty-Dusty - Secure Multi-Pass Data Wiping Tool 🧹

Rust

🚀 Overview

Rusty-Dusty is a secure, configurable data wiping utility built in Rust. It helps you safely erase your storage devices with:

  • 🔄 Cross-platform device wiping (Linux-focused)
  • 🔐 Up to 7-pass secure overwrite aligned with DoD standards
  • 🕵️‍♂️ Detection & optional restoration of hidden areas like HPA/DCO on HDD/SSD
  • 💾 NVMe device inspection
  • 📜 Digitally signed wipe certificates (JSON + PDF) for proof
  • ⚙️ User-friendly CLI with configurable buffer size & passes
  • 🔌 Works offline for secure IT asset disposal

✨ Features

  • 🔒 Secure Overwrite: Wipe data with multiple patterns and random passes
  • 🛠️ Hidden Area Management: Detect & restore Host Protected Area (HPA) & Device Configuration Overlay (DCO)
  • 🚀 NVMe Support: Inspect NVMe controller details
  • 📝 Wipe Certificate: Generate cryptographically signed JSON & PDF certificates
  • 🎛️ User Configurable: Customize passes (1-7) and buffer size (MB)
  • 🧑‍💻 Open Source: For freedom & flexibility

🛠️ Requirements

  • 🐧 Linux environment with root/sudo access
  • 🦀 Rust toolchain (1.65+)
  • 📦 Utilities: hdparm, nvme-cli, openssl CLI
  • 📦 Rust crates: serde, serde_json, openssl, genpdf, hex
  • 🖋️ LiberationSans font (TTF) in executable directory (for PDF generation)

⚡ Installation

1. Clone the repo:

git clone https://github.com/lakshya-004/RustyDusty.git
cd RustyDusty

2. Install dependencies:

sudo apt update
sudo apt install -y build-essential pkg-config libssl-dev hdparm nvme-cli fonts-liberation

3. Generate RSA keypair for signing:

openssl genpkey -algorithm RSA -out private.pem -pkeyopt rsa_keygen_bits:2048
openssl rsa -in private.pem -pubout -out public.pem

4. Build the project:

cargo build --release

🎯 Usage

5. Run as root (⚠️ destructive!):

sudo ./target/release/RustyDusty

You will be prompted to:

📂 Select device to wipe

💿 Select drive type (HDD/SSD or NVMe)

🔍 Optionally restore HPA/DCO on SATA drives

📊 Set buffer size in MB (recommended: 64)

🔄 Choose number of overwrite passes (1–7)

✔️ Confirm before wiping

📁 Output

After wiping completes, you’ll get:

wipe_certificate.json — detailed report & logs

wipe_certificate.sig — digital signature of the JSON report

wipe_certificate.pdf — professional PDF certificate with signature

Verify signature with your public.pem key!

⚠️ Security & Safety

❗ Irreversible Data Loss: This will permanently destroy data on the device!

👑 Run as Root: Requires elevated privileges for raw disk access

🔑 Protect your Keys: Never share or commit your private.pem key publicly!

🧪 Test First: Always try on test devices before production use

🤝 Contributing

Contributions, feedback, and feature requests are very welcome! Feel free to open issues or pull requests on GitHub.

For details. 📬 Contact

Developed with ❤️ by Lakshya-004

GitHub: https://github.com/lakshya-004

Securely flush your data with RustyDusty 🚀🔒

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages