{"id":13619415,"url":"https://github.com/kostassoid/lethe","last_synced_at":"2025-05-16T15:05:43.872Z","repository":{"id":41465452,"uuid":"189072239","full_name":"Kostassoid/lethe","owner":"Kostassoid","description":"Secure drive wipe","archived":false,"fork":false,"pushed_at":"2024-12-17T09:19:08.000Z","size":315,"stargazers_count":135,"open_issues_count":8,"forks_count":11,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-03T12:09:14.779Z","etag":null,"topics":["disk","drive","erase","secure","security","storage","wipe"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Kostassoid.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-28T17:19:43.000Z","updated_at":"2025-03-07T21:41:43.000Z","dependencies_parsed_at":"2024-01-14T06:54:13.115Z","dependency_job_id":"f380d88b-1678-4d6b-82bd-c51c5b91e6bd","html_url":"https://github.com/Kostassoid/lethe","commit_stats":{"total_commits":111,"total_committers":1,"mean_commits":111.0,"dds":0.0,"last_synced_commit":"28e3f413069ae39181bdfd23929ceb69aaa5f605"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kostassoid%2Flethe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kostassoid%2Flethe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kostassoid%2Flethe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kostassoid%2Flethe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kostassoid","download_url":"https://codeload.github.com/Kostassoid/lethe/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248565030,"owners_count":21125414,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["disk","drive","erase","secure","security","storage","wipe"],"created_at":"2024-08-01T21:00:40.165Z","updated_at":"2025-04-12T11:52:26.693Z","avatar_url":"https://github.com/Kostassoid.png","language":"Rust","readme":"# Lethe\n\n[![Build Status](https://travis-ci.com/Kostassoid/lethe.svg?branch=master)](https://travis-ci.com/Kostassoid/lethe)\n\nA secure, free, cross-platform and open-source drive wiping utility.\n\nShould work with any HDD, SSD (read limitations) and flash drives.\n\nThe usual methods for wiping (or sanitization) a drive, including those (allegedly) used by government agencies are based\non destructive writes. In other words, on overwriting existing data with multiple layers of randomly generated data or some\nstatic pattern.\nThis is basically what this tool does.\n\nThere are other similar applications around (including multiple built-in Linux tools). Most of them are proprietary, or slow,\nor non-cross-platform, which was a requirement for me. So I wrote this application.\n\n## Features\n\n- Supports Windows (but not WSL), macOS and Linux.\n- Validates the data (reads back) to make sure all write commands were successful\n- Uses fast cryptographic random generator\n- Allows to override OS recommended block size for possibly faster operations\n- Tracks \u0026 skips bad blocks and other localized errors automatically (Experimental)\n\n## Limitations\n\n- 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.\n- The maximum number of blocks per storage device is 2\u003csup\u003e32\u003c/sup\u003e, 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.\n- The application hasn't even been tested on RAID storages, beware.\n\n## Current status\n\nThe initial active development phase is done.\nI 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.\nI still make some additions/changes occasionally, but there's no exact roadmap.\nI would love to learn about other people's experience with the application. Let me know if you have any issues!\n\n## Download\n\nCurrent release: **v0.8.2** [Changelog](CHANGELOG.md)\n\nDownload and unzip binaries for your OS:\n- [Windows x86-64](https://github.com/Kostassoid/lethe/releases/download/v0.8.2/lethe-v0.8.2-x86_64-pc-windows-gnu.zip)\n- [macOS Intel](https://github.com/Kostassoid/lethe/releases/download/v0.8.2/lethe-v0.8.2-x86_64-apple-darwin.tar.gz)\n- [macOS Apple](https://github.com/Kostassoid/lethe/releases/download/v0.8.2/lethe-v0.8.2-aarch64-apple-darwin.tar.gz) (Experimental)\n- [Linux x86-64](https://github.com/Kostassoid/lethe/releases/download/v0.8.2/lethe-v0.8.2-x86_64-unknown-linux-musl.tar.gz)\n\nOr install `lethe` from sources using the latest [Rust toolchain](https://www.rust-lang.org/tools/install):\n\n```\ncargo install lethe\n```\n\n## Usage\n\n`lethe` is a CLI (command-line interface). Run it without parameters or use `help` command to display usage information.\n\n```\nlethe help\n```\n\nYou can also use `help` command to get more information about any particular command.\n\n```\nlethe help wipe\n```\n\nNote that `lethe` operates on a low level and will require a root/administrator access (e.g. `sudo`) to work with any real drives.\n\n## Benchmarks\n\n### macOS\n\nMeasured 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.\n\n**Zero fill**\n\n| Command                                                             | Block size | Time taken (seconds) |\n|---------------------------------------------------------------------|------------|----------------------|\n| `dd if=/dev/zero of=/dev/rdisk3 bs=131072`                          | 128k       | 2667.21              |\n| `lethe wipe --scheme=zero --blocksize=128k --verify=no /dev/rdisk3` | 128k       | 2725.77              |\n| `dd if=/dev/zero of=/dev/rdisk3 bs=1m`                              | 1m         | 2134.99              |\n| `lethe wipe --scheme=zero --blocksize=1m --verify=no /dev/rdisk3`   | 1m         | 2129.61              |\n\n**Random fill**\n\n| Command                                                               | Block size | Time taken (seconds) |\n|-----------------------------------------------------------------------|------------|----------------------|\n| `dd if=/dev/urandom of=/dev/rdisk3 bs=131072`                         | 128k       | 4546.48              |\n| `lethe wipe --scheme=random --blocksize=128k --verify=no /dev/rdisk3` | 128k       | 2758.11              |\n\n## License\n\n`Lethe` is licensed under the Apache License, Version 2.0. See [LICENSE](LICENSE) for the full license text.\n","funding_links":[],"categories":["Applications"],"sub_categories":["Security tools"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkostassoid%2Flethe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkostassoid%2Flethe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkostassoid%2Flethe/lists"}