CLI tool written in Rust which can be used to generate hashes

Overview

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.

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

  • stdio
  • string
  • file

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 rustgenhash 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:

rustgenhash string -a <algorithm> <string>

Scheme for file hashing:

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

Scheme for string hashing from stdio:

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

You can list all algorithms over the help function.

Supported are:

  • Argon2 (Only String and stdio)
  • BLAKE2b
  • BLAKE2s
  • GOST R 34.11-94
  • Grøstl
  • MD2 hash
  • MD4 hash
  • MD5 hash
  • PBKDF2-SHA256 (Only String and stdio)
  • PBKDF2-SHA512 (Only String and stdio)
  • RipeMD160
  • RipeMD320
  • SHA-1 hash
  • SHA2-224 hash
  • SHA2-256 hash
  • SHA2-384 hash
  • SHA2-512 hash
  • SHA3-224 hash
  • SHA3-384 hash
  • SHA3-256 hash
  • SHA3-512 hash
  • Shabal192
  • Shabal224
  • Shabal256
  • Shabal384
  • Shabal512
  • Streebog256
  • Streebog512
  • Tiger (Only String and stdio)
  • Whirlpool
You might also like...
A Rust port of the password primitives used in Django Project.

Rust DjangoHashers A Rust port of the password primitives used in Django Project. Django's django.contrib.auth.models.User class has a few methods to

A Rust port of the password primitives used in Django Project.

Rust DjangoHashers A Rust port of the password primitives used in Django Project. Django's django.contrib.auth.models.User class has a few methods to

Benchmarks of most widely used web frameworks built in rust.
Benchmarks of most widely used web frameworks built in rust.

Rust framework benchmarks Benchmarking utility to test the performance of all the rust web frameworks. Built with rust 🚀 . Demo (Last updated: Thu Ju

A general solution for commonly used crypt in rust, collection of cryptography-related traits and algorithms.

Crypto-rs A general solution for commonly used crypt in rust, collection of cryptography-related traits and algorithms. This is a Rust implementation

A temporary repo for ETH connector to be used by EVM

ETH connector for Rainbow bridge Definitions bridgedETH - NEP-141 fungible-token representation of ETH inside Near. nETH - native ETH inside Near EVM.

This is the Repo used to learn blockchain development in conjusction with the CyberGen NFT Project.

Environment Setup Install Rust from https://rustup.rs/ Install Solana from https://docs.solana.com/cli/install-solana-cli-tools#use-solanas-install-to

A pairing-based threshold cryptosystem for collaborative decryption and signatures used in HoneybadgerBFT implementation

threshold_crypto A pairing-based threshold cryptosystem for collaborative decryption and signatures. The threshold_crypto crate provides cryptographic

Demonstrates Solana data account versioning used in supporting the Solana Cookbook article: Account Data Versioning
Demonstrates Solana data account versioning used in supporting the Solana Cookbook article: Account Data Versioning

versioning-solana This repo demonstrates ONE rudimentary way to upgrade/migrate account data changes with solana program changes. What is data version

Dexios-Core is a library used for managing cryptographic functions and headers that adhere to the Dexios format.
Dexios-Core is a library used for managing cryptographic functions and headers that adhere to the Dexios format.

What is it? Dexios-Core is a library used for managing cryptographic functions and headers that adhere to the Dexios format. Security Dexios-Core uses

Comments
  • Move to clap

    Move to clap

    • Move from structopt (now in maintenance mode) to clap

    • Add generate-completions mode using clap_complete crate

    • Add Algorithm enum. Now clap produces nice suggestions: image

    • command::about uses eprintln for ability to redirect stdout to file without this header

    opened by IvashchenkoSerhii 1
  • Several enhancements

    Several enhancements

    • Refactoring
    • Support for latest major revision of clap
    • Temporary disabled clap-generation
    • Output for different formats (Hex, Base64, Hex-Base64)
    • Suppression of prg name and version (resolves #60)
    opened by vschwaberow 0
  • Refactoring and new functions

    Refactoring and new functions

    • Improve on matching functions in the app and make them more generic
    • Implementation of Base64 output
    • Implementation of selection between hex, base64 and hex-base64 output via switch
    opened by vschwaberow 0
Releases(v0.6.1)
  • v0.6.1(Dec 30, 2022)

    What's Changed

    • Update of crates and README by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/67

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.6.0...v0.6.1

    Source code(tar.gz)
    Source code(zip)
  • v0.6.0(Dec 29, 2022)

    What's Changed

    • New functionality for Random strings by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/66

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.14...v0.6.0

    Source code(tar.gz)
    Source code(zip)
  • v0.5.14(Dec 11, 2022)

    What's Changed

    • Several small changes by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/65

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.13...v0.5.14

    Source code(tar.gz)
    Source code(zip)
  • v0.5.13(Oct 9, 2022)

    What's Changed

    • Changes by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/64

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.12...v0.5.13

    Source code(tar.gz)
    Source code(zip)
  • v0.5.12(Oct 8, 2022)

    What's Changed

    • Fix for autocomplete by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/63

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.11...v0.5.12

    Source code(tar.gz)
    Source code(zip)
  • v0.5.11(Oct 8, 2022)

    What's Changed

    • Create rust.yml by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/48
    • Create rust-clippy.yml by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/47
    • Tests branch by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/49
    • Fixes #50 by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/51
    • Fixes #55 by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/56
    • Fixes #52 by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/57
    • Fixes #53 by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/58
    • Fixes #54 by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/59
    • crate upgrade by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/61
    • Several enhancements by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/62

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.10...v0.5.11

    Source code(tar.gz)
    Source code(zip)
  • v0.5.10(Oct 3, 2022)

    What's Changed

    • Fixes #43 by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/44

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.9...v0.5.10

    Source code(tar.gz)
    Source code(zip)
  • v0.5.9(Oct 3, 2022)

    What's Changed

    • Refactoring and new functions by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/42

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.8...v0.5.9

    Source code(tar.gz)
    Source code(zip)
  • v0.5.8(Sep 30, 2022)

    What's Changed

    • Bump by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/41

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.7...v0.5.8

    Source code(tar.gz)
    Source code(zip)
  • v0.5.7(Sep 23, 2022)

    What's Changed

    • Changed cli code to support latest release candidate of clap by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/40

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.6...v0.5.7

    Source code(tar.gz)
    Source code(zip)
  • v0.5.5(Sep 13, 2022)

    What's Changed

    • Dev/bump libs by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/37
    • Change by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/38

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.3...v0.5.5

    Source code(tar.gz)
    Source code(zip)
  • v0.5.3(Jun 2, 2022)

    What's Changed

    • Add yml for dependabot by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/34
    • Added fix for README by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/35
    • Added balloon-hash with sha2::Sha256 by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/36

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/0.5.2...v0.5.3

    Source code(tar.gz)
    Source code(zip)
  • 0.5.2(May 30, 2022)

    What's Changed

    • Added sm3. by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/33

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/0.5.1...0.5.2

    Source code(tar.gz)
    Source code(zip)
  • 0.5.1(May 30, 2022)

    What's Changed

    • Move to clap by @IvashchenkoSerhii in https://github.com/vschwaberow/rustgenhash/pull/32

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.5.0...0.5.1

    Source code(tar.gz)
    Source code(zip)
  • v0.5.0(May 29, 2022)

    What's Changed

    • refactoring by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/30
    • Bump libs add gost94ua by @IvashchenkoSerhii in https://github.com/vschwaberow/rustgenhash/pull/31

    New Contributors

    • @IvashchenkoSerhii made their first contribution in https://github.com/vschwaberow/rustgenhash/pull/31

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.4.2...v0.5.0

    Source code(tar.gz)
    Source code(zip)
  • v0.4.2(Dec 23, 2021)

  • v0.4.1(Dec 22, 2021)

    What's Changed

    • Feature/cr0018 more hash algos by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/29

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.4.0...v0.4.1

    Source code(tar.gz)
    Source code(zip)
  • v0.4.0(Dec 21, 2021)

    What's Changed

    • Cr0017 improvements by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/27
    • corrected by @vschwaberow in https://github.com/vschwaberow/rustgenhash/pull/28

    Full Changelog: https://github.com/vschwaberow/rustgenhash/compare/v0.3.1...v0.4.0

    Source code(tar.gz)
    Source code(zip)
  • v.0.1.8(Oct 30, 2020)

  • v.0.1.7(Oct 30, 2020)

  • v.0.1.5(Oct 27, 2020)

  • v.0.1.4(Oct 27, 2020)

Owner
Volker Schwaberow
Volker Schwaberow
A collection of algorithms that can do join between two parties while preserving the privacy of keys on which the join happens

Private-ID Private-ID is a collection of algorithms to match records between two parties, while preserving the privacy of these records. We present tw

Meta Research 169 Dec 5, 2022
ARYA Network is a polkadot/substrate based chain for Non-fungible Token platform on which we can own sell and buy the NFT's on polkadot network.

ARYA Network ARYA Network is a polkadot/substrate based chain for Non-fungible Token platform on which we can own sell and buy the NFT's on polkadot n

Pankaj Chaudhary 6 Dec 20, 2022
An experimental fork of a16z's Helios Ethereum client which can run its network traffic over the Nym mixnet

Helios (Nym mixnet fork) Helios is a fully trustless, efficient, and portable Ethereum light client written in Rust. This fork of Helios includes nasc

Nym 4 Mar 3, 2023
Ethereum key tool - Lightweight CLI tool to deal with ETH keys written in rust

ekt - Etherum Key Tool ekt is a lightweight tool to generate ethereum keys and addresses. Installation Either clone it and run it with cargo or instal

null 5 May 8, 2023
A secure development tool box and fintech application made with Rust to be used for developing cryptocurrencies on the blockchain.

Crypto Fintech Tools for Rust (CFT) Dependencies Rust MacOS Homebrew # xcode cli tools xcode-select --install # install dependencies using Homebrew b

Phil Hills 1 Apr 15, 2022
A CLI application which allows you to archive Urbit channels and all linked content in them.

The Urbit Content Archiver is a small CLI application that exports channels from your Urbit ship and auto-downloads any directly linked content locall

Robert Kornacki 33 Sep 25, 2022
Rusty Hog is a secret scanner built in Rust for performance, and based on TruffleHog which is written in Python.

Rusty Hog is a secret scanner built in Rust for performance, and based on TruffleHog which is written in Python. Rusty Hog provides the following bina

New Relic 306 Jan 4, 2023
Simple to use CLI tool that makes encryption easy! Written in Rust.

?? eme: Encryption Made Easy an extremely simple AES-256 encryption tool written in Rust Usage: # To encrypt: eme --encrypt secret.png # To decrypt: e

null 5 Jan 3, 2023
CLI tool for managing your 2FA authentication codes written in pure Rust.

(O)TP (VA)ULT - ova. ova is a simple CLI tool which lets you manage your TOTPs, or basically lets you get your two-way authentication code straight to

Giorgi Anakidze 3 Apr 28, 2023
Package used by the cosmos-rust-interface. Makes direct use of cosmos-rust.

Package used by the cosmos-rust-interface. Makes direct use of cosmos-rust (cosmos‑sdk‑proto, osmosis-proto, cosmrs).

Philipp 4 Dec 26, 2022