На главную
Чему больше доверять: симметричной криптографии или асимметричной криптографии?
Решение.
Оглавление:
fDZHJsdvnQf7 Кому я вынужден доверять? (криптоаналитики, государственные органы)
LkL5F34B4Kqt Кому я ещё вынужден доверять? (разработчики ПО и оборудования)
c458fzqAHGRU Промежуточные выводы
Fkd3gJSGxSXH Парирование недоверия
L6kaFNoltgOZ Выводы
fDZHJsdvnQf7:
Криптография довольно сложна. Лично я не являюсь в ней специалистом. Поэтому мне приходится доверять специалистам в области криптографии.
Кому именно я доверяю: сообществу экспертов, их способности оценить качество алгоритмов и их реализаций и их способности довести до меня информацию о некачественных алгоритмах и системах.
В сообществе экспертов есть и органы государственной власти разных стран, принимающие стандарты для защиты информации той или иной степени конфиденциальности.
Я вынужден доверять этим людям.
Можно ли им доверять?
Разумеется, на экспертов можно надавить, а государственные органы, например, США, постоянно предпринимают усилия для того, чтобы ослабить шифрование.
Например, приняли стандарт DES, который, в общем-то, был не очень стоек даже на момент его принятия.
Этот стандарт был сменён только через несколько лет после того, как его взломали уже просто на самом обычном компьютере.
Как мы знаем, в 2000-х годах АНБ, видимо, знало об уязвимости шифра RC4. Однако, несмотря на это, шифр широко использовался многие годы.
При этом, один из экспертов в области криптографии заявлял ещё в начале 2000-х годов о том, что шифр не стоек. Однако прислушались к этому более чем через 5-ть лет.
Атака "Padding Oracle" была опубликована в 2002 году. Однако, никто не учёл эту публикацию, сочтя её скорее теоретической.
В результате чего, более чем через 10 лет, в 2014-м году многие сайты подверглись атаке POODLE и экстренно отключали устаревший на тот момент времени протокол SSL 3.0.
До этого, фирмы годами заявляли, что переход на новые стандарты технически слишком сложен. Что замена одного стандарта на другой требует обновления серверов, а старые браузеры не смогут зайти на сайты, если сайты будут защищены более новыми протоколами.
С появлением атаки оказалось, что весь этот переход делается очень быстро и просто.
Также, АНБ (NSA) США внедрило стандарт "Dual EC DRBG". Стандарт был принят в 2006-ом и отозван после скандала в 2014-ом. В стандарт не только была внедрена уязвимость, но он ещё и проталкивался АНБ. Так, RSA Laboratories получила 10 млн. долларов США за то, чтобы включить этот стандарт как алгоритм по-умолчанию.
Как говорят, стандарт "Dual EC DRBG" был такой запутанный, что эксперты-криптоаналитики, зачастую, просто не изучали его. Что также повлекло за собой более длительное существование стандарта.
В конце 70-х годов США приняло стандарт DES с ключом 56-битов длинной. Уже тогда он был не очень стойкий с точки зрения длины ключа и практически сразу умельцы усилили его до 3DES. DES был реально (вычислительно) взломан в 98-ом году менее чем за 3 дня на компьютере, стоимостью 250 тысяч долларов. Только после этого правительство США озаботилось принятием нового стандарта (он был принят в 2001 году).
Как мы видим, правительство США не заботилось о наличии стандартной криптографии для обычных граждан. В то время как в России в 1993 году опубликовали стандарт ГОСТ 28147-89 с длиной ключа 256 битов.
В 2018-ом году Верховный Суд РФ отказал Telegram в отмене требования ФСБ о передаче им ключей шифрования на переписку. 9 августа 2018 года, в определении об отказе, Верхновный Суд РФ указал, что
Вопросы, связанные с ограничением доступа к информации, урегулированы статьей 9 названного закона, из которой следует, что информация, необходимая для декодирования электронных сообщений, не отнесена федеральными законами к информации ограниченного доступа. Данная информация не составляет охраняемой Конституцией Российской Федерации и действующими на территории Российской Федерации законами тайны сообщений, переписки, и, соответственно, в отношении ее законодательством Российской Федерации не установлены особые условия и порядок доступа к ней.
То есть, ключи для дешифрования переписки к тайне переписки, по мнению Верховного Суда РФ, не относятся. Несмотря на то, что эта информация прямо предназначенная для реализации этого самого права на тайну переписки.
По обвинению Навального в 2013-ом году по поводу расхищения леса, в, если не ошибаюсь, 2009-ом году судом была разрешена прослушка его телефона на пол года. Однако, она была разрешена по, видимо, никак не связанному с Навальным делу. То есть прослушка была разрешена формально, без должных оснований.
Таким образом, не всегда эксперты по криптоаналитике способны донести до нас даже известную им информацию. А государственные органы, особенно США, имеют культуру сокрытия информации и предложения уязвимых продуктов как своим гражданам, так и зарубеж. Либо культуру юридического обхода средств криптографии.
Как мы помним также, США ограничивали поставку товаров для шифрования зарубеж, требуя совсем малой длины ключа (кажется, 40 битов, а затем 56 битов, что, по сути, не является шифрованием).
Мы знаем и о том, что в США в 90-ые годы бурно обсуждались вопросы, связанные с запретом неуязвимой криптографии вообще. То есть вся криптография должна была быть доступна для расшифровки правительством.
Таким образом, я не всегда могу доверять органам государственной власти. Особенно это касается стран "Пяти глаз" (five eyes): Британии, США, Канаде, Австралии и Новой Зеландии. Новая Зеландия, кстати, как и АНБ США, засветилась в скандале со Сноуденом как прослушивающая своих граждан.
То есть мы видим ещё очень сильный и, при этом, недекларируемый публично интерес к информации о своих собственных гражданах.
Таким образом, "Пять глаз" имеют конфликт интересов между тем, чтобы защитить гражданское общество стойкой криптографией и следить за гражданским обществом.
Точно сказать это об ФСБ, которое занимается шифрованием в нашей стране, невозможно. Так как все операции, похоже, проводятся более скрытно. В то же время, СОРМ публично обсуждалась как в 90-х годах, так и в связи с "поправками Яровой" в закон "Об информации, информационных технологиях и о защите информации".
Таким образом, возможность прослушивания с помощью специальных средств была, как минимум, широко опубликована (передавалась по телевизору в 90-х как затратная и служила серьёзным скандалом в 10-х).
В то же время, ФСБ никогда не отличалась стремлением к нестойкой криптографии. Симметричные шифры "Магма" (опубликован в 1993 году) и "Кузнечик" (2015-ый год) поддерживают только 256-битный ключ. "Магма", несмотря на обширную критику, является очень стойким алгоритмом для своего времени.
Однако, ФСБ не допускает к стойкой криптографии множество фирм. Так, если вы хотите приобрести более-менее серьёзные СКЗИ (средства криптографической защиты информации) для бизнеса то вы должны будете не только получить лицензию (или заключить договор с лицензиатом), но ещё доказать ФСБ, что они вам нужны. Причём распространение данных систем будет происходить под контролем ФСБ.
[Примечание: надо сказать, что тут возник спор с одним специалистом в области информационной безопасности. Он сказал, что "скажи что за устройство - я тебе его продам". Однако, случаи, когда фирмы не могли купить устройство высокой степени защищённости есть. Даже если они связаны с неверной трактовкой каких-то непонятных нормативных документов, подготовленных ФСБ, виновато в этом всё равно ФСБ.]
То есть, ФСБ в любой момент времени могут внедрить в эти системы закладки, так как всё под их надзором и контролем.
Мало того, для того, чтобы получить лицензию, требуются спецалисты с опытом работы от 3-х лет и руководящий работник с опытом 5-ть лет в этой области. Причём именно по соответствующему подвиду деятельности, каковых несколько десятков.
Если ваш специалист не имеет опыта хотя бы в одной из требуемых областей или не может этот опыт доказать документально, то вам придётся нанимать ещё одного.
То есть, вас заставляют нанимать людей, которые так или иначе могли быть проверены ФСБ на лояльность. ФСБ всегда может сказать, что этот человек недостаточно квалифицирован.
Бесплатные системы с открытыми исходными кодами не допускаются, т.к. они не сертифицированные и не разработаны лицензиатами ФСБ. Что создаёт хорошую почву для закладок в ПО с закрытыми исходными кодами, которое проверяется только лишь сертифицированными лабораториями, разрешёнными ФСБ, по методикам, которым нам знать не положено.
При этом все эти требования не повышают сколь-нибудь существенно реальную безопасность. Ведь в нашей стране нет аналогичных требований к защите расшифрованной информации и защиты законом, в том числе уголовным кодексом. А сами органы, защищающие граждан (например, Роскомнадзор) вообще до предела некомпетентны.
Таким образом, доверять здесь чему-либо также довольно тяжело. Особенно, сертифицированным СКЗИ.
Однако, стандарты в России, возможно, не такие нестойкие как зарубежом.
В то же время, как и в Dual EC DRBG АНБ США "стремилось стать единственным редактором стандарта", так и ФСБ имеет все возможности для того, чтобы вносить уязвимости в стандарты.
То есть потенциальная возможность внесения уязвимостей у ФСБ, засчёт более тоталитарной и централизованной системы, даже больше, чем у АНБ США.
Сами независимые эксперты обладают ограниченными возможностями. Так, несмотря на открытые исходные коды, в Vera Crypt платные аудиторы находят уязвимости. Аналогично и в других известных продуктах уязвимости существуют, иногда, более 10-ти лет.
Это означает, что эксперты обладают очень ограниченными возможностями по поиску уязвимостей как в стандартах (Dual EC DRBG, RC4, SSL 3.0), так и в программном обеспечении с открытыми исходными кодами.
Даже когда эксперты что-либо находят (RC4), это не всегда становится достоянием общественности. Потому что работа эксперта может быть просто неизвестна ни специалистам, ни, тем более, широкому кругу заинтересованных лиц.
Итак. Вывод. Нам приходится доверять экспертам в области криптографии, однако, не всегда они способны хорошо анализировать алгоритмы и ПО.
Государства находятся под подозрением в попытке вставить в ПО уязвимости.
Кроме этого, я вынужден доверять кому?
Алгоритмам как таковым. Так, более изученные и известные алгоритмы, возможно, более безопасные.
Например, симметричная криптография существует со времён ещё до нашей эры.
В то время как асимметричная криптография возникла лишь в 70-ые - 80-ые годы.
При этом, симметричные шифры более просты для изучения, чем асимметричные, которые содержат более сложные математические задачи сами по себе. Хотя, реально, вопрос спорный.
Однако, асимметричные алгоритмы обмена ключей всегда построены на "сложных" математических задачах. То есть на доверии к тому, что эти задачи действительно трудны и их неудастся разрешить кому бы то ни было.
Таким образом, симметричные алгоритмы зачастую меньше доверяют "сложности", чем асимметричные и более изучены.
LkL5F34B4Kqt:
Далее.
Шифруя информацию на компьютере, я также вынужден доверять производителям ПО и аппаратной части компьютера.
Например, операционная система Windows 10, по источникам в СМИ, указывала, что может отправлять "образцы вводимого текста". Например, в качестве образца вводимого текста она может получить ваш пароль от криптографически защищённых файлов.
Аналогично, аппаратура также может похитить данные. Однако, здесь, в основном, всё равно, о симметричной или асимметричной криптографии мы говорим.
Разработчикам симметричных шифров проще разработать правильное шифрование, так как эти шифры более математически простые и простые для реализации. То есть для их реализации нужно понимать меньше математики и реализовывать менее сложные и трудоёмкие операции.
В то время как в асимметричных шифрах много подводных камней, сложных мат. операций и уявзмимых частных случаев.
Таким образом, симметричные шифры могут правильно реализовать в программном коде даже люди, которые не очень хорошо владеют математикой. И у них либо вообще нет уязвимых частных случаев, либо они легко проверяются.
Меньше кода - меньше ошибок. Поэтому в реализаци симметричных шифров будет меньше ошибок.
В начальных реализациях RSA были обнаружены уязвимости, которые позволяли с помощью атаки с заданным текстом легко получить секретный ключ шифрования. Для противодействия этому были введены специальные заполнители (paddings), однако это много говорит о том, насколько сложен этот алгоритм.
В 10-х годах были обнаружены уязвимости реализации асимметричного шифра RSA в GnuPG, которые позволяли комбинацией тайминг-атаки с атакой с помощью заданного текста определить секретный ключ шифрования прямо по звуку работающего компьютера с расстояния 3-10 метров. Аналогичная атака этим же коллективом производилась и по измерению энергопотребления компьютера, причём без дорогостоящего оборудования (антенной из куска медного провода, подсоединённого ко входу звуковой карты).
Такие атаки на большинство симметричных шифров в принципе невозможны, так как они имеют более однородную структуру.
Квантовые компьютеры обещают очень легко раскрывать как асимметричные шифры на основе эллиптических кривых и простых чисел. Хотя ранее эта задача казалась значительно сложной.
То есть, симметричные шифры более просты для реализации как с точки зрения кода, так и математики, а также обладают большей стойкостью к атакам и к тому, что будут решены математические задачи, лежащие в их основе.
А значит, одни и те же разработчики, естественным образом, допустят меньшее количество ошибок в реализации симметричных алгоритмов.
Однако, за реализацию симметричных алгоритмов могут взяться менее квалифицированные разработчики, поэтому может быть открыт вопрос о том, как много ошибок они допустят в своих реализациях.
c458fzqAHGRU:
Промежуточные выводы таковы.
1. Я доверяю экспертному сообществу (я вынужден ему доверять объективно):
1.1. Оно способно вовремя заметить уязвимость
1.2. Оно способно мне о ней сообщить
2. Я доверяю стандартам, которые часто придумывают гос. органы или по их заказам, а также авторам других алгоритмов (я вынужден им доверять объективно):
2.1. Я доверяю, что они не имеют конфликта интересов или успешно с ними борются
2.2. Я доверяю тому, что они публикуют всю доступную им информацию в надлежащей для проверки и реализации форме
3. Я доверяю производителям ПО и аппаратной части (я вынужден им доверять объективно):
3.1. В том, что они не крадут у меня данные, в том числе, по приказу государства
3.2. В том, что они способны верно реализовать и верно реализовали защиту
3.3. В том, что они верно меня информируют и принимают меры к приёму сообщений об уязвимостях
4. Я доверяю алгоритмам в том смысле, что я доверяю неспособности математиков расшифровать эти алгоритмы или решить какие-либо задачи в их основе. (я вынужден им доверять объективно):
Насколько это доверие обосновано в сравнении симметричных и асимметричных алгоритмов?
1.1. Проще заметить уязвимость в симметричных алгоритмах, т.к. они проще как математически, так и в коде
1.2. Сообщить об уязвимости эксперты, обычно, не имеют хорошей возможности. Однако, рано или поздно информация будет доведена до общественности.
2.1. Очевидно, что это не так. Однако, я вынужден этому доверять. Как видно, симметричные алгоритмы проще, так что уязвимости в них вставить тяжелее.
2.2. Сложно сказать, т.к. я не криптоаналитик. Однако, "Dual EC DRBG" однозначный пример противоположного.
3.1. Для Windows и MacOS, по информации из СМИ, это не так: они крадут данные. BitLocker в Windows Home не просто крадёт данные, но ещё и отсылает (без возможности отказаться) ключи шифрования в Microsoft.
Однако, доверие к ПО с открытыми исходными кодами имеет несколько больше оснований. Хотя даже в открытых исходных кодах иногда очень легко вставить уязвимости.
3.2. Чем квалифицированнее разработчик, тем больше шансов, что криптография реализована верно. Однако, как проверить квалификацию?
Есть пара косвенных признаков:
3.2.1. Реализованы и сложные, и простые алгоритмы.
3.2.2. Криптография реализована как основной или один из основных элементов программы, то есть разработчики разработали специализированный инструмент.
3.3. Уязвимости есть в любых или почти любых продуктах. Информация о найденных уязвимостях не есть сам по себе сигнал к проблемам.
Есть пара косвенных признаков проблем:
3.3.1. Информация об уязвимостях скрывается и недоступна на сайте программного продукта. То есть репутация программы для разработчиков важнее, чем безопасность
3.3.2. Исправления программного продукта выходят дольше, чем за неделю с момента публикации информации об уязвимости или с момента сообщения об этой уязвимости в организацию. Некритичные, но важные функциональные дефекты неисправляются месяцами.
3.3.3. Организация не признаёт факта того, что ей сообщили об уязвимости.
3.3.4. Одни и те же ошибки, найденные в ПО и его аналогах, имеют в проблемном ПО большую степень критичности (например, в одном случае позволяют прочитать информацию, а в другом - исполнить произвольный код на компьютере пользователя)
3.3.5. Разработчики заявляют о высокой безопасности продукта, но используют уже не совсем стойкие устаревшие алгоритмы или уличены в другой лжи.
3.3.6. Одна и та же уязвимость появляется, после исправления, снова в новых версиях ПО.
3.3.7. В одном продукте находят уязвимости при аудите, в другом гораздо меньше или вообще не находят. Однако, это и вопрос доверия к аудиту. Например, в VeraCrypt находили больше критических уязвимостей, чем в TrueCrypt.
3.3.8. Продукт красочный, с хорошим дизайном. Обращаю внимание, что удобный продукт может быть безопасным. Речь идёт именно об украшательствах.
4. Очевидно, что теоретическая обоснованность нерасшифруемости симметричных шифров в режиме гаммирования более серьёзная, чем просто отсутствие решений "сложных" задач математиками.
Следовательно, в основном, требуется меньше доверия для симметричного шифрования. Оно более стойкое с точки зрения доверия.
Fkd3gJSGxSXH:
Можем ли мы парировать недоверие?
Посмотрим ещё раз на c458fzqAHGRU Промежуточные выводы
1.1. В симметричных шифрах реализации проще. Можно использовать более простые для анализа алгоритмы. Однако, симметричные алгоритмы всё равно будут проще. Значит, уязвимость будет проще заметить.
Более известные шифры будут смотреть большее количество экспертов большей квалификации, т.к. эти шифры более ценны для общества и могут принести больше известности эксперту.
1.2. Для того, чтобы эксперты могли дать информацию, они должны иметь возможность её дать.
То есть, это должно быть не запрещено (неэффективно запрещено) в стране, где живёт эксперт и где находится получатель этой информации.
В этом смысле, лучше всего использовать экспертов из другой страны, нежели разработчик.
Однако, наибольшую известность имеют американские шифры. Американские и европейские криптоаналитики, вероятнее всего, самые лучшие.
Так что тут способ парирования не очевиден.
2.1. Конфликт интересов можно разрешить другим конфликтом интересов.
Стандарты должны использоваться для шифрования секретных документов. Однако, как мы узнаем, что это так в настоящий момент времени?
Возможно, они использовались ранее, потом в них нашли уязвимость, и теперь они стали не слишком стойкими?
2.2. Гос. органы и разработчики должны опубликовать всю информацию. Тут сложно сказать. Нужно, хотя бы, чтобы не было жалоб на неясность документов в целом.
3.1.
Открытое ПО обычно разрабатывают люди с меньшим конфликтом интересов, т.к. бизнес хочет сохранить свои деньги и более плотно сотрудничает с государством. Бизнесу важны деньги, в то время как разработчикам открытого ПО нужны вовсе не деньги, так как ПО поставляется бесплатно и даже в исходниках.
Кроме этого, в крайнем случае, можно создать клон открытого ПО, как это было после закрытия проекта TrueCrypt.
В то же время, чем ближе разработчики к тоталитарным разведкам, то есть США и пяти глазам, и Китаю, тем хуже.
Впрочем, как будто в России не тоталитаризм.
Открытость ПО не означает, что уявзмости найдут.
Кроме того, чем более безопасный язык выбрали разработчики, тем безопаснее будут реализации. В данном случае, это не технологии C/C++ (Си/Си плюс плюс). Сборка мусора для криптографии также может быть сомнительной, т.к. в swap-файл при этом могут попасть конфиденциальные сведения, а также их сложнее перезатереть, т.к. они могут копироваться сборщиком мусора.
Однако, swap-файл в операционной системе можно отключить. Сборщик мусора можно признать не критичным в указанном плане.
Кроме этого, чем меньше ПО, особенно коммерческого, использует разработчик, тем лучше. Косвенно, сторонний код можно увидеть по необходимости устанавливать Java, .NET (Mono) или другие библиотеки на машину или по большому объёму бинарных файлов (большому объёму и количеству дистрибутивов, которые нужно закачивать при установке на Linux через менеджер пакетов). Иногда, правда, при маленькой программе (меньше мегабайта) бывает закачивается большая документация (на 12 Мб).
В любом случае, чем меньше кода занимает это ПО, тем лучше.
3.2. Как проверить квалификацию разработчика? В пункте 3.3 выше были указаны некоторые симптомы, которые свидетельствуют о низкой квалификации.
3.3. См. выше пункт 3.3.
4. Парировать невозможно. Симметричные алгоритмы лучше.
L6kaFNoltgOZ:
Таким образом, окончательный вывод таков:
симметричные алгоритмы лучше асимметричных как без парирования угроз, так и с парированием угроз.
Кроме этого, асимметричные алгоритмы настолько нестойкие, что лучше ими вообще не пользоваться.
Точнее, ими можно пользоваться как дополнительными, недоверенными алгоритмами. Они увеличивают стойкость, но, желательно, считать, что данные алгоритмы могут быть вскрыты: это видно даже по пути RSA:
1) Заполнители (paddings), которых ранее не было
2) Постоянное сильное увеличение длины ключа, в том числе, за счёт новых более эффективных алгоритмов разложения на множители.
3) Атаки по побочным каналам вплоть до шума компьютера
4) Перспективное появление квантовой криптографии
Думаю, что вне зависимости от алгоритмов, асимметричные алгоритмы обмена ключами должны быть признаны недоверенными, если есть такая возможность. Что не отменяет необходимости их использования тогда, когда они могут повысить защищённость. Например, даже если симметричный ключ обменивается путём личной передачи физического носителя, его можно и нужно зашифровать асимметричной криптографией.
Мероприятия по парированию угроз доверия.
Не доверять асимметричным алгоритмам там, где это только возможно.
Использовать наиболее простые с точки зрения математики алгоритмы. В том числе, RSA (алгоритмы на основе простых чисел) вместо эллиптических кривых.
Вся информация по алгоритму должна быть опубликована.
Использовать более простые в реализации шифры.
Использовать более известные шифры (их просмотрели большее количество экспертов). Разумеется, нужно анализировать, нашли ли что-то эксперты.
По возможности, не использовать ПО, написанное в "Пяти глазах" (Британия, США, Канада, Австралия, Новая Зеландия). Китай так же не является очень хорошим, т.к. носит признаки злейшего тоталитаризма.
ПО с открытыми исходниками, владельцы которых живут в указанных странах также является подконтрольным соответствующим странам.
Использовать ПО с открытыми исходными кодами.
Не использовать ПО от крупных корпораций. Крупные корпорации всегда аморальны. Крупной можно считать любую корпорацию с оборотами более 100 миллионов долларов в год. Если меньше - это не значит, что они очень моральны. Также крупные корпорации проводят отдельную политику по связям с общественностью: они предпринимают усилия, чтобы внушить вам, что их продукт очень крут и безопасен. Опасайтесь этого!
Никогда не верьте словам представителей крупных корпораций и гос. органов, что бы они не говорили.
Они могут говорить, что их ПО супербезопасно, что оно решает все проблемы. Что уязвимости в нём - это "чёрный PR". Что у вас недостоверная инсайдерская информация, что люди, которые это говорят неквалифицированны, недостаточно опыта или он из другой сферы и ничего не понимает, или его знания устарели.
Не обязательно даже говорить, достаточно просто несерьёзно улыбаться, когда говорит оппонент.
Никогда не верьте в "чудеса" открытых исходников: в них тоже можно вставить кучу уязвимостей. Просто нужно маскировать тщательнее.
В идеале, знать, есть ли монетизация у ПО и какая она. Какие интересы преследует разработчик ПО. Особенно, если это - крупная организация.
То, что ПО является бесплатным и с открытыми исходниками, не означает, что оно разрабатывается не крупными корпорациями или не под контролем крупных корпораций. Так, иногда открытое ПО частично разрабатывается по заказу крупных корпораций, причём по их предложению туда будут вносить практически любой бред.
Например, Mozilla типичная крупная корпорация, которая разрабатывает бесплатные продукты с неизвестной монетизацией.
Шифровать данные на компьютере, постоянно физически отключённом от интернета (в том числе, отключённом от компьютеров, которые подсоединены к интернету).
По-возможности, использовать открытое ПО, которое прошло аудит, но не сертификацию (хотя сертификация тоже допустима).
Использовать специализированное криптографическое ПО или ПО, в котором функции криптографии являются одними из основных, не кажутся дополнительными; в котором реализованы несколько алгоритмов на выбор с возможностью дублирования алгоритмов (например, в VeraCrypt можно зашифровать диск кузнечиком, а потом Twofish, так что, даже когда один алгоритм сломают, второй будет по-прежнему защищать данные).
Помнить о том, что эксперт может быть не в праве публиковать какую-либо информацию. Государство может обязывать её скрывать или скомпрометировать эксперта в случае разглашения экспертом информации.
Отказаться от прикладного ПО, разработанного на языках C (Си) и C++ (Си плюс плюс). С шифрованием, правда, могут быть исключения, так как часто именно эти языки подходят для написания криптографии. Кроме этого, почти все современные ОС разработаны на C. Исключая KolibriOS (на ассемблере, что тоже не безопасно) и Redox (на Rust, это более безопасно, чем C или C++).
Отключить в системе swap-файл (файл подкачки, раздел подкачки), чтобы конфиденциальные данные не попадали на диск. В крайнем случае, зашифровать раздел с подкачкой.
Использовать ПО, которое использует как можно меньше стороннего кода, особенно, несвободного. Например, ПО, написанное на FreePascal лучше ПО, написанного на Java или .NET (Mono). ПО, не использующее библиотеку лучше, чем использующее. ПО меньшего по размеру дистрибутива лучше чем ПО большего по размеру дистрибутива (при одинаковых функциях).
Не использовать продукты в которых:
Информация об их уязвимостях скрывается, недоступна на сайтах продуктов, преуменьшается или отрицается (если нет причин не доверять информации об уязвимости). Например, Telegram ничего не говорит о своих уязвимостях.
Исправления программного продукта выходят дольше, чем за неделю с момента публикации информации об уязвимости или с момента первого сообщения об этой уязвимости в организацию. Некритичные, но важные функциональные дефекты неисправляются месяцами.
Организация не признаёт факта того, что ей сообщили об уязвимости.
Одни и те же ошибки, найденные в ПО и его аналогах, имеют в проблемном ПО большую степень критичности (например, в одном случае позволяют прочитать информацию, а в другом - исполнить произвольный код на компьютере пользователя)
Разработчики заявляют о высокой безопасности продукта, но используют уже не совсем стойкие устаревшие алгоритмы или уличены в другой лжи. Например, Telegram использует sha1. Mozilla постоянно врёт пользователям о том, что они заботяться о безопасности и приватности. Однако, не учитывают интересы разработчиков дополнений, повышающих уровень этой приватности. Вплоть до полной невозможности разработки этих дополнений далее. К сожалению, Mozilla до сих пор является ведущим производителем браузеров.
Одна и та же уязвимость появляется, после исправления, снова в новых версиях ПО.
В одном продукте находят уязвимости при аудите, в другом гораздо меньше или вообще не находят. Однако, это и вопрос доверия к аудиту. Например, в VeraCrypt находили больше критических уязвимостей, чем в TrueCrypt.
Продукт красочный, с хорошим дизайном (бизнес хочет его продать, а не добиться технического совершенства). Обращаю внимание, что удобный продукт может быть безопасным. Речь идёт именно об украшательствах. Особенно, когда интерфейс красочный, с плавными переходами цветов, нарисованными красивыми картинками, но не очень удобный и понятный.
Кому доверять?