Задать вопрос
Ответы пользователя по тегу Python
  • Не выводить до этого сохранные пароли при перезаходе как решить?

    Artem_Dmit
    @Artem_Dmit
    Изучаю Python и наслаждаюсь процессом)
    Похожая проблема!
    Все храню в бинарном виде в БД постгрес,
    ключ один, его уже текстом вписал вместо переменной.
    Если зашифровать и сразу отправить на дешифровку переменную, все хорошо работает, но если это делать разными командами то ерор!

    from cryptography.fernet import Fernet
    from config.data import CRIPTO_KEY
    
    fernet = Fernet(b'xX8FN0tVdzXzgexIGQ9d51XMEIqnUiZQ2YSIohjCbFk=')
    
    
    async def encrypt(data: str) -> bytes:
        encrypted = fernet.encrypt(data.encode())
        return encrypted
    
    
    async def decrypt(encrypted_data: bytes) -> str:
        print('encrypted_data = ', encrypted_data)
        decrypted = fernet.decrypt(encrypted_data).decode()
        return decrypted


    вывод:
    encrypted_data =  b'gAAAAABmoB8uIq6bxP_NBAE5UIJBRkWHKPB4ddQepKN9vUNW5LaRQPW3YMJoc5QeeVsx5H48afLRjWPGDC3cXcr-VPRqm_S5sg=='


    ошибка:
    ... lib/python3.10/site-packages/cryptography/fernet.py", line 118, in _get_unverified_token_data
        raise InvalidToken
    cryptography.fernet.InvalidToken
    Ответ написан
    Комментировать