Как создать файл txt и загрузить его с помощью html в django

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

вот мой код шифрования:

def encrypt(key, pt):
    plaintext = read_file(pt)
    if isinstance(plaintext, str):
        pt= plaintext.encode("utf-8")

    print(pt)

    if len(key) <= key_bytes:
        for x in range(len(key),key_bytes):
            key = key + "0"
            print(key)

    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(pt)
    print(ciphertext)
    return (iv, ciphertext)

#what i want to keep in new file is ciphertext

и вот как я вызвал эту функцию:

def homepage(request):
    form = AudioForm()
    if request.method == "POST":
        form = AudioForm(request.POST, request.FILES)
        if form.is_valid():
            form.save()
            last_audio = Audio_store.objects.all().last()
            plaintext = Audio_store.objects.all().values_list('password').last()
            key = Audio_store.objects.all().values_list('key').last()
            pt = plaintext[0]
            ky = key[0]
            print(pt)
            print(ky)
            context={'form':form, 'last_audio':last_audio}
            encrypt(ky, pt)
            return render(request, "homepage.html", context)

    context={'form':form}
    return render(request, "homepage.html", context=context)
Вернуться на верх