Национальный цифровой ресурс Руконт - межотраслевая электронная библиотека (ЭБС) на базе технологии Контекстум (всего произведений: 634620)
Контекстум
.

Криптография и безопасность в технологии .NET (564,00 руб.)

0   0
Первый авторТорстейнсон Питер
АвторыГанеш Гнана Арун, Хорев В. Д., Молявко С. М.
ИздательствоМ.: Лаборатория знаний
Страниц482
ID443564
АннотацияПодробно излагаются вопросы реализации на .NET-платформе симметричной и асимметричной криптографии, цифровых подписей, XML-криптографии, пользовательской безопасности и защиты кодов, ASP .NET-безопасности, безопасности Web-служб. Изложение построено на разборе примеров конкретных атак на системы безопасности, богато снабжено текстами отлаженных программ.
Кому рекомендованоДля программистов, занимающихся разработкой и настройкой систем безопасности на платформе .NET.
ISBN978-5-00101-700-4
УДК004.7
ББК32.973.202
Торстейнсон, П. Криптография и безопасность в технологии .NET = .NET Security and Cryptography / Дж. Г. А. Ганеш; ред. С.М. Молявко; пер. В.Д. Хорев; П. Торстейнсон .— 4-е изд. (эл.) .— Москва : Лаборатория знаний, 2020 .— 482 с. : ил. — (Программисту) .— Пер. с англ.; Деривативное эл. изд. на основе печ. аналога (М.: БИНОМ. Лаборатория знаний, 2007); Электрон. текстовые дан. (1 файл pdf : 482 с.); Систем. требования: Adobe Reader XI ; экран 10" .— ISBN 978-5-00101-700-4 .— URL: https://rucont.ru/efd/443564 (дата обращения: 19.04.2024)

Предпросмотр (выдержки из произведения)

Глава 9 введет вас в тему программирования на основе технологии ASP.NET, а глава 10 познакомит с программированием Web-служб на основе ASP.NET. <...> Разумеется, реалии распределенных приложений и среды Internet делают особенно важными, с точки зрения безопасности, многие специфические аспекты программ, и в главах9и10мы рассмотрим вопросы безопасности технологии ASP.NET и Web-сервисов, основанных на . <...> NET 15 проблем (то есть секретности, аутентификации, целостности и подтверждения обязательств) можно реализовать соответствующие протоколы безопасности, использующие цифровые подписи и цифровые сертификаты, а так же симметричные алгоритмы шифрования, криптографические хеши и коды аутентификации сообщений (MAC – Message Authentication Codes). <...> Симметричные криптографические алгоритмы такие, как DES (Data Encryption Standard – Стандарт шифрования данных), активно применялись в банковских и правительственных приложениях уже в конце 70-х. <...> В начале 90-х в UNIX-системах уже была внедрена симметричная и асимметричная криптография в различных протоколах и технологиях, как, например, в протоколе сетевой идентификации Kerberos. <...> NET Управляемый код и безопасность типов Код, который используют службы CLR, называется управляемым (managed) кодом. <...> В принципе возможно, используя язык С# и зарезервированное слово unsafe, создать небезопасный код, но другие языки такие, как VB.NET, в принципе могут создавать только управляемый код с безопасными типами. <...> Мы познакомимся со всем этим очень подробно в последующих главах, пока же давайте сделаем краткий обзор основных функций, выполняемых криптографическими классами:  симметричные алгоритмы шифрования DES, 3DES и RC2;  криптографические потоки;  асимметричный алгоритм RSA;  цифровая подпись на основе RSA и DSA;  хеш-алгоритмы, включая MD5, SHA1, SHA-256 и другие;  коды аутентификации сообщений (MAC);  алгоритм хеша с ключом;  XML-шифрование;  XML-подписи;  генераторы псевдослучайных последовательностей2;  безопасность в ASP.NET;  безопасность <...>
Криптография_и_безопасность_в_технологии_.NET.pdf
Стр.4
Стр.5
Стр.474
Стр.475
Стр.476
Стр.477
Стр.478
Стр.479
Стр.480
Криптография_и_безопасность_в_технологии_.NET.pdf
ПРОГРАММИСТУ .................................... П. Торстейнсон, Г. А. Ганеш КРИПТОГРАФИЯ И БЕЗОПАСНОСТЬ В ТЕХНОЛОГИИ .NET Перевод с английского В. Д. Хорева под редакцией С. М. Молявко 4е издание, электронное Лаборатория знаний 2020 Москва
Стр.4
УДК 004.7 ББК 32.973.202 Т61 С е р и я о с н о в а н а в 2005 г. Торстейнсон П. Т61 Криптография и безопасность в технологии .NET / П. Торстейнсон, Г. А. Ганеш ; пер. с англ.—4-е изд., электрон.—М. : Лаборатория знаний, 2020.—482 с. — (Программисту).—Систем. требования: Adobe Reader XI ; экран 10".—Загл. с титул. экрана.—Текст : электронный. ISBN 978-5-00101-700-4 Подробно излагаются вопросы реализации на .NET-платформе симметричной и асимметричной криптографии, цифровых подписей, XML-криптографии, пользовательской безопасности и защиты кодов, ASP .NET-безопасности, безопасности Web-служб. Изложение построено на разборе примеров конкретных атак на системы безопасности, содержит большое количество текстов отлаженных программ. Для программистов, занимающихся разработкой и настройкой систем безопасности на платформе .NET. УДК 004.7 ББК 32.973.202 Деривативное издание на основе печатного аналога: Криптография и безопасность в технологии .NET / П. Торстейнсон, Г. А. Ганеш ; пер. с англ.—М. : БИНОМ. Лаборатория знаний, 2007.—479 с. : ил.—(Программисту).—ISBN 978-5-94774-312-8. Authorized Translation from the English language edition, entitled .NET SECURITY AND CRYPTOGRAPHY; by PETER THORSTEINSON; and by G. GANESH; published by Pearson Education, Inc, publishing as Prentice Hall. Copyright c○ 2004 by Pearson Education, Inc. All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying, recording or by any information storage retrieval system, without permission from Pearson Education, Inc. Electronic RUSSIAN language edition published by BKL PUBLISHERS. Copyright c○ 2013. Авторизованный перевод издания на английском языке, озаглавленного .NET SECURITY AND CRYPTOGRAPHY, авторы PETER THORSTEINSON и G. GANESH, опубликованного Pearson Education, Inc, осуществляющим издательскую деятельность под торговой маркой Prentice Hall. Copyright c○ 2004 by Pearson Education, Inc. Все права защищены. Воспроизведение или распространение какой-либо части/частей данной книги в какой-либо форме, какими-либо способами, электронными или механическими, включая фотокопирование, запись и любые поисковые системы хранения информации, без разрешения Pearson Education, Inc запрещены. Электронная русскоязычная версия издана BKL Publishers. Copyright c○ 2013. В соответствии со ст. 1299 и 1301 ГК РФ при устранении ограничений, установленных техническими средствами защиты авторских прав, правообладатель вправе требовать от нарушителя возмещения убытков или выплаты компенсации ○c 2004, Pearson Education, Inc., ISBN 978-5-00101-700-4 знаний, 2015 ○c русское издание, Лаборатория Publishing as Prentice Hall Proffessional Technical Reference. Upper Saddle River, New Jersy 07458.
Стр.5
Оглавление Предисловие Глава 1. Криптография и безопасность в .NET Природа этой книги Опасность подстерегает повсюду Природа криптографии и других средств обеспечения безопасности Почему криптография и средства обеспечения безопасности так важны Что возможно и что невозможно сделать с помощью криптографии и средств обеспечения безопасности Безопасность в Windows: возраст зрелости Среда разработки .NET Framework и «виртуальная машина» CRL Как .NET Framework упрощает решение проблем безопасности Надежность и платформа .NET Framework Управляемый код и безопасность типов Программирование с использованием криптографии в .NET Программирование с использованием средств обеспечения безопасности в .NET Безопасность, основанная на механизме ролей CAS, свидетельства, политика и разрешения Итоги главы Глава 2. Основы криптографии Чтобы секреты оставались секретами Основные термины криптографии Секретные ключи против секретных алгоритмов Классические методы сохранения тайны Рабочий фактор атаки методом «грубой силы» Арифметика произвольной точности Стеганография Современные шифры Криптография и .NET Framework Симметричная криптография Асимметричная криптография Криптографические алгоритмы Криптографические протоколы Криптоаналитические атаки Человеческий фактор 5 9 10 11 14 14 16 21 22 23 24 24 26 26 27 27 28 29 30 30 33 34 53 54 55 57 57 58 59 62 66 68 69
Стр.474
474 Оглавление Риск и выигрыш Другие важные концепции Итоги главы Глава 3. Симметричная криптография Симметричные шифры DES Операционные режимы «Тройной» DES Rijndael RC2 Программирование при помощи средств симметричной криптографии .NET Основные криптографические классы Класс SymmetricAlgorithm Классы, производные от SymmetricAlgorithm Примеры программирования с использованием симметричных алгоритмов Криптографические потоки Выбор надежных ключей Проблемы передачи ключей Шифрованные хеши и целостность сообщения Хеш-алгоритмы с ключом и целостность сообщения Итоги главы Глава 4. Асимметричная криптография Проблемы, связанные с использованием симметричных алгоритмов Проблема распределения ключей Проблема доверия Идея асимметричной криптографии Использование асимметричной криптографии Аналогия с кодовым замком Односторонняя функция с «черным ходом» Преимущества асимметричного подхода Сочетание асимметричных и симметричных алгоритмов Существующие асимметричные алгоритмы RSA: самый распространенный асимметричный алгоритм Основания RSA Миниатюрный пример RSA Предостережение: вопросы вероятности Программирование при помощи .NET Asymmetric Cryptography Пример использования алгоритма RSA Сохранение ключей в формате XML Цифровые сертификаты Итоги главы 69 70 71 72 72 74 75 84 85 86 87 87 88 89 93 97 98 100 102 105 106 107 107 108 108 109 110 111 112 114 115 116 117 117 119 121 123 123 129 132 132
Стр.475
Оглавление 475 Глава 5. Цифровая подпись Хеш-алгоритмы Характеристики хорошей хеш-функции Хеш-алгоритмы, поддерживаемые в .NET Класс HashAlgorithm Классы MD5 и SHA Класс KeyedHashAlgorithm Идентификаторы объектов Как работает цифровая подпись RSA в качестве алгоритма цифровой подписи Пример программы с использованием подписи RSA Алгоритм цифровой подписи DSA Математическое основание: теория групп Задача о дискретных логарифмах Как работает DSA Иерархия класса AsymmetricAlgorithm Класс DSACryptoServiceProvider Пример программы с использованием DSA Итоги главы Глава 6. Криптография и XML XML Encryption – шифрование XML XML Encryption против SSL/TLS Спецификация шифрования XML Что обеспечивает шифрование XML Синтаксис XML Encryption Как работает шифрование XML Классы, используемые в XML Encryption Передача асимметричных ключей Пример программы XmlEncryption XML Signatures – подпись XML Спецификация XML Signature Что предусматривает спецификация XML Signature Синтаксис XML Signature Классы, используемые в XML Signatures Программа EnvelopingXmlSignature Сочетание XML Signing и XML Encryption Итоги главы Глава 7. Концепция безопасности, основанной на идентификации пользователей в .NET Аутентификация и авторизация Модель безопасности .NET Администрирование безопасности на уровне Windows Определение пользователей и ролей в Windows Определение прав доступа к общей папке 133 133 134 135 138 138 140 140 141 143 144 147 147 150 152 153 154 154 158 159 159 160 161 161 162 166 167 171 172 184 184 185 185 188 189 195 196 197 198 199 200 201 201
Стр.476
476 Оглавление Средства безопасности в NTFS Администрирование безопасности на уровне .NET Разрешения Интерфейс IPermission Иерархия наследования IPermission Класс PrincipalPermission Безопасность, основанная на идентификации пользователей Объекты Principal и Identity Интерфейс IIdentity Классы, реализующие интерфейс IIdentity Класс GenericIdentity Класс WindowsIdentity Объекты-принципалы Интерфейс IPrincipal Класс GenericPrincipal Класс WindowsPrincipal Два подхода к безопасности, основанной на идентификации пользователей Императивный подход Декларативный подход Мандаты Сетевые мандаты Дисциплина безопасности Принцип минимума полномочий Раннее формулирование политики безопасности Итоги главы Глава 8. Доступ к коду в .NET Необходимость в контроле доступа Затраты против риска Диапазон рисков Степень доверия к сборке Риски, связанные с обращением к традиционному коду Безопасность, управляемый код и среда CLR Промежуточный язык Microsoft Верифицируемый код с контролем типов Запросы разрешений Использование CAS Гибкий подход к обеспечению безопасности Атака «с приманкой» и проход по стеку Управление политиками безопасности при помощи групп кода Основные концепции управления политиками безопасности Использование средства конфигурирования .NET Framework Configuration Использование утилиты Caspol.exe 201 205 206 207 208 209 211 212 212 212 213 214 216 217 218 220 222 222 229 231 232 232 232 233 233 234 234 235 236 238 239 240 241 241 242 243 243 244 244 245 246 260
Стр.477
Оглавление 477 Императивный и декларативный подходы в CAS Концепция безопасности, основанная на свидетельствах Класс Evidence Получение свидетельства текущего домена приложения Перечисление объектов Evidence Пример программы WalkingThruEvidence Доступ к WalkingThruEvidence через IIS CAS в императивном стиле Разрешения доступа кода Производные классы CodeAccessPermission Класс CodeAccessPermission Класс UrlIdentityPermission Работа с разрешениями CAS Декларативное разрешение доступа Синтаксис объявления атрибутов с квадратными скобками Атрибут Url Identity Permission Класс SecurityAction Запросы разрешений Пример программы PermissionRequest Наборы разрешений Класс PermissionSet Определение набора разрешений при помощи конфигурационного файла Итоги главы Глава 9. ASP.NET Базовые механизмы безопасности Аутентификация: Кто вы? Авторизация: Дозволен ли вам доступ к этому ресурсу? Заимствование прав: Приложение действует от чьего-то имени Реализация механизма аутентификации в ASP.NET Конфигурация ASP.NET Как устроена система конфигурирования ASP.NET и чем она хороша Иерархия конфигурационных параметров Описание Аутентификация при помощи формы Метод 1: хранение регистрационных данных в файле Web.config Метод 2: хранение регистрационных данных в XML-файле Файл Users.xml Файл login.aspx Метод 3: хранение регистрационных данных в базе данных Классы для аутентификации при помощи форм Аутентификация при помощи паспорта Аутентификация Windows Реализация авторизации ASP.NET 264 264 264 268 268 269 272 274 278 278 279 283 284 290 291 292 293 294 294 296 296 302 306 307 308 308 308 308 309 310 311 312 315 318 319 323 323 324 326 329 331 338 342
Стр.478
478 Оглавление Авторизация на доступ к файлу Авторизация на доступ к URL Реализация заимствования прав ASP.NET Итоги главы Глава 10. Защита Web-служб Основные техники защиты Web-служб Защищенное соединение Аутентификация и авторизация Механизмы аутентификации в протоколе HTTP Аутентификация Web-служб при помощи заголовков SOAP Архитектура сообщения SOAP Создание прокси при помощи Visual Studio .NET Технологии безопасности XML Целостность XML Signature Защита данных и конфиденциальность XML Encryption Cпецификация управления ключами XML (XKMS – XML Key Management Specification) Язык разметки утверждений безопасности SAML (Security Assertion Markup Language) Глобальная архитектура XML Web-служб (Global XML Web Services Architecture – GXA) WS-Security Начальная спецификация WS Следующие шаги спецификаций Почему WS-Security? Распространение маркеров безопасности Целостность сообщения Конфиденциальность сообщения Организации Итоги главы Приложение A. Пример атаки на код: перекрытие стека Приложение B. Как работает шифр RSA Модульная арифметика Пример программы BigRSA Пример программы CrackRSAWorkFactorDemo Приложение C. Использование библиотеки GNU GMP Установка Cygwin Тестирование библиотеки Cygwin Установка GMP Удаление Cygwin из системы 342 343 345 345 346 347 347 353 353 356 356 358 360 360 361 364 364 367 367 368 369 371 372 372 373 375 376 385 387 388 392 392 393 396 400 400 405 408 411
Стр.479
Оглавление 479 Приложение D. Ресурсы по криптографии и безопасности Общетеоретические и концептуальные книги Книги по криптографической математике Книги – руководства по безопасности Популярные книги по криптографии Группы новостей по криптографии Полезные Web-сайты на темы криптографии и безопасности Приложение E. Исследование Web-служб Зачем нужны Web-службы Определение Web-служб Фундамент Web-служб Следующее поколение распределенных вычислений: Web-службы Преимущества Web-служб Web-службы ASP.NET Архитектура Web-служб Модель кода для Web-службы Разработка простой Web-службы Concatenate.cs и Concatenate.asmx.cs Директива @ WebService Пространство имен System.Web.Services Атрибут WebServiceAttribute Класс WebService Атрибут WebMethod Управление сеансом Протоколы Доступ к Web-службе Генерация прокси Создание прокси-класса при помощи Wsdl.exe Создание клиента Windows Form Асинхронное программирование Web-служб Два асинхронных метода (Begin и End) Создание Web-службы ASP.NET «Калькулятор» Web-службы все еще развиваются Итоги Предметный указатель 412 412 413 414 415 416 416 418 418 420 420 421 422 422 423 424 426 427 431 432 432 433 434 437 437 438 438 439 440 441 442 443 446 447 448
Стр.480