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

metoda_2013

.pdf
Скачиваний:
54
Добавлен:
03.05.2015
Размер:
6.36 Mб
Скачать

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ

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

class window

{

// ...

protected: Rectangle inside; // ...

};

class dumb_terminal : public window

{

// ...

public:

void prompt (); // ...

};

Здесь в базовом классе window член inside типа Rectangle описывается как защищенный (protected), но функции-члены производных классов, например, dumb_terminal::prompt(), могут обратиться к нему и выяснить, с какого вида окном они работают. Для всех других функций член window::inside недоступен.

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

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

Важность инкапсуляции, т.е. заключения членов в защитную

340

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

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

VIII. МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

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

Функциональная схема генератора случайной последовательности (подход “в лоб”)

S(t) оказывается не случайным, а модулированным рядом гармоник и не позволяет получить случайные числа.

Проблемы:

1)влияние ЭМП на случайность последовательности (50 Гц

!!!);

2)влияние качаний напряжений питания - вектор U (U на рис - это вектор питающих напряжений).

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

Первая проблема принципиально может быть решена за счет схемотехнических и конструктивных решений

Функциональная схема реального генератора случайной последовательности

341

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

Основные положения:

1)Если ИШ1 и ИШ2 - источники на основе теплового шума, то S1(t) и L1(t), S2(t) и L2(t)- сравнимы по величине даже при хорошей экранировке.

2)Если S1(ti)и S1(ti), где ti = t0 + i∆t, i=1,2…. – нормально распределенные случайные величины, то S1(ti) - S1(ti) – также нормально распределенная случайная величина

3)Если каналы конструктивно выполнены идентично, то

обычно L1(t) ≈ L2(t). Для этого должны быть выполнены следующие требования:

a.Платы расположены в одной плоскости

b.Градиент плотности энергии электромагнитного поля в области расположения плат мал.

Если (1), (2) и (3) выполнены, то

Где s1(t) – усиленный шум 1-го источника, l1(t) – паразитное составляющее 1-го канала

s2(t) – усиленный шум 2-го источника, l2(t) – паразитное составляющее 2-го канала Таким образом ЭМП побеждена.

Апробированные историей источники шума:

1.Сцинтилляционные --- основан на случайном процессе радиоактивного распада. 1) Главный недостаток – временная нестабильность (ВН). Чем выше быстродейтвие, тем ниже стабильность. 2) Технические сложности защиты от радиации

2.Механические (лототроны) --- 1) неудобство использования,

2) BH

3.Электрические

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

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

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

342

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

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

Аналогово-цифровое преобразование. Принадлежности.

1 проблема – качания питающих напряжений

2 проблема – «нормальность» закона распределения исходных случайных величин.

Причины качания напряжения:

-Изменение нагрузки в зависимости от текущего сочетания решаемых на компьютере задач

-Изменение внешних напряжений (сезонные и принудительные со стороны злоумышленника)

Следствие: качание эталонных импульсов тока АЦП и т.о. неслучайное модулированная последовательность случайных чисел.

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

Теорема. Пусть для любого целого k, , тогда для непрерывной случайной величины с нормальной плотностью распределения

вероятности попадания в поле интервала и

одинаковы.

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

В качестве формирователей последовательностей случайных бит с равномерным распределением 0 и 1на основе теплового шума и шума полупроводниковых диодов целесообразно использовать

343

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

АЦП принадлежности, построены на основе результатов рассмотренной теоремы. Это объясняется 1) нечувствительностью таких формирователей к качаниям напряжений, 2) нечувствительностью таких формирователей их качаниям амплитуды теплового шума, 3) в случае зеркальной симметрии обоих интервалов такого рода формирователь будет правильно выполнять свою функцию для случайных сигналов с производимой четной функцией плотности распределения. На практике невозможно идеально соблюсти условия теоремы.

1)

множество

Z

сужают

до

множества

2)

- условие выполняется приближенно

 

На практике

 

 

 

 

Чем выше n, тем выше достигается точность преобразования, но тем сложнее настройка

Отсюда в коммерческих приложения n = 2 ~ 3, а в приложениях систем гарантированной секретности n = 4 ~ 6

2.Понятие Фон Нэймановской архитектуры вычислительной системы. Базовые принципы. Проблема получения случайных чисел в рамках данной архитектуры. Основной вывод

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

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

344

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

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

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

Принципы фон Неймановской архитектуры:

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

2)Строгая детерминированность действий в соответствии с программой, находящейся в памяти компьютера

Вывод (следует из 2-го утверждения): в Фон-Неймановской архитектуре невозможна генерация случайных чисел, так как все определено, нет случайного харатктера.

Аппаратные источники случайных чисел конечно-автоматного типа не возможны.

1)Нарушение 2-й характеристики фон Неймановской архитектуры возможно в истинно параллельных вычислительных структурах (отдельно независимые тактовые генераторы).

Реализация функции randomize в языках программирования. Случайность достигается за счет не «фон-нейманности» связанной с использованием взаимодействия двух истинно параллельных процессов: вычислительного (АЛУ со своим тактовым генератором) и векового таймера (со своим тактовым генератором). Случайность низкого качества. Повышение качества возможно за счет применения случайных вычислительных алгоритмов.

2)Не «фон-неймановость» поведений человека при взаимодействии с устройствами ввода (мышь, клавиатура).

345

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

А) качество случайности – низкое, так как зона подбора может быть сужена Б) не очень высокая скорость генерации

3. Системы гарантированной секретности. Теоретические основы.

Получены были К. Шенноном.

Пусть R – алфавит символов ключа, A – алфавит символов исходного сообщения.

В случае, если мощность множества |R| >= |A| и ключевая последовательность является равномерно распределенной случайно величиной на множестве R и каждая ключевая последовательность используется только 1 раз (т.к. 1 раз – шифр-блокнот), то атака на такой шифр невозможна в принципе. Связано это с тем, что доказано, что зашифрованное сообщение с равной вероятностью может быть декодировано в любое другое в принципе возможное.

“Грабли” Цезаря.

Пусть n – разрядность слова;

{ai}i = 1,2,…,N – шифруемая последовательность слов; {ri}i = 1,2,…,N – ключ шифрования;

{a*i}i =1,2,…,N – зашифрованная последовательность.

Положим:

ai* = |ai + ri|m (i = 1,2,…,N), где m = 2n. (1)

Рассмотрим операцию:

|ai* + ri|m, где ri – противоположное ri число по модулю m.

|ai* + ri|m = ||ai + ri|m+ ri|m = ||ai|m + |ri|m+ |ri|m|m = |ai + |ri+ ri|m|m = |ai|m= ai,

так как i(i = 1,2,..,N) ai < m = 2n.

Т. о.: ai = |ai* + ri|m = |ai* + m - ri| (i=1,2,…,N) (2)

Схема шифрования (1) и дешифрования (2) называются схемой Цезаря. На рис. представлено условное изображение древнего механизма, реализующего схему (1) и (2).

В случае, когда последовательность {ri}i =1,2,…,N является периодической с периодом k, то говорят о схеме “Граблей”

А

Цезаря с k “зубьями”.

В случае, когда последовательность {ri}i=1,2,…,N является последовательностью случайных чисел, равномерно распределенных на отрезке [0, 2n-1] и мощность множества

элементов, входящих в эту последовательность, не

ниже

мощности

множества

элементов,

входящих

в

346

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

последовательность {ai}, и для каждого акта шифрования некоторой последовательности {ai}i=1,2,…,N и дешифрования {a*i}i =1,2,…,N, используется отдельная реализация {ri}i=1,2,…,N (то есть {ri}i=1,2,…,N используется однократно), то говорят о схеме гарантированной секретности.

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

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

На сегодня известны 2 изоморфных подхода генерации псевдослучайных последовательностей:

o сложение сдвиговых регистров

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

Xi+1 = |axi + C|M

0 < a < M, 0 <= C < M, 0 <= X0 < M

Данный метод генерации псевдослучайно последовательности называется линейным конгруэнтным методом. При C = 0 метод называется мультипликативным конгруэнтным методом, C != 0 метод называется смешанным конгруэнтным методом. Качество получаемой псевдослучайной последовательности зависит от всех 4 параметров метода: X0 – начальное значение, a – множитель, C – приращение, M – модуль.

4. Длиннопериодические ключевые последовательности. Датчики псевдослучайных чисел и их роль для создания длиннопериодических ключевых последовательностей. Анализ стойкости длиннопериодических ключевых последовательностей

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

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

хi+1=|axi+С|M, i=1,2,..

347

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

при известных М – модуль, С – приращение, а – множитель, х0 – начальное значение эти пары д. б. специально подобраны (М, а, С, х0)

В случае, если С=0, то метод называют мультипликативным конгруэнтным методом.

При С≠0 – смешенным конгруэнтным методом.

Качественная псевдослучайная последовательность может быть получена только при правильном выборе параметров датчика. Выбор параметров: хi+1=|aХi+С|M датчик

Его описание 0≤Х0 < М

0< a < M 0≤ C < M

Как обеспечить стойкость? Действия:

1)выбор М

2)выбор а

3)выбор С

4)выбор Х0 (условный)

5)какую часть хi использовать в качестве ri (ri – выбор из хi – младшие, старшие байты)

Мдолжно быть достаточно большим. Чем больше М, тем выше вычислительная сложность. Выбор М обычно осуществляется из

соображений вычислительной эффективности. Казалось бы наиболее эффективный выбор М=2е , где е – разрядность вычислительной машины. Но качество псевдослучайной последовательности в этом случае окажется недопустимо низким.

Выбор модуля:

1)линейные конгруэнтные методы (линейные) последовательности, т. к. хi<М,

2)длина периода не м. б. > М,

3)максимально большой период

В таких случаях просто произвести вычисления, - самый простой

в вычисление со степенью 2. Пример: М=216

MOV AX,x

MOV BX,a

MOV CX,c

MUL BX; (DX;AX):=axi <=> (ax)=|axi|M ADD AX,CX; (ax):= |ax i+c|M

MOV xi+1, ax

Также эффективные схемы могут быть реализованы при М=2е +1 и М=2е -1, следует предположить, что С = 0. Датчики с таким модулем не следует применять в схемах, использующих вычеты

348

МЕТОДЫ И СРЕДСТВА ЗАЩИТЫ ИНФОРМАЦИИ

по модулю делителей М. Простое число – лучший выбор при выборе модуля.

5. Простейшие протоколы обеспечения многократной электронной цифровой подписи. Пример применения

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

Реализация ЭЦП при помощи ассиметричных криптосистем возможна, только если операторы шифрования и дешифрования коммутируют DE = ED.

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

D – секретный ключ

E – публичный(открытый) ключ ГП – генерация пар М – сообщение

Использование ЭЦП приведенной в схеме предполагает производственный порядок применения процедур шифрования и расшифрования.

Практическое применение: электронные платежи Преимущества: отсутствие секретного канала Недостатки: низкое быстродействие

349

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]