Криптография и безопасность в технологии. NET

Криптография и безопасность в технологии. NET


ПредисловиеГлава 1. Криптография и безопасность в .NETПрирода этой книгиОпасность подстерегает повсюдуПОСТАВЬТЕ СЕБЯ НА МЕСТО ЗЛОУМЫШЛЕННИКАПРИМЕРЫ УГРОЗ И СООТВЕТСТВУЮЩИХ ИМ КОНТРМЕРЛОЖНОЕ ЧУВСТВО БЕЗОПАСНОСТИПрирода криптографии и других средств обеспечения безопасностиПочему криптография и средства обеспечения безопасности так важныЗАЧЕМ БЕСПОКОИТЬСЯ, ЕСЛИ ВАМ НЕЧЕГО СКРЫВАТЬ?КАТЕГОРИИ БЕЗОПАСНОСТИЧто возможно и что невозможно сделать с помощью криптографии и средств обеспечения безопасностиЧТО МОЖНО СДЕЛАТЬ ПРИ ПОМОЩИ КРИПТОГРАФИИ И ДРУГИХ СРЕДСТВ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ ДАННЫХЧЕГО НЕЛЬЗЯ СДЕЛАТЬ ПРИ ПОМОЩИ КРИПТОГРАФИИ И ДРУГИХ СРЕДСТВ ОБЕСПЕЧЕНИЯ БЕЗОПАСНОСТИ ДАННЫХБезопасность в Windows: возраст зрелостиСреда разработки .NET Framework и «виртуальная машина» CRLКак .NET Framework упрощает решение проблем безопасностиНадежность и платформа .NET FrameworkУправляемый код и безопасность типовПрограммирование с использованием криптографии в .NETПрограммирование с использованием средств обеспечения безопасности в .NETБезопасность, основанная на механизме ролейCAS, свидетельства, политика и разрешенияИтоги главыГлава 2. Основы криптографииЧтобы секреты оставались секретамиОсновные термины криптографииСекретные ключи против секретных алгоритмовКлассические методы сохранения тайныШИФР ЦЕЗАРЯАТАКА МЕТОДОМ «ГРУБОЙ СИЛЫ» НА ШИФР ЦЕЗАРЯПРОСТОЙ ПОДСТАНОВОЧНЫЙ ШИФРЧАСТОТНЫЙ АНАЛИЗ: РАСКРЫТИЕ ПОДСТАНОВОЧНОГО ШИФРАШИФР ВИЖЕНЕРААТАКА БЭББИДЖА: РАСКРЫТИЕ ШИФРА ВИЖЕНЕРАЕДИНСТВЕННЫЙ НЕУЯЗВИМЫЙ ШИФР: ОДНОРАЗОВЫЙ ШИФРОВАЛЬНЫЙ БЛОКНОТРабочий фактор атаки методом «грубой силы»Арифметика произвольной точностиСтеганографияСовременные шифрыКриптография и .NET FrameworkСимметричная криптографияАсимметричная криптографияКриптографические алгоритмыГЕНЕРАТОРЫ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛГЕНЕРАТОРЫ ПСЕВДОСЛУЧАЙНЫХ ЧИСЕЛ И .NET FRAMEWORKКРИПТОГРАФИЧЕСКИЕ ХЕШИРУЮЩИЕ АЛГОРИТМЫКриптографические протоколыКриптоаналитические атакиЧеловеческий факторРиск и выигрышДругие важные концепцииИтоги главыГлава 3. Симметричная криптографияСимметричные шифрыDESОперационные режимыРЕЖИМ ЕСВРЕЖИМ СВСРЕЖИМЫ CFB И OFB«Тройной» DESRijndaelRC2Программирование при помощи средств симметричной криптографии .NETОсновные криптографические классыКласс SymmetricAlgorithmКлассы, производные от SymmetricAlgorithmПримеры программирования с использованием симметричных алгоритмовКриптографические потокиВыбор надежных ключейПроблемы передачи ключейШифрованные хеши и целостность сообщенияХеш-алгоритмы с ключом и целостность сообщенияИтоги главыГлава 4. Асимметричная криптографияПроблемы, связанные с использованием симметричных алгоритмовПроблема распределения ключейПроблема доверияИдея асимметричной криптографииИспользование асимметричной криптографииАналогия с кодовым замкомСЕКРЕТНОСТЬ БЕЗ ПРЕДВАРИТЕЛЬНОГО РАСПРЕДЕЛЕНИЯ КЛЮЧЕЙПОДТВЕРЖДЕНИЕ ЦЕЛОСТНОСТИОдносторонняя функция с «черным ходом»Преимущества асимметричного подходаСочетание асимметричных и симметричных алгоритмовСуществующие асимметричные алгоритмыRSA: самый распространенный асимметричный алгоритмОснования RSAМиниатюрный пример RSAПредостережение: вопросы вероятностиПрограммирование при помощи .NET Asymmetric CryptographyПример использования алгоритма RSAСохранение ключей в формате XMLЦифровые сертификатыИтоги главыГлава 5. Цифровая подписьХеш-алгоритмыХарактеристики хорошей хеш-функцииХеш-алгоритмы, поддерживаемые в .NETКласс HashAlgorithmКлассы MD5 и SHAКласс Кеуес1На5ИА1догй11тИдентификаторы объектовКак работает цифровая подписьRSA в качестве алгоритма цифровой подписиПример программы с использованием подписи RSAАлгоритм цифровой подписи DSAМатематическое основание: теория группЗадача о дискретных логарифмахКак работает DSAИерархия класса AsymmetricAlgorithmКласс DSACryptoServiceProviderПример программы с использованием DSAИтоги главыГлава б. Криптография и XMLXML Encryption - шифрование XMLXML Encryption против SSL/TLSСпецификация шифрования XMLЧто обеспечивает шифрование XMLСинтаксис XML EncryptionПРОСТРАНСТВО ИМЕН XML ENCRYPTIONЭЛЕМЕНТЫ ШИФРОВАНИЯ XMLКак работает шифрование XMLКлассы, используемые в XML EncryptionПередача асимметричных ключейПример программы XmlEncryptionXML Signatures - подпись XMLСпецификация XML SignatureЧто предусматривает спецификация XML SignatureСинтаксис XML SignatureКлассы, используемые в XML SignaturesПрограмма EnvelopingXmlSignatureСочетание XML Signing и XML EncryptionИтоги главыГлава 7. Концепция безопасности, основанной на идентификации пользователей в .NETАутентификация и авторизацияМодель безопасности .NETАдминистрирование безопасности на уровне WindowsОпределение пользователей и ролей в WindowsОпределение прав доступа к общей папкеСредства безопасности в NTFSАдминистрирование безопасности на уровне .NETРазрешенияИнтерфейс IPermissionИерархия наследования IPermissionКласс PrincipalPermissionБезопасность, основанная на идентификации пользователейОбъекты Principal и IdentityИнтерфейс IldentityКлассы, реализующие интерфейс IldentityКласс GenericldentityКласс WindowsldentityОбъекты-принципалыИнтерфейс IPrincipalКласс GenericPrincipalКласс WindowsPrincipalДва подхода к безопасности, основанной на идентификации пользователейИмперативный подходДекларативный подходМандатыСетевые мандатыДисциплина безопасностиПринцип минимума полномочийРаннее формулирование политики безопасностиИтоги главыГлава 8. Доступ к коду в .NETНеобходимость в контроле доступаЗатраты против рискаДиапазон рисковСтепень доверия к сборкеРиски, связанные с обращением к традиционному кодуБезопасность, управляемый код и среда CLRПромежуточный язык MicrosoftВерифицируемый код с контролем типовЗапросы разрешенийИспользование CASГибкий подход к обеспечению безопасностиАтака «с приманкой» и проход по стекуУправление политиками безопасности при помощи групп кодаОсновные концепции управления политиками безопасностиИспользование средства конфигурирования .NET Framework ConfigurationПРИМЕР ПРОГРАММЫ PINVOKE: ОПРЕДЕЛЕНИЕ НОВОЙ ГРУППЫ КОДАОПРЕДЕЛЕНИЕ НОВОГО НАБОРА РАЗРЕШЕНИЙИспользование утилиты Caspol.exeИмперативный и декларативный подходы в CASКонцепция безопасности, основанная на свидетельствахКласс EvidenceКОНСТРУКТОРЫ КЛАССА EVIDENCEСВОЙСТВА КЛАССА EVIDENCEМЕТОДЫ КЛАССА EVIDENCEПолучение свидетельства текущего домена приложенияПеречисление объектов EvidenceПример программы WalkingThruEvidenceДоступ к WalkingThruEvidence через IISCAS в императивном стилеПРИМЕР ПРОГРАММЫ IMPERATIVECASРазрешения доступа кодаПроизводные классы CodeAccessPermissionКласс CodeAccessPermissionКласс UrlldentityPermissionРабота c разрешениями CASДекларативное разрешение доступаСинтаксис объявления атрибутов с квадратными скобкамиАтрибут Url Identity PermissionКласс SecurityActionЗапросы разрешенийПример программы PermissionRequestНаборы разрешенийКласс PermissionSetПРИМЕР ПРОГРАММЫ PERMISSIONSETОпределение набора разрешений при помощи конфигурационного файлаПРИМЕР ПРОГРАММЫ CONFIGUREDFILEIOPERMISSIONИтоги главыГлава 9. ASP.NETБазовые механизмы безопасностиАутентификация: Кто вы?Авторизация: Дозволен ли вам доступ к этому ресурсу?Заимствование прав: Приложение действует от чьего-то имениРеализация механизма аутентификации в ASP.NETКонфигурация ASP.NETКак устроена система конфигурирования ASP.NET и чем она хорошаИерархия конфигурационных параметровОписаниеАутентификация при помощи формыМетод 1: хранение регистрационных данных в файле Web.configМетод 2: хранение регистрационных данных в XML-файлеФайл Users.xmlФайл login.aspxМетод 3: хранение регистрационных данных в базе данныхКлассы для аутентификации при помощи формАутентификация при помощи паспортаАутентификация WindowsРеализация авторизации ASP.NETАвторизация на доступ к файлуАвторизация на доступ к URLРеализация заимствования прав ASP.NETИтоги главыГлава 10. Защита Web-службОсновные техники защиты Web-службЗащищенное соединениеАутентификация и авторизацияМеханизмы аутентификации в протоколе HTTPАутентификация Web-служб при помощи заголовков SOAPАрхитектура сообщения SOAPСоздание прокси при помощи Visual Studio .NETТехнологии безопасности XMLЦелостностьXML SignatureЗащита данных и конфиденциальностьXML EncryptionСпецификация управления ключами XML (XKMS - XML Key Management Specification)Язык разметки утверждений безопасности SAML (Security Assertion Markup Language)Глобальная архитектура XML Web-служб (Global XML Web Services Architecture - GXA)WS-SecurityНачальная спецификация WSСледующие шаги спецификацийПочему WS-Security?Распространение маркеров безопасностиЦелостность сообщенияКонфиденциальность сообщенияОрганизацииИтоги главыПример атаки на код: перекрытие стекаКак работает шифр RSAМодульная арифметикаПример программы BigRSAПример программы CrackRSAWorkFactorDemoИспользование библиотеки GNU GMPУстановка CygwinТестирование библиотеки CygwinУстановка GMPУдаление Судллп из системыРесурсы по криптографии и безопасностиОбщетеоретические и концептуальные книгиКниги по криптографической математикеКниги - руководства по безопасностиПопулярные книги по криптографииГруппы новостей по криптографииПолезные Web-сайты на темы криптографии и безопасностиИсследование Web-службЗачем нужны Web-службыОпределение Web-службФундамент Web-службСледующее поколение распределенных вычислений: Web-службыПреимущества Web-службWeb-службы ASP.NETАрхитектура Web-службМодель кода для Web-службыРазработка простой Web-службыConcatenate.es и Concatenate.asmx.esДиректива @ WebServiceПространство имен System.Web.ServicesАтрибут У/еЬ$етсеА«пЬи1еКласс WebServiceАтрибут WebMethodУправление сеансомПротоколыДоступ к Web-службеГенерация проксиСоздание прокси-класса при помощи Wsdl.exeСоздание клиента Windows FormАсинхронное программирование Web-службДва асинхронных метода (Begin и End)Создание Web-службы ASP.NET «Калькулятор»Web-службы все еще развиваютсяИтогиПредметный указатель
 
РЕЗЮМЕ След >