#hashing #decode #encode #cracking

mercy

Mercy is a public Rust crate created to assist with building cybersecurity frameworks, assessment tools, and numerous other projects

8 releases (2 stable)

Uses new Rust 2021

1.1.12 Nov 11, 2022
1.1.11 Nov 1, 2022
0.1.8 Oct 17, 2022
0.1.6 Sep 28, 2022

#419 in Cryptography

Download history 67/week @ 2022-09-22 41/week @ 2022-09-29 6/week @ 2022-10-06 48/week @ 2022-10-13 9/week @ 2022-10-20 20/week @ 2022-10-27 12/week @ 2022-11-03 38/week @ 2022-11-10 18/week @ 2022-11-17 6/week @ 2022-11-24

79 downloads per month
Used in catherine

BSD-2-Clause

355KB
133 lines


Mercy

📚 Documentation


Mercy is a public Rust crate created to assist with building cybersecurity frameworks, assessment tools, and numerous other projects. We hope to create a sustainable crate to make creating security tools in Rust a little easier and not require so much bloat in your project.

Usage

Since Mercy is a standard crate, it can easily be utilized in any project already initialized with the Cargo configuration.

Add the following line to your Cargo.toml file:

mercy = "1.1.12"

Once the Cargo.toml file has been updated, you can import the crate and use the provided methods by running cargo run.

Cryptographic Processes

Here's a quick example for decoding and encoding using the base64 protocol:

use mercy::{
    mercy_decode,
    mercy_encode
};

fn main() {
    // Encode string "Umiko Labs"
    mercy_encode("base64", "Umiko Labs");
    
    // Decode string "VW1pa28gU2VjdXJpdHk="
    mercy_decode("base64", "VW1pa28gU2VjdXJpdHk=");
}

Hexadecimal Dumping

Here's how to dump hexadecimal values in a single line using Mercy:

use mercy::mercy_hex;

fn main() {
    mercy_hex("hex_dump", "/Location/of/file");
}

Miscellaneous Methods

Some extra methods have been included to assist with local data collection. We currently allow you to collect the internal ip address of your device or dump certain information, specified by the user.

use mercy::mercy_extra;

fn main() {
    // Contains the internal ip address of the user's system
    mercy_extra("internal_ip", "");

    // This method is extensive, but the "all" parameter allows the user to dump everything we have set in Mercy
    mercy_extra("system_info", "all");
}

We can also use the following paremeters, replacing the "all" keyword:

  • hostname
  • cpu_cores
  • cpu_speed
  • os_release
  • proc

More Info

If ever in doubt, feel free to run this special function to display more information about the crate.

use mercy::source;

fn main() {
    mercy_source();
}

Dependencies

~1MB
~26K SLoC