Временное хранение большого объёма данных
Здравствуйте! Помогите с проблемой: Делаю программу, которая занимается шифрованием данных. Для шифрования больших файлов, я использую прогрессивное шифрование, т. е. прочитал частичку файла и сразу зашифровал, потом ещё частичку и так далее. Но эти зашифрованные данные мне надо где-то накапливать. Если я делаю это прямо в переменной, то данные накапливаются в оперативной памяти компьютера и, конечно, таким образом браузер не сможет обработать достаточно большой файл. Отсюда вопрос:
Куда мне сохранять эти данные? В какой-нибудь session storage? |
Большой это сколько?
session storage тоже ограничена в размерах. Даже еще жестче, чем ОП современного компа. |
Цитата:
https://www.youtube.com/watch?v=g50esNW9bqk |
Цитата:
Если только использовать https://developer.mozilla.org/ru/doc...ry_Entries_API |
Цитата:
Как именно - показывают в самом видосе. Если его такое устроит - чем не метод! В любом другом случае именно большие данные никак в браузере, без сервера не обработать. Везде есть ограничения по размерам. |
Цитата:
Вопрос в размерах. Файлы по 50-70Мб я в браузере обрабатывал. И спокойно в памяти находились и исходный и обработанный. |
Цитата:
Значит и файл придется сохранять частями, т.к. "дописывать" этот "метод" (что на видосе) не умеет. Цитата:
В любом случае мне не понятно зачем большие объемы ворочить на клиенте... Пусть таким занимаются сервера, у них и "файловых возможностей" больше. |
Цитата:
Почему не на сервере? Когда человек загружает свой файл, он никак не может проверить, что с файлом происходит на сервере. Может, его там ещё и сохранят. А тут все происходит прозрачно, "на глазах" клиента |
MEGA так работает. Можешь погуглить статьи на тему того как там всё организовано.
|
Цитата:
Вроде не совсем страшный объем... |
Цитата:
|
Цитата:
|
Ну нет способа писать файл потоком. Только целиком.
Читать кусками еще можно, а писать в файл пользователя, кусками, ну никак не получится. Я смутно представляю, какую работу вы выполняете с этими файлами. Сначала читаете (откуда? с файловой системы пользователя?) Потом как то шифруете Потом сохраняете в файловой системе пользователя. Если не помещается он у вас целиком, то только кусками его писать Потом вам опять зачем то нужен в компе зашифрованный файл. Если он не помещается у вас в памяти, то и не поместится. Не придумали еще способа в стакан налить два стакана воды. |
Цитата:
Я-то думал что у тебя в памяти не помещаются данные в процессе работы... А у тебя не помещается даже сам итог. |
Сейчас задача стоит такая.
1. Считали файл с компьютера пользователя 2. Зашифровали (AES) 3. Скачали уже в зашифрованном виде Проблема в том, что файл не помещается в оперативной памяти. То есть его надо шифровать по частям и в каком-то хранилище, которое находится не в оперативной памяти, формировать из этих частей файл. А когда шифрование закончится, переместить (скачать) его из этого хранилища в условные загрузки. |
Цитата:
|
Цитата:
|
|
Цитата:
Цитата:
Пробуйте. Но обратите внимание, что это работает только если страница загружена по https. И работает только в Хрообразных браузерах. |
Часовой пояс GMT +3, время: 02:06. |