Искусство быть невидимым - стр. 51
Отчасти проблема SDES заключается в том, что ключ шифрования не передается по криптографическому протоколу SSL/TLS, обеспечивающему безопасную передачу данных. Если сторона не поддерживает SSL/TLS, то ключ отправляется в открытом виде. Вместо асимметричного шифрования используется симметричное шифрование, из чего следует, что генерируемый отправителем ключ необходимо каким-то образом сообщить получателю, чтобы тот мог дешифровать телефонное соединение.
Допустим, Боб хочет позвонить Элис, которая находится в Китае. IP-телефон Боба использует метод SDES для шифрования вызовов и сгенерировал новый ключ. Бобу нужно каким-то образом передать этот новый ключ Элис, чтобы ее устройство могло дешифровать телефонный вызов и разговор состоялся. SDES предлагает следующее решение: отправить ключ провайдеру Боба, который затем передаст его провайдеру Элис, который в свою очередь сообщит его самой Элис.
Вы видите слабое место? Помните, что говорилось о сквозном шифровании в предыдущей главе? Информация защищена до тех пор, пока получатель не примет ее со своей стороны. Но метод SDES предполагает, что ключ станет известен провайдеру Боба и, если его провайдер отличается от провайдера Элис, вызов будет зашифрован от провайдера Элис самой Элис. О значении этого разрыва можно спорить. Нечто подобное происходит и при общении через Skype или Google Voice. Новые ключи генерируются для каждого нового соединения, но эти ключи передаются в Microsoft и Google соответственно. Не слишком внушает доверие, если вам важно, чтобы беседа была приватной.
К счастью, существует возможность сквозного шифрования при пользовании IP-телефонией с мобильного телефона.
Компания Open Whisper Systems разработала приложение Signal, которое представляет собой бесплатную открытую систему IP-телефонии для мобильных телефонов. С его помощью пользователи Android и iOS получают возможность по-настоящему эффективно защитить телефонные переговоры с помощью сквозного шифрования.{55}
Главное преимущество приложения Signal – то, что ключами распоряжаются только тот, кто совершает вызов, и тот, кто его принимает, без участия каких-либо посредников. Иными словами, как и в ситуации с SDES, новые ключи генерируются для каждого вызова, но ключи существуют в единственном экземпляре и хранятся только на устройствах пользователей. Закон CALEA предоставляет правоохранительным органам доступ к информации по каждому конкретному соединению, но в этом случае они увидят лишь зашифрованный трафик, что совершенно неинформативно. А у разработчика приложения Signal, некоммерческой организации Open Whisper Systems, нет этих ключей, так что приходить к ним с судебным ордером бессмысленно. Ключи хранятся только на устройствах абонентов (совершающего вызов и принимающего его). По завершении соединения эти ключи уничтожаются.