Почему я получаю InvalidToken Fe rnet python - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть сценарий Python, который записывает пароли к файлам. Это две отдельные функции. Первый шифрует файл (после того, как запись пароля завершена), а второй обрабатывает дешифрование файла для операций чтения / записи. Функция шифрования работает нормально и шифрует файл, однако дешифрование не может выполнить дешифрование в строке Decrypted_Data = F.decrypt (Encrypted_Data). У меня есть код, прикрепленный ниже для справки: эта функция вызывается в функции генерации пароля и работает следующим образом (я уже проверил функцию генерации и запись файла без шифрования, и она работает нормально) Сначала генерируется случайный идентификатор, а затем случайная строка генерируется состоящий из четырех строчных и четырех прописных букв и одной пунктуации, а затем в каждой строке выполняется random.choice (), и они объединяются с этим уникальным случайным идентификатором, который изменяет каждый вызов функции. Выполнение скрипта приводит к InvalidToken. Я не знаю, важно это или нет, но я использую криптографическую библиотеку cryptography.fe rnet

# This code was taken from PythonCode with minor changes

with open("key.key", 'rb') as key_file:
     Key = key_file.read()
F = fernet(Key)
with open("/tmp/Config.txt", 'rb') as File:
     Encrypted_Data = File.read()
     Decrypted_Data = F.decrypt(Encrypted_Data)
with open("/tmp/Config.txt", "wb") as File:
     File.write(Decrypted_Data)
...