суббота, 31 мая 2014 г.

HTTPS is evil

HTTPS зло. Это утверждает Брюс Шнайер и я с ним полностью согласен.

Знаете, что может быть хуже реальной опасности? Иллюзия безопасности.

За последние 20 лет SSL/HTTPS прошел большой путь от чисто академической разработки до повсеместного применения. 

Теперь хомяки видят в адресной строке браузера замочек и успокаиваются - "АНБ но пасаран, хацкеры но пасаран":


Вы так думаете, золотые мои? Вы правда думаете, что ваши данные в полной безопасности?

У меня для вас очень плохие новости, мои мохнатые друзья.

Вы не в безопасности. Это вам лишь кажется.

Позвольте вам кое-что объяснить языком телепередач.

Вы знаете, как это устроено и работает?

Да, ваше соединение чем-то зашифровано. 

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

Да, ваше соединение кем-то удостоверено. 

Третьей стороной. Которую вы никогда не видели, не увидите, и которая мамой клянется, что никому - слышите, никому третьему! - не даст ключей к вашей переписке/каналу/банковским данным/паролям/трафику.

И мы как бы верим, правда? Нам же надо верить во что-то, пусть даже в бога?

Ошибочка, мои золотые.

Хотя несимметричная криптография, лежащая в основе SSL/HTTPS является довольно сносной защитой, и даже позволяет с приличной степенью надежности выполнять аутентификацию, проблема не в ней, а в том, как она используется.

Принцип этого использования следующий.

Алиса хочет приватно писать Бобу. Но она лично с ним не знакома. Однако оба, Алиса и Боб, знают (или думают, что знают) - некоего Джона, который является адвокатом-юристом-нотариусом. И который готов - за скромную плату - удостоверить личности Алисы и Боба друг другу.

Мало того, этот Джон готов - мамой клянусь, что я честный адвокат! - запечатать письма Алисы и Боба друг другу своей печатью, гарантирующей - мамой клянусь! - неприкосновенность переписки Алисы и Боба третьим лицам:

-Ребята, - говорит Джон - благодаря моим личным связям с Теми, Кому Надо, я могу гарантировать, что письма с моей печатью не будут вскрываться, когда правительственные или прочие агенты будут грабить корованы^Wофициально досматривать почтальонов.

Еще не смешно, нет?

Беда лишь в том, что за небольшую, весьма скромную плату, Джон может изготовить вторую печать, как две капли воды похожую на его личную, и вручить ее - за небольшую, весьма символическую, плату - правительственным или прочим агентам, дабы они могли запечатать вскрытое письмо после досмотра и не вызвать подозрений ни у Алисы, ни у Боба.

Ну так вот. Именно так оно и работает.

Сомневаетесь? Посмотрите, какая самая читаемая статья в этом блоге:



Это означает, что любопытных мальчуганов Хочу-Все-Знать-И-Чтобы-Жертва-Ничего-Не-Узнала даже не рожают - их просто мечут, как икру.

И, самое веселое - технология это вполне себе позволяет.

Перевожу на язык телепередач - КТО УГОДНО в вашем офисе или в вашем провайдере интернет может стоять посредине, расшифровывать ваш зашифрованный трафик, читать его, снова зашифровывать - в обеих направлениях - и ВЫ НИЧЕГО ДАЖЕ НЕ УЗНАЕТЕ.

Знаете, в чем проблема? Говоря умными словами - если в секретной переписке есть третье лицо - там может быть и четвертое, и пятое, и сколько угодно еще.

Перефразируя известную немецкую поговорку - "Что знают трое - то знает и свинья".

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

Только вот с правом на охрану частной жизни это не имеет ничего общего. Как я сказал в предыдущей статье, because we can.

Итак, есть Алиса, есть Боб, есть Джон.

Алиса и Боб передают свои ключи от переписки Джону, Джон удостоверяет их подписями и печатями. И Алиса с Бобом пребывают в блаженном неведении, что их переписка в надежных руках.

Ровно до тех пор, пока Джон, по соображениям высшего порядка, своей же подписью и печатью не удостоверяет ключи Алана, который получает возможность бесконтрольно расшифровывать сообщения Алисы Бобу и наоборот, ничем не выдавая своего присутствия.

Любое ружье рано или поздно выстрелит. Предлог будет самый благовидный - найти его труда не составляет, одурачить непрофессионала - еще легче. 

Вы же честные люди, не правда ли? Вам нечего скрывать - ни пароля к вашему интернет-банкингу, ни паролей к вашим социалочкам, ни номеров и пин-кодов ваших кредитных карт, и номера ваших  телефонов с адресами регулярно публикуются в местных газетах? Да-да, и жене вы каждый месяц с честным лицом передаете распечатки своих сотовых звонков и смс, с письменным пояснением, кто имеет тот или иной номер, правда?

Какую программу вы - лично вы - используете чаще всего? Бьюсь об заклад - это браузер.

Браузеры поднимают хай, если получают самоподписной сертификат SSL. Все. До единого. "Небезопасно! Валим отсюда! Та сторона не удостоверена Мамой-Клянусь-Джоном!"

А теперь слушайте сюда, мои золотые.

Брюс еще 20 лет назад сказал (вольный перевод) - "Только если Алиса и Боб ЛИЧНО обменялись своими ключами к переписке, зная друг друга ЛИЧНО, и ЛИЧНО удостоверили ключи друг друга - лишь в этом случае они могут быть уверены в конфиденциальности и аутентичности своей переписки".

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

С самоподписным сертификатом, созданным по всем правилам, вы можете связаться с тем, кто его выпустил по телефону (например) или электронной почте и удостовериться, что это именно тот человек и тот самый самый сертификат, с именно тем самым дайджестом, который выпустил тот самый Джек. Прежде, чем вы его примете.

В этой ситуации каждый выпустивший такой сертификат сам себе Джон и вы можете принять сертификат или отказаться от него. Вы решаете. Не адвокат Джон из Нотариальной Конторы Имени DigiNotar или Национального Удостоверяющего Центра Республики Гурундувайю.

Намек ясен?

Потому что есть огромные (и обоснованные!) сомнения в надежности третьей заочно доверяемой стороны - кем бы она ни была, хоть собственным правительством! (особенно если это правительство!)

Хотите хоть какой-то приватности и защиты - ничего лучше PGP (использующей, кстати говоря, точно ту же технологию, что и SSL - однако подчиненную совершенно иной парадигме) по сей день не придумали.

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

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

Которые есть у всякого человека. Если он не полный идиот. И живет не в мире эльфов.

PS. А вы, господа правоохранители - хорош уже получать везде и всюду читерские преимущества. Учитесь работать в рамках конституционных прав граждан. Потому что в вашей честности и чистоте помыслов мы сомневаемся. А также потому, что ни из каких законов не должно быть исключений . Ни для кого. Раз уж это законы. А конституция - основной закон.

Я понятно выражаюсь?