#hash #command-line-interface #cli #crypto #rust

no-std bin+lib rustgenhash

A tool to generate hashes from the command line

50 releases

0.9.5 Apr 12, 2024
0.9.4 Mar 10, 2024
0.9.2 Feb 19, 2024
0.9.0 Dec 19, 2023
0.2.2 Nov 4, 2020

#438 in Cryptography

Download history 141/week @ 2024-02-17 91/week @ 2024-02-24 963/week @ 2024-03-02 284/week @ 2024-03-09 16/week @ 2024-03-16 2/week @ 2024-03-23 24/week @ 2024-03-30 101/week @ 2024-04-06 47/week @ 2024-04-13

174 downloads per month

MIT license

56KB
2K SLoC

rustgenhash

rustgenhash is a tool to generate hashes on the commandline from stdio.

It can be used to generate single or multiple hashes for usage in password databases or even in penetration testing scenarios where you want to test password cracking tools. It can also help to identify the nature of a provided hash.

Install

rustgenhash is written in Rust. You can install the tool with your Rust installation using following command:

cargo install rustgenhash

Usage

Rustgenhash has a command line interface which allows you to set the utility into a specific operating mode. The current modes are

  • analyze
  • compare-hash
  • random
  • stdio
  • string
  • file
  • header

After selecting the mode you will need to provide the -a switch for selecting a suitable hashing algorithm and a string or file to be hashed. The stdio mode allows you to pipe to the rgh command. The tool will hash the passed lines from the stdio (useful for hashing password lists).

The file mode supports hashing of multiple files in a directory and currently works non-recursive.

Scheme for string hashing:

rgh string -a <algorithm> <string>

Scheme for file hashing:

rgh file -a <algorithm> <filename or directory>

Scheme for string hashing from stdio:

cat myfile | rgh stdio -a <algorithm>
echo "mypassword" | rgh stdio -a <algorithm>

Scheme for analyzing a hash:

rgh analyze -a <algorithm> <hash>

Scheme for generating a HHHash of a provided url:

rgh header www.google.de

Scheme for comparing a hash:

rgh compare-string <hash1> <hash2>

Scheme for comparing hash files with each other:

rgh compare-file <file1> <file2>

You can list all supported algorithms over the help function.

Contribution

If you want to contribute to this project, please feel free to do so. I am happy to accept pull requests. Any help is appreciated. If you have any questions, please feel free to contact me.

Dependencies

~15–31MB
~485K SLoC