Почему все сайты должны работать по https (и не работать по http)

Существует два популярных протокола по которым работают сайты: это http — самое простое что только может быть и https — то же самое что http, но с шифрованием.

При использовании https сайт получает два профита:

(Вообще, еще бы очень хотелось чтобы была гарантия что ты общаешься именно с тем сайтом с которым думаешь что общаешься, но в случае https это, кажется, не то чтобы очень работает)

Нельзя прочитать

Совершенно понятна выгода для сайта использовать https если на сайте находится какая-то приватная информация пользователя.

Вот есть у меня, например, сайт на котором пользователи могут чатится друг с другом. Если сайт работает по http, то пользователь сидящий в кафешке с бесплатным WiFi подвержен угрозе что люди за соседним столиком уже скачали всю его переписку. Пользователю от этого станет плохо, он придет ко мне с вопросом "почему ты не обеспечил защиту моих данных?" и будет прав.

А при использовании https все замечательно — между пользователем и моим сайтом открывается защищенный канал в который никто не может влезть.

Нельзя изменить

А вот если у меня сайт на котором нет никакой секретной пользовательской информации. Например, у меня есть маленький новостной сайт. Все статьи доступны всему интернету, зачем мне ставить на сайт https?

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

А что может поменяться в коде? Ну, во первых в код сайта могут вставить вирусы и пользователь вместе с html страницей получит вирус. Но кроме этого есть и другая зараза, которая может поменять сайт моего сайта. Покажу на примере.

WiFi в московском метро

Мы живем в будущем. Роботы-пылесосы, машины без водителей, службы доставки уже почти используют радиоуправляемые вертолеты и в московском метро на некоторых ветках у нас WiFi.

Открываю я в метро один из моих любимых блогов и вижу:

ad_small

WTF? Сроду такого на этом сайте не было. Пошел смотреть. Рекламная ссылка ведет на http://maxima.wiflyad.net/update.js?id=1...:

ad_open_small

Так. Оказывается, это компания WiFly http://wiflyadnet.nethouse.ru, которая специализируется на том что вставляет рекламу в WiFi трафик.

Кстати, тысяча показов (CPM) у них продается по 1000 рублей без НДС (на сайте у них инфа только про питер, видимо еще не обновили сайт).

После этого я прочитал условия использования WiFi в метро и действительно, в EULA четко прописано что они имеют право вставлять рекламу:

eula_small

То есть получается замечательный бизнес — вставлять на чужие сайты свою рекламу и получать на этом деньги. (Кстати, интересно, насколько это законно).

Кстати с сайтом blogs.perl.org, на котором я впервые увидел рекламу еще все хорошо получилось — аккуратная реклама внизу страницы. А вот хабр, например, вообще не работает из-за этого кода — страница постоянно перезагружается.

Делаешь сайт, работаешь над ним, а кто-то минуя тебя зарабатывает на твоем творении деньги. Жуть.

А вот если бы сайт работал по https, то проблемы бы не было — нельзя просто взять и вставить рекламу в сайт, работающий по https.

Резюме

Сайт которым я занимаюсь по работе уже давно работает только по https.

Но я и свою домашнюю страничку ivan.bessarabov.ru тоже перевел на работу только через https — потому что я хочу чтобы пользователи моего сайта видели все так как я сделал, а не так как решили другие.

(Я купил SSL сертификат за $8 в год на сайте ssls.com, я и не знал что они уже такие дешевые).

Иван Бессарабов
ivan@bessarabov.ru

6 февраля 2014