Криптография в .NET

Содержание

Слайд 2

Криптография в .NET

Основы криптографии
Введение в криптографические алгоритмы
Пространство имен Cryptography
Примеры кода
Q&A

Криптография в .NET Основы криптографии Введение в криптографические алгоритмы Пространство имен Cryptography Примеры кода Q&A

Слайд 3

Alice и Bob

Alice

Bob

Alice и Bob Alice Bob

Слайд 4

Задачи криптографии

Конфиденциальность: защита данных от просмотра
Целостность данных: защита от изменений
Аутентификация: подтверждение источника

Задачи криптографии Конфиденциальность: защита данных от просмотра Целостность данных: защита от изменений Аутентификация: подтверждение источника данных
данных

Слайд 5

Криптографические алгоритмы

симметричные алгоритмы
ассиметричные алгоритмы
алгоритмы для получения хеша данных
алгоритмы для

Криптографические алгоритмы симметричные алгоритмы ассиметричные алгоритмы алгоритмы для получения хеша данных алгоритмы для подписи данных
подписи данных

Слайд 6

System.Security.Cryptography

System.Object

System.Security.Cryptography System.Object

Слайд 7

Структура классов

System.Object

DES

Rijndael

Структура классов System.Object DES Rijndael

Слайд 8

Симметричные алгоритмы

Alice (закрытый ключ)

Bob (закрытый ключ)

E(M,K)= C

D(C,K)= M

M = сообщение
E = шифрование
D

Симметричные алгоритмы Alice (закрытый ключ) Bob (закрытый ключ) E(M,K)= C D(C,K)= M
= дешифрование
C = зашифрованный
текст

.NET реализация
DES
Triple-DES
RC2
Rinjdael

Слайд 9

Длина ключа

Длина ключа

Слайд 10

Классы .NET

DESCryptoServiceProvider
RC2CryptoServiceProvider
RijndaelManaged
TripleDESCryptoServiceProvider

Классы .NET DESCryptoServiceProvider RC2CryptoServiceProvider RijndaelManaged TripleDESCryptoServiceProvider

Слайд 11

Использование симметричных алгоритмов

Использование симметричных алгоритмов

Слайд 12

Пример кода

DES

Пример кода DES

Слайд 13

Шифрование с открытым ключом

Alice (открытый ключ Bob)

Bob (закрытый ключ)

E(M,K)= C

D(C,K)= M

.NET реализация
DSS

Шифрование с открытым ключом Alice (открытый ключ Bob) Bob (закрытый ключ) E(M,K)=
(Digital Signature Standard)
RSA

M = сообщение
E = шифрование
D = дешифрование
C = зашифрованный
текст

Слайд 14

Классы .NET

DSACryptoServiceProvider
RSACryptoServiceProvider

Классы .NET DSACryptoServiceProvider RSACryptoServiceProvider

Слайд 15

Шифрование с открытым ключем

Шифрование с открытым ключем

Слайд 16

Пример кода

RSA

Пример кода RSA

Слайд 17

Хеширование

Alice

Bob

.NET реализация
MD5
SHA1
SHA256
SHA384
SHA512

Хеширование Alice Bob .NET реализация MD5 SHA1 SHA256 SHA384 SHA512

Слайд 18

Классы .NET

HMACSHA1
MACTripleDES
MD5CryptoServiceProvider
SHA1Managed
SHA256Managed
SHA384Managed
SHA512Managed

Классы .NET HMACSHA1 MACTripleDES MD5CryptoServiceProvider SHA1Managed SHA256Managed SHA384Managed SHA512Managed

Слайд 19

Хеширование

Хеширование

Слайд 20

Пример кода

MD5

Пример кода MD5

Слайд 21

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

SignatureDescription
DSACryptoServiceProvider
RSACryptoServiceProvider

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

Слайд 22

SignData

public byte[] SignData(byte[] buffer);
public byte[] SignData(byte[] buffer, int offset, int count);
public

SignData public byte[] SignData(byte[] buffer); public byte[] SignData(byte[] buffer, int offset, int
byte[] SignData(Stream inputStream);

Слайд 23

SignHash

public byte[] SignHash(byte[] rgbHash() , string str)

SignHash public byte[] SignHash(byte[] rgbHash() , string str)

Слайд 24

Пример кода

DSA

Пример кода DSA