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

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

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

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

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

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

ФЕДЕРАЛЬНОЕ АГЕНТСТВО СВЯЗИ

Ордена Трудового Красного Знамени федеральное государственное бюджетное образовательное учреждение высшего образования

Московский технический университет связи и информатики

Факультет «Информационные технологии»

Кафедра «Интеллектуальные системы в управлении и автоматизации»

на тему:

«Анализ существующих алгоритмов криптографических преобразований и методов их реализации, способов передачи данных по проводному каналу связи и протоколов обмена данными»

Содержание

криптографический преобразование программный шифрование

Введение

1. Алгоритмы и стандарты криптографических преобразований

1.1 ГОСТ 28147-89

1.2 DES

1.3 AES

1.4 ГОСТ Р 34.12-2015

2. Криптографические преобразования на основе специального программного обеспечения

3. Аппаратно-программный метод криптографических преобразований

4. Метод криптографических преобразований на основе жесткой логики

5. Существующие аналоги модуля шифрования и дешифрования данных

5.1 ПКК «Миландр»

5.2 АО «НИИМЭ и Микрон»

5.3 Зарубежные аналоги модуля

6. Способы передачи данных

6.1 Параллельные и последовательные интерфейсы передачи данных

6.2 Последовательные интерфейсы передачи данных

6.2.1 SPI

6.2.2 USB

6.2.3 RS-232

6.2.4 RS-485

7. Сравнение последовательных интерфейсов передачи данных

7.1 Протоколы передачи данных

7.1.1 Протокол PROFIBUS-DP

7.1.2 Протокол ModBus

7.1.3 Сравнение протоколов передачи данных

Вывод

Список использованной литературы

Введение

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

В зависимости от типа применяемых ключей, методы шифрования подразделяются на:

1. Симметричные, когда известен алгоритм шифрования, но не известен ключ, одинаковый для отправителя и получателя.

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

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

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

В соответствии с выбранными интерфейсами необходимо провести анализ поддерживаемых протоколов передачи данных.

1. Алгоритмы и стандарты криптографических преобразований

1.1 ГОСТ 28147-89

ГОСТ 28147-89 описывает структуру блочного шифра с 256-битным симметричным ключом и 32 циклами преобразования, оперирующий 64-битными блоками.

Выделяют четыре режима работы стандарта:

- простая замена;

- гаммирование;

- гаммирование с обратной связью;

- выработка имитовставки.

На рисунке 1 показана структурная схема алгоритма криптографического преобразования (криптосхема) данных в соответствии с ГОСТ 28147-89.

Рисунок 1 Структурная схема ГОСТ 28147-89

Схема ГОСТ 28147-89, приведенная на рисунке 1, содержит:

- ключевое запоминающее устройство (КЗУ) на 256 бит, состоящее из восьми 32-разрядных накопителей (Х0, Х1, Х2, Х3, Х4, Х5, Х6, Х7);

- четыре 32-разрядных накопителя (N1, N2, N3, N4);

- два 32-разрядных накопителя (N5, N6) с записанными в них постоянными заполнения С2, С1;

- два 32-разрядных сумматора по модулю 232 (СМ1, СМ3);

- 32- разрядный сумматор поразрядного суммирования по модулю 2 (СМ2);

- 32-разрядный сумматор по модулю (232-1) (СМ4);

- сумматор по модулю 2 (СМ5), ограничение на разрядность сумматора СМ5 не накладывается;

- блок подстановки (К);

- регистр циклического сдвига на одиннадцать шагов в сторону старшего разряда (R).

Преимущества ГОСТ 28147-89:

- простота реализации и высокое быстродействие на современных компьютерах;

- наличие защиты от навязывания ложных данных (выработка имитовставки) и одинаковый цикл шифрования во всех четырех режимах ГОСТа;

- большая длина ключа по сравнению с алгоритмом DES.

НедостаткиГОСТ 28147-89:

- Стандарт не определяет механизм генерации ключей и выработки таблиц замен.

1.2 DES

DES - DataEncryptionStandart - стандарт шифрования данных, принятый в США в 1977 году, и предназначенный для использования в государственных и правительственных учреждения в США.

DES осуществляет шифрование 64-битовых блоков данных с помощью 56-битового ключа. Дешифрование в DES является операцией обратной шифрованию и выполняется путем повторения операций шифрования в обратной последовательности.

Процесс шифрования заключается в начальной перестановке битов 64-битового блока, шестнадцати циклах шифрования и обратной перестановки битов.

Структура алгоритма DES показана на рисунке 2.

Рисунок 2 Структура алгоритма DES

Где:

Т - 8-байтовый блок;

IP - матрица начальной перестановки;

L(0) - последовательность старших битов;

R(0) - последовательность младших битов;

XOR - операция «исключающее или»;

IP-1 - матрица обратной перестановки;

f - функция шифрования. [2]

Преимущества DES:

- относительная простота алгоритма обеспечивает высокую скорость обработки информации.

Недостатки DES:

- небольшая длина ключа 56 бит.

1.3 AES

AES - AdvancedEncryptionStandard - стандарт шифрования правительства США для симметричного шифрования. AES является симметричным алгоритмом шифрования с ключом. Ключ может иметь длину 128, 192 и 256 бит.

Алгоритм AES оперирует блоками по 128 бит.

На рисунке 3 показан алгоритм шифрования.

Рисунок 3 Алгоритм шифрования AES

Где:

Addroundkey (добавление ключа цикла) - Этот шаг использует дополнение XOR для добавления текущего ключа цикла к текущему массиву состояния. Ключ цикла имеет размер 16 байт. Эта операция реализована как цикл из 16 повторов;

Substitutebytes (замена байт) - Этот шаг использует предварительно вычисленную таблицу S-box для замены байт. Операция выполняется 16 раз;

Shiftrows (сдвиг строк) - Этот шаг работает со строками текущего состояния. Первая строка остается нетронутой, остальные три сдвигаются циклически влево один, два и три раза соответственно. Для однократного сдвига влево крайний левый байт перемещается в крайний правый столбец, и остальные три байта сдвигаются на один столбец влево;

Mixcolumns (перемешивание столбцов) - Этот шаг работает с каждым из столбцов состояния. Каждый столбец рассматривается как вектор из байт, который умножается на фиксированную матрицу, чтобы получить новый столбец. [3][4]

Преимущества AES:

- AESиспользует преобразования, затрудняющие получение статистических зависимостей между шифротекстом и открытым текстом;

Недостатки AES:

- в алгоритме AESиспользуется простая алгебраическая структура, что теоретически может может привести к уязвимостям при атаке.

1.4 ГОСТ Р 34.12-2015

ГОСТ Р 34.12-2015 является действующим стандартом шифрования в Российской Федерации.

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

В ГОСТ Р 34.12-2015 описаны основные шаги криптографических преобразований, на примере шифрования с длиной блока 128 бит:

1) Нелинейное биективное преобразование:

В качестве нелинейного биективного преобразования выступает подстановка р = Vec8'Int8: V8 ->V8, где р': Z28 ->Z28. (1)

Значения подстановки р' записаны в виде массива и определены в качестве контрольного примера в ГОСТ Р 34.12-2015

2) Линейное преобразование

Линейное преобразование задается отображением ?: V816 ->V8, которое определяется следующим образом:

?(a15, …, a0 ) = ?(148 • ?(a15) + 32 • ?(a14) + 133 • ?(a13) + 16 • ?(a12) + 194 • ?(a11) + 192 • ?(a10) + 1 • ?(a9 ) + 251 • ?(a8 ) + 1 • ?(a7 ) + 192 • ?(a6 ) + (1)194•?(a5 ) + 16 • ?(a4 ) + 133 • ?(a3 ) + 32 • ?(a2 ) + 148 • ?(a1 ) + 1 • ?(a0 )) для любых ai? V8, i = 0, 1, …, 15,

где операции сложения и умножения осуществляются в поле ??, а константы являются элементами поля в указанном ранее смысле.

3) Преобразования

При реализации алгоритмов зашифрования и расшифрования используются следующие преобразования:

X[k]: V128 > V128X[k](a) = k ? a, (2)

где k, a ? V128;

S: V128 > V128S(a) = S(a15||…||a0 ) = р(a15)||…||р(a0 ), (3)

где a = a15||…||a0? V128, ai? V8, i = 0, 1, …, 15;

S -1: V128 > V128преобразование, обратное к преобразованию S,(4) которое может быть вычислено, например, следующим образом:

S -1 (a) = S-1 (a15||…||a0 ) = р-1 (a15)||…||р-1 (a0 ),

гдеa = a15||…||a0?V128, ai?V8, i = 0, 1, …, 15,

р -1 - подстановка, обратная к подстановке р;

R: V128 > V128 R(a) = R(a15||…||a0 ) = ?(a15, …, a0 )||a15||…||a1, (5)

где a = a15||…||a0? V128, ai? V8, i = 0, 1, …, 15;

L: V128 > V128L(a) = R 16(a)где a ? V128; (6)

R -1: V128 > V128преобразование, обратное к (7)

преобразованию R, которое может быть

вычислено, например, следующим образом:

R-1 (a) = R-1 (a15||…||a0 ) == a14||a13||…||a0 ||?(a14, a13,

…, a0, a15),

где a = a15||…||a0? V128, ai? V8, i = 0, 1, …, 15;

L -1: V128 > V128 L -1 (a) = (R -1 ) 16(a), где a ? V128; (8)

F [k]: V128 Ч V128 > F [k](a1, a0 ) = (LSX[k](a1 ) ? a0, a1 ), (9)

V128 Ч V128 где k, a0, a1? V128.

4) Алгоритм развертывания ключа

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

Ci? V128, i = 1, 2, …, 32, которые определены следующим образом:

Ci= L(Vec128(i)), i = 1, 2, …, 32. (10)

Итерационные ключи Ki? V128, i = 1, 2, …, 10, вырабатываются на основе ключа K = k255||…||k0? V256, ki? V1, i = 0, 1, …, 255, и определяются равенствами: K1 = k255||…||k128; K2 = k127||…||k0 ; (11)

(K2i+ 1, K2i + 2 ) = F [C8(i - 1) + 8 ]…F [C8(i - 1) + 1 ](K2i - 1, K2i ), i = 1, 2, 3, 4.

5) Базовый алгоритм шифрования

Алгоритм зашифрования в зависимости от значений итерационных ключей Ki? V128, i = 1, 2, …, 10, реализует подстановку EK1, …, K10, заданную на множестве V128 в соответствии с равенством

EK1, …, K10(a) = X[K10]LSX[K9 ]…LSX[K2 ]LSX[K1 ](a), где a ? V128. (12)

6) Алгоритм расшифрования

Алгоритм расшифрования в зависимости от значений итерационных ключей Ki? V128, i = 1, 2, …, 10, реализует подстановку DK1, …, K10, заданную на множестве V128 в соответствии с равенством

DK1, …, K10(a) = X[K1 ]S -1 L -1X[K2 ]…S -1 L -1X[K9 ]S -1 L -1X[K10 ](a), (13) где a ? V128. [5]

Преимущества:

- возможность использования входных блоков разной длинны: 64 бита или 128 бит;

- в ГОСТ Р 34.12-2015 реализован механизм выработки итерационных ключей.

По результатам анализа алгоритмов шифрования, проведенного в пункте 1.1, в качестве алгоритма шифрования данных был выбранГОСТ Р 34.12-2015.

2. Криптографические преобразования на основе специального программного обеспечения

Любой криптографический алгоритм может быть реализован в виде специального ПО. Примером может служить программа «CyberSafe», разработанная фирмой ООО «КиберСофт», обладающая необходимыми лицензиями ФСБ и ФСТЭК, позволяющая использовать AES, RSA, BlowFish, ГОСТ 28147-89. [6]

Преимущества криптографических преобразований на основе специального ПО:

- доступность;

- программные средства легко копируются и просты в использовании;

- во всех распространенных операционных системах (ОС) есть встроенные средства криптографических преобразований;

- нет необходимости использовать специальное оборудование;

- возможность модификации;

Недостатки криптографических преобразований на основе специального ПО:

- уязвимо к вредоносным программам;

- требует большого количества машинного времени на криптографические преобразования;

- необходимо «не забывать» о не зашифрованных копиях;

- должно быть установлено на каждом компьютере.

3. Аппаратно-программный метод криптографических преобразований

Такой способ криптографической защиты данных реализован в виде аппаратных устройств на основе микроконтроллеров. Устройства встраиваются в линию связи и осуществляют криптографические преобразования.

Реализация такого способа возможна и с использованием микроконтроллеров широкого применения (ввиду дешевизны и высокого быстродействия).

Общим для этого способа криптографических преобразований данных является обязательное наличие встроенного программного обеспечения (ПО), выполняющего алгоритм криптографических преобразований.

Преимущества метода:

- шифрование на основе микроконтроллеров обладает большей скоростью, поскольку не затрагивают ресурсов центрального процессора (ЦП).

- аппаратуру легче защитить от физического воздействия;

Недостатки метода:

- необходимость замены аппаратуры шифрования данных при модернизации;

- необходимость замены устройства шифрования данных при обнаружении неисправности.

4. Метод криптографических преобразований на основе жесткой логики

Программируемые логические интегральные схемы (ПЛИС) применяются при построении цифровых вычислительных схем. Они используются как для замены дискретных логических элементов, так и для построения сложных систем, включающих интерфейсную логику, процессорные ядра, элементы памяти, модули цифровой обработки сигналов, специализированные модули и т.д.

Реализация криптографического алгоритма на основе изделий с жесткой логикой имеют преимуществ по сравнению с программными и аппаратными методами:

- не требуется отдельный процессор для выполнения криптографических преобразований;

- не затрачиваются ресурсы центрального процессора компьютера;

- более высокое быстродействие чем у аппаратных методов;

- проект на ПЛИС может быть использован для разработки ИС.

5. Существующие аналоги модуля шифрования и дешифрования данных

5.1 ПКК «Миландр»

ПКК «Миландр» разработал и выпустил в серийное производство микроконтроллер1886BE3.

Отладочный комплект (ОК) для 1886BE3 показан на рисунке 4.

Рисунок 4 Отладочный комплект для микроконтроллера 1886BE3

В состав ОК входят:

- отладочная плата с колодкой, примитивной клавиатурой (4 кнопки), восемью семисегментными индикаторами, разведенными портами ввода/вывода и блоком отладки встроенного аналого-цифрового преобразователя (АЦП);

- универсальный программатор для контроллеров серии 1886;

- блоки питания и соединительные шнуры;

- необходимое программное обеспечение (ПО) и документация.

Основные параметры микроконтроллера 1886BE3 приведены в таблице 1.

Таблица 1

Основные характеристики микроконтроллера 1886BE3

Название

Тактовая частота / производительность

Питание, В

Память программы

Память

данных

Алгоритм шифрования

1886BE3

33 Мгц / 8 MbitS

5

FLASH

32K x 16

EEPROM

256 байт

ГОСТ

28147-89

Топология кристалла микроконтроллера 1886BE3 показана на рисунке 5.

Рисунок 5 Топология кристалла микроконтроллера 1886BE3

Блок аппаратной поддержки ГОСТ 28157-89 реализует одну базовую итерацию преобразования исходных данных на основе ключа размером 256 бит, констант замены размером 32 бита и синхропосылки размером 32 бита.

Преобразования одновременно производится над блоком данных в 64 бита. С помощью данного блока аппаратной поддержки шифрования могут выполняться все режимы, регламентированные ГОСТ: шифрование и дешифрование в режиме простой замены, в режиме гаммирования, и в режиме гаммирование с обратной связью.

Микроконтроллер 1886EB3 способен выполнять криптографические преобразования над данными и либо передавать их далее по каналу передачи информации, либо сохранять во внешней энергонезависимой памяти типа NAND Flash. Входные данные поступают по интерфейсу USB и передаются в канал передачи информации по интерфейсу RS-232.[10][11]

5.2 АО «НИИМЭ и Микрон»

Предприятие АО «НИИМЭ и Микрон» разработало отечественную микросхему MIK51SC72Dv6 с операционной системой Trust 2.05, предназначенная для использования в качестве средства криптографической защиты информации.

Микросхема MIK51SC72Dv6 соответствует требованиям ГОСТ 28147-89, ГОСТ Р 34.11-94, ГОСТ 34.10-2001, ГОСТ Р 34.10-2012, ГОСТ 34.11-2012 и требованиям ФСБ России к криптографическим средствам класса КС3 и может использоваться для криптографической защиты (шифрование данных, содержащихся в оперативной памяти изделия, вычисление значения хэш-функции для данных, содержащихся в областях оперативной памяти изделия, создание и проверка электронной подписи для данных, содержащихся в оперативной памяти изделия) информации, не содержащей сведений, составляющих государственную тайну.

Поддерживаемые интерфейсы и стандарты: PKCS#11 версии 2.30, MicrosoftCryptoAPI PC/SC, Microsoft CCID, Сертификаты X.509 v3, SSL v3, IPSec/IKE, ISO 7816 части 1,2,3,4,8,9, ISO 14443 части 1,2,3,4.

Поддерживаемые алгоритмы шифрования: ГОСТ28147-89, DES, Triple DES, AES-128, AES192, AES-256.

Объем защищенной памяти: 72Кбайт (весь объем памяти доступен для пользовательских данных). [12][13]

5.3 Зарубежные аналоги модуля

Среди иностранных производителей криптографических средств с использованием ИС можно выделять компанию «Инсайд РУС», которая занимается поставками и продвижением в России защищенных криптографических микроконтроллеров и криптографической памяти на базе изделий фирмы «Atmel».

КриптопроцессорTrustedPlatformModule (TPM) обеспечивает аппаратное шифрование по алгоритму RSA как для персональных компьютеров (ПК), так и для встраиваемых приложений. Криптопроцессор сочетает архитектуру микроконтроллеров AVR технологию EEPROM.

Ключевые свойства TPM:

- встроенная защищенная память для хранения конфиденциальной информации пользователя (ключи, пароли и т.п.);

- ускоритель вычисления электронно-цифровой подписи (2048 бит) RSA за 200 мс;

- доступны разные интерфейсы передачи данных: SPI, LPC и I2C.

В семейство криптопроцессоров входят: AT97SC3204, AT97SC3205, AT97SC3205T. Функциональная схема AT97SC3204 показана на рисунке 6. Отличительные особенности семейства криптопроцессоров приведены в таблице 2. [14]

Рисунок 6 Функциональная схема криптопроцессора AT97SC3204

Таблица 2

Отличительные особенности семейства криптопроцессоров

Наименование

Интерфейс передачи данных

Память пользователя

AT97SC3204

LPC, 33МГц

1756 байт

AT97SC3205

SPI, 45 МГц

2066 байт

AT97SC3205T

I2C, 400 кГц / 100 кГц

2066 байт

6. Способы передачи данных

6.1 Параллельные и последовательные интерфейсы передачи данных

Для передачи данных по проводному каналу связи между персональными компьютерами используют два вида интерфейсов передачи данных:

- параллельный интерфейс;

- последовательный интерфейс.

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

Примеры: LPT, ATA, SCSI.

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

Примеры: SPI, USB, RS-232, RS485.

В таблице 3 приведены преимущества и недостатки параллельного и последовательного интерфейсов.

Таблица 3

Преимущества и недостатки параллельных и последовательных интерфейсов

Параллельный интерфейс

Последовательный интерфейс

Преимущества

1)Высокая скорость передача данных.

1) Менее дорогие кабели и разъемы;

меньшее количество проводов для передачи данных.

2) Более устойчивы к помехам.

3) Возможность передачи данных в двух направлениях (дуплексный режим работы).

Недостатки

1) Сложность в синхронизации сигналов на расстоянии более 30 метров;

2) Высокая вероятность появления помех на высоких частотах;

3) Высокая стоимость кабелей и интерфейсных цепей узлов;

4) Требуется большое количество жил в проводнике для передачи информации.

1) Менее высокая скорость передачи данных чем у параллельного интерфейса, которая может быть увеличена путем усиления мощности передатчика.

На основании таблице 3, для передачи информации был выбран последовательный интерфейс передачи данных. [15][16]

6.2 Последовательные интерфейсы передачи данных

6.2.1 SPI

SPI (SerialPeripheralInterface) - последовательный синхронный стандарт передачи данных в режиме полного дуплекса, разработанный компанией Motorola для обеспечения простого и недорогого сопряжения микроконтроллеров и периферии. Для передачи данных в интерфейсе SPI используется четыре провода.

Шина SPI организована по принципу «ведущий- подчиненный».

В качестве ведущего шины обычно выступает микроконтроллер, но им также может быть программируемая логика, DSP- контроллер или специализированная интегральная схема. В роли подчиненных устройств выступают различного рода микросхемы, в том числе запоминающие устройства (EEPROM, Flash-память)

Главным составным блоком интерфейса SPI является сдвиговый регистр, сигналы синхронизации ввода-вывода битового потока, которые и образуют интерфейсные сигналы.

Непременным условием передачи данных по шине SPI является генерация сигнала синхронизации шины. Устройство - приёмник синхронизирует получение битовой последовательности с тактовым сигналом устройства - передатчика. К одному последовательному интерфейсу ведущего устройства-микросхемы может присоединяться несколько микросхем. Частота работы интерфейса SPI составляет 1-70МГц.

Самое простое подключение, в котором участвуют только две микросхемы, показано на рисунке 7.

Ведущий шины передает данные по линии MOSI синхронно со сгенерированным им же сигналом SCLK, а подчиненный захватывает переданные биты данных по фронту принятого сигнала синхронизации(SCLK).

Рисунок 7 подключение «pointtopoint»

Где:

SCLK - сигнал синхронизации передачи данных;

MOSI (masteroutslavein) - сигнал передачи данных от ведущего ведомому;

MISO (Masterinslaveout) - сигнал передачи от ведомого ведущему;

SS - сигнал выбора ведомого.

На рисунке 8 показано подключение нескольких устройств по интерфейсу SPI.

Рисунок 8 подключение нескольких устройств по интерфейсу SPI

6.2.2 USB

USB (UniversalSerialBus - «универсальная последовательная шина») - последовательный интерфейс передачи данных для среднескоростных и низкоскоростных периферийных устройств в вычислительной технике.

Для подключения периферийных устройств к шине USB используется четырехпроводный кабель, при этом два провода (витая пара) в дифференциальном включении используются для приема и передачи данных, а два провода - для питания периферийного устройства. Благодаря встроенным линиям питания, USB позволяет подключать периферийные устройства без собственного источника питания (максимальная сила тока, потребляемого устройством по линиям питания шины USB, не должна превышать 900 мА

К одному контроллеру шины USB можно подсоединить до 127 устройств по топологии «звезда».

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

- требуемая частота доступа к шине и допустимые задержки обслуживания;

- требуемая полоса пропускания канала;

- требования к обработке ошибок;

- максимальные размеры передаваемых и принимаемых пакетов;

- тип передачи;

- направление передачи (для передач массивов и изохронного обмена).

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

6.2.3 RS-232

Интерфейс RS-232 - стандартный интерфейс, предназначенный для последовательной двоичной передачи данных между терминальным (DTE, DataTerminalEquipment) и связным (DCE, DataCommunicationsEquipment) оборудованием.

Схема передачи данных по интерфейсу RS-232 показана на рисунке 9.

Рисунок 9 Передача данных по интерфейсу RS-232

Терминальное оборудование - микрокомпьютер, может посылать и/или принимать данные по последовательному интерфейсу.

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

RS-232 используется для передачи данных на небольшое расстояние (единицы - десятки метров) с небольшой скоростью (обычно, не быстрее 115200 бит/с).

6.2.4 RS-485

Интерфейс RS-485 (EIA/TIA-485) - широко распространенный высокоскоростной и помехоустойчивый промышленный последовательный интерфейс передачи данных. Практически все современные компьютеры, большинство интеллектуальных датчиков, программируемые логические контроллеры содержат в своём составе реализацию интерфейса RS-485.

Сеть, построенная на интерфейсе RS-485, представляет собой приемопередатчики, соединенные при помощи витой пары - двух скрученных проводов. В основе интерфейса RS-485 лежит принцип дифференциальной передачи данных -передача одного сигнала по двум проводам. По одному проводу (условно A) идет оригинальный сигнал, а по другому (условно B) - его инверсная копия. Если на одном проводе "1", то на другом "0" и наоборот, как показано на рисунке 10. Между двумя проводами витой пары всегда есть разность потенциалов: при "1" она положительна, при "0" - отрицательна.

Рисунок 10 Дифференциальная передача данных

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

Свойства интерфейса стандарта RS-485:

- двунаправленная полудуплексная передача данных;

- симметричный канал связи;

- дифференциальный способ передачи данных;

- многоточечность.

Технические характеристики RS-485:

- допустимое число приёмопередатчиков (драйверов): 32;

- максимальная длина линии связи 1200 м;

- максимальная скорость передачи 10 Мбит/с;

- минимальный выходной сигнал драйвера ±1,5 В;

- максимальный выходной сигнал драйвера ±5 В;

- максимальный ток короткого замыкания драйвера 250 мА;

- выходное сопротивление драйвера 54 Ом;

- входное сопротивление драйвера 12 кОм;

- допустимое суммарное входное сопротивление 375 Ом;

- диапазон нечувствительности к сигналу ±200 мВ;

- уровень логической единицы (Uab) >+200 мВ;

- уровень логического нуля (Uab) <-200 мВ.

Интерфейс RS-485 не нормирует формат информационных кадров и протокол обмена. Для передачи байтов данных используются те же фреймы, что и в интерфейсе RS-232: стартовый бит, биты данных, бит паритета, стоповый бит, но в отличие от RS-232, интерфейс RS-485 поддерживает возможность подключения до 32-ух устройств. Протоколы обмена в большинстве реализаций работают по принципу «ведущий»-«ведомый»: одно устройство на магистрали является ведущим (master) и инициирует обмен посылкой запросов подчиненным (ведомым) устройствам (slave), которые различаются логическими адресами.

7. Сравнение последовательных интерфейсов передачи данных

Сравнение последовательных интерфейсов передачи данных приведено в таблице 4.

Таблица 4

Сравнение последовательных интерфейсов передачи данных

Название

интерфейса

Преимущества

Недостатки

SPI

1. Простая аппаратная реализация интерфейса.

2.Ведомые устройства используют сигналы тактирования ведущего и не нуждаются в точных источниках тактирования

1. Нет адресации в протоколе обмена, для каждого нового ведомого устройства требуется отдельная сигнальная линия выбора (CS).

USB

1. Возможность подавать питание на устройство прямо с ПК.

2. Высокая скорость передачи данных (480 Мбит/сек для USB 2.0)

3. Большинство современных персональных компьютеров имеют встроенные USB 2.0 порты и интерфейс

1. Длина кабеля не должна превышать 3 метра.

2. Максимальная сила тока, потребляемого устройством по линиям питания шины USB, не должна превышать 900 мА

RS-232

1.Простота реализации

1. Низкая скорость передачи данных - не быстрее 115200 бит/с

2. Не может применяться в системах, где требуется гальваническая развязка цепей.

3. Небольшая дальность связидо 15 метров.

RS-485

1.Мощность сигнала передатчика RS-485 в 10 раз превосходит мощность сигнала передатчика RS-232, это позволяет подключать к одному передатчику RS-485 до 32-ух приёмников и вести широковещательную передачу данных.

2. Используются симметрические сигналы, у которых имеется гальваническая развязка с нулевым потенциалом питающей сети. В результате исключено попадание помехи по проводу питания (как в RS-232).

3. Большая дальность сети (до 1200 м).

4. Многоточечность соединения.

1. Повышенное потребление энергии при подключении большого количества устройств.

На основании таблицы 4, интерфейс USBбыл выбран для передачи данных от персонального компьютера в модуль, для передачи данных по каналу связи между двумя абонентами (двумя компьютерами) был выбран интерфейс RS-485.

Наиболее распространенные протоколы поддерживаемые RS-485:

- PROFIBUS-DP;

- Modbus.

7.1 Протоколы передачи данных

7.1.1 Протокол PROFIBUS-DP

PROFIBUS-DP использует уровни 1 и 2 модели OSI, а так же пользовательский интерфейс. В основу пользовательского интерфейса положены необходимые пользовательские функции, а также системные и аппаратно-зависимые функции различных типов PROFIBUS-DP приборов.

Способ передачи: данные передаются внутри 11-разрядного кадра, показанного на рисунке 11, в NRZ-коде (NonReturntoZero). Значения сигнала (биты) не изменяются во время передачи сигнала.

Рисунок 11 PROFISUB-DP кадр

Где:

LSB - младший бит;

MSB - старший бит;

0 - начало пакета;

b1..b8 - биты данных;

P - бит паритета (проверочный бит);

1 - конец пакета.

Конструкция PROFIBUS-DP протокола показана на рисунке 12.

Рисунок 12 Конструкция протокола PROFISUB-DP

Обмен данными между типами DP-приборов:

Инициатор передачи обозначается в PROFISUB-DP как «Requestor» (устройство от которого исходит запрос), а получатель передачи - как «Responder» (ответчик). Все телеграммы-запросы DP-Master'a (класс 1) передаются на уровень 2 как служебные телеграммы «high-pro» (высокого приоритета). Соответствующие телеграммы-ответы DP-Slave'ов передаются на уровень 2 как служебные телеграммы «low-pro» (низкого приоритета).

DP-Slave имеет возможность при однократном обмене изменить приоритет «low-pro» на «high-pro» для соответствующей телеграммы. Это необходимо при передаче диагностических сообщений или сообщения о событии.[22]

7.1.2 Протокол ModBus

Modbus - открытый коммуникационный протокол, основанный на архитектуре master-slave (главный-ведомый). Применяется для организации связи между цифровыми устройствами.

Стандарт Modbus предусматривает применение физического интерфейса RS-485, RS-422, RS-232.

Modbus - устройство обязательно должно поддерживать скорости обмена 9600 и 19200 бит/с, из них 19200 бит/с устанавливаются по умолчанию. Допускаются скорости 1200, 2400, 4800… 38400, 65 и 115 кбит/с.

Цикл обмена данными прокола Modbus показан на рисунке 13.

Рисунок 13 Цикл обмена данными протокола Modbus

Формат кадра протокола Modbus показан на рисунке 14.

Рисунок 14 Формат кадра протокола Modbus

Где:

1. Адрес - адрес подчиненного (slave) устройства. Подчиненные устройства отвечают только на запросы, поступившие в их адрес. Ответ также начинается с адреса отвечающего устройства. Может изменяться от 1 до 254.

2. Код функции - это следующее однобайтное поле кадра. Содержит код команды которую необходимо выполнить.

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

4. Контрольная сумма - заключительное двухбайтное поле кадра, содержащее циклическую контрольную сумму CRC-16 всех предыдущих полей кадра. Контрольная сумма завершает кадры запроса и ответа.

5. PDU (protocoldataunit) - элемент данных протокола.

6. ADU (applicationdataunit) - элемент данных приложения.

Протокол Modbusиммет два режима передачи: RTU (remoteterminalunit - удаленное терминальное устройство) и ASCII. Стандарт предусматривает, что режим RTU в протоколе Modbus должен присутствовать обязательно, а режим ASCII является опциональным.

В режиме RTU данные передаются младшими разрядами вперед, как показано на рисунке 15.

По умолчанию в режиме RTU бит паритета устанавливается равным 1, если количество двоичных единиц в байте нечетное, и равным 0, если оно четное. Такой паритет называют четным (evenparity), а метод контроля называют контролем четности. [23][24]

Рисунок 15 Режим RTU

7.1.3 Сравнение протоколов передачи данных

Сравнение протоколов передачи данных приведено в таблице 5.

Таблица 5

Сравнение протоколов передачи данных

Название

Преимущества

Недостатки

PROFIBUS-DP

1. Более высокие уровни логических “0” и “1”.

1.Необходимость в специальных интерфейсных контроллерах

Modbus

1.Отсутствие необходимости в специальных интерфейсных контроллерах.

2. Протокол поддерживает передачу по сетям TCP/IP

1.Сетевой обмен по типу «ведущий-ведомый»

Вывод

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

В качестве алгоритма шифрования данных был выбран ГОСТ 34.12-2015, поскольку он полностью удовлетворяет текущим требованиям к криптостойкости, а так же позволяет использовать входные блоки данных разной длины, что отличает его от всех существующих аналогов.

Для передачи данных от компьютера в модуль шифрования данных был выбран интерфейс USB 2.0, поскольку USB передает питание от компьютера в ПЛИС и обладает высокой скоростью передачи данных.

Для передачи данных по каналу связи выбран интерфейс RS-485. RS-485 обладает большей помехозащищенностью чем RS-232, большей дальностью сети чем USB, а также поддерживает протоколы адресной маршрутизации, в отличие от SPI. Контроллер RS-485 реализован в ПЛИС в виде отдельного СФ блока.

При передаче данных по интерфейсу RS-485 используется протокол Modbus, который поддерживается различными цифровыми интерфейсами, такими как: RS-232, RS-422, RS-485.

Список использованной литературы

1. ГОСТ 28147-89.

2. Data Encryption Standard. URL: http://protect.htmlweb.ru/des.htm.

3. Advanced Encryption Standard. URL: https://software.intel.com/ru-ru/node/178233.

4. Advanced Encryption Standard. URL: http://microsin.net/programming/AVR/avr231-aes-bootloader.html.

5. ГОСТ Р 34.12-2015.

6. Компания «Cybersafesoft». Программные средства шифрования. URL:http://cybersafesoft.com/rus/.

7. Аппаратное и программное шифрование. URL:http://kursmt.ru/robigud/xaker39.htm.

8. Иллюстрированные самоучитель по компьютерной безопасности. Аппаратное и программное шифрование. URL:http://tfi.jethost.uz/intranet/LITSEY/WINDOWS/Protection_to_information/8/Index5.htm.

9. Варлатая С.К, Шаханова М.В. Криптографические методы и средства обеспечения информационной безопасности. Учебно-методический комплекс. Москва: Издательство Проспект, 2015. 127 с.

10. Новоселов А. Микропроцессорная и вычислительная техника. Микроконтроллеры серии 1886 для аппаратуры специального назначения.URL:http://www.electronics.ru/files/article_pdf/0/article_606_727.pdf

11. Шумилин Сергей. Компоненты и технологии. Отечественные USB микроконтроллеры фиры «ПКК Миландр» № 6'2006г. URL: http://kit-e.ru/assets/files/pdf/2006_06_24.pdf.

12. Токены с аппаратной поддержкой алгоритмов ГОСТ и действующим сертификатом ФСБ. URL: https://zlonov.ru/download/token-gost.pdf.

13. ESMARTToken ГОСТ. СКЗИ с аппаратной поддержкой российских криптографических алгоритмов на базе отечественной микросхемы. URL:http://www.esmart.ru/product/esmart-token-gost/.

14. Компания “Инсайд РУС”. Информационная безопасность во встраиваемых приложениях. URL: http://inside-rus.ru.

15. Параллельные и последовательные интерфейсы.URL: http://perscom.ru/index.php/2012-03-23-14-46-26/89-vvedenie1/552-par-i-posled.

16. Преимущества последовательного интерфейса.URL: http://www.administrating.ru/sata-interface/.

17. Ключев А.О., Ковязина Д.Р., Петров Е.В., Платунов А.Е. Интерфейсы периферийных устройств. СПб.: СПбГУ ИТМО, 2010. 290 с.

18. Бень Е.А. RS-485 для чайников. URL: http://masters.donntu.org/2004/fema/kovalenko/library/art7.html.

19. Яшкардин Владимир. RS-485 рекомендованный стандарт электрических характеристик генераторов и приемников для использования в балансных многоточечных системах. URL:http://www.softelectro.ru/rs485.html.

20. Интерфейс RS-485. URL: http://gsm-dmitrov.narod.ru/handmanual_RS-485.pdf.

21. Новые информационные технологии. В чем разница между USB2.0 и USB3.0 URL: http://www.pro-spo.ru/elektronika/4635-v-chem-raznica-mezhdu-usb20-i-usb30.

22. SIEMENS. Протокол PROFIBUS-DP. URL: http://samsebeplc.ru/Doc/Siemens/Communication/Profibus-DP_r.pdf.

23. Прикладное программное обеспечение системы сбора технологической информации. Реализация протокола MODBUS. URL: http://gpa.ru/ZOND/documents/pdf/uso_modb.pdf.

24. Виктор Денисенко. В записную книжку инженера. Протоколы и сети Modbus и ModbusTCP. URL: http://www.cta.ru/cms/f/435973.pdf.

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


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

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