Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix some minor issues #2

Closed
wants to merge 1 commit into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
.rainbow_Database/*
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
Expand Down
24 changes: 20 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,14 @@
RainbowHash Supports multiple Hash Such as md5, sha1, sha223, sha3_384, blake2s, blake2b, sha384, sha3_224, sha512, sha256, sha3_256, ntlm.
It Generates Rainbow Table and build a Sqlite3 Database in Current Directory and Match Hash With Rainbow Table Hashes.
RainbowHash also Supports Prepend and Append Salt Value.
RainbowHash can be used as Intractive Mode awa Single Lineer command
RainbowHash directly recover Matched Hash from Rainbow Table Database whis is created inside Local Directory (easy to share)
RainbowHash can be used as Interactive Mode awa Single Lineer command
RainbowHash directly recover Matched Hash from Rainbow Table Database which is created inside Local Directory (easy to share)

No need to Specify Hash Alogorithem type.
No need to Specify Hash Alogorithm type.
No need to Make Rainbow table of same word or file anymore.

# Usage
# Intractive Mode Usage
# Interactive Mode Usage

root@CK00:~/RainbowHash# python3.7 RainbowHash.py

Expand Down Expand Up @@ -158,3 +158,19 @@

Detected ALGORITHM (md5) : f9defaa0ffd24ac8258f6abcf91ad8d9
word : RainbowMe

# Known issue

While running the program, you may encounter an error about md4 compatibility.

In order to run the program, you have to add the following to your openssl.cnf file :

[provider_sect]
default = default_sect
legacy = legacy_sect

[default_sect]
activate = 1

[legacy_sect]
activate = 1
9 changes: 6 additions & 3 deletions RainbowHash.py
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,9 @@


def fetch_from_database(ha_sh):

ha_sh = ha_sh.lower()

cursor = sql.execute('select * from Hashes_Table')
sql.commit()
for row in cursor:
Expand Down Expand Up @@ -274,7 +277,7 @@ def word_hash(word):
print(' example : word RainbowMe')
continue

if inp is not '':
if inp != '':
inp = inp.split()

if inp[0] == 'file':
Expand Down Expand Up @@ -333,15 +336,15 @@ def word_hash(word):
print(' example : salt hash value')
continue

if inp1 is not '':
if inp1 != '':
inp1 = inp1.split()
if inp1[0] == 'app':
post = inp1[1]
elif inp1[0] == 'pre':
salt = inp1[1]
else:
print('Unknown Command')
elif inp1 is '':
elif inp1 == '':
continue
else:
print('Unknown Command')
Expand Down