Доверие к змеиному маслу.
Доверие к змеиному маслу.
При исследовании пакета криптографического программного обеспечения всегда остается вопрос: почему вы должны доверять этой программе? Даже если вы самостоятельно исследовали исходный текст, но ведь не каждый имеет опыт в криптографии, чтобы судить о степени защиты. Даже если вы опытный шифровальщик, вы можете пропустить небольшие слабости в алгоритмах.
Когда я учился в колледже в начале семидесятых, я верил, что изобрел прекрасную схему шифрования. Простой псевдослучайный поток чисел добавлялся к потоку текста, чтобы создать зашифрованный текст. В результате, по-видимому, частотный анализ зашифрованного текста станет невозможным, и такой текст будет недоступен для расшифровки даже наиболее мощным правительственным службам. Я был настолько уверен в этом достижении. Излишне самоуверен.
Спустя несколько лет я обнаружил эту самую схему в нескольких статьях и учебниках по криптографии. Другой специалист размышлял о той же самой схеме. К сожалению, она была представлена как одна из простейших в качестве примера об использовании элементарной криптографической технологии для ее вскрытия. Столь много для моей прекрасной схемы.
Из этого скромного опыта я понял, как легко ошибиться в оценке качества защиты при изобретении алгоритма шифрования. Большинство людей не понимают, как дьявольски трудно изобрести алгоритм шифрования, который мог бы долго противостоять и отражать атаки сильного противника. Множество инженеров-программистов разработали одинаково наивные схемы шифрования (часто одинаковые), и некоторые из них были включены в коммерческие криптографические программные пакеты и продавались за хорошие деньги тысячам доверчивых пользователей.
Это похоже на продажу самофиксирующихся ремней безопасности, которые смотрятся хорошо и удобны, но фиксируются в открытом состоянии даже при самой медленной проверке. Зависимость от таких ремней может быть хуже, чем даже не использовать ремни совсем. Никто не предполагает, что они действительно плохи вплоть до настоящей аварии. Зависимость от слабого криптографического программного обеспечения может привести к необходимости размещения секретной информации с долей риска. Ведь вы не смогли бы иначе выполнить это, если бы у вас не было никакого криптографического программного обеспечения вообще. Возможно, вы даже никогда и не обнаружите, что ваши данные были скомпрометированы.
Иногда коммерческие пакеты используют Федеральный Стандарт Шифрования Данных (DES), хороший стандартный алгоритм рекомендуемый правительством для коммерческого применения (но не для секретной информации, что в значительной степени странно — хм... ). Существует несколько "режимов операции", которые DES может использовать, некоторые из них лучше, другие хуже. Правительство специально не рекомендует использовать самый слабый и простейший режим для сообщений, режим Electronic Codebook (ЕСВ). Оно рекомендуют более сильные и более сложные режимы Cipher Feedback (CFB) или Cipher Block Chaining (СВС).
К сожалению, большинство рассмотренных мною коммерческих пакетов для шифрования применяют режим ЕСВ. Когда я разговаривал с авторами ряда подобных систем, они говорили мне, что никогда не слышали о режимах СВС и CFB, и ничего не знали о слабостях режима ЕСВ. Тот факт, что они даже не изучили криптографию в объеме, достаточном для знания элементарных принципов, не убеждает. Те же самые программные пакеты часто включают в себя второй более быстрый алгоритм шифрования, который может использоваться вместо медленного DES. Автор такого пакета нередко полагает, что его собственный более быстрый алгоритм является столь же надежным, как и DES, но после подробных расспросов я обычно выясняю, что это просто-напросто разновидность моей знаменитой схемы времен колледжа. А иногда он может даже не рассказать, как работает его схема, но будет уверять меня, что это прекрасная схема и я должен ему верить. Несомненно, он полагает, что его алгоритм великолепен, но как я могу верить этому, не видя самого алгоритма?
Со всей честностью я должен подчеркнуть, что в большинстве случаев такие программы выпускаются компаниями, которые не специализируются в криптографической технологии.
Существует компания, которая называется AccessData (87 East 600 South, Orem, Utah 84058, телефон 1-800-658-5199), которая продает за 185 долларов пакет, который взламывает встроенные схемы шифрования, используемые WordPerfect, Lotus 1-2-3, MS Excel, Symphony, Quatro Pro, Paradox и MS Word 2.0. Она не просто разгадывает пароли, она осуществляет настоящий криптоанализ. Некоторые люди покупают ее, если они забыли пароли своих файлов. Административные власти также покупают ее, таким образом они могут читать захваченные файлы. Я разговаривал с автором, Eric Thompson, он сказал что его программа вскрывает защиту за долю секунды, но он добавил в программу несколько циклов задержки, чтобы замедлить этот процесс, дабы это не казалось слишком простым для заказчика. Он также сообщил нам, что функция шифрования с паролем архиватора PKZIP может быть легко взломана, и его официальные заказчики уже обладают таким средством, которое им поставил другой продавец.
Иными словами, криптография подобна фармакологии. Ее достоверность имеет решающее значение. Плохой пенициллин выглядит также, как и хороший пенициллин. Вы можете сообщить о том, что ваш электронный бланк ненадежен, но как вы сообщите о том, что ваш криптографический пакет слаб? Текст, который был зашифрован с помощью слабого алгоритма шифрования, выглядит столь же хорошо, как и текст, зашифрованный мощным алгоритмом. Такой текст похож на "змеиное масло" или лечение шарлатана. Однако, в отличие от продавцов патентованных лекарств, изготовители этого программного обеспечения обычно даже не подозревают, что их продукция — настоящее змеиное масло. Они могут быть хорошими специалистами по разработке программ, но они обычно даже не читали никакой академической литературы по криптографии. И они считают, что могут написать хорошее криптографическое программное обеспечение. А почему бы и нет? Несмотря ни на что, интуиция подсказывает, что это сделать достаточно легко. И создается впечатление, что их программное обеспечение работает хорошо.
Если кто-то считает, что он изобрел невзламываемую систему шифрования, тот либо невероятно редкий гений, либо наивен и неопытен.
Я помню диалог с Brian Snow, высокопоставленным специалистом по криптографии из NSA. Он сказал, что никогда не будет доверять алгоритму шифрования, разработанному человеком, который это не "заслужит", потратив предварительно достаточно времени на раскрытие кодов. В этом весьма много смысла. Я не встречал в мире коммерческой криптографии практически ни одного человека, которого можно было бы охарактеризовать таким образом. "Да", — сказал он с уверенной улыбкой, — "и это делает нашу работу в NSA значительно проще". Неприятная мысль. Я тоже не занимался этим.
У правительства, по слухам, тоже есть "змеиное масло". После Второй Мировой войны Соединенные Штаты продали шифровальные машины Enigma правительствам третьих стран. Но при этом они не сообщили им, что союзники за время войны расшифровали код машины Enigma, факт, который держался в секрете много лет. Даже сегодня многие системы Unix во всем мире используют шифр Enigma для шифрования файлов, частично оттого, что правительство создало все препятствия для использования лучших алгоритмов. Оно даже пыталось предотвратить первоначальную публикацию алгоритма RSA в 1977 году. И теперь направляет все коммерческие усилия на разработку эффективных секретных телефонов.
Основная работа правительственного NSA — это собирать информацию, преимущественно путем скрытого подключения к частным коммуникационным линиям (см. книгу James Bamford "The Puzzle Palace"). NSA обладает значительным мастерством и ресурсами для раскрытия кодов. Если люди не обладают мощной криптографической системой для защиты своей информации, это делает задачу NSA значительно проще. Кроме того, у NSA есть обязанность одобрять и рекомендовать алгоритмы шифрования. Необходимо отметить это интересное противоречие, подобное назначению лисы для охраны курятника. NSA протолкнуло стандартный алгоритм шифрования, разработанный им же, и оно не собирается никому сообщать, как он работает, так как он является секретным. Однако, оно требует, чтобы все этому алгоритму доверяли и использовали его. Но любой специалист в области криптографии может вам подтвердить, что удачно разработанный алгоритм шифрования не должен быть засекречен, дабы оставаться надежным. В защите должны нуждаться только ключи. Как мы можем знать, насколько надежен алгоритм шифрования NSA? Для NSA совсем не сложно разработать алгоритм, который сможет взломать только оно, если этот алгоритм больше никто не увидит. Не является ли это преднамеренной продажей "змеиного масла"?
Я не могу быть полностью уверен в уроне надежности PGP, поскольку однажды я уже разрабатывал прекрасный алгоритм — в колледже. Если я снова буду так же уверен, это будет плохим сигналом. Но я в достаточной степени уверен, что PGP не содержит грубых ошибок. Криптографические алгоритмы разрабатывались людьми с высоким уровнем криптографического образования. Исходные тексты доступны для облегчения изучения PGP и с целью помочь рассеять опасения некоторых пользователей. Разработке предшествовали достаточно глубокие исследования и годы работы. К тому же я не работаю на NSA. Я надеюсь, что не требуется слишком большого "скачка в доверие" для того, чтобы доверять надежности PGP.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
1.8. Формируйте доверие с первой секунды
1.8. Формируйте доверие с первой секунды На конкурентном рынке клиенты предпочитают работать с теми компаниями, которым они доверяют. Из чего складывается это доверие? Безусловно, огромное значение имеют репутация бренда и опыт предыдущего взаимодействия с компанией. Но
Надежность сайта и доверие клиентов
Надежность сайта и доверие клиентов Надежность сайта и доверие клиентов жизненно необходимы для создания эффективной системы убеждения. Если посетитель не уверен в сайте, он никогда ничего не купит. Но есть кое-что такое, без чего убеждение невозможно.Нельзя доказать
Как сформировать доверие на сайте
Как сформировать доверие на сайте Конверсия на интернет-сайте в большинстве случаев лежит в диапазоне от 0,1 до 3 %, между тем в продажах лицом к лицу показатель конверсии часто превышает 50 %.Люди боятся совершать покупки в Интернете и не доверяют компаниям, которые они не
Подлинность и доверие
Подлинность и доверие Любой пользователь в среде криптосистем с открытым ключом рискует рано или поздно принять по неосторожности поддельный ключ (сертификат) за настоящий. Достоверность (подлинность) состоит в том, что конкретный открытый ключ принадлежит именно тому
Прямое доверие
Прямое доверие Прямое доверие (или непосредственное доверие) — это простейшая из моделей отношений доверия. В этой схеме пользователь убеждён, что ключ подлинный, поскольку точно знает, от кого получил этот ключ. Все криптосистемы в той или иной мере используют эту форму
Иерархическое доверие
Иерархическое доверие В иерархической системе существует ряд корневых сертификатов, от которых распространяется доверие. Эти сертификаты могут либо сами заверять сертификаты конечных пользователей, либо они могут уполномочивать другие сертификаты, которые будут
ТЕМА НОМЕРА: Анонимность и свобода, ответственность и доверие
ТЕМА НОМЕРА: Анонимность и свобода, ответственность и доверие Автор: Илья Щуров VoyagerЧитая материалы темы номера, я вспомнил о любопытном обмене репликами, состоявшемся на страницах Edge и Wired (и отчасти «Компьютерры») в начале этого года. Речь шла об одной из самых больных
Глава 4: Внушая доверие
Глава 4: Внушая доверие Перевод: (Теневой Георг, Whitewoolf@ukr.net, ICQ 118145).Некоторые рассказы могли заставить Вас думать, будто я верю в то, что все на самом деле полные идиоты, готовые, даже жаждущие, отдать каждый секрет. Социальный инженер знает, что это неправда. Почему атака
Доверие: ключ к обману
Доверие: ключ к обману Чем естественней социальный инженер общается с жертвой, тем больше он ослабляет подозрение. Когда у людей нет причины для подозрений, социальному инженеру становится легко приобрести доверие жертвы.Как только он получает ваше доверие, разводной
Лекция 1. Доверие в сфере электронных коммуникаций
Лекция 1. Доверие в сфере электронных коммуникаций Рассматривается понятие доверия в контексте электронных коммуникаций, приводится характеристика ключевых элементов и механизмов доверия, обсуждаются политики доверия и примеры ассоциаций доверия, вводится понятие
Падучесть, искупление, погашение, доверие и другие заумные технические понятия
Падучесть, искупление, погашение, доверие и другие заумные технические понятия Линух не заточен под какие-то централизованные политики, диктующие, как писать сообщения об ошибке и документацию, так что каждый программист пишет свои собственные. Обычно они на английском,