I dont know why this is broken, but it is...
from cryptography.fernet import Fernet
'''
def write_key():
key = Fernet.generate_key()
with open('key.key', 'wb') as key_file:
key_file.write(key)'''
def load_key():
file = open('key.key', 'rb')
key = file.read()
file.close()
return key
main_password = input('What is the password? ')
key = load_key() + main_password.encode()
fer = Fernet(key)
def view():
with open('passwords.txt', 'r') as f:
for line in f.readlines():
data = line.rstrip()
user, pwd = data.split("|")
print("Username:", fer.decrypt(user.encode().decode()), "| Password:", fer.decrypt(pwd.encode().decode()))
def add():
name = input('Define account name: ')
password = input('Define account password: ')
with open('passwords.txt', 'a') as f:
f.write(fer.encrypt(name.encode).decode() + "|" + fer.encrypt(password.encode).decode() + "\n")
while True:
mode = input('Would you like to add a password, or view existing passwords (view, add)? Press "q" if you would like to quit. ').lower()
if mode == 'q':
break
if mode == 'view':
view()
elif mode == 'add':
add()
else:
print("Invalid mode, please try again.")
continue