Menu

Quick Start

Yonas Abeselom

Quick Start

Get AAD-50 running in minutes. Choose your platform below.

Before you touch a live drive — run dry-run first. Dry-run simulates all 50 cycles, generates the full SHA-256 audit chain, and produces a PDF Certificate of Destruction — without issuing a single destructive command to your hardware. It is how you confirm the framework is working correctly on your system before you commit.


Requirements

Requirement Linux Windows
Python 3.10+ 3.10+
Privileges root (sudo) Administrator
NVMe drive Direct M.2/PCIe recommended Direct M.2/PCIe recommended
Dependencies pip install fpdf2 requests pip install fpdf2 requests

Linux

Step 1 - Clone the repository

git clone https://github.com/yonasabeselom/aad50.git
cd aad50

Step 2 - Install dependencies

pip install fpdf2 requests

Step 3 - Dry-run first

Always run dry-run before live mode. Dry-run simulates all 50 cycles without touching your drive.

sudo python3 aad50_abeselom.py --dry-run --verbose /dev/nvme0

All 50 cycles will simulate. You will see each phase execute in sequence — B, then C, then A — with per-cycle confirmation at each step. At the end you get a SHA-256 audit hash and a PDF Certificate of Destruction marked simulation only.

If all 50 cycles complete and the hash is printed — your system is ready.

Step 4 - Live run

sudo python3 aad50_abeselom.py --force /dev/nvme0

WARNING: This is permanent. All data on the target drive will be destroyed across 50 hardware-confirmed cycles. There is no recovery. Confirm your device path before running.

Step 5 - Your Certificate of Destruction

Two files are generated in the current directory:

  • AAD50_audit_[serial].json — full cycle-by-cycle audit log with SHA-256 chain
  • AAD50_certificate_[serial].pdf — PDF Certificate of Destruction for compliance records

Keep these. They are your proof.


Windows (Command Line)

Step 1 - Clone the repository

git clone https://github.com/yonasabeselom/aad50.git
cd aad50

Step 2 - Install dependencies

pip install fpdf2 requests

Step 3 - Dry-run first

Open Command Prompt as Administrator, then:

python aad50_abeselom_windows.py --dry-run --verbose

Same as Linux — all 50 cycles simulate, hash is printed, PDF is generated.

Step 4 - Live run

python aad50_abeselom_windows.py --force

WARNING: This is permanent. Run as Administrator. Confirm the correct physical drive is selected before proceeding.

Step 5 - Your Certificate of Destruction

Same output as Linux — JSON audit log and PDF Certificate of Destruction in the current directory.


Windows (GUI)

For operators who prefer a graphical interface.

Step 1 - Download

Download aad50_gui_windows.py from the repository or clone the full repo.

Step 2 - Run as Administrator

python aad50_gui_windows.py

Or right-click the standalone .exe and select Run as Administrator.

Step 3 - Follow the interface

Select your drive. Enable Dry-Run for your first test. Click Start and watch the phase progress in real time. Your PDF Certificate of Destruction is in the output folder when complete.


USB Enclosure Support (v1.1)

AAD-50 v1.1 automatically detects NVMe drives in USB 3.x enclosures with UASP and selects the highest available command pathway before the first cycle begins.

Tier Method Verification
1 - NVMe Direct IOCTL NVMe passthrough Log Page 0x81 per cycle
2 - ATA/SCSI SAT SCSI ATA passthrough Time-based (120s/cycle)
3 - Block Layer BLKDISCARD / Storage reinitialize Time-based (180s/cycle)

The active tier is recorded in every cycle record and printed in your PDF Certificate of Destruction. For maximum assurance, direct M.2/PCIe connection is always recommended.


Verifying Your Audit Hash

After any run, the SHA-256 hash printed at the end should match the hash in your PDF Certificate of Destruction exactly. If it does not — the audit log has been tampered with.

That hash is your proof of chain of custody. Keep it.


Next Steps


AAD-50 v1.1 - github.com/yonasabeselom/aad50


Related

Wiki: FAQ

Auth0 Logo