Sans-Atout / Nozomi

equivalent of the Linux shred command but in rust and library

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Nozomi

A Rust library that wipe all file or folder.
This library includes most of the secure deletion methods of the Eraser for Windows software.

Add to your project

[dependencies]
nozomi = "2.0.0"

Test libraries

Prerequisites

cargo install cargo-nextest --locked 

Library test

git clone https://github.com/Sans-Atout/Nozomi.git
cd Nozomi
chmod +x test.sh
./test.sh

Code example

Erase one file with Pseudo Random method

use nozomi;
use nozomi::OverwriteMethod::Afssi5020;

fn main() {
    match nozomi::erase_file("path_to_file", Afssi5020){
        Ok(info) => println!("{}",info),
        Err(error) => println!("{}",error)
    };
}

Erase one folder with Pseudo Random method

use nozomi;
use nozomi::OverwriteMethod::Afssi5020;

fn main() {
    match nozomi::erase_folder("path_to_folder", Afssi5020, false){
        Ok(info) => println!("{}",info),
        Err(error) => println!("{}",error)
    };
}

Changelog

Contributing

Erase Method

Here are all the methods available and an illustrative diagram for each suppression method.

You can see below an explanation of one brick of the scheme : explanation of diagram

Pseudo Random

pseudo random erase method

Gutmann

gutmann erase method

Hmgi S5

HMGI S5 erase method

DOD 522022 MECE

DOD 522022 MECE erase method

DOD 522022 ME

DOD 522022 ME erase method

AFSSI 5020

AFSSI 5020 erase method

RCMP TSSIT OPS II

RCMP TSSIT OPS II

About

equivalent of the Linux shred command but in rust and library

License:GNU General Public License v3.0


Languages

Language:Rust 100.0%