Навигация
Обмен ссылками

 
автор: Art
Коммерческие программы обычно защищают от несанкционированного тиражирования. Наличие доступа только к носителю информации с дистрибутивом (набором инсталляционных файлов) программного продукта не должно давать возможности установить работоспособную копию программы. То есть данных
дистрибутива, который можно скопировать или незаметно взять на несколько дней, не должно хватать для создания работоспособной копии программы. Подобные ограничения могут быть реализованы разными способами. Например, очень многие коммерческие программы при инсталляции требуют ввести серийный номер, напечатанный на коробке или указанный в одном из прилагаемых к программному продукту документов (у Microsoft — в сертификате аутентичности). Также часто возникает потребность ограничить число пользователей, одновременно работающих с программой. То есть человек, который приобрел лицензию на одно рабочее место, не должен иметь возможности создать 2 рабочих места, функционирующих одновременно. Это достигается за счет использования аппаратных ключей, менеджеров лицензий и процедуры активации. Для некоторых программных продуктов (в частности игр) часто используется привязка к носителю информации, например компакт-диску. То есть для запуска игры требуется наличие в приводе оригинального компакт-диска,
который защищен от копирования стандартными средствами.
 
 
автор: Art
Существует довольно много различных моделей распространения программного обеспечения. Рассмотрим характерные особенности некоторых их них. Эта модель распространения программного обеспечения подразумевает отсутствие оплаты за использование программ. Очень часто по такому принципу распространяются небольшие утилиты, которые, по мнению авторов, могут оказаться полезными широкому кругу пользователей, но не будут иметь спроса, если назначить плату за их использование. Разумеется, существуют программисты, создающие бесплатные приложения из любви к искусству или нелюбви к излишней коммерциализации современных информационных технологий. Часто несколько добровольцев организуют команду, разрабатывающую и поддерживающую достаточно сложную программную систему. Многие бесплатные программы распространяются в исходных текстах. Но надо отдавать себе отчет в том, что программы в исходных текстах и бесплатные программы — это совсем не одно и то же. Коммерческие продукты тоже могут поставляться в исходных текстах.
 
 
автор: Art
В России не действуют патенты на криптографические алгоритмы и протоколы. Но во многих странах такие патенты допускаются законодательством. Если разрабатываемая программа будет использоваться не только на территории России, при выборе используемых в ней криптографических алгоритмов стоит оценить их применимость с точки зрения патентной чистоты. Доступность открытого описания алгоритма еще не означает, что никто не станет предъявлять претензий, если этот алгоритм будет использоваться в коммерческом приложении. Как уже говорилось ранее, только экспертная оценка, выполненная силами криптографического сообщества, может дать некоторую уверенность в том, что алгоритм не содержит серьезных недостатков. А для того чтобы криптографы смогли изучать алгоритм, его необходимо открыто опубликовать. Более того, даже если в Интернете присутствует бесплатная криптографическая библиотека, содержащая реализацию определенного алгоритма в исходных кодах, это еще не означает полной свободы в использовании алгоритма.
 
 
автор: Art
Когда для решения конкретной задачи требуется выбрать алгоритм, устраивать открытый конкурс — не самый быстрый путь. В большинстве случаев
достаточно выбрать его из уже существующих алгоритмов. Авторы книги "Криптография. Официальное руководство RSA Security" ("RSA Security's Official Guide to Cryptography") Стив Бернет (Steve Burnett) и Стивен Пэйн (Stephen Paine) для шифрования соединений между компьютерами рекомендуют использовать потоковый алгоритм RC4, т. к. он обеспечивает достаточно высокую скорость. Для таких приложений, как базы данных, электронная почта и защищенное (зашифрованное) хранение файлов, рекомендуется использовать блочные алгоритмы шифрования, в частности AES (Rijndael). Брюс Шнайер (Bruce Schneier) вместе с Нилсом Фергюсоном (Niels Ferguson) в своей книге "Практическая криптография" ("Practical Cryptography") считают, что с точки зрения безопасности карьеры лица, принимающего решение, Rijndael — действительно самый приемлемый блочный алгоритм шифрования. Он принят в качестве стандарта в США, и если в AES в будущем будут обнаружены серьезные недостатки, наказывать за это, скорее всего, никого не станут. Кроме того, AES уже достаточно широко распространен и поддерживается большим числом библиотек. Так что AES — почти беспроигрышный выбор.
 
 
автор: Art
Хорошим примером того, как стоит подходить к выбору алгоритма шифрования, может послужить описание процесса выбора алгоритма Advanced
Encryption Standard (AES) — нового стандарта шифрования США, пришедшего на смену DES. В 1996 году национальный институт стандартов и технологий США (National Institute of Standards and Technology, NIST) начал работу над организацией конкурса по выбору лучшего алгоритма для нового стандарта. 2 января 1997 года NIST официально объявил о запуске программы по разработке нового федерального стандарта обработки информации (Federal Information Processing Standard, FIPS). 12 сентября 1997 года начался прием заявок на участие в конкурсе. К кандидатам предъявлялись следующие обязательные требования: П алгоритм должен относиться к симметричной криптографии (с секретным ключом); П алгоритм должен являться блочным шифром; О алгоритм должен поддерживать следующие комбинации размеров ключа и блока шифрования: 128—128, 192—128 и 256—128.
 
 
автор: Art
При реализации криптографических протоколов некоторые моменты могут показаться программисту излишними, и он с легкой душой избавится от ненужного на его взгляд кода, тем самым еще и увеличивая быстродействие программы. Например, при реализации шифрования по RSA кажется достаточным просто реализовать операцию модульного возведения в степень. Однако спецификация PKCS#1 (Public-Key Cryptography Standards) требует добавления к каждой порции шифруемых данных как минимум 8-ми случайных байт. Дело в том, что при использовании алгоритмов с открытым ключом в распоряжении злоумышленника оказывается возможность расшифровывать все сообщения, зашифрованные на секретном ключе (что не дает ему значительного преимущества), а также самостоятельно зашифровывать любые сообщения на открытом ключе.
 
 
автор: Art
Для проверки целостности данных часто применяют цифровую подпись, например на основе алгоритма RSA. Подпись реализуется путем зашифрования значения хэш-функции от защищаемых данных на секретном ключе RSA. Для проверки целостности необходимо снова вычислить значение хэш-функции от тех же данных, а потом сравнить его со значением, расшифрованным открытым ключом RSA. Если при подписи используется плохая хэш-функция, то возможно подделать подписанные данные, не взламывая RSA.
 
 
автор: Art
Если блочный шифр используется для шифрования больших объемов неслучайных данных, имеющих повторения, то, анализируя повторения в блоках шифртекста, можно получить некоторую информацию о содержимом файла. Блочный алгоритм в режиме ЕСВ в файлах SealedMedia
В зашифрованных PDF-файлах SealedMedia (с расширением spdf) легко обнаружить несколько одинаковых 8-байтных блоков, повторяющихся с периодом в 40 байт. Только на основании этой информации можно предположить, что используется блочный алгоритм шифрования с размером блока 8 байт (например DES), зашифрован PDF-файл, а повторяющиеся блоки относятся к таблице перекрестных ссылок. Каждая запись этой таблицы занимает 20 байт, и большин-
ство элементов таблицы различаются в пяти-шести байтах.
 
 
автор: Art
Генераторы псевдослучайных чисел требуются практически в любом приложении, использующем криптографию. И очень часто разработчики не уделяют достаточно внимания характеристикам используемого генератора. Вот несколько иллюстраций. Пожалуй, самый известный пример — ошибка в реализации протокола SSL (Secure Sockets Layer) в браузере Netscape. Взлом 128-битового шифрования в Netscape Компания Netscape разработала протокол SSL и реализовала его в своем браузере. Данные, передаваемые посредством SSL, зашифровывались алгоритмом RC4 со 128-битовым ключом. 17 сентября 1995 года Йен Голдберг (Ian Goldberg) сообщил о том, что ему в сотрудничестве с Дэвидом Вагнером (David Wagner) удалось обнаружить уязвимость в процедуре выбора 128-битового ключа для алгоритма RC4. Недостаток процедуры заключался в том, что начальное состояние генератора псевдослучайных чисел основывалось на трех значениях: идентификаторе процесса, генерирующего ключ, идентификаторе его родительского процесса и текущем времени. Учитывая то, что значительную часть информации о номерах процессов и времени можно было предугадать, пространство возможных ключей сократилось с 2128 до 220, и на поиск ключа шифрования уходило всего 25 секунд.
 
 
автор: Art
Использование правильно реализованного алгоритма шифрования еще не гарантирует, что данные будут действительно хорошо защищены. Так, весь-
ма распространенная ошибка при использовании потоковых шифров — шифрование нескольких потоков на одном ключе. Как было показано ранее, потоковые шифры вроде RC4 являются генераторами гаммы, которая накладывается на шифруемые данные путем сложения по модулю 2. Имея только зашифрованные данные, получить открытый текст без знания ключа практически невозможно. Однако, зная шифртекст и соответствующий ему открытый текст, не составляет труда вычислить фрагмент гаммы, соответствующей ключу. Это нормальная ситуация, т. к. хороший алгоритм шифрования по фрагменту гаммы не должен позволять определить ключ или другие фрагменты гаммы. Но если на том же самом ключе был зашифрован другой поток данных, то, зная шифртекст и фраг-
мент гаммы, элементарно вычислить открытый текст, соответствующий известному фрагменту гаммы. Тот факт, что один и тот же ключ потокового алгоритма, работающего в режиме OFB, нельзя использовать дважды, можно отнести к азам криптографии, которые должен знать каждый, имеющий дело с информационной безопасностью. Однако даже разработчики, называющие себя профессионалами в области защиты программ от компьютерного пиратства, грешат невыполнением прописных истин.
 
Авторизация
Топ новостей