1 unstable release

0.1.0 Sep 13, 2021

#2452 in Cryptography

Custom license

66KB
2K SLoC

Hash Identifier

forthebadge forthebadge

Get it from the Snap Store


hash-id is a command line program for identifying hash types based on Zion3R's implementation.
This software is meant for enumeration, this is not a hash cracking tool, and it isn't definitive, the only way to be sure of the algorithm is after the hash has been reversed.

Usage

hash-id [OPTIONS]

Examples:

  • Using a CLI argument
    $ hash-id -h fc7feb971470bd3d08d241f88db1ea38
    
  • Using a text file
    $ hash-id -f ./hashes.txt
    
  • Output:
    $ hash-id -f ./hashes.txt -h fc7feb971470bd3d08d241f88db1ea38
    > Hash: b89eaac7e61417341b710b727768294d0e6a277b
    >   [+] SHA-1
    >   [+] MySQL5 - SHA-1(SHA-1($pass))
    >   [+] Tiger-160
    >   [+] Haval-160
    >   [+] RipeMD-160
    >  #(...)
    > ------------------------------------------
    > Hash: 2303b15bfa48c74a74758135a0df1201
    >    [+] MD5
    >    [+] Domain Cached Credentials - MD4(MD4(($pass)).(strtolower($username)))
    >    [+] RAdmin v2.x
    >    [+] NTLM
    >    [+] MD4 
    >  #(...)
    > ------------------------------------------
    >  #(...)
    

Options:

short long type description
-f --file FILE File containing hashes (each one in a line)
-h --hash STRING Hash value to be identified

Flags:

short long description
--help Prints help information
-V --version Prints version information

Info:

  • Algorithms are displayed in order of probability, so you should start testing by the first.
  • A hash argument and a file can be used at the same time.

Install

Currently, just a snap package is suported. If you want to maintain a distro specific package, please check the contributing section.

  • Snap
    sudo snap install hash-id --beta
    
    !!!!: Because of snap confinement policy, this package can only access files on your /home folder. If you really need it to access files on other folders, maybe you should build it from source (cargo build --release).

Contributing

Thank you for wanting to contribute to this project! Here are some ways you can help:

  • Translating this documentation to your language
  • Maintaning a package
  • Improving error handling
  • Creating documentation
  • Refactoring code (PRs are always welcome)
  • Adding more functionality

Always before starting to work on something, check the issues to see if anyone else is working on the same thing, if anyone is working and you want to start, please create an issue and let me know. Code changing PRs without an issue will not be accepted.

Dependencies

~750KB