Я начал свой путь создания взломщиков паролей и был озадачен этой проблемой, связанной с состоянием циклов, файлов и области отступов. Мне удалось зашифровать список слов, который я использовал, и зациклить его, чтобы настроить его для сравнения с моим хэш-файлом пароля sha256, но у меня возникли проблемы с тем, чтобы пароль перестал давать ложные срабатывания при условии if между ним по сравнению с зашифрованным циклом for. Сначала я подумал, что, возможно, проблема связана с пробелами в списке слов, но теперь я не думаю, что это так. Если бы кто-нибудь мог проанализировать мой код и дать мне улучшения в функциональности, скорости и модификациях, чтобы заставить его работать, я был бы очень признателен. У меня не так много опыта в программировании, но я планирую обновить этот инструмент, как только смогу заставить его работать, а затем научиться кодировать его на C для увеличения скорости. Я планирую реализовать argparse поверх sys, как только смогу заставить программу работать, и она станет гораздо более масштабным инструментом. Спасибо тем, кто может помочь, а если не добиться мира.
Код: Выделить всё
import hashlib
import sys
wordlist_arg = sys.argv[1]
password_hash_arg = sys.argv[2]
def sha256():
with open(wordlist_arg, 'r') as wordlist:
for word in wordlist:
with open(password_hash_arg, 'r') as password:
# encrypt wordlist to compare with password hash
encrypt = hashlib.sha256(word.strip().encode('utf-8')).hexdigest()
# open password hash and use if statement to compare if hash is in wordlist
if password.read().strip() in encrypt:
print("Password Found!")
break
if __name__ == '__main__':
sha256()
Код: Выделить всё
5e884898da28047151d0e56f8dc6292773603d0d6aabbdd62a11ef721d1542d8 < hash.txt = password_hash_arg
Код: Выделить всё
10-million-password-list-top-1000000.txt = wordlist_arg
Я пытаюсь реализовать инструмент для взлома паролей, который шифрует список слов на лету в цикле for, затем сравнивает хэш пароля и возвращает true, если он есть в списке слов. Я также хотел бы реализовать функцию отслеживания попыток взлома пароля, чтобы это стало более впечатляющим инструментом.
Подробнее здесь:
https://stackoverflow.com/questions/787 ... rd-cracker