Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Теория информации

..pdf
Скачиваний:
2
Добавлен:
12.11.2023
Размер:
10.16 Mб
Скачать
Рис. 7.2. Схема операций шифрования и дешифрования
Регистр сдшига
^ВыхоЬ
--------1-------
Генератор
субключей
16 субключей по 48 бит
I .
Блок
шифрошания
(дешифрования)
,
(56+ 8) бит [56 бит
Регистр сдшига
Регистр ключа
Загрузка

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

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

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

В процессе шифрования последовательность символов определенной длины (64 бит) преобразуется в шифрованный блок той же длины. Опе­ рации шифрования и дешифрования осуществляется по схеме, предсгавленной на рис. 7.2.

Перед началом шиф­ рования в специализиро-' ванный регистр устройс­ тва через входной регистр вводится ключ, содержа­ щий 64 бит, из которых 56 используются для ге­ нерации субключей, а 8 являются проверочными.

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

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

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

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

Воснове технической реализации такого устройства лежат регистры

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

7.5.Экономное кодирование сообщений в отсутствие шума

Фактическая скорость передачи информации может быть макси­ мальной (равной пропускной способности), если статистические харак­ теристики источника сообщений определенным образом согласованы со свойствами информационного канала. Для каждого источника сооб­ щений это согласование может быть достигнуто специальным выбором способа кодирования и декодирования сообщений. Такое кодирование со­ общений, при кагором достигается наилучшее использование пропускной способности канала связи (т.е. наибольшая скорость передачи информа­ ции), называется эффективным (или экономным).

Очевидно, что эффективное кодирование должно обеспечивать:

1)при заданной статистике источника сообщений формирование коди­ рованных сигналов с оптимальными статистическими характеристиками, при которых достигается наибольшая скорость передачи информации;

2)возможность декодирования сигналов на приемной стороне, т.е. раз­ деление сигналов отдельных сообщений или последовательностей сообще­ ний, опознание этих сигналов и восстановление переданных сообщений.

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

Пусть алфавит системы состоит из m символов. Средствами этого ал­ фавита требуется представить любой из М возможных сигналов {*/},

152

i = 7, M, вероятности которых {р(х.)| заданы. Обычно M> m, поэтому каж­ дый из сигналов, подлежащих передаче, невозможно обозначить только одним символом и приходится ставить им в соответствие некоторые пос­ ледовательности символов; назовем их кодовыми словами. Так как воз­ можна последовательная передача разных кодовых слов, то они не только должны различаться для разных хр но и не должны быть продолжением других, более коротких. Пусть сигналу х. соответствует кодовое слово дли­ ной pi символов.

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

£ = 2 > , /> (* ,),

<7Л1>

/=1

 

где - дайна кодового слова, сопоставляемая х. сообщению.

 

Общие положения теории информации позволяют указать оптималь­ ные границы для средней длины L кодовых слов, которые ни при каком кодировании не могут быть уменьшены. Установим эти оптимальные границы для L из следующих соображений. Во-первых, количество ин­ формации, несомое кодовым словом, не должно быть меньше количества информации, содержащегося в соответствующем сообщении, иначе при кодировании будут происходить потери в передаваемой информации. Во-вторых, кодирование тем более экономично, чем большее количество информации содержит в себе каждый кодовый символ; это количество информации максимально, когда все кодовые символы равновероятны, и равно log т. При этом г-е кодовое слово будет нести количество информа­ ции, равное ц. log/и.

Таким образом,

- log Р(х,) < ц,- logm,

откуда

> -logP(x,.)

(7 .1 2 )

' logm

Умножив обе части последнего равенства на Р(х) и просуммировав по всем i от 1 до п, получим

Ш 1 logт

Так как правая часть неравенства (7.12), как правило, не является це­ лым числом, для достижения знака равенства в нем (с учетом экономности кода) необходимо, чтобы

log Р (Х '.)

Ц/ < -

+1)

(7.13)

 

logт

 

где квадратными скобками обозначена целая часть числа, стоящего в них. Усредняя (7.13), получаем

~ЩХ)'

4пп < logт + 1.

Таким образом,

щх) < г ,

< £ < £ > + 1.

(7.14)

log т

log т

 

Так, из общих соображений находим нижние границы для L и р,

В теории информации доказываются теоремы об условиях достижи­ мости этих границ.

Соотношения (7.13) и (7.14) полностью отвечают на вопросы о при­ нципиальных возможностях оптимального кодирования при отсутствии шума и являются выражением основной теоремы для дискретных систем без шума.

Приведем без доказательства ^фундаментальную теорему Шеннона о кодировании при отсутствии шума.

При кодировании множества сигналов с энтропией Н{Х) в алфавите, насчитывающем т символов, при условии отсутствия шумов, средняя дли­ на кодового слова не может быть меньше чем Н{A)/log т. Если вероят­ ности сигналов не являются целочисленными отрицательными степенями числа т, то точное достижение указанной нижней границы невозможно; но при кодировании достаточно длинными блоками к этой границе можно сколь угодно приблизиться.

Фундаментальная теорема о кодировании при отсутствии шума яв­ ляется теоремой существования: она доказывает, что оптимальные коды существуют, но не дает никаких указаний на то как построить такой код.

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

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

Приведем два известных способа построения кодов, которые позволяют приблизиться к равновероятности и независимости кодо­ вых символов.

1. Код Шеннона - Фано. Для составления этого кода все сообще­ ния х. (r = 1, 2,..., п) выписываются в порядке убывания их вероятнос­

тей (табл. 7.4).

 

 

 

 

 

 

 

 

 

Таблица 7.4

X.

а д

Разбиение сообщ ений на подгруппы

Код

Рг

х\

0,35

1

1

 

11

2

хг

0,15

1

0

 

10

2

хг

0,13

0

1

 

1

011

3

х\

0,09

0

1

 

0

010

3

х\

0,09

0

0

 

1

ООП

4

 

1

хь

0,08

0

0

 

1

0

0010

4

Х1

0,05

0

0

 

0

1

0001

4

 

 

 

 

 

 

 

 

 

 

*8

0,04

0

0

 

0

0

1

00001

5

*9

0,02

0

0

 

0

0

0

00000

5

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

Убедимся, что таким образом найденный код весьма близок к опти­ мальному. В самом деле, энтропия сообщений

а д = - £ а д 1оёа д « 2 ,7 5 , /=|

а средняя длина кодового слова

L = £ ц,.Р(*) = 2,84,

/=1 что находится в соответствии с оптимальным характером этого кода.

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

2. Код Хаффмана. Для получения кода Хаффмана все сообщения вы писывают в порядке убывания вероятностей. Две наименьшие вероятнос­ ти объединяют скобкой (табл. 7.5) и одной из них приписывают кодовый символ 1, а другой 0. Затем эти вероятности складывают, результат запи­ сывают в промежутке между ближайшими вероятностями. Процесс объ­ единения двух сообщений с наименьшими вероятностями продолжают до тех пор, пока суммарная вероятность двух оставшихся сообщений не станет равной единице. Код для каждого сообщения строится при записи двоичного числа справа налево путем обхода по линиям вверх направо, начиная с вероятности сообщения, для которого строится код.

Средняя длина кодового слова при кодировании методом Хаффма­ на (см. табл. 7.4) L = 2,82, что несколько меньше, чем в методе Шен- нона-Фано (L = 2,84).

Таблица 7.5

*1

ж

г

*1

 

0 ,3 5

XI

 

0 ,1 5

*3

 

0 ,1 3

ха

 

0 ,0 9

хJ

_

0 ,0 9

ц0 ,0 8

*7

0 ,0

5

г

* *

0 , 0 4 4

 

 

0 ,0

2 о

 

0 ,3 5

0 ,1 5

0 ,1 3

0 ,0 9

0 ,0 9

0 ,0 8

о о

 

 

 

О б ъ е д и н е н и е с о о б щ е н и й

 

 

 

К о д

р,

 

0 ,3 5

 

0 3 5

0 ,3 5

0 ,3 5

г

0 .3 7

г - 0 . 6 3 т

1 .0

11

 

2

 

0 ,1 5

г

0 ,1 7

0 -2 0

1Г ° ' 2 8 1

 

0 , 3 5 4

0 ,3 7 5 *

 

101

 

3

 

0 ,1 3

 

Г

 

0 »2 8д

 

 

1 00

3

 

 

0 ,1 3

° Л 7 ,

0 3 0 4

 

 

 

Г

0 ,1 1

 

0 ,1 3

0A5V

1 °> 1 7 0

 

 

 

 

0 1 0

 

3

 

 

 

1

 

 

 

 

 

 

 

 

0 ,0 9

 

0 ,1 1 V

° . * 3 о

 

 

 

 

 

001

 

3

 

0 ,0 9 Y

 

0 ,0 9 ] Г

 

 

 

 

 

 

0 0 0

 

3

 

0 ,0 8 Q

 

 

 

 

 

 

 

 

о н о

4

V

 

 

 

 

 

 

 

 

 

0 1 1 1 1

5

 

 

 

 

 

 

 

 

 

 

0 1 1 1

0

5

Согласование источника с двоичным каналом путем статистического кодирования по методу Хаффмана позволяет повысить эффективность передачи по сравнению с методом Шеннона-Фано.

Заметим, что можно синтезировать статистический код с более эко­ номичными двоичными кодовыми комбинациями, чем в коде Хаффмана, но для разделения кодовых комбинаций будут необходимы сигналы синх­ ронизации и поэтому эффективность передачи информации окажется всетаки хуже, чем при использовании кода Хаффмана.

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

Универсальным способом сокращения избыточности, в том чис­ ле обусловленной памятью источника, является укрупнение. В этом случае кодирование осуществляется длинными блоками, поскольку

Н(Х) =Сс - 6,

вероятностные связи между блоками меньше, чем между отдельны­ ми элементами сообщения. При этом вероятностные зависимости тем меньше, чем длиннее блоки.

7.6. Основная теорема Шеннона для дискретного канала без шумов

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

Теорема 2. Если поток информации, вырабатываемой источником,

(7.15)

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

1=Сс - 8. (7.16)

Обратное утверждение заключается в том, что невозможно обес­ печить длительную передачу всех сообщений источника, у которого

Н (Х) > Сс.

Приведемнекоторые рассуждения, которые позволят лучше уяснить ее суть. Если Хи - средняя длительность одного сообщения, то при доста­ точно большом Т возможна передача М= 7Ут( различных сообщений.

Из (6.12а) следует, что число типичных последовательностей хТ сооб­ щений длительностью Т

В то же время на основании (7.7) можно утверждать, что число раз­ личных последовательностей кодированных сигналов у тдлительностью Т при большом Т равно NJ{T) ~ 2сстили, учитывая (7.15),

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

последовательности сообщений хтможет быть выбран некоторый сигнал ути остается еще небольшой резерв сигналов длительностью Т. Что ка­ сается нетипичных последовательностей сообщений, то суммарная веро­ ятность их очень мала и на скорость передачи информации они влияния не оказывают. Эти последовательности могут кодироваться сигналами с большой длительностью (с большим числом символов).

Нетрудно убедиться в справедливости обратного утверждения теоремы. Если Н(Х) > С, то число различных последовательностей сигналов оказывается недостаточным для кодирования типичных пос­ ледовательностей сообщений.

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

Контрольные вопросы

1.Назовите основные характеристики дискретного канала.

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

3.Какие требования предъявляются к современным методам криптог­ рафического закрытия информации?

4.В чем суть эффективного статистического кодирования?

5.Сформулируйте и поясните основную теорему Шеннона о кодиро­ вании для канала без помех.

6.За счет чего при эффективном кодировании уменьшается средняя длина кодовой комбинации?

7.До какого предела может быть уменьшена средняя длина кодовой комбинации при эффективном кодировании?

8.В чем преимущество методики построения эффективного кода, предложенной Хаффманом, по сравнению с методикой Шеннона-Фано?

9.Каким основным условиям должны удовлетворять эффектив­ ные коды?

10.Перечислите сложности, возникающие при использовании эф­ фективных кодов.

8.ДИСКРЕТНЫЕ КАНАЛЫ С ШУМАМИ

8.1.Модель канала связи, в котором действуют шумы

Ввиду наличия шумов в канале передачи информации нарушает­ ся соответствие между переданными и принятыми сообщениями. Чем выше уровень шумов, тем сильнее нарушается это соответствие. На­ иболее интересные и важные результаты теории информации были по­ лучены при рассмотрении передачи информации по каналам связи с шумами. В этом случае безызбыточное кодирование приведет к безвоз­ вратным потерям информации: искаженный символ нельзя ни обнару­ жить, ни исправить. Для борьбы с влиянием помех необходимо ввести избыточность в сигнал. Основываясь на интуитивных соображениях (например, на опыте многократного повторения), легко прийти к выво­ ду, что при неограниченном повышении требований к малости вероят­ ности ошибки избыточность при любом способе кодирования должна неограниченно возрастать, а скорость передачи - стремиться к нулю. Здесь мы имеем яркий пример того, как сильно интуиция может при­ вести к заблуждению. Шеннон показал, что существуют такие способы введения избыточности, при которых обеспечиваются одновременно и сколь угодно малая вероятность ошибки, и конечная (отличная от нуля) скорость передачи информации, причем эта скорость может быть сколь угодно близкой к пропускной способности канала.

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

на приемной стороне будет зарегистрировано некоторое другое со­ общение х., гдеj не совпадает с /.

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

но

{х, ...,хт}. Обозначим алфавит адресата (множество возможных

значений принимаемого сигнала) через Y= {у1,у 2, ...,уш}. Существует

взаимно однозначное и известное адресату отображение

Y, та­

кое, например, как показано на рис. 8.1 ,а.

 

При отсутствии помех в канале связи ошибок не происходит, что позволяет по принятому символу у. точно (безошибочно) восстановить символ Хг Действие помех разрушает однозначность отображения ф. Переданный символ х. в принципе при наличии помех может быть принят в виде любого символа алфавита Y (рис. 8.1 б). В то же время если получен символ у., то достоверно это означает лишь тот факт, что был передан один из возможных символов алфавита X (рис. 8.1 в).

*1 о-

- ё у \

??

*»-1 о-

У1-1

X i о —

- О

y i

Xl+1о-

ум

7

 

7

Ут

Рис. 8.1. П ередача сигналов по дискретному каналу

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

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

В схеме рис. 7.1 в случае воздействия помех нет однозначного соот­ ветствия между сигналами на входе канала связи (у) и сигналами на его выходе (z). При передаче сигнала yi выходные сигналы (z) могут прини­ мать различные значения в зависимости от того, каков был шум в момент приема. В общем случае сигнал z может принимать непрерывное (беско­ нечно большое число) множество различных значений.

Для ослабления действия шумов в информационную систему вводятдва дополнительных устройства - кодер П и декодер I (рис. 8.2). Назначение второ­ го кодера состоит в реализации помехоустойчивого кодирования сигналов.