Криптография каждый день
Веб
Почти любое соединение с сайтом или сервисом в сети интернет происходит на фоне интенсивного обмена зашифрованными данными, открытыми ключами, сертификатами, множественными запросами и ответами на них. Вся эта бурная деятельность не видна глазу, но очень важна и скрывает в себе сложные криптографические процессы.
Имя этим процессам – протокол TLS. Когда пользователь в браузере вводит адрес или нажимает на ссылку, то с помощью одних протоколов нужный сайт находится, другие устанавливают связь, а TLS обеспечивает проверку подлинности сайта и безопасное соединение. Такое, при котором данные, пересылаемые между сервером и браузером, не может прочитать или подменить посторонний.
Здесь задействованы многие криптографические алгоритмы. Перед тем как начать получение или пересылку данных, сервер предоставляет браузеру TLS-сертификат сайта. Этот виртуальный документ подтверждает, что адрес, к которому обратился пользователь, подлинный.
Браузер и сервер обмениваются открытыми ключами (это, как было рассказано в предыдущей статье, асимметричное шифрование). Дальше при помощи открытых ключей происходит шифрование и передача секретных ключей для последующего симметричного шифрования.
TLS – это современная версия протокола SSL, который был разработан еще командой Netscape. SSL из-за своих проблем с безопасностью подвергся нескольким ревизиям и в конце концов был заменен на современный TLS.
Сертификаты SSL или TLS, которые получают владельцы сайтов, выдают специальные центры идентификации. Они же и подтверждают подлинность этих цифровых документов при каждом обращении браузера к новому адресу, защищенному TLS. Наверное, «выдают» – это не самое правильное слово, ведь бесплатных сертификатов практически не бывает – их продают.
Пиктограмма замка, которая появляется около адресной строки браузера, – это подтверждение безопасного соединения. Соединения, устанавливаемого по протоколу HTTPS и защищенного протоколом TLS. При использовании систем мгновенного обмена сообщениями, почтовых, платежных и других сервисов происходят похожие процессы с применением этих технологий.
Сотовая связь GSM
В сетях стандарта GSM она решается многоступенчатой системой обмена данными между аппаратом абонента (сотовым телефоном) и базовой станцией оператора связи: запросов и подтверждений, вычислений хеша и сравнения результатов этих расчетов, передачи зашифрованных данных в обе стороны.
Нужно заметить, что, согласно результатам проверок специалистов – исследователей систем безопасности, старая добрая сеть GSM второго поколения справляется с этой задачей посредственно.
При появлении незарегистрированного сотового телефона в зоне действия мобильной сети аппарат пользователя посылает базовой станции оператора особый идентификационный код. Но сотовая сеть еще не может «доверять» новому абоненту, поэтому запускается процесс проверки. На стороне оператора генерируется случайное число и отправляется мобильному телефону.
Теперь и на базовой станции, и на аппарате пользователя происходит преобразование этого числа по специальному алгоритму с применением одинакового секретного ключа. Сотовый телефон отправляет результат вычисления на станцию оператора, а там это значение сравнивается с результатом собственного расчета. Если значения равны, базовая станция принимает аппарат абонента в сеть и считает его прошедшим проверку.
Но процесс шифрования на этом не заканчивается: и на стороне оператора, и в сотовом телефоне при помощи того же секретного ключа, который участвовал в проверке, вырабатывается новый ключ. Этот ключ будет использоваться только в течение данного сеанса работы телефона в сотовой сети.
Первоначальный и самый важный секретный ключ хранится в сим-карте мобильного аппарата и у оператора связи. Преобразование случайного числа, описанное выше, – это известная читателям по предыдущей статье функция хеширования.
Карты с чипом: банковские, идентификационные, для доступа к сервисам
Видов, форматов, стандартов и способов применения немало. Как правило, в таких картах находится чип – микросхема, в которой «спрятан» полноценный компьютер. Он может хранить информацию, проводить вычисления, принимать и передавать данные – быстро, надежно, безопасно.
Криптография в этих процессах используется на разных этапах и с разными целями. Карта может хранить секретный ключ, который считывают терминалы. Процессор, запаянный в тонкий кусок пластика, способен сам проводить вычисления, обмениваясь их результатами с разными устройствами. В карте может содержаться в зашифрованном виде документ, идентифицирующий владельца, ключи и сертификаты, часть алгоритма дешифровки, даже некоторые суммы денег в электронном виде.
Например, в сервисах спутникового телевидения в процессорном устройстве карты, которая дает доступ к платным каналам оператора, кроме идентификации владельца происходит дешифровка сигнала, поступающего от спутниковой антенны через ресивер к телевизору.
Другой пример. Во время проведения бесконтактной оплаты беспроводной канал связи криптографически защищается: чип карты обменивается с терминалом открытыми и закрытыми ключами, которые действуют только во время сеанса, связь с банком тоже происходит с помощью зашифрованных протоколов.
Дома
Чтобы оказаться в окружении криптографических технологий, не надо идти к банкомату, звонить кому-то по мобильному телефону или пытаться пройти в охраняемую зону по карте-пропуску. Беспроводные сети, такие как Wi-Fi и Bluetooth, присутствующие практически в любых жилищах, используют шифрование для того, чтобы оградить доступ от посторонних и обеспечить конфиденциальность своих участников.
Устройства «умного дома», которых становится все больше с каждым днем, связываются с серверами с использованием криптографических алгоритмов. Симметричные и асимметричные методы, открытые и закрытые ключи, хеширование и сравнение хешей – бурный обмен шифрованными сообщениями скрыт от глаз, но является важной частью большинства современных технологий.
Для личного пользования
Pretty Good Privacy, или PGP, – это программное решение для защиты личных данных при использовании электронных устройств. Филипп Циммерман разработал PGP еще в 1991 году, когда осознал приближение времени, когда любая информация, связанная с идентичностью человека в сети, окажется под угрозой.
Его детище – это комплекс криптографических методов, о многих из которых было рассказано в этой статье и в предыдущей. В PGP используется хеширование, симметричные и асимметричные алгоритмы, а также задействована доверенная сеть сертификатов, подтверждающих личность отправителя. В наше время, по прошествии уже почти 20 лет, многие из методов, применяемых в PGP, уже подходят к точке, в которой их надежность и удобство могут быть оспорены.
Но это проблема многих криптографических систем – компьютеры становятся все более мощными, исследования криптоаналитиков открывают все более изощренные методы взлома. Успокаивает то, что для вскрытия и расшифровки защищенных криптографическими программами данных все еще нужны огромные вычислительные мощности.
Криптовалюты и блокчейн
Хеширование – это одна из основ технологии большинства блокчейн-проектов. Например, в биткоине, в его механизме консенсуса и защиты сети майнеры рассчитывают хеш, выполняя задание системы. Записи о транзакциях и содержимом предыдущих блоков записываются в новые блоки тоже в виде хеша. Участники сети, обладающие определенными суммами биткоинов, получают доступ к своим средствам, используя асимметричное шифрование: секретный ключ есть у хозяина, а открытый он использует для подписи своих транзакций.
Порядок и безопасность
Мы живем в цифровом мире, состоящем из множества сетей, управляемых интеллектуальными компьютерными системами. Растет и ширится парк электронных приборов, подключенных к этим сетям и обращающихся к серверам. Не видно никаких предпосылок для остановки или хотя бы замедления этого процесса. Криптография – это способ сохранить порядок, защититься от злоумышленников и сберечь конфиденциальность в нашем сложном мире.
Иллюстрация: блог Medium