Знакомьтесь: Уит Диффи – человек, который изобрёл криптографию с открытым ключом и вывел шифрование в массы.
В новой книге ветерана технической журналистики Стивена Леви «Facebook: история изнутри» рассказывается о том, как Марк Цукерберг превратил родившийся в университетском общежитии безвкусный эксперимент в крупнейшую в мире социальную сеть. В честь этой публикации мы решили поделиться отрывком из старой книги Леви «Крипто» о человеке, двигавшемся в направлении, противоположном эксплуатации данных и нарушениям конфиденциальности, характерным для Facebook. Это история об Уите Диффи, кто стоит у истоков наших взглядов на шифрование и кто проложил путь к той цифровой безопасности, которая известна нам сегодня.
Бейли Уитфилд Диффи, родившийся 5 июня 1944 г., всегда отличался независимостью. Как отметил один его друг детства: «У него уже в пять лет был альтернативный образ жизни». До 10 лет Диффи совсем не читал. И дело было не в задержке развития: он просто предпочитал, чтобы ему читали родители, – и они это делали весьма терпеливо. Наконец, в пятом классе Диффи вдруг прочитал книгу под названием «Космический кот», после чего принялся за «Волшебника страны Оз».
В том же году школьная учительница («Её звали Мэри Коллинз, и если она всё ещё жива, я хотел бы её найти», – говорил Диффи спустя десятилетия) провела целый вечер, объясняя ему то, что осталось с ним надолго: основы криптографии.
Криптография показалась Диффи увлекательным заговорщическим способом общения. Её пользователи стремятся хранить секреты в мире любопытных глаз. Отправитель преображает частное сообщение с помощью своего рода таинственного языка: шифрования. Как только сообщение превратилось в непонятную абракадабру, планы потенциальных перехватчиков сорваны. Превратить бессмыслицу обратно в изначальное сообщение могут лишь те, кому известны соответствующие правила: это называется дешифрование. Те, кто пытается расшифровать сообщения, не имея секретных «ключей», практикуют «криптоанализ».
Хотя Диффи хорошо учился в школе, он никогда не выкладывался на полную. Однако высокие результаты экзаменов позволили ему в 1961 г. поступить в Массачусетский технологический институт (МТИ) на математический факультет. Он также стал изучать компьютерное программирование – поначалу, как говорит Диффи теперь, чтобы избежать призыва. Диффи взяли на работу в Mitre Corporation, чьи сотрудники, поскольку компания выполняла заказы для министерства обороны, освобождались от службы в армии.
Установка логотипа Mitre Corporation в 1964 году. : mitre.org
Команде Диффи не нужно было работать в офисе Mitre, но в 1966 г. он стал приглашённым сотрудником лаборатории искусственного интеллекта Марвина Минского в МТИ. В лаборатории ИИ информация считалась такой же доступной, как воздух. В операционной системе, написанной кудесниками из МТИ, не было никакой программной защиты.
Однако Диффи, в отличие от своих коллег, считал, что технологии должны давать чувство конфиденциальности. Диффи часто вёл со своим руководителем, математиком Роландом Силвером беседы о безопасности. В их дискуссиях неизбежно всплывала криптография.
Силвер имел кое-какие познания в этой области и объяснял, что ведётся много работы – за высокими стенами, возведёнными правительственными разведывательными службами. Диффи это возмущало. «Криптография критически важна для конфиденциальности человека!» – кричал он Силверу. Возможно, считал он, исследователям-энтузиастам из гражданского сектора стоит попытаться освободить эту тему. «Если мы сосредоточимся на этом, – говорил он Силверу, – то сможем самостоятельно найти много из этого материала».
Силвер был настроен скептически. «В АНБ работает много умных людей», – сказал он, имея в виду Агентство национальной безопасности – американский правительственный оплот криптографии. Созданное осенью 1952 г. сверхсекретным указом президента Трумэна, АНБ было организацией с миллиардами долларов финансирования, всецело действовавшей в «чёрном» секторе правительства, о котором могли знать лишь те, кто был способен доказать свою «необходимость знания». В начале 1970-х это публично не обсуждалось. Для непричастных к правительству такого агентства не существовало.
В 1969 г., когда финансирование его разработок прекратилось, Диффи наконец ушёл из Mitre. Вместе со своей девушкой он переехал на Запад и нашёл работу в Стэнфордской лаборатории ИИ Джона Маккарти, где он стал всё больше задумываться о конфиденциальности. Здесь он познакомился с доцентом электротехники Мартином Хеллманом.
Уит Диффи и Мартин Хелман в 2015 году. : Flickr
Мартин Хеллман родился и вырос в Нью-Йорке и получил докторскую степень в Стэнфорде в 1969 г. Первым его местом работы стал исследовательский отдел IBM, где он серьёзно заинтересовался криптографией. Уйдя в 1970 г. из IBM, он согласился на место доцента в МТИ, где криптография стала основным предметом его исследований. Вскоре после этого он перешёл в Стэнфорд. Он противился соблазну делать то, что делало большинство учёных в его области: работать в пределах рамок, установленных АНБ. Опубликовав свою первую статью по криптографии, он не знал, куда двигаться дальше. И вот тут-то появился Уит Диффи. «То была встреча умов», – говорит Хеллман. Диффи и Хеллман твёрдо верили, что появление цифровых коммуникаций делало коммерческую криптографию абсолютно необходимой. Хеллман нанял Диффи в качестве внештатного научного сотрудника.
В марте 1975 г. стэнфордский дуэт поразил сухой правительственный документ. То была публикация Национального бюро стандартов в издании Federal Register, предлагавшая нечто такое, что редко затрагивалось в публичной литературе: новый алгоритм шифрования, появившийся в результате сотрудничества правительства с IBM, под названием Data Encryption Standard, или DES.
Хотя Уит Диффи и Мартин Хеллман считали DES непригодным и потенциально обманным ходом IBM и американского правительства, его представление странным образом оказалось для стэнфордских исследователей важным подарком. Благодаря анализу доступных технических данных предложенного стандарта и спекуляциям насчёт того, что осталось нераскрытым, Диффи и Хеллман смогли по-новому взглянуть на собственные наработки. Ещё впервые услышав о правительственном стандарте в 1974 г. в китайском ресторане Louie’s, где собирались стэнфордские гики, Диффи задумался о возможности бэкдора АНБ. Это привело его к более глубоким размышлениям о концепции бэкдоров. Не могла ли вся эта криптографическая схема быть построена на бэкдоре?
Создание такой системы должно было представлять значительные вызовы, потому что нужно было разрешить одно фундаментальное противоречие. Бэкдор предоставляет тем, у кого есть необходимые знания, способ обойти меры безопасности и получить быстрый доступ к зашифрованным сообщениям, что кажется эффективным. Но сама мысль об использовании бэкдора в системе безопасности кажется сумасшедшим риском именно потому, что изощрённые злоумышленники могут найти способ им воспользоваться. Такую же проблему представляет тайный люк: если твои враги не смогут его найти, то он позволит тебе спрятаться. Но если они его найдут, то будут знать, где тебя искать.
Это противоречие делало перспективу существования бэкдора невероятно пугающей. В конце концов, сильнейшие криптографические системы оттачиваются во всех отношениях, чтобы предотвратить утечку содержимого. Вмешательство в их внутренние механизмы, чтобы вставить бэкдор – лазейку! – запросто может привести к любому количеству непредусмотренных уязвимостей. Когда Диффи объяснил это Хеллману, они пришли к выводу, что такая система, по-видимому, будет непрактичной. Но Диффи всё же считал это достаточно интересным, чтобы включить в свой список под заголовком «Проблемы для амбициозной теории криптографии».
Однажды Диффи и Хеллман пригласили на один из неформальных семинаров по криптографии, которые они проводили в университетском городке, специалиста по компьютерным наукам из Беркли Питера Блатмана. Впоследствии Блатман упомянул, что его друг работает над интересной задачей: как возможно безопасное общение по незащищённой линии, если его участники ранее не контактировали? Очевидно, что если люди раньше не знали друг друга, то у них не было возможности перед частной беседой обменяться секретными ключами.
В сущности, это была другая формулировка большого вопроса, многие годы не дававшего Диффи покоя: возможно ли с помощью криптографии защитить огромную сеть от прослушивания и перехвата?
Как создать систему, где люди, никогда не встречавшиеся, могли бы безопасно общаться, где все разговоры проводились бы с высокотехнологичной эффективностью, но были бы защищены криптографией, где можно было бы получить электронное сообщение и быть уверенным, что оно пришло от того, чей обратный адрес отображается?
В ходе своих поисков Диффи пытался собрать информацию в условиях, когда почти всё было засекречено. И он обнаружил больше, чем можно было ожидать: односторонние функции, парольная защита, опознавание «свой-чужой», бэкдоры. Где-то среди всего этого должен был скрываться ответ о конфиденциальности. Диффи знал, что для его поисков важно сочетание разных типов защиты, предлагаемых этими различными системами.
И однажды всё стало ясно: надо разработать систему, которая могла бы не только предоставить все составляющие придуманной Диффи схемы односторонней аутентификации, но также обеспечить новый подход к шифрованию и дешифрованию. Так можно будет решить проблему ненадёжного администратора и многое, многое другое.
Нужно разделить ключ
: Unsplash
Новаторство Диффи включало то, что в контексте истории криптографии казалось совершенной ересью: открытый ключ. До этого в шифровании существовал набор непреложных правил – виртуальная догма, пренебрегая которой ты обрекал себя на криптографический ад. Одним таким правилом было то, что расшифровывать сообщение должен тот же ключ, который его зашифровал. Поэтому ключи назывались симметричными.
И именно поэтому было так трудно сохранить ключи в тайне: ключи дешифрования, которые так интересовали перехватчиков, передавались от человека к человеку и тогда существовали в двух местах, что существенно повышало вероятность утечки. Но Диффи, на протяжении половины десятилетия по крупицам собиравший и анализировавший информацию, теперь придумал новый подход. Вместо того чтобы использовать один секретный ключ, можно использовать пару ключей. Проверенный временем симметричный ключ можно заменить динамичной парой. Один ключ будет выполнять задачу шифрования сообщения, не позволяющего прочитать его посторонним, но в сообщение будет встраиваться секретный бэкдор. Другой ключ будет служить отмычкой для этого бэкдора, позволяющей прочитать сообщение. И вот в чём красота такой схемы: да, этот второй ключ – открывающий бэкдор – надо хранить под замком, подальше от потенциальных перехватчиков. Но другой ключ, выполняющий шифрование, не должен быть секретным. Он может быть доступен любому.
Идея обеспечения конфиденциальности с помощью ключей, обмен которыми происходит полностью открыто, может показаться странной и нелогичной. Но односторонние математические функции позволяют воплотить её на практике. И Диффи понял это в одном из своих озарений.
Это и был ответ. С того момента в мире криптографии всё перевернулось с ног на голову.
Прежде всего, представив альтернативу системам, работавшим с одним, симметричным ключом, Диффи решил проблему, которая настолько укоренилась в криптографических системах, что почти никому не приходило в голову, что её можно решить: сложность передачи секретных ключей будущим получателям секретных сообщений. Если вы военная организация, то, возможно, вы способны защитить центры распределения, управляющие симметричными ключами (хотя упущения случались даже в самых критических операциях). Но если такие центры перейдут в частный сектор и ими понадобится пользоваться множеству людей, будут не только неизбежные бюрократические препятствия, но также постоянная угроза утечек. Подумайте вот о чём: если вам нужно расшифровать сообщение, не будет ли само существование места, где хранятся все секретные ключи, предоставлять благоприятную возможность, чтобы заполучить ключи с помощью кражи, подкупа или какого-то иного рода принуждения?
Но в системе с открытым ключом каждый может сгенерировать собственную уникальную пару ключей, состоящую из открытого (публичного) и закрытого (приватного) ключа, и посторонние не смогут получить доступа к секретной части пары. Тогда возможно начало частной коммуникации.
Вот как это будет работать. Допустим, Алисе нужно пообщаться с Бобом. Если использовать концепцию Диффи, ей нужен только открытый ключ Боба. Она может спросить о нём Боба или найти его в каком-нибудь каталоге открытых ключей. Но это должен быть личный открытый ключ Боба – очень сильная строка битов, которую мог сгенерировать только один человек в мире: Боб. Затем, посредством односторонней функции, Алиса с помощью этого открытого ключа шифрует сообщение так, что расшифровать его может только закрытый ключ – другая часть уникальной пары ключей.
(Таким образом, секретный ключ – это «бэкдор» в односторонней функции, о котором размышлял Диффи).
Итак, когда Алиса отправляет зашифрованное сообщение, только один человек в мире имеет необходимую информацию, чтобы его расшифровать: Боб, владелец закрытого ключа. Допустим, зашифрованное сообщение перехватит кто-то, отчаянно желающий узнать, что Алиса передаёт Бобу. Если у перехватчика нет доступа к уникальной паре открытого ключа Боба – инструмента, использовавшегося Алисой для шифрования сообщения, – он получит лишь абракадабру. Без закрытого ключа обратить вспять математический процесс шифрования слишком сложно. Двигаться в противоположном направлении в односторонней функции – всё равно что пытаться собрать разбитую вдребезги тарелку.
Боб, конечно, без проблем может прочитать адресованное только ему сообщение. У него есть секретная часть пары ключей – закрытый ключ, с помощью которого он мгновенно расшифрует сообщение.
Короче говоря, Боб может прочитать сообщение, потому что он единственный, у кого имеются обе части пары ключей. Те, у кого есть открытый ключ, не имеют преимуществ в расшифровке сообщения. Когда речь идёт о шифрованных сообщениях, единственная ценность наличия у вас открытого ключа Боба – это возможность перевести сообщение на язык, который может прочитать только Боб (благодаря секретной части пары ключей).
Данная функция шифрования была лишь частью революционной концепции Диффи, и не обязательно самой важной. Криптография с открытым ключом также предоставила первый эффективный способ настоящей аутентификации отправителя электронного сообщения. Как представлял себе это Диффи, бэкдор действует в двух направлениях. Да, если отправитель зашифрует сообщение чьим-то открытым ключом, только адресат сможет его прочитать. Но при обратном процессе, если кто-то зашифрует какой-то текст с помощью своего закрытого ключа, расшифровать его можно только с помощью единственного открытого ключа, составляющего с ним пару. Зачем это нужно? Допустим, если вы получите сообщение от кого-то, кто называет себя Альбертом Эйнштейном, и захотите узнать, действительно ли это Альберт Эйнштейн, теперь у вас есть способ это проверить: математический лакмусовый тест. Вы найдёте открытый ключ Эйнштейна и примените его к шифрованному тексту. Если получится понятный текст, а не бессмыслица, то вы будете точно знать, что это сообщение Эйнштейна, – потому что у него есть единственный в мире закрытый ключ, способный создать сообщение, которое может расшифровать его соответствующий открытый ключ.
Другими словами, применение к сообщению вашего секретного ключа аналогично подписанию его вашим именем: цифровая подпись. Но, в отличие от подписей, которые ставят на банковских чеках, документах о разводе и бейсбольных мячах, цифровую подпись не может подделать любой, кто обладает минимальными навыками, чтобы скопировать чёрточки и закорючки. Без секретного ключа шансов на подделку подписи очень мало.
Точно так же злоумышленник не может прослушивать линию, пока не появится цифровая подпись жертвы, и затем украсть её с целью использовать для создания фальшивых документов или перехвата будущих сообщений. На практике цифровая подпись не используется как приложение к документу или письму. Вместо этого она тесно переплетена с цифрами, составляющими содержимое сообщения. Поэтому при перехвате документа злоумышленник не сможет извлечь из него инструменты, позволяющие поставить подпись отправителя на каком-то другом документе.
Данный метод также гарантирует подлинность всего документа. Посторонний не может изменить мелкую, но критическую деталь документа с цифровой подписью (например, заменить «я не ответственен за долги моей супруги» на «я беру на себя полную ответственность за долги моей супруги», при этом сохранив подпись ни о чём не подозревающего отправителя). Если сообщение подписано с помощью закрытого ключа, но не зашифровано, злоумышленник может его перехватить, прочитать с помощью открытого ключа отправителя и затем изменить текст. Но что дальше? Чтобы повторно отправить текст с верной подписью, злоумышленнику нужен закрытый ключ. Но заполучить его он, разумеется, не может, так как он есть только у изначального подписанта.
Если человек, отправляющий подписанное сообщение, дополнительно нуждается в секретности, это тоже просто. Если Марк хочет отправить поручение своему банкиру Ленор, то он сначала подписывает его своим закрытым ключом, после чего шифрует подписанное сообщение открытым ключом Ленор. Ленор получит дважды зашифрованное сообщение: для конфиденциальности и аутентификации. Сначала она применит свой секретный ключ, чтобы прочитать сообщение, предназначенное только ей, а затем с помощью открытого ключа Марка убедится, что его мог отправить только он.
иллюстрации: БитНовости
Цифровые подписи дают и ещё одно преимущество. Поскольку сообщение с цифровой подписью может создать только обладатель закрытого ключа, подписант не может убедительно отрицать свою роль в создании документа. Такая невозможность отрицания – аналог нотариальной печати.
Впервые стало возможно помыслить о проведении всевозможных официальных транзакций – контрактов, платежей и т. п. – через компьютерные сети, без необходимости в чьём-либо физическом присутствии.
Короче говоря, Диффи не только нашёл способ гарантировать конфиденциальность в век цифровых коммуникаций, но также сделал возможной совершенно новую разновидность коммерции – электронную, способную не только конкурировать с нынешними протоколами коммерческих транзакций, но даже превзойти их. Ещё больше впечатляет то, что этот прорыв произошёл полностью в стороне от правительственных агентств, которые вели засекреченные разработки криптографических систем.
Криптовалюта
Автор: btcdesk