Задачи для самостоятельной работы



 

1. Cхемой шифрования Эль-Гамаля зашифровать сообщение M = 9, используя открытый ключ ( p , g , y ) и секретный ключ x , если:

а) p =11, g =2, y =3, x =7;    б) p =11, g = 2, y =5, x =10;

в) p =23, g =5, y =3, x =9;    г) p =23, g = 5, y =5, x =10;

д)  p =23, g =5 , y =5, x =7;    е)   p =43, g =3 , y =2, x =7.

Проверить подлинность полученного сообщения.

3. С помощью схемы цифровой подписи Эль-Гамаля подписать сообщение M (известно, что H ( m ) = 6), используя открытый ключ ( p , g , y ) и секретный ключ x , если:

а) p =11, g =2, y =5, x =7;    б) p =11, g = 2, y =3, x =10;

в) p =23, g =5, y =4, x =7;     г) p =23, g = 5, y =10, x =2;

д)  p =23, g =5 , y =7, x =3;    е)   p =43, g =3 , y =3, x =7.

ГЛАВА 5

 

ПРИМЕНЕНИЕ АЛГЕБРАИЧЕСКИХ СТРУКТУР В ТЕОРИИ КОДИРОВАНИЯ

Схема передачи данных по каналу с шумом.

 

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

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

Рис 1.1. Блок-схема цифровой системы связи.

Данные, поступающие в систему связи от источника данных, прежде всего обрабатываются кодером источника, предназначенным для более компактного представления данных источника. Это промежуточное представление является последовательностью символов, которая называется кодовым словом источника. Затем данные обрабатываются кодером канала, преобразующим последовательность символов кодового слова источника в другую последовательность символов, называемую кодовым словом канала. Далее модулятор преобразует каждый символ кодового слова канала в соответствующий аналоговый символ из конечного множества допустимых аналоговых символов. Последовательность аналоговых символов передается по каналу. Так как в канале возникают различного типа шумы, искажения и интерференция, то выход канала отличается от его входа. Демодулятор преобразует каждый полученный на выходе канала сигнал в последовательность символов одного из кодовых слов канала. Каждый принятый символ является лучшей оценкой переданного символа, но из-за шума в канале демодулятор делает ошибки. Демодулированная последовательность символов называется принятым словом. Из-за ошибок символы принятого слова не всегда соответствуют символам кодового слова канала.

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

Типы кодов

 

Существует два принципиально различных типа кодов. В кодере, приспособленном для использования блоковых кодов, непрерывная последовательность информационных символов разбивается на отрезки, содержащие по k символов, или блоки. В дальнейшем операции производятся над каждым блоком отдельно независимо от других в соответствии с выбранным кодом. Каждому возможному информационному блоку сопоставляется набор из n символов канала, n > k. Этот набор, называемый кодовым словом, передается по каналу связи, искажается шумом, а затем декодируется независимо от всех других кодовых слов. Величина n называется длиной кода или длиной блока.

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

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

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

 


Дата добавления: 2019-02-12; просмотров: 211; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!