Минувшая неделя оказалась весьма щедрой на события по теме защиты данных от посторонних глаз. Во-первых, показал своё истинное лицо пейджер iMessage: Apple по-прежнему обещает не читать наши сообщения и гарантирует, что никто со стороны это сделать не сможет, однако, как выяснили двое любознательных хакеров, при необходимости — если пожелает кто-то из сотрудников или их к тому принудят — всё-таки в состоянии перлюстрировать пользовательскую корреспонденцию, поскольку криптоключами от защиты заведует сама. «Яблочники» даже не стали опровергать это сообщение, лишь вяло заметив, что для чтения пользовательских писем потребуется некоторая модификация серверного софта, чего компания делать не планирует. (Сотрудничество с компетентными органами планирования не требует!)

Во-вторых, состоялся формальный релиз SecureDrop — инструмента для анонимного раскрытия ценных данных, соавтором которого был светлой памяти Аарон Шварц. И, честно говоря, имя Шварца — самое интересное, что есть в этой истории: мало того что SecureDrop весьма ограничен функционально (он предназначен для анонимизации контакта осведомителей и журналистов), так ещё и работает через TOR, где уже есть более гибкий и проверенный временем TorChat (а посмотреть шире, так обнаружатся ещё BitMessage и Freenet).

Так что, на мой взгляд, самым интересным стало известие об организации тотальной «проверки на вшивость» программного инструмента, который существует чуть ли не дольше всех вышеупомянутых и зарекомендовал себя за время службы с самой лучшей стороны. Это не программа, это — скала, о которую вот уже почти десять лет (в феврале поднимите бокал) разбиваются попытки извлечь зашифрованные данные с винчестеров, флешек и облачных аккаунтов тех людей, кто не поленился его применить. Речь о TrueCrypt — и его аудите.

Truecrypt audit

Если вы хоть раз сталкивались с TrueCrypt лично, то конечно помните, для чего он нужен. Если же такая встреча ещё не состоялась, рискну кратко обрисовать особенности и достоинства. TrueCrypt — это межплатформенный, бесплатный (исходники открыты под весьма либеральной лицензией, которую, впрочем, не все согласны считать истинной свободной), эксплуатирующий стандартные, проверенные криптографические алгоритмы, инструмент для прозрачного («на лету») шифрования-дешифрования информации, хранимой практически на любом современном носителе. Чаще всего его применяют для «закрытия» целиком разделов жёсткого диска. Это очень удобно: спрятанная на таком разделе информация нигде и никогда не появится в дешифрованном виде — кроме, естественно, оперативной памяти вашего компьютера в моменты, когда она нужна.

На шифровку-дешифровку, конечно, тратятся время и энергия. Однако с добавлением криптографических инструкций в массовые микропроцессоры падение производительности стало почти незаметным. Зато стойкость защиты была и остаётся непревзойдённой. TrueCrypt-носители уже попадали в лапы самых страшных противников приватности, ФБР и АНБ, но и те, потратив месяцы на подбор пароля, вынуждены были отступить. Можно сказать, что если закрытый «Трукриптом» носитель попал в руки врага «холодным» (то есть отключённым от компьютера), шансы взломать его стремятся к нулю. Вот почему «Трукриптом» пользуются Брюс Шнайер и журналисты, получившие материалы от Сноудена; вот почему им, похоже, пользовались сам Сноуден, Ким Дотком и Росс Ульбрихт. И каждый день — миллионы простых юзеров.

Рынок продуктов для криптографической защиты жёстких дисков (графика: OPSWAT).
Рынок продуктов для криптографической защиты жёстких дисков (графика: OPSWAT).

TrueCrypt надёжен, удобен, бесплатен. Всё это превратило его в одно из самых популярных решений в своём классе. Однако назвать его идеальным мешают два обстоятельства. Прежде всего это собственная лицензия, на условиях которой он распространяется: по существу, она очень похожа на истинно свободные (а-ля GPL, BSD и т. п.), однако open source-эксперты признавать её таковой отказываются, подозревая несовместимость в мелких, но важных деталях. Что, в свою очередь, мешает включению TrueCrypt в состав многих популярных дистрибутивов Linux и образованию вокруг него своего сообщества независимых разработчиков (частично совместимые реализации TrueCrypt существуют, но это не совсем то, что нужно).

И как раз творческий коллектив создателей TrueCrypt — второе странное обстоятельство. Дело в том, что, вообще говоря, мы не знаем, кто именно его разработал! У TrueCrypt есть официальный сайт, исходники и скомпилированные версии, форум, FAQ’и — в общем, всё как у всех. Вот только неизвестно, кто же за всем этим стоит. Контактных точек — абсолютный минимум: торговая марка «TrueCrypt» зарегистрирована в Чехии на имя некоего Давида Тезарика, а веб-сайт truecrypt.org принадлежит таинственной TrueCrypt Developers Association LC, квартирующей в Соединённых Штатах. И там же, в США, функционирует ещё одна причастная организация – TrueCrypt Foundation. О которых никто ничего не знает.

Мыслимо ли, чтобы один человек или даже небольшая группа разработчиков (у конкурентов над теми же задачами работают коллективы высококлассных и высокооплачиваемых специалистов), действуя на голом энтузиазме, десять лет без помощи извне ведут софтверный проект высшего класса — удобный, мощный, элегантный, вычищая баги, переводя его на иностранные языки, портируя между платформами? Положим, допустить, что этими людьми движет идея служения обществу, ещё возможно. Но на что же они живут? Ведь не на пожертвования же, в самом деле.

А отсюда уже один шаг до страшного предположения: и Давид Тезарик (кстати, очень распространённое имя, не хуже нашего Ивана Кузнецова или пресловутого американского John Doe), и TrueCrypt Foundation — только ширма, прикрытие, скажем, для того же АНБ. Благодаря Сноудену мы знаем, что американские спецслужбы тратят сотни миллионов ежегодно на проникновение внутрь популярных криптографических инструментов (см. «Приватность не прощается»). Но обладание таким продуктом, как TrueCrypt, поистине стоит всего остального! И даже если трукриптовцы на самом деле не служат в АНБ, нельзя исключать, что Агентство надавило на них так же, как давит на Google, Apple, Microsoft (ведь работают они, похоже, в Штатах), и заставило внедрить незаметные уязвимости в исходники или исполняемые версии программы. Нельзя, потому что серьёзной проверки TrueCrypt никто не проводил!

Кстати, интересный факт: зашифрованные TrueCrypt данные неотличимы от массива случайных чисел — до такой степени, что они проходят даже математические тесты на случайное распределение.
Кстати, интересный факт: зашифрованные TrueCrypt данные неотличимы от массива случайных чисел — до такой степени, что они проходят даже математические тесты на случайное распределение.

А подозрения множатся. Кто-то жалуется, что откомпилировать TrueCrypt из исходников нелегко, если вообще возможно. Кто-то нашёл необъяснимые различия между поведением версий TrueCrypt для MS Windows и Linux. Поскольку применяется TrueCrypt буквально всеми, от школьников и бизнесменов до террористов и осведомителей, вопрос чистоты не праздный, не любопытства ради. И вот неделю назад, после очередного раунда дебатов в Сети, нашлись активисты, решившие поставить в споре точку: был начат сбор средств на оплату независимого аудита TrueCrypt. По состоянию на сегодняшнее утро собрано почти 50 тысяч долларов — более чем достаточно.

Что будет включать в себя проверка? Прежде всего анализ квалифицированным юристом трукриптовской лицензии — на предмет соответствия, например, лицензии GPL. Если принципиальных расхождений не выявится, TrueCrypt’у дадут зелёный свет полностью свободные Linux-дистрибутивы. Во-вторых, будет разработана методика воспроизводимой компиляции программы, что позволит гарантировать функциональную идентичность исходных текстов и бинарных версий TrueCrypt (подтвердить, что в «экзешник» ничего лишнего не добавлено). В-третьих, пройдут проверку сами исходники – силами какой-либо высококлассной конторы, занимающейся аудитом криптографического софта (надеюсь, обратятся к профессионалам за пределами США). И, в-четвёртых, часть средств планируется пустить на создание призового фонда, из которого будут оплачиваться самые интересные «баги», найденные в трукриптовском коде.

Таким образом, отсчёт пошёл. Удастся ли проверяющим найти что-то компрометирующее? Надеюсь, что нет. Уж очень высоки ставки!

В статье использована иллюстрация Kidz Castle.