Я использую Fernet из cryptography.fernet в Python 2.7 для расшифровки некоторых данных (большой список строк ~ 25k). Все нормально, когда я запускаю его локально (данные поступают точно так же, как они поступают), но когда я запускаю его в приложении-колбе в Heroku Scheduler, выдается ошибка InvalidToken.
Документация довольно загадочная (хаха). Он предлагает следующее объяснение:
cryptography.fernet.InvalidToken - если токен каким-либо образом недействителен,
это исключение поднято. Токен может быть недействительным для ряда
причины: он старше чем ттл, он уродлив или нет
иметь действующую подпись.
key1 = Fernet(environ.get('env1'))
key2 = Fernet(environ.get('env2'))
f = MultiFernet([key1, key2])
contents = f.decrypt(bytes(data))
Обычно мой список данных получается нормально, но на Heroku с теми же библиотеками криптографии и версией Python 2.7 он выдает InvalidToken, как я уже говорил выше.
Это проблема с нехваткой памяти в Heroku, следовательно, данные «искажены» при их усечении? Я на хобби Dyno. Не уверен, что еще это может быть. Заранее спасибо!