Identify the different types of hashes used to encrypt data and especially passwords.
This tool replaces hash-identifier, which is outdated!
hashID is a tool written in Python 3.x which supports the identification of over 190 unique hash types using regular expressions.
A full list of supported hashes is found here.
It is able to identify a single hash, parse a file or read files in a directory and identify the hashes within them.
hashID is also capable of including the corresponding hashcat mode in its output.
Altough hashID is written in Python 3.x it should also work with Python 2.7.
There is also a nodejs version of hashID available which is easily set up to provide online hash identification.
*Note: When identifying a hash on nix operating systems use single quotes to prevent interpolation
sudo apt-get install python3 git
git clone https://github.com/psypanda/hashid.git
cd hashid && chmod +x hashid.py
sudo install -g 0 -o 0 -m 0644 man/hashid.7 /usr/share/man/man7/
sudo gzip /usr/share/man/man7/hashid.7
exit
$ hashid.py [-a] [-m] [--help] [--version] INPUT
Parameter | Description |
---|---|
input | string or filename to analyze |
-a, --all | list all hash algorithms including salted passwords |
-m, --mode | include corresponding hashcat mode in output |
--help | show this help message and exit |
--version | show program's version number and exit |
$ ./hashid.py $P$8ohUJ.1sdFw09/bMaAQPTGDNi2BIUt1
Analyzing '$P$8ohUJ.1sdFw09/bMaAQPTGDNi2BIUt1'
[+] Wordpress ≥ v2.6.2
[+] Joomla ≥ v2.5.18
[+] PHPass' Portable Hash
$ hashid.py -m ecf076ce9d6ed3624a9332112b1cd67b236fdd11:17782686
Analyzing 'ecf076ce9d6ed3624a9332112b1cd67b236fdd11:17782686'
[+] Redmine Project Management Web App [Hashcat Mode: 7600]
[+] SMF ≥ v1.1 [Hashcat Mode: 121]
$ ./hashid.py hashes.txt
--File 'hashes.txt'--
Analyzing '*85ADE5DDF71E348162894C71D73324C043838751'
[+] MySQL5.x
[+] MySQL4.1
Analyzing '$2a$08$VPzNKPAY60FsAbnq.c.h5.XTCZtC1z.j3hnlDFGImN9FcpfR1QnLq'
[+] Blowfish(OpenBSD)
[+] Woltlab Burning Board 4.x
[+] bcrypt
--End of file 'hashes.txt'--
$ ./hashid.py folder/*.txt
--File 'hashes.txt'--
Analyzing '*85ADE5DDF71E348162894C71D73324C043838751'
[+] MySQL5.x
[+] MySQL4.1
Analyzing '$2a$08$VPzNKPAY60FsAbnq.c.h5.XTCZtC1z.j3hnlDFGImN9FcpfR1QnLq'
[+] Blowfish(OpenBSD)
[+] Woltlab Burning Board 4.x
[+] bcrypt
--End of file 'hashes.txt'--
--File 'hashes.txt'--
Analyzing '{smd5}01234567$yOImZPvBC8dg1HjGYfH7j.'
[+] AIX(smd5)
Analyzing 'crypt1:fnd+8xl+U1E=:Wc30H8MPgAc='
[+] Clavister Secure Gateway
--End of file 'hashes.txt'--
Contributing to this project can be done in various ways:
- Add currently unsupported hash types
- Change/Fix/Enhance existing regular expression
- Provide reading resources on specific hash types in hashinfo.xlsx
- hashID isn't capable of handling piped input at the moment