Сохранение ключей в формате XML. Цифровая подпись

Содержание

Слайд 2

RSACryptoServiceProvider rsa =
new RSACryptoServiceProvider();
Запись в XML
//открытый и секретный ключи RSA
string publicPrivateKeyXML =
rsa.

RSACryptoServiceProvider rsa = new RSACryptoServiceProvider(); Запись в XML //открытый и секретный ключи
ToXmlString(true) ;
//только открытый ключ RSA
string publicOnlyKeyXML =
rsa.ToXmlString(false);
Чтение из XML
rsa. FromXmlString (publicPrivateKeyXML) ;

Слайд 3

Цифровые сертификаты

Цифровые сертификаты

Слайд 4

Цифровой сертификат - это документ, который удостоверяет вашу личность в сообщениях или

Цифровой сертификат - это документ, который удостоверяет вашу личность в сообщениях или
транзакциях через посредство Internet.
Существует множество коммерческих центров сертификации (например, Verysign), а сама сертификация существует во многих вариантах, отличающихся ценой и уровнем доверия.
В Microsoft Outlook для получения доступа к центру сертификации и создания сертификата, необходимо выбрать:
Сервис / Параметры / Безопасность / Получить удостоверение.

Слайд 5

Цифровая подпись

Цифровая подпись

Слайд 6

Асимметричные алгоритмы используются не только для достижения конфиденциальности, но и для аутентификации,

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

Слайд 7

Характеристики хорошей хеш-функции
Любая хорошая хеш-функция должна обладать следующими свойствами:
□ входные данные могут

Характеристики хорошей хеш-функции Любая хорошая хеш-функция должна обладать следующими свойствами: □ входные
обладать произвольными размерами;
□ выходные данные всегда обладают небольшим, фиксированным размером, вытекающим из используемого алгоритма;
□ функция быстро вычисляется;
□ ее трудно обратить (то есть это односторонняя функция);
□ вероятность возникновения коллизий невелика.

Слайд 8

Хеш-алгоритмы, поддерживаемые в .NET
Наиболее часто используются хеш-алгоритмы SHA-1 и MD5. Алгоритм SHA-1

Хеш-алгоритмы, поддерживаемые в .NET Наиболее часто используются хеш-алгоритмы SHA-1 и MD5. Алгоритм
создает 160-битовый хеш, а алгоритм MD5 - 128-битовый. Для достижения более высоких степеней безопасности могут использоваться SHA-256, SHA-384 и SHA-512, создающие, соответственно, значения размером 256, 384 и 512 бит.

Слайд 9

HashAlgorithm
KeyedHashAlgorithm
HMACSHA1
MACRtipleDES
MD5
MD5CryptoServiceProvider
SHA1
SHA1CryptoServiceProvider
SHA1Managed
SHA256
SHA256Managed
SHA384
SHA384Managed
SHA512
SHA512Managed

HashAlgorithm KeyedHashAlgorithm HMACSHA1 MACRtipleDES MD5 MD5CryptoServiceProvider SHA1 SHA1CryptoServiceProvider SHA1Managed SHA256 SHA256Managed SHA384 SHA384Managed SHA512 SHA512Managed

Слайд 10

Классы, имена которых заканчиваются на CryptoServiceProvider, реализованы с использованием интерфейса CryptoAPI, предоставляемого

Классы, имена которых заканчиваются на CryptoServiceProvider, реализованы с использованием интерфейса CryptoAPI, предоставляемого
операционной системой.
Классы, имени которых заканчиваются на Managed, реализованы полностью средствами контролируемого С#-кода, без использования CryptoAPI.
Класс HMACSHA1 производит ключевой хеш при помощи хеш-функции SHA1.
Класс MACТripleDES производит ключевой хеш при помощи шифровалия Triple DES.

Слайд 11

Метод вычисления хеша в .NET
HashAlgorithm sha1 = new SHA1CryptoServiceProyider();
byte[] sha1Hash =

Метод вычисления хеша в .NET HashAlgorithm sha1 = new SHA1CryptoServiceProyider(); byte[] sha1Hash = sha1.ComputeHash(messageByteArray); Идентификаторы объектов
sha1.ComputeHash(messageByteArray);
Идентификаторы объектов
Имя файла: Сохранение-ключей-в-формате-XML.-Цифровая-подпись.pptx
Количество просмотров: 22
Количество скачиваний: 0