Назад | Перейти на главную страницу

http или https для загрузки файла?

Я собираюсь раздать файл людям после того, как они его купят. Я пытаюсь определить, следует ли использовать http или https для доставки фактического файла.

  1. Мой тарифный план с оплатой по факту использования. Будет ли полоса пропускания стоить дороже для https, так как она зашифрована? Пример: для файла размером 100 МБ будет использоваться более 100 МБ полосы пропускания?

  2. Я понимаю, что http быстрее, но это https аналогичный в скорости после всего начального рукопожатия сервера? (примечание: я использую CDN)

  3. Мой URL, предоставленный для загрузки файла, будет содержать подпись и т. Д., Чтобы убедиться, что только человек, который купил, может загрузить. Следует ли мне использовать https для защиты этой подписи?

  4. Если бы я использовал http, будет ли передаваемый файл защищен от хакеров?

Обратите внимание, я уже читал этот вопрос

Мой тарифный план с оплатой по факту использования. Будет ли полоса пропускания стоить дороже для https, так как она зашифрована? Пример: для файла размером 100 МБ будет использоваться более 100 МБ полосы пропускания?

Нет. Блочные или потоковые шифры, которые используются SSL / TLS для шифрования передаваемых данных, добавят, самое большее, несколько байтов к размеру передаваемого файла.

Я понимаю, что http быстрее, но похож ли https по скорости после всего первоначального рукопожатия сервера? (примечание: я использую CDN)

Да. Шифрование требует дополнительного процессорного времени на сервере и на клиенте, но на современных процессорах влияние довольно невелико. Пока ваш клиент и сервер не привязаны к ЦП, зашифрованная передача будет иметь примерно такую ​​же скорость, как и незашифрованная.

Мой URL-адрес, указанный для загрузки файла, будет содержать подпись и т. Д., Чтобы убедиться, что только человек, который купил, может загрузить. Следует ли мне использовать https для защиты этой подписи?

Да, посещаемый URL-адрес полностью защищен от клиента до сервера с помощью SSL / TLS - исключение состоит в том, что часть имени хоста URL-адреса не обязательно является безопасной, но в вашем случае это не должно быть проблемой . Пока клиентская система не скомпрометирована или не использует злонамеренный прокси-сервер, данные в безопасности при передаче.

Если бы я использовал http, будет ли передаваемый файл защищен от хакеров?

Нет. HTTP-трафик полностью открыт; любой, кто находится в том же сегменте сети, что и клиент, загружающий файл (или в ту же Wi-Fi кофейню), а также любой, у кого есть доступ к любой сетевой инфраструктуре между клиентом и сервером, может увидеть полный запрос и полный ответ. SSL также обеспечивает дополнительную уверенность для клиента в том, что система, к которой они подключаются, является той, о которой говорится, а не сервером потенциального злоумышленника. Если данные, передаваемые при загрузке, или URL-адрес для запроса загрузки являются конфиденциальными, зашифруйте их.

Итак, будет ли файл храниться на общем сайте где-то там, где он проиндексирован, или вы собираетесь использовать какой-то генератор авто-URL для публикации файла? Будет ли файл доступен анонимно или им нужно будет предоставить учетные данные?

Я бы сказал, если вы не уверены, используйте SSL на всякий случай, но поймите, какова основная цель SSL. Это для шифрования разговора (т.е. процесса передачи). Итак, если у вас есть пользователь, входящий в систему для загрузки этого файла, вам понадобится SSL, чтобы ваши учетные данные были безопасными. Если у вас есть файл, содержащий конфиденциальную информацию, используйте SSL для его защиты во время передачи. Знайте, что если у вас нет логина для этого файла, даже если у вас есть SSL для него, если кто-то вычеркнет URL-адрес, они смогут загрузить его без проблем.

И да, SSL защищает ваши данные от перехвата хакерами, но ничто не является безопасным на 100%.

  1. Да ... шифрование добавляет некоторые накладные расходы ... но обычно очень минимальные.
  2. HTTP работает быстрее, поскольку ему не нужно выполнять первоначальное рукопожатие ... но после этого ... соединение уже установлено, поэтому задержка такая же. (за вычетом минимального времени на шифрование / дешифрование)
  3. Не уверен, что вы имеете в виду на 100% ... Если вы имеете в виду, что собираетесь дать пользователям уникальный URL-адрес для загрузки файла ... каждый получит его через короткий промежуток времени. Простая попытка скрыть адрес вашего файла ничего не скроет. Если вы имеете в виду уникальное имя пользователя / пароль для каждого пользователя ... это, вероятно, хорошая идея. Если вы собираетесь использовать HTTPS ... рекомендуется завершить всю транзакцию через https, если у вас нет особой необходимости.
  4. HTTP отправляется открытым текстом. Ничто не может сделать это безопасным. Любой посередине может иметь полный доступ к вашему файлу. HTTPS может сделать это НАМНОГО более безопасным ... если все сделано правильно.

Мне очень неприятно это говорить, но вы действительно говорите, что понятия не имеете, что делаете ... Вам действительно следует нанять консультанта или компанию-разработчика, чтобы реализовать то, что вы делаете.