Перейти к основному содержимому
Безопасность

Обработка PDF на стороне клиента: куда попадают ваши файлы

4 мин чтения

Обработка PDF на стороне клиента означает, что вся работа происходит внутри вкладки браузера: документ читается, изменяется и сохраняется на вашем собственном устройстве и не передаётся по сети. При обработке на стороне сервера файл отправляется на удалённый компьютер, который выполняет работу и возвращает результат.

ProPDF использует оба способа. В этом руководстве указано, какие инструменты работают тем или иным способом, что происходит с файлом, отправленным на сервер, что записывает сам сайт и как проверить запросы и хранилище браузера с помощью инструментов разработчика.

Как работает обработка в браузере

Когда вы открываете браузерный инструмент, сайт передаёт вашему браузеру нужный код, в том числе библиотеки с открытым исходным кодом, такие как pdf-lib, pdf.js и JSZip. Затем ваш файл считывается в память вкладки, обрабатывается там и возвращается вам в виде файла для скачивания.

Большинство результатов в формате PDF также остаются в памяти страницы, поэтому панель, которая появляется после скачивания, может передать результат в другой инструмент без повторного выбора файла. Перезагрузка или закрытие страницы очищает эту память.

У браузерных инструментов размер файла не ограничен: важна только память вашего устройства. Ждать загрузки на сервер тоже не нужно, поскольку файл никуда не отправляется.

13 инструментов, которые работают в браузере

Из 21 инструмента 13 обрабатывают файл на вашем устройстве и никуда его не отправляют:

  • Объединение и разделение: «Объединить PDF», «Разделить PDF» и «Извлечь страницы».
  • Компоновка страниц: «Организовать», «Повернуть PDF» и «Удалить страницы».
  • Изображения: «PDF в JPG», «PDF в PNG» и «JPG в PDF».
  • Пометки на странице: «Водяной знак», «Номера страниц» и «Подписать PDF».
  • Проверка: инструмент «Сравнить», который показывает два документа рядом.

8 инструментов, которые используют сервер

Остальные 8 инструментов отправляют ваш файл по HTTPS на сервер ProPDF в AWS, в регионе Париж (eu-west-3): «Сжать PDF», «PDF в Word», «Word в PDF», «Редактировать PDF», «Скрыть», «Защитить», «Разблокировать» и «Чат с PDF». Например, «Word в PDF» работает на базе LibreOffice на сервере, а чат опирается на Amazon Bedrock. Эти инструменты принимают файлы до 4 МБ, и вот что происходит с вашим файлом:

  • Он обрабатывается на сервере и удаляется сразу после завершения задачи. Копия не сохраняется.
  • Некоторые инструменты, например «Word в PDF», «Защитить» и «Разблокировать», во время работы используют временный файл на сервере, и этот файл тоже удаляется сразу после завершения задачи.
  • «Чат с PDF» хранит текст документа и переписку в вашей вкладке, которая отправляет их с каждым вопросом, чтобы можно было задавать уточняющие вопросы; после ответа сервер не хранит ни текст, ни переписку. Текст и ваши вопросы отправляются моделям Claude от Anthropic через Amazon Bedrock с европейским профилем инференса.
  • «Редактировать PDF» отправляет PDF размером до 4 МБ целиком при открытии и снова после каждого изменения, потому что определение и перезапись текста выполняются на сервере; более крупный PDF не отправляется, и к нему можно только добавить подписи.

Что записывает сам сайт

Сервер не хранит ни копий ваших файлов, ни их содержимого, и чат не исключение. С вашего согласия устанавливаются файлы cookie для измерения аудитории (Google Analytics), и вы можете в любой момент изменить свой выбор кнопкой «Управление cookies» внизу страницы. Рекламы нет.

Когда вы скачиваете результат, страница отправляет в Google Analytics событие скачивания: название инструмента, расширение и размер файла, но никогда не имя файла и не его содержимое.

Шрифты сайта загружаются из Google Fonts, поэтому ваш браузер также обращается к серверам шрифтов Google. В локальном хранилище вашего браузера собственный код сайта сохраняет не больше трёх настроек: тему, язык и ваш выбор в отношении файлов cookie.

Как проверить это самому

Инструменты разработчика в браузере показывают каждый запрос, который делает страница. Что происходит на сервере, они показать не могут, но то, что происходит в браузере, можно проверить четырьмя способами:

  1. Откройте инструменты разработчика (часто клавишей F12 или из меню браузера) и выберите вкладку «Сеть» (Network).
  2. Объедините два файла инструментом «Объединить PDF». Вы увидите запросы к собственным файлам сайта, его шрифтам и аналитике, но ни одного запроса, который передаёт ваши документы. Записи, которые начинаются с data: или blob:, являются копиями внутри страницы, а не загрузками на сервер.
  3. Теперь сожмите файл инструментом «Сжать PDF». На адрес, который содержит eu-west-3, уходит запрос POST, в теле которого находится ваш файл, закодированный как текст, а сжатый файл возвращается в ответе.
  4. Откройте вкладку «Приложение» (Application), а в Firefox вкладку «Хранилище» (Storage), затем раздел «Локальное хранилище» (Local Storage) для этого сайта. Сайт сохраняет там только небольшие настройки, такие как тема, язык и ваш выбор в отношении файлов cookie, и никогда не сохраняет документы.

Как выбрать инструмент для конфиденциального документа

Если вы хотите, чтобы документ оставался на вашем устройстве, используйте браузерный инструмент, когда он справляется с задачей: например, для подписи выбирайте «Подписать PDF», а не режим «Подпись» инструмента «Редактировать PDF».

Если для задачи нужен серверный инструмент, отправляйте только необходимое. Уберите страницы, которые не относятся к делу, инструментом «Удалить страницы» или оставьте только нужные с помощью инструмента «Извлечь страницы» (оба работают в браузере), а затем обработайте сокращённый файл. Одно ограничение: данные, общие для оставленных и остальных страниц, например вторая половина разворота из двух страниц, могут остаться в файле, хотя их не видно.

Каким бы инструментом вы ни пользовались, ваши файлы не хранятся: браузерные инструменты никуда их не отправляют, серверные инструменты удаляют их сразу после завершения задачи, и чат хранит текст документа и переписку в вашей вкладке, а не на сервере.