Шифрование данных в файле txt с помощью AES в django

я хочу зашифровать данные, которые находятся в файле, который я загрузил. но когда я читаю данные, открытый текст говорит, что их нет (я вызвал эту функцию в func encrypt), но когда я вызвал эту функцию в homepage, она работает хорошо (может читать данные). я не знаю, что не так. пожалуйста, помогите мне зашифровать данные в файле txt, который я загрузил.

вот мой код:

def read_file(f):
    f = open('media/txt/'+f, 'r')
    f.read()
    f.tell()
    f.seek(0)
    file_content = f.read()
    f.close()
    print(file_content)

key_bytes = 16

# here's a rudimentary change that accepts bytes or
# str
def encrypt(key, pt):
    plaintext = read_file(pt)
    # plaintext = plaintext[0]
    # if isinstance(plaintext, str):
    #     pt= plaintext.encode("utf-8")

    print(plaintext)
    assert len(key) == key_bytes
    # Choose a random, 16-byte IV.
    iv = Random.new().read(AES.block_size)

    # Convert the IV to a Python integer.
    iv_int = int(binascii.hexlify(iv), 16)

    # Create a new Counter object with IV = iv_int.
    ctr = Counter.new(AES.block_size * 8, initial_value=iv_int)

    # Create AES-CTR cipher.
    aes = AES.new(key.encode('utf8'), AES.MODE_CTR, counter=ctr)

    # Encrypt and return IV and ciphertext.
    ciphertext = aes.encrypt(plaintext)
    print(ciphertext)
    return (iv, ciphertext)
Вернуться на верх