Борьба с расшифровкой хеш-ключа в байтах - PullRequest
0 голосов
/ 04 мая 2019

Ну, я довольно новичок в python, и мой код очень прост, но я все же добавил комментарии, чтобы помочь любому понять, что это заняло у меня всего 20 минут, но это модуль, созданный для того, чтобы я мог добавлять пароли в свои коды. Но я действительно борюсь с моей функцией декодирования, любые решения были бы хороши.

Требуемый результат состоял в том, что он декодировал бы код обратно из текстового документа, и я проверил, когда я читаю его из файла .txt, он возвращает его байты, когда я использовал «rb», но он продолжает отображать это:

ValueError: Ключ Fernet должен содержать 32 байта в кодировке base64.

def DecryptPassword():
    #import modules
    from cryptography.fernet import Fernet
    #send the display message
    print("")
    print("Decoding")
    #read key for file
    Rlocation = "C:\\Users\\marcu\\OneDrive\\Desktop\\Crypto Python\\Password Moduale\\HashKey.txt"
    #Open file
    oprb = open(Rlocation,"rb")
    #read file .txt
    Rkey = oprb.readline()
    #close file
    oprb.close()
    #change key to bytes
    print(type(Rkey))
    ###########################################
    #decode
    f2 = Fernet(Rkey)
    #set decode var
    decrypted_pass = f2.decode()
    return decrypted_pass
...