All Projects → Kostassoid → lethe

Kostassoid / lethe

Licence: Apache-2.0 License
Secure drive wipe

Programming Languages

rust
11053 projects
shell
77523 projects

Projects that are alternatives of or similar to lethe

shredos.x86 64
Shredos Disk Eraser 64 bit for all Intel 64 bit processors as well as processors from AMD and other vendors which make compatible 64 bit chips. ShredOS - Secure disk erasure/wipe
Stars: ✭ 383 (+714.89%)
Mutual labels:  disk, wipe, erase
Kissme
Kissme: Kotlin Secure Storage Multiplatform
Stars: ✭ 351 (+646.81%)
Mutual labels:  storage, secure
Storage
An iOS library for fast, easy, and safe threaded disk I/O.
Stars: ✭ 259 (+451.06%)
Mutual labels:  disk, storage
Easystash
🗳Easy data persistence in Swift
Stars: ✭ 303 (+544.68%)
Mutual labels:  disk, storage
Winspd
Windows Storage Proxy Driver - User mode disk storage
Stars: ✭ 335 (+612.77%)
Mutual labels:  disk, storage
BlobHelper
BlobHelper is a common, consistent storage interface for Microsoft Azure, Amazon S3, Komodo, Kvpbase, and local filesystem written in C#.
Stars: ✭ 23 (-51.06%)
Mutual labels:  disk, storage
Vagrant Persistent Storage
A Vagrant plugin that creates a persistent storage and attaches it to guest machine.
Stars: ✭ 285 (+506.38%)
Mutual labels:  disk, storage
Binaryprefs
Rapidly fast and lightweight re-implementation of SharedPreferences which stores each preference in files separately, performs disk operations via NIO with memory mapped byte buffers and works IPC (between processes). Written from scratch.
Stars: ✭ 484 (+929.79%)
Mutual labels:  disk, storage
Node Disk Manager
Kubernetes Storage Device Management
Stars: ✭ 128 (+172.34%)
Mutual labels:  disk, storage
PSDiskPart
DiskPart PowerShell Module
Stars: ✭ 30 (-36.17%)
Mutual labels:  disk, storage
webpack-plugin-ramdisk
🐏 A webpack plugin for blazing fast builds on a RAM disk / drive
Stars: ✭ 118 (+151.06%)
Mutual labels:  disk, drive
ceph-cheatsheet
All™ you ever wanted to know about operating a Ceph cluster!
Stars: ✭ 84 (+78.72%)
Mutual labels:  storage
ddrive
A lightweight cloud storage system using discord as storage device written in nodejs
Stars: ✭ 25 (-46.81%)
Mutual labels:  storage
carina
Carina: an high performance and ops-free local storage for kubernetes
Stars: ✭ 256 (+444.68%)
Mutual labels:  storage
kubernetes
Quobyte / Kubernetes integration (DEPRECATED - use Quobyte CSI)
Stars: ✭ 24 (-48.94%)
Mutual labels:  storage
ioBroker.history
manages state history
Stars: ✭ 26 (-44.68%)
Mutual labels:  storage
fbind
A versatile Android mounting utility for folders, EXT4 images, LUKS/LUKS2 encrypted volumes, regular partitions and more.
Stars: ✭ 42 (-10.64%)
Mutual labels:  storage
drive-mobile
internxt.com
Stars: ✭ 43 (-8.51%)
Mutual labels:  secure
jiva
CAS Data Engine - iSCSI Distributed Block Storage Controller built-in Go
Stars: ✭ 121 (+157.45%)
Mutual labels:  storage
EnhanceDiskUtility
SIMBL plugin for Disk Utility that aims to enable Verify / Repair Permissions support
Stars: ✭ 17 (-63.83%)
Mutual labels:  disk

Lethe

Build Status

A secure, free, cross-platform and open-source drive wiping utility.

Should work with any HDD, SSD (read limitations) and flash drives.

The usual methods for wiping (or sanitization) a drive, including those (allegedly) used by government agencies are based on destructive writes. In other words, on overwriting existing data with multiple layers of randomly generated data or some static pattern. This is basically what this tool does.

There are other similar applications around (including multiple built-in Linux tools). Most of them are proprietary, or slow, or non-cross-platform, which was a requirement for me. So I wrote this application.

Features

  • Supports Windows (but not WSL), macOS and Linux.
  • Validates the data (reads back) to make sure all write commands were successful
  • Uses fast cryptographic random generator
  • Allows to override OS recommended block size for possibly faster operations
  • Tracks & skips bad blocks and other localized errors automatically (Experimental)

Limitations

  • For SSD, it's impossible to reliable wipe all the data because of the various optimizations performed by modern SSD controllers, namely wear leveling and compression. The best approach currently is to use multiple wiping rounds with random data. Later, a support for Secure Erase ATA commands may be added to make the process more reliable.
  • The maximum number of blocks per storage device is 232, or 4,294,967,296. For example, using a block size of 1 MB the size of the storage can be up to 4096 TB.
  • The application hasn't even been tested on RAID storages, beware.

Current status

The initial active development phase is done. I have been using the application for some time for personal needs on all supported platforms. It does what it was designed to do. Didn't have to deal with forensics experts yet though. I still make some additions/changes occasionally, but there's no exact roadmap. I would love to learn about other people's experience with the application. Let me know if you have any issues!

Download

Current release: v0.6.1 Changelog

Download and unzip binaries for your OS:

Or install lethe from sources using latest Rust toolchain:

cargo install lethe

Usage

lethe is a CLI (command-line interface). Run it without parameters or use help command to dispay usage information.

lethe help

You can also use help command to get more information about any particular command.

lethe help wipe

Note that lethe operates on a low level and will require a root/administrator access (e.g. sudo) to work with any real drives.

Benchmarks

macOS

Tested on Macbook Pro 2015 with macOS 10.14.4 (Mojave) using a Sandisk 64G Flash Drive with USB 3.0 interface. OS recommended block size is 128k.

Zero fill

Command Block size Time taken (seconds)
dd if=/dev/zero of=/dev/rdisk3 bs=131072 128k 2667.21
lethe wipe --scheme=zero --blocksize=128k --verify=no /dev/rdisk3 128k 2725.77
dd if=/dev/zero of=/dev/rdisk3 bs=1m 1m 2134.99
lethe wipe --scheme=zero --blocksize=1m --verify=no /dev/rdisk3 1m 2129.61

Random fill

Command Block size Time taken (seconds)
dd if=/dev/urandom of=/dev/rdisk3 bs=131072 128k 4546.48
lethe wipe --scheme=random --blocksize=128k --verify=no /dev/rdisk3 128k 2758.11

License

Lethe is licensed under the Apache License, Version 2.0. See LICENSE for the full license text.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].