Files
2026-04-17 09:01:34 -05:00

61 lines
1.9 KiB
Python
Executable File

from itertools import permutations, combinations, product
from os import system, name
import sys
def clear():
if name == 'nt':
system('cls')
else:
system('clear')
def generate_passwords(elements):
passwords = set()
for length in range(1, len(elements) + 1):
for perm in permutations(elements, length):
passwords.add(''.join(perm))
for comb in combinations(elements, length):
for perm in permutations(comb):
passwords.add(''.join(perm))
for prod in product(elements, repeat=length):
passwords.add(''.join(prod))
return passwords
def estimate_file_size(passwords):
total_size = sum(len(pwd) + 1 for pwd in passwords)
return total_size
def main():
words = input("Bitte geben Sie die Wörter ein, getrennt durch Leerzeichen: ").split()
numbers = input("Bitte geben Sie die Zahlen ein, getrennt durch Leerzeichen: ").split()
symbols = input("Bitte geben Sie die Zeichen ein, getrennt durch Leerzeichen: ").split()
elements = words + numbers + symbols
print("Generiere Passwörter...")
passwords = generate_passwords(elements)
estimated_size = estimate_file_size(passwords)
print(f"Geschätzte Dateigröße: {estimated_size / 1024:.2f} KB")
print(f"Anzahl der generierten Passwörter: {len(passwords)}")
file_name = input("Bitte geben Sie den Namen der Ausgabedatei an (mit .txt Endung): ")
try:
with open(file_name, 'w') as file:
for pwd in passwords:
file.write(pwd + '\n')
print(f"Passwörter wurden erfolgreich in {file_name} geschrieben.")
except Exception as e:
print(f"Fehler beim Schreiben in die Datei: {e}", file=sys.stderr)
if __name__ == "__main__":
#clear()
def prCyan(skk): print("\033[96m{}\033[00m" .format(skk))
prCyan("Passwortlist Generator")
main()