Upload
vilmos
View
80
Download
7
Embed Size (px)
DESCRIPTION
Лектор – Латыпов Рустам Хафизович. Курс: Теория кодирования и криптография. Лекция № 1. Тема: Кодирование информации. Эффективное кодирование Помехоустойчивое кодирование Криптография. Виды преобразований. Кодирование - это частный случай преобразования информации. - PowerPoint PPT Presentation
Citation preview
Курс: Теория Курс: Теория кодирования и кодирования и криптографиякриптография
Лектор – Латыпов Рустам Хафизович
Тема:Тема: Кодирование Кодирование информацииинформации
Эффективное кодированиеПомехоустойчивое кодированиеКриптография
Лекция №1
Виды преобразованийВиды преобразований
Кодирование - это частный случай преобразования информации.
• эффективное (оптимальное) кодирование;• помехоустойчивое кодирование •криптография (кодирование с засекречиванием информации).
Клод Элвуд Шеннон (1916-2001)
Модель передачи сообщенийМодель передачи сообщений
В схеме передачи сообщений представлены все виды кодирования и соответствующие им кодирующие устройства на передающей стороне (кодеры) и декодирующие устройства на приемной стороне (декодеры).
Сокращения: К - криптографический; Э - эффективный; П - помехоустойчивый.
Эффективное кодированиеЭффективное кодированиеРечь идет о сокращении объема
передаваемой информации
Количество информации принято связывать с понятием энтропии.
Эффективное кодированиеЭффективное кодированиеЭффективное, или экономичное, кодирование
означает достижение минимального значения средней длины кода символа
В телеграфии широко известна азбука Морзе.Сокращение nср здесь достигается за счет
назначения часто встречающимся символам коротких кодов (одна «точка» или одно «тире»).
Наоборот, редкие символы имеют длинные коды.
l
iiiср pnn
1
Эффективное кодированиеЭффективное кодированиеКодирование по методу Хаффмена (А.Д.
Хаффмен – американский математик; работа – 1952 г.) гарантирует оптимум для заданного множества {рi}.
1. Символы zi упорядочиваются по убыванию вероятности pi.
2. Два последних (нижних в табл.1) символа объединяются в группу-пару, соответствующую вспомогательному символу с суммарной вероятностью. Если суммируемые вероятности представляют исходные значения pi, это специально отмечается («*»). Здесь – конец формирования кода соответствующего символа.
Далее пп. 1 и 2 повторяются. При этом в общем случае происходит
переупорядочивание вероятностей pi. В конце концов суммарная вероятность достигает значения 1 и процесс заканчивается.
Эффективное кодированиеЭффективное кодированиеТаблица 1
Пример кодирования но Хаффмену
Эффективное кодированиеЭффективное кодированиеТеперь строится кодовое дерево.Вершины дерева отмечены соответствующими
вероятностями (меньшая - слева). Теперь по кодовому дереву могут быть сформированы коды всех символов – спуск из корневой вершины, где вероятность 1.00 (табл.2).
Эффективное кодированиеЭффективное кодированиеТаблица 2
Кодирование Хаффмена
Zi pi Код ni nipiZ1 0.5 10 2 0.50
Z2 0.20 00 2 0.40
Z3 0.16 111 3 0.48
Z4 0.15 110 3 0.45
Z5 0.10 010 3 0.30
Z6 0.08 0111 4 0.32
Z7 0.04 01101 5 0.20
Z8 0.02 01100 5 0.10
1.00 2.75
Эффективное кодированиеЭффективное кодирование
nср = 2,75 < 3.
Сжатие данных по Хаффману применяется при сжатии фото- и видеоизображений (JPEG, стандарты сжатия MPEG), в архиваторах (PKZIP, LZH и др.), в протоколах передачи данных MNP5 и MNP7.
Помехоустойчивое кодирование
Защита сообщения от помех (ошибок)
Избыточность естественного языка
Бу** мг**ю **бо к**ет **хри **ежн** кру**
Буря мглою небо кроет вихри снежные крутя
Помехоустойчивое кодированиеПомехоустойчивое кодирование
Борьба с помехами, вносимыми в линию связи (рис.1), требует введения избыточности в кодовую комбинацию (КК): кроме информационных разрядов формируются и передаются контрольные (проверочные) разряды. Пусть при длине n двоичного сообщения m разрядов - информационные, k – проверочные. Тогда избыточность помехоустойчивого (корректирующего) кода составит
Значения R заключены в диапазоне от 0 (k = 0) до почти 1 (k >>m).
kmk
nkR
Помехоустойчивое кодированиеПомехоустойчивое кодированиеКорректирующая способность
помехоустойчивого кода оценивается двумя параметрами:
кратность обнаруживаемых ошибок. Qобн; кратность исправляемых ошибок, Qиспр.
Наиболее простыми способами помехоустойчивого кодирования являются:
многократная передача (дублирование) контроль по нечетности (четности)
Помехоустойчивое кодированиеПомехоустойчивое кодированиеВ первом способе кодовая комбинация
передается минимум 2 раза. Если принятые значения совпадают, все в
порядке. Если нет, запрашивается еще 1 передача, и далее действует мажоритарный принцип – решение принимается по большинству (2 > 1 и т.п.).
Способ многократной передачи – самый избыточный.
Элемент его – перезапрос кодовой комбинации присутствует и в других способах помехоустойчивого кодирования - когда ошибка только обнаруживается, но не исправляется.
Помехоустойчивое кодированиеПомехоустойчивое кодированиеКонтроль по нечетности (четности)- один из
самых простых и распространенных. Обычно в каждый байт (8 двоичных
информационных разрядов) вводится разряд-бит проверки на четность (parity bit).
Значение этого разряда получается как дополнение количества единиц в байте до четного (нечетного) числа.
Например, слово 1011 010 содержит 4 (четное) число единиц, поэтому при контроле по четности в проверочном разряде - единица:
1011 0101
Помехоустойчивое кодированиеПомехоустойчивое кодирование
Избыточность кода нечетности-четности невелика:
R = 1/8 = 0,125.Невелика и корректирующая способность этого
кода – ошибки могут только обнаруживаться, причем нечетной кратности (1, 3, 5, 7), но не исправляются (Qиспр = 0).
Еще один недостаток – ложная тревога. Ошибка случилась в контрольном разряде, информационные - в порядке. Но несмотря на это, будет сделан перезапрос кодовой комбинации.
КриптографияКриптография
Засекречиванием информации люди занимались еще в глубокой древности.
В средние века было принято зашифровывать научные результаты при первой публикации, с тем чтобы закрепить приоритет открытия – только посте этого считалось возможным сообщение расшифровать.
КриптографияКриптографияТак, Г.Галилей (1564 – 1642 гг.), используя
свой телескоп с 32-кратным увеличением, впервые наблюдал кольцо (кольца) Сатурна.
Правда, вместо кольца он увидел своеобразные «придатки» - два спутника:
«Altissimum planetam tergeminum observavi»(«Высочайшую планету тройную наблюдал»).
Здесь «высочайший» Сатурн – бог Времени и Судьбы.
Зашифрованная опубликованная запись (анаграмма) представляла «фразу» на латинском языке:
Smaismrmielmepcttaleumibuvnenugttaviras
КриптографияКриптография
Кстати, попытка расшифровки путем полного перебора вариантов столкнулась бы с такой оценкой количества перестановок с повторениями
39!/(5! 3! 2! 2! 5! 2! 4! 2! 3! 3! 3! 4!) 1035.
И. Кеплер (1571 – 1630 гг.) опустив 2 буквы, получил:
«Salve, umbistineum geminatum Martia proles»
(«Привет вам, близнецы, Марса порождение»)
Общие понятияОбщие понятия
Он считал, что Галилей открыл спутники Марса, – по аналогии: у Земли – один спутник, у Юпитера – четыре (фактически 16), значит, у Марса их два (так и фактически, но только через 300 лет).
Кстати, Галилей действительно включил две дополнительные буквы – для затруднения расшифровки
Наконец. X. Гюйгенс (1629 – 1695 гг.) через 50 лет после Галилея распознал кольцо Сатурна и опубликовал такую анаграмму:
Aaaaaaa, ccccc, d, еееее, g, h, iiiiiii. (расшифровка вряд ли вообще возможна).
КриптографияКриптографияЛишь через 3 года, окончательно
убедившись в правильности своих первоначальных заключений, Гюйгенс сообщил действительный смысл анаграммы:
«Annulo cingitur, tenui plano, nusquam cohaerente, ad eclipticam inclinato»
(«Кольцом окружен тонким, плоским, нигде не прикасающимся, к эклиптике наклоненным»).