LINUX.ORG.RU

Почему нет протокола «всё по HTTP + чексуммы по HTTPS»?

 ,


1

2

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

Естественно, спрашивая «почему нет», я надеюсь получить ответ «да вот же, есть», чтобы затем поинтересоваться, почему оно не взлетело/упало. Просто любопытно.

Ответ на: комментарий от Deleted

Видимо он имеет ввиду снижение нагрузки на шифрование трафика, т.к. по хттп шифрования нет. Но он не учитывает увеличение самого трафика за счет дополнительных запросов чексумм по хттпс.

deep-purple ★★★★★
()
Ответ на: комментарий от Deleted

Да это не так страшно, чексуммы можно кешировать если файл не менялся. Но всеравно это велосипед.

deep-purple ★★★★★
()

Потому что нельзя в таком случае гарантировать, что автор этой статики действительно тот, за кого он себя выдаёт.

/thread

anonymous
()

ИМХО не хватает тега «хочется странного».

А динамический контент как отдаётся? Если по https, то не смущает передача реферера в открытом виде при запросе статики?

Radjah ★★★★★
()

почему оно не взлетело

Наверно потому, что не нашлось достаточно маргиналов, которым нужна аутентичность без конфиденциальности.

ArcFi
()

Есть такое, в самом TLS. Гугли по NULL cipher - шифрования нет, а HMAC считается.

Vovka-Korovka ★★★★★
()
Последнее исправление: Vovka-Korovka (всего исправлений: 1)

TLS такое умеет, с аутентификацией (или без) и с проверкой целостности, но без шифрования

но возможно браузеры будут ругаться

Harald ★★★★★
()
Ответ на: комментарий от deep-purple

Видимо он имеет ввиду снижение нагрузки на шифрование трафика

И какова эта нагрузка? Современные шифры очень быстры.

Но он не учитывает увеличение самого трафика за счет дополнительных запросов чексумм по хттпс.

Автор сказал фигню, но ничего не мешает по HTTP отдавать цифровую подпись для этого файла. В принципе реализация тривиальная. Но, подозреваю, никому такое не нужно, ибо проблема реально не стоит (ну или, как уже сказали, NULL-шифрование, хотя не уверен, что браузеры такое проглотят).

Legioner ★★★★★
()
Ответ на: комментарий от anonymous

Потому что нельзя в таком случае гарантировать, что автор этой статики действительно тот, за кого он себя выдаёт.

Можно.

Vovka-Korovka ★★★★★
()
Ответ на: комментарий от Legioner

ну или, как уже сказали, NULL-шифрование, хотя не уверен, что браузеры такое проглотят

В Firefox выкинули поддержку, в Chromium никогда не было, в Internet Explorer есть, но по умолчанию выключено.

Vovka-Korovka ★★★★★
()

Просто любопытно.

Всё должно шифроваться. Без вариантов.

th3m3 ★★★★★
()
Ответ на: комментарий от redgremlin

У тебя сначала идет аутентификация через RSA/ECDSA, в ходе которой генерируется общий ключ между клиентом и сервером, а позже этим общим ключем сервер подписывает данные, а клиент проверяет.

Vovka-Korovka ★★★★★
()
Ответ на: комментарий от mix_mix

Не понял. Чексумма, а точнее HMAC в любом варианте TLS идет открытым видом. Вот только сгенерировать/проверить ее могут только две стороны, установившие соединение.

Vovka-Korovka ★★★★★
()

Есть такой протокол. Называется TLS с шифрсьютом TLS_RSA_WITH_NULL_SHA.

Не взлетело потому, что на фиг никому не нужно.

ivlad ★★★★★
()

Шифруют не для аутентичности содержимого. Наоборот, последнее лишь средство обеспечения секретности ключа для первого. А ещё мне рассказали, что в доSSLные времена было нечто с названием s-http, ближе к тому, что ты хочешь. Не взлетело.

DonkeyHot ★★★★★
()

Почему нет протокола «всё по HTTP + чексуммы по HTTPS»?

Потому что отдельный протокол не нужен. Те кому надо просто грузят статику через HTTP, но потом проверяют хэш загруженного.

o-
()

То есть я при активном MiTM могу дождаться первого обновления безопасности и тупо повторять ответ сервера до него? Или даже без всякого ожидания просто подсунуть клиенту старую версию любого софта с любыми давно исправленными уязвимостями просто потому, что оно давно подписано?

x3al ★★★★★
()

У элементов «img», «script» и «link» в HTML5 есть атрибут «integrity». Можешь подтягивать их хоть по http, если подпись не совпадёт, элемент отрендерен не будет. Зачем здесь протокол?

MadDeer
()

Дамаю так: был проверенный отлаженный удобный http. Его просто взяли и засунули внутрь ssl-соединения. При этом внутри ssl это обычный http и есть. Не пришлось изобретать никакого нового протокола, не пришлось менять существующий. Очень удобно. Есть конечно оверхед, но зато удобство и универсальность.

rumgot ★★★★★
()
Ответ на: комментарий от MadDeer

Крутота! А браузер не ругается, если src указан http-шный, но на https-странице, но с integrity? Если не ругается, то классно, я именно это и имел в виду, когда вопрос задавал.

greatperson
() автор топика
Последнее исправление: greatperson (всего исправлений: 1)
Ответ на: комментарий от greatperson

А браузер не ругается, если src указан http-шный

Сам аттрибут никак не влияет на дефолтное поведение браузера. В Firefox 50 все скрипты по HTTP блокируются, например. В 45 замок возле адресной строки перечёркнут и при нажатии на него сообщение о том, что некоторые элементы страницы небезопасны. Можешь проверить тут: https://lormaddeer.github.io/.

И да, в предыдущем сообщении поспешил, img пока такого атрибута не имеет, только link и script. В будущем обещают поддержку всех возможных типов ресурсов: a, audio, embed, iframe, img, link, object, script, source, track, video.

MadDeer
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.