Симметричное и блочное шифрование информации

Шифрование как способ сокрытия информации от неавторизованных лиц. Симметричные криптосистемы и стойкость шифра. Особенности блочного и поточного шифра. Алгоритм Advanced Encryption Standard и его свойства. Метод шифрования и дешифрования строки в байты.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык русский
Дата добавления 04.07.2015
Размер файла 21,2 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Шифрование -- обратимое преобразование информации в целях сокрытия от неавторизованных лиц, с предоставлением, в это же время, авторизованным пользователям доступа к ней. Главным образом, шифрование служит задачей соблюдения конфиденциальности передаваемой информации. Важной особенностью любого алгоритма шифрования является использование ключа, который утверждает выбор конкретного преобразования из совокупности возможных для данного алгоритма.

Пользователи являются авторизованными, если они обладают определенным аутентичным ключом. Вся сложность и, собственно, задача шифрования состоит в том, как именно реализован этот процесс.

В целом, шифрование состоит из двух составляющих -- шифрование и дешифрование.

С помощью шифрования обеспечиваются три состояния безопасности информации:

· Конфиденциальность.

Шифрование используется для скрытия информации от неавторизованных пользователей при передаче или при хранении.

· Целостность.

Шифрование используется для предотвращения изменения информации при передаче или хранении.

· Идентифицируемость.

Шифрование используется для аутентификации источника информации и предотвращения отказа отправителя информации от того факта, что данные были отправлены именно им.

Методы шифрования

По типу алгоритма шифрования делятся на:

· Симметричное шифрование использует один и тот же ключ и для шифрования, и для дешифрования.

· Асимметричное шифрование использует два разных ключа: один для шифрования данных (который также называется открытым) и другой, но взаимосвязанный с ним ключ для дешифрования (называется закрытым). Открытый ключ в такой схеме доступен любому, кто его запрашивает. Закрытый ключ известен только владельцу, его также называют личным.

Симметричные криптосистемы

Алгоритм симметричного шифрования требует наличия одного ключа для шифрования и дешифрования сообщений. Такой ключ называется общим секретным, поскольку все пользователи, участвующие в обмене данными, имеют один и тот же ключ. Алгоритм и ключ выбирается заранее и известен обеим сторонам.

С алгоритмами симметричного шифрования связано понятие стойкости шифра.

Стойкость -- это мера сопротивления криптоаналитическим атакам. Стойкость алгоритма определяется размером используемого ключа. Чем длиннее ключ, тем более стойкий шифр.

Симметричные системы обладают преимуществом над асимметричными в скорости шифрования, что позволяет им оставаться актуальными, несмотря на более слабый механизм передачи ключа. Получатель должен знать секретный ключ, который необходимо передать по уже налаженному зашифрованному каналу. Существуют различные способы передачи ключа: выслать ключ по факсу, по почте, прибегнуть к услугам службы курьерской доставки. Но все они достаточно неудобны и имеют свои слабые места. Более надежный, хотя и не лишенный недостатков метод -- воспользоваться асимметричным шифрованием для кодирования секретного ключа и выслать его по электронной почте.

Виды симметричных шифров

В настоящее время симметричные шифры -- это:

· блочные шифры.

Особенностью блочного шифра является обработка блока нескольких байт за одну итерацию (как правило 8 или 16). Блочные криптосистемы разбивают текст сообщения на отдельные блоки и затем осуществляют преобразование этих блоков с использованием ключа.

· поточные шифры.

Поточный шифр -- это симметричный шифр, в котором каждый символ открытого текста преобразуется в символ шифрованного текста в зависимости не только от используемого ключа, но и от его расположения в потоке открытого текста. шифрование симметричный шифр блочный

Блочные шифры.

Блочный шифр -- разновидность симметричного шифра, оперирующего группами бит фиксированной длины -- блоками, характерный размер которых меняется в пределах 64 -- 256 бит. Если исходный текст (или его остаток) меньше размера блока, передшифрованием его дополняют. Фактически, блочный шифр представляет собой подстановку на алфавите блоков, которая, как следствие, может быть моно- или полиалфавитной.

Блочный шифр является важной компонентой многихкриптографических протоколов и широко используется для защиты данных, передаваемых по сети.

Блочный шифр способен зашифровать одним ключом одно или несколько сообщений, суммарной длиной больше, чем длина ключа. Передача малого по сравнению с сообщением ключа по зашифрованному каналу -- задача значительно более простая и быстрая, чем передача самого сообщения или ключа такой же длины, что делает возможным его повседневное использование. Однако при этом шифр перестает быть невзламываемым.

От поточных шифров работа блочного отличается обработкой бит группами, а не потоком. При этом блочные шифры надёжней, но медленнее поточных.

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

Одним из примеров блочного шифрования является алгоритм Advanced Encryption Standard (AES)

AES AdvancedEncryptionStandard.

Advanced Encryption Standard--симметричный блочный алгоритм шифрования. Оперирует блоком в 128 бит, ключом размера 128/192/256 бит.

AES является общеизвестным названием алгоритма Rijndael, который был разработан двумя бельгийскими криптографами Йоаном Дайменом и Винсентом Рэйменом. Алгоритм оказался очень безопасным, высокопроизводительным и гибким, благодаря чему был принят в качестве стандарта шифрования данных для гос. учреждений в США.

Агенство Национальной Безопасности использует его для хранения документов: вплоть до уровня SECRET применяется шифрование с ключом длиной в 128 бит, информация TOP SECRET требует ключа в 192 или 256 бит.

Алгоритм основан на нескольких заменах, подстановках и линейных преобразованиях, каждое из которых выполняется блоками по 16 байт, поэтому он называется блоковым шифром.

Операции повторяются несколько раз, каждый из которых называется «раунд». В течение каждого раунда, на основе ключа шифрования вычисляется уникальный ключ раунда и встраивается в вычисления.

Благодаря подобной блоковой структуре AES, изменение даже одного бита или в ключе, или в текстовом блоке приводит к полному изменению всего шифра - явное преимущество относительно традиционных потоковых шифров. Разница между AES-128, AES-192 и AES-256 заключается только в длине ключа. Для примера: подбор 126-битного AES-ключа современным компьютером занял бы больше времени, чем предполагаемый возраст Вселенной. А Boxcryptor использует 256-битный ключ! На сегодняшний день не существует успешных методов взлома шифров AES.

Благодаря описанным преимуществам, AES остается предпочтительным алгоритмом для правительственных организаций, банков и других систем, требующих высокий уровень безопасности, по всему миру.

Список литературы

1. С.Г. Баричев, В.В. Гончаров, Р.Е. Серов, Основы современной криптографии, 2-е издание, Москва, "Горячая линия - Телеком", 2002

2. Брюс Шнайер. "Прикладная криптография. Протоколы, алгоритмы, исходные тексты на языке Си". -- М.: Триумф, 2002. -- ISBN 5-89392-055-4.

3. Э. М. Габидулин, А. С. Кшевецкий, А. И. Колыбельников. "Защита информации: учебное пособие". -- М.: МФТИ, 2011. -- 262 с. -- ISBN 5-7417-0377-9.

4. Венбо Мао. Современная криптография. Теория и практика = Modern Cryptography: Theory and Practice. -- М.:Вильямс, 2005. -- 768 p. -- 2000 экз. --ISBN 5-8459-0847-7.

Приложение

///<summary>

/// Метод шифрования строки в байты

///</summary>

///<param name="plainText">шифруемыйтекст</param>

///<param name="Key">Ключ</param>

///<param name="IV">Вектор</param>

///<returns></returns>

staticbyte[] EncryptStringToBytes_Aes(stringplainText, byte[] Key, byte[] IV)

{

if (plainText == null || plainText.Length<= 0)

thrownewArgumentNullException("plainText");

if (Key == null || Key.Length<= 0)

thrownewArgumentNullException("Key");

if (IV == null || IV.Length<= 0)

thrownewArgumentNullException("Key");

byte[] encrypted;

using (AesaesAlg = Aes.Create())

{

aesAlg.Key = Key;

aesAlg.IV = IV;

ICryptoTransformencryptor = aesAlg.CreateEncryptor(aesAlg.Key, aesAlg.IV);

using (MemoryStreammsEncrypt = newMemoryStream())

using (CryptoStreamcsEncrypt = newCryptoStream(msEncrypt, encryptor, CryptoStreamMode.Write))

{

using (StreamWriterswEncrypt = newStreamWriter(csEncrypt))

swEncrypt.Write(plainText);

encrypted = msEncrypt.ToArray();

}

}

return encrypted;

}

///<summary>

///Метод дешифрования из байт в строку

///</summary>

///<param name="cipherText">Шифрованыебайты</param>

///<param name="Key">Ключ</param>

///<param name="IV">Вектор</param>

///<returns></returns>

staticstringDecryptStringFromBytes_Aes(byte[] cipherText, byte[] Key, byte[] IV)

{

if (cipherText == null || cipherText.Length<= 0)

thrownewArgumentNullException("cipherText");

if (Key == null || Key.Length<= 0)

thrownewArgumentNullException("Key");

if (IV == null || IV.Length<= 0)

thrownewArgumentNullException("Key");

string plaintext = string.Empty;

using (AesaesAlg = Aes.Create())

{

aesAlg.Key = Key;

aesAlg.IV = IV;

ICryptoTransformdecryptor = aesAlg.CreateDecryptor(aesAlg.Key, aesAlg.IV);

using (MemoryStreammsDecrypt = newMemoryStream(cipherText))

using (CryptoStreamcsDecrypt = newCryptoStream(msDecrypt, decryptor, CryptoStreamMode.Read))

using (StreamReadersrDecrypt = newStreamReader(csDecrypt))

plaintext = srDecrypt.ReadToEnd();

}

return plaintext;

}

///<summary>

///Кнопказашифровать

///</summary>

///<param name="sender"></param>

///<param name="e"></param>

privatevoid button1_Click(object sender, EventArgs e)

{

string original = textBox1.Text;

using (AesmyAes = Aes.Create())

{

Key = myAes.Key;

IV = myAes.IV;

encrypted = EncryptStringToBytes_Aes(original, myAes.Key, myAes.IV);

}

textBox2.Text = Encoding.UTF8.GetString(encrypted);

}

///<summary>

///Кнопкараcшифровать

///</summary>

///<param name="sender"></param>

///<param name="e"></param>

privatevoid button2_Click(object sender, EventArgs e)

{

string roundtrip = string.Empty;

using (AesmyAes = Aes.Create())

roundtrip = DecryptStringFromBytes_Aes(encrypted, Key, IV);

textBox1.Text = roundtrip;

}

Размещено на Allbest.ru

...

Подобные документы

  • Формирование ключей для шифрования сообщения. Описание алгоритма RSA: шифрование и дешифрование. Понятие и история изобретения криптосистемы с открытым ключом. Свойства односторонней функции и сложность раскрытия шифра. Сущность цифровой подписи.

    лабораторная работа [326,0 K], добавлен 04.11.2013

  • Применение алгоритмов шифрования и дешифрования данных в компьютерной технике в системах сокрытия конфиденциальной и коммерческой информации от злонамеренного использования сторонними лицами. Классический пример - симметричные криптографические алгоритмы.

    дипломная работа [44,9 K], добавлен 08.07.2009

  • Реализация криптографического алгоритма шифрования и дешифрования с использованием шифра Виженера. Понятие и суть полиалфавитного шифра. Метод полиалфавитного шифрования буквенного текста с использованием ключевого слова. Взлом полиалфавитных шифров.

    курсовая работа [863,0 K], добавлен 21.04.2012

  • Шифрование и дешифрование с помощью сети Фейстеля. Процесс блочного преобразования открытой информации в зашифрованную информацию. Таблица перевода чисел и букв. Криптостойкость шифра как показатель его эффективности. Подстановки и перемещение битов.

    курсовая работа [475,6 K], добавлен 30.12.2013

  • Традиционные симметричные криптосистемы. Основные понятия и определения. Методы шифрования. Метод перестановок на основе маршрутов Гамильтона. Асимметричная криптосистема RSA. Расширенный алгоритм Евклида. Алгоритмы электронной цифровой подписи Гамаля.

    курсовая работа [235,6 K], добавлен 06.01.2017

  • Проблема скрытия и защиты информации от несанкционированного использования. История создания шифра. Решения задачи шифрования текста и кодирования данных. Тестирование полученного приложения и анализ работы программы с точки зрения пользователя.

    курсовая работа [3,0 M], добавлен 24.11.2013

  • Симметричные криптосистемы как способ шифрования, в котором для шифрования и расшифровывания применяется один и тот же криптографический ключ. Разбор и реализация шифрования алгоритма: простая и двойная перестановка, перестановка "магический квадрат".

    курсовая работа [3,3 M], добавлен 11.03.2013

  • Методы шифрования данных. Криптосхема, реализующая алгоритм зашифрования в режиме гаммирования. Визуальное представление, схема приемника и передатчика. Расшифровывание зашифрованных данных в режиме гаммирования. Стойкость и возможности обхождения шифра.

    реферат [823,8 K], добавлен 26.12.2011

  • Статистический анализ текстов, созданных программой симметричного шифрования. Реализация симметричного криптоалгоритма. Основные шаги в использовании криптосистемы PGP. Генерация ключей, шифрование и расшифровка сообщений. Защита от сетевых атак.

    лабораторная работа [1,7 M], добавлен 06.07.2009

  • Шифрование как метод защиты информации. История развития криптологии. Классификация алгоритмов шифрования, симметричные и асимметричные алгоритмы. Использование инструментов криптографии в Delphi-приложениях. Краткая характеристика среды Delphi 7.

    курсовая работа [48,5 K], добавлен 19.12.2009

  • Зарождение и развитие криптографии. Симметричное шифрование и его особенности. Нейронная сеть и области ее использования, основные составляющие. Математическая модель нейронной сети на базе базисно-радиальных функций. Алгоритм симметричного шифрования.

    курсовая работа [809,4 K], добавлен 30.09.2016

  • Симметричные и асиметричные методы шифрования. Шифрование с помощью датчика псевдослучайных чисел. Алгоритм шифрования DES. Российский стандарт цифровой подписи. Описание шифрования исходного сообщения асимметричным методом с открытым ключом RSA.

    курсовая работа [101,1 K], добавлен 09.03.2009

  • Понятие и история изобретения криптосистемы с открытым ключом. Свойства односторонней функции и сложность раскрытия шифра. Описание алгоритма RSA: шифрование и дешифрование. Возможные атаки, способы взлома, обоснование и практическая реализация RSA.

    курсовая работа [45,9 K], добавлен 24.12.2011

  • Стандарт шифрования Advanced Encryption Standard как официальный стандарт правительства США для симметричного шифрования. Таблицы подстановки для S-Box и InvS-Box. Преобразование MixColumns, SubWord, RotWord. Процедура расширения ключа 128, 192, 256 бит.

    презентация [2,2 M], добавлен 12.12.2013

  • Краткая характеристика библиотек: stdio.h, conio.h, string.h, stdafx.h. Шифр Плейфера как подстановка символов из таблицы, основные варианты. Структура программы playfer.exe. Создание таблицы перекодировки. Ввод, шифрование и дешифрование текста.

    курсовая работа [216,7 K], добавлен 18.05.2013

  • История возникновения криптографии. Открытый ключ криптосистемы. Шифрование секреторного ключа. Математические методы обеспечения конфиденциальности и аутентичности информации. Преобразование текста на основе секретного алгоритма в шифрованный текст.

    презентация [260,8 K], добавлен 11.10.2015

  • Программа на языке Turbo Pascal для шифрования данных с помощью шифра Тритемиуса. Входные, выходные данные. Схема алгоритма и текст программы. Порядок ввода исходных данных и описание получаемых результатов. Тестовых задания и анализ их функционирования.

    курсовая работа [4,0 M], добавлен 06.01.2011

  • Криптография и шифрование. Симметричные и асимметричные криптосистемы. Основные современные методы шифрования. Алгоритмы шифрования: замены (подстановки), перестановки, гаммирования. Комбинированные методы шифрования. Программные шифраторы.

    реферат [57,7 K], добавлен 24.05.2005

  • Принятые на конкурс алгоритмы: CAST-256 (Канада), CRYPTON (Южная Корея), DEAL (Норвегия, Канада), DFC или Decorrelated Fast Cipher (Франция). Основные этапы конкурса на Advanced Encryption Standard. Финалист и победитель конкурса, сравнение шифров.

    курсовая работа [439,9 K], добавлен 07.07.2012

  • Принцип работы и программная реализация однозвучного, одноалфавитного и полиграммного шифра. Шифрование по методу подстановки, замены и кодового слова. Безопасность шифровки простой замены. Частотные характеристики текстовых сообщений и дешифрация.

    контрольная работа [1,1 M], добавлен 02.02.2012

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.