Криптоrрафия и безопасность в.NET Введение. Криптография и безопасность Нечасто вы встретите книгy, в которой вопросы криптографии обсуждались бы одновременно.

Презентация:



Advertisements
Похожие презентации
Саркисян Карен группа Криптография и безопасность За последние несколько лет технологии обеспечения безопасности непрерывно повышали свою значимость.
Advertisements

Сетевые службы Для конечного пользователя сеть это не компьютеры, кабели и концентраторы и даже не информационные потоки, для него сеть это, прежде всего,
Лекция 5 - Стандарты информационной безопасности распределенных систем 1. Введение 2. Сервисы безопасности в вычислительных сетях 3. Механизмы безопасности.
Организация компьютерной безопасности и защита информации автор: Чекашов а Ирин а 10А учитель: Антонова Е.П год.
ЗАЩИТА ИНФОРМАЦИИ ПОДГОТОВИЛА
МЕТОДЫ ПРОГРАММНО- АППАРАТНОЙ ЗАЩИТЫ ИНФОРМАЦИИ. Программно-аппаратные средства защиты информации это сервисы безопасности, встроенные в сетевые операционные.
Модель угроз безопасности персональных данных при их обработке в информационных системах АПЭК Выполнил студент Группы 11 инф 112: Сотников П.В. Проверил.
Лекция 4 - Стандарты информационной безопасности: «Общие критерии» 1. Введение 2. Требования безопасности к информационным системам 3. Принцип иерархии:
Требования к доверенной третьей стороне в интегрированной информационной системе Евразийского экономического союза.
1 Критерии и классы защищенности средств вычислительной техники и автоматизированных систем Подготовила: студентка гр.И-411 Сартакова Е.Л.
Стандарты по оценке защитных систем. стандарты и спецификации двух разных видов: оценочные стандартов, направленные на классификацию информационных систем.
Администрирование RAS серверов. RAS (Remote Access Server) сервер – это сервер удаленного доступа. Используется для соединения компьютеров по коммутируемым.
К построению и контролю соблюдения политик безопасности распределенных компьютерных систем на основе механизмов доверия А. А. Иткес В. Б. Савкин Институт.
ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ ИНФОРМАЦИОННЫХ ТЕХНОЛОГИЙ.
Презентация на тему "Программное обеспечение информационных технологий"
«Информационная безопасность вычислительных сетей. Модель взаимодействия открытых систем OSI / ISO »
ПЕРСОНАЛЬНОЕ СКЗИ ШИПКА ОКБ САПР Москва, 2007.
Асимметричная криптография. Проблемы и идеи. Проблемы, связанные с использованием симметричных шифров Симметричные алгоритмы обеспечивают эффективное.
Проблемы обеспечения безопасности приложений Тема 20.
Правовые нормы, относящиеся к информации, правонарушения в информационной сфере, меры их предотвращения.
Транксрипт:

Криптоrрафия и безопасность в.NET Введение

Криптография и безопасность Нечасто вы встретите книгy, в которой вопросы криптографии обсуждались бы одновременно с вопросами безопасности и при этом с одинаковым вниманием. Эти две темы, на первый взгляд, принадлежат к совершенно разным областям и обычно рассматриваются по отдельности. Книги по криптографии, как правило, отличаются обилием математики и основываются на теоретических подходах. В противоположность им, книги по безопасности компьютерных систем ориентированы не на программиста, они посвящены практическим рецептам выполнения таких, например, операций, как установка сервера сертификатов, создание учетных записей и тому подобное. Между этими двумя крайностями мы видим программиста.NET, озабоченного проблемами, которые по своей природе не относятся ни к математике, ни к системному администрированию.

Криптография и безопасность В этой главе мы рассмотрим вопросы криптографии и безопасности в технологии.NET и получим общее представление о том, как эти две темы связаны между собой с точки зрения.NET программирования. Эта книга реализует смешанный подход к освещению предмета, сочетающий в себе основы теории криптографии и вопросы aдминистрирования систем с точки зрения безопасности на платформе.NET. В первой главе мы начнем с обзора наиболее важных концепций безопасности и криптографии на платформе.NET, приведя примеры тoгo, как реализуется система безопасности в приложениях.NET. В главе 2 мы рассмотрим теоретические основы криптографии, начиная с устройства шифра и принципов криптоанализа простейших шифровальных систем, известных с древних времен.

Криптография и безопасность Далее в главах 3, 4 и 5 мы продвинемся дальше, изучив технику программирования.NET применительно к трем ОСНОВНЫМ криптографическим системам, используемым в наше время: симметричные и асимметричные системы, а также цифровая подпись. В этих трех главах приводятся развернутые примеры npoгpaммнoгo кода, реализующегo все эти системы при помощи классов.NET Security. В главе 6 продолжится исследование вопросов, связанных с шифрованием и цифровой подписью, но уже в контексте технологии XML. Главы 7 и 8 продемонстрируют основные техники программирования, реализующие такие концепции.NET, как управление доступом на основе механизма ролей и управление доступом кода к ресурсам на основе свидетельств в программах.NET. Разумеется, реалии распределенных приложений и среды Internet дeлают особенно важными, с точки зрения безопасности, многие специфические аспекты программ, и в главах 9 и 10 мы рассмотрим вопросы безопасности технологии ASP.NET и Wеb сервисов, основанных на.NET.

Природа криптографии и других средств обеспечения безопасности Главные вопросы, касающиеся самой природы криптографии и средств обеспечения безопасности: - Почему криптография и средства обеспечения безопасности так важны? - Что возможно и что невозможно сделать с их помощью? Первый вопрос. в сущности, это вопрос типа «зачем нам это нужно?», а второй – это вопрос типа «что мы можем сделать при помощи этогo?».

Почему криптография и средства обеспечения безопасности так важны Существует четыре основных аспекта, в которых рассматривается безопасность данных: секретность, аутентификация, целостность и подтверждение обязательств (nonrepudiation). Очевидно, что секретность во многих случаях может иметь большое значение. Понятно, что секретность необходима в ситуациях, когда критическую информацию необходимо скрыть от противника. Вы без труда также представите себе ситуацию, когда очень важно точно знать с кем именно вы имеете дело (проблема аутентификации). Не менее важно иногда увериться в том, что информация, которую вы получили от кого-то или кому-то отослали, не может быть изменена злонамеренным третьим лицом (проблема целостности). Наконец, вам может потребоваться yвepeнность в том, что некто, с кем вы договорились о чем то, не откажется от своих слов (подтверждение обязательств).

Проблемы безопасности Рассмотрим общие категории, на которые можно разбить проблемы безопасности. Вам обязательно придут на ум из сообщений новостей или даже из собственной практики примеры каждой из этих категорий: утечки интеллектуальной собственности, нарушенные контракты, сорванные сделки; созданный злоумышленником программный код: почтовые вирусы, логические бомбы, обычные программные вирусы и троянские программы; программные техники несанкционированного доступа такие, как например, техника переполнения буфера; фальшивые сообщения; нарушение договорных обязательств; ошибки в коде, угрожающие безопасности данных. При надлежащем планировании и применении функциональные возможности платформы.NET в плане криптографии и безопасности способны в огромной мере упростить решение всех этих проблем.

ЧТО МОЖНО СДЕЛАТЬ при помощи криптографии и других средств обеспечения безопасности данных Средства, которые предоставляет платформа.NET, позволяют реализовать следующие разновидности защиты: обеспечение конфиденциальности информации; аутентификация пользователей; целостность информации; противодействие нарушению договорных обязательств; контроль доступа к ресурсам; доступность служб.

ЧТО НЕЛЬЗЯ СДЕЛАТЬ при помощи криптографии и других средств обеспечения безопасности данных Человеческий фактор! Вот примерный список тех угроз для безопасности системы, которые связаны непосредственно с «человеческим фактором: недостаточная подгoтовка, низкая дисциплина персонала; небрежность разного рода, например, плохой выбор пароля, компрометация ключей или пересылка нешифрованных данных; излишняя доверчивость, неопытность и наивность; атаки, основанные на «социальной инженерии и артистизме; взятки, запугивание, шантаж; плохое качество прогpамм, ошибки в коде.

Безопасность в ОС: Безопасность данных и криптогpафия с caмoгo начала рассматривались как важный фактор при работе в многoпользовательской среде. Уже в самых ранних системах, «мейнфреймах» (больших ЭВМ) середины 60x гoдов таких, как System/360, многопользовательская среда строилась с большим вниманием к аутентификации пользователей и изоляции задач друг от друга. Симметричные криптографические алгoритмы такие, как DES (Data Encryption Standard - Стандарт шифрования данных), активно применялись в банковских и правительственных приложениях уже в конце 70x. Системы семейства UNIX на всем протяжении своей истории учитывали проблемы безопасности как фактор первостепенной важности. В начале 90x в UNIХ системах уже была внедрена симметричная в асимметричная криптография в различных протоколах и технологиях, как, например, в протоколе сетевой идентификации Kerberos.

Безопасность в Windows: В противоположность всему этому, история системы Windows начиналась с явногo недостатка средств обеспечения безопасности. До некоторой степени это можно понять, учитывая тот факт. что в начале cвoeгo пути (особенно, еще в 16-разрядной версии), система Windows использовалась в качестве однопользовательского инструмента для некритичных приложений или вообще как игpовая платформа. Но прошло время, и система Windows выросла, став целой отраслью промышленности и обеспечив мир эффективными и удобными приложениями. К досаде компьютерных профессионалов старых времен, развитие Windows было сопряжено с проблемами надежности и безопасности, с утечками информации и уязвимостями различного рода. К счастью, теперь ситуация меняется, и тому есть ряд причин:

пользователи персональных компьютеров стали гораздо опытней, они нуждаются в большей надежности и безопасности; корпорации осознали всю важность проблем безопасности данных в сети Internet; в Мicrosoft с недавнего времени проблемы безопасности и надежности стали рассматриваться, как проблемы стратегической важности; многие вычислительные задачи, требующие выcoкoгo уровня безопасности, переместились с «мейнфреймов» на персональные компьютеры; прогpаммный интерфейс Win32 обеспечивает мощную, но не слишком прозрачную поддержку функций, связанных с безопасностью; платформа.NET обеспечивает мощную и удобную поддержку всех задач, связанных с криптографией и иными средствами обеспечения безопасности;

многие эксперты в этой области, включая Брюса Шнайера, провели большую работу по разъяснению всей важности обеспечения безопасности данных; снижение стоимости аппаратного обеспечения и рост производительности делают «накладные расходы» на обеспечение безопасности более приемлемыми; в январе 2000 года экспортные ограничения США на технологии, связанные с криптографией, были серьезно ослаблены; общественность теперь гораздо больше знает от таких опасностях, как вирусы, уязвимости, связанные с переполнением буфера, и тому подобным; увеличение объема критически важных служб, функционирующих в Web, делает проблемы безопасности по-настоящему жгyчими.

Среда разработки.NET Framework и «виртуальная машина» CRL Следующие функциональные черты платформы.NET обеспечивают наиболее важные аспекты безопасности данных: возможность конфигурирования политики безопасности и контроля (административный контроль); CAS (контроль выполнения кода, основывающийся на конфигyрации политики безопасности и контроля); концепция безопасности, основывающаяся на разделении ролей (управление доступом на основе идентификации пользователя и роли, к которой он принадлежит); управляемая в процессе выполнения верификация кода (проверка диапазонов адресов и контроль типов); домены приложений (изоляция приложений при выполнении); криптографические классы (доступ к мощным криптографическим алгоритмам).

Надежность и платформа.NET Framework проверка границ в процессе выполнения кода делает невозможным переполнение стека или разрушение данных в памяти; проверка соответствия типов в процессе выполнения кода делает нeвозможными намеренные или случайные изменения типов; при вызове кода полномочия вызывающего кода верифицируются при помощи механизмов стека; автоматическая сборка мусора эффективно решает проблему утечек памяти; обработка исключений позволяет корректно обрабатывать все нeштатные ситуации; выполнение кода. основанное на механизме разрешений, регулируется политикой безопасности, основывающейся на свидетельствах.

Программирование с использованием криптографии в.NET В.NET Framework доступно несколько криптографических классов. Эти классы поддерживают все основные криптографические алгоритмы, используемые в наше время. симметричные алгоритмы шифрования DES, 3DES и RC2; криптографические потоки; асимметричный алгоритм RSA; цифровая подпись на основе RSA и DSA; хеш алгоритмы, включая MD5, SНA1, SНA256 и другие; коды аутентификации сообщений (МАС); алгоритм хеша с ключом; ХМL шифрование; ХМL подписи; гeнepaтopы псевдослучайных последовательностей; безопасность в ASP.NEТ; безопасность Wеb-служб.