Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методы и средства защиты компьютерной информации.doc
Скачиваний:
95
Добавлен:
10.05.2014
Размер:
10.57 Mб
Скачать

Рюкзачная криптосистема (Knapsack Cryptosystem).

Создатели(1976)– Меркль и Хеллман. Имеет множество модификаций, из которых одну удалось взломать.

В основекриптосистемы лежитзадача об укладке рюкзака:

Имеется рюкзак объема Vи группа предметов объемов С1,С2,С3…

Задача– набить рюкзак до отказа.

Пример простой задачи об укладке рюкзака:

Математическая формулировка (простая формулировка):

Есть рюкзак (напр., объемом 55) и ряд предметов объемов (напр., числа 3, 8, 12, 2, 32, 59)

55 = 3+8+12 +32

55 ↔ (111010) – единицы в тех битах, которые соответствуют исходным числам, входящим в разложение.

E: 3+8+12+32=55 - шифрование

D: 55 <-->(111010)

Очень простая задача об укладке рюкзака:

Отличие – числа в списке являются степенями 2.

Математическая формулировка:

Есть рюкзак объема 26 и ряд предметов (16, 8, 4, 2, 1)

26 = 16+8+2

26 11010 – перевод в двоичную сист счисления

Трудная задача об укладке рюкзака (т.е. вычислительно неразрешимая)

Рюкзак объемом С равным 42-разрядному десятичному числу. Список состоит из 100 чисел.

(а99, а98, …, а0), |аi|=40 десятичных разрядов, |C|=42 десятичных знаков.

Противник должен перебрать 2^100чисел.

Элементы списка – случайные! Задача – вычислительно неразрешима. Нужна «лазейка».

План построения криптосистемы:

1. Teasy-легкая задача об укладке рюкзака при |ai|=40 дес. знаков, (а99, а98, …, а0)

2. Teasy--->T’shuffle(СЕКРЕТ): из легкой задачи – сложную путем перемешивания. Правила перехода держатся в секрете! Секрет – у получателя, ТОЛЬКО у В!

3. Public Key, Secret Key – выделяем ключи.

Построение элементов списка:

аi, random, zero, записи степени 2, zero, random.

zero– несколько столбцов с 0, чтобы переносы не испортили степени 2

random– случайные десятичные числа.

a0=02

01

0 5

a1=22

02

0 9

a2=26

04

0 5

a3=12

08

0 2

a4=03

016

0 8

a0=0120

0…001

00357

a1=3520

0…002

00919

a2=0140

0…004

00578

Нули в конце (выделенные) нужны для предотвращения возможного переполнения сумма (2^i)

Оставшиеся 100 цифр выбираются случайным образом.

  1. Цифровые деньги. Структура и основные транзакции централизованной платежной системы.

Электронные деньги– электронные средства платежа, на каком-то этапе ЖЦ использующие компьютер.

Цифровые деньги– полный аналог бумажных (металлических) денег в электронном плане (набор 0 и 1).

Формат цифровой купюры:

Кодируется номинал(10$), серийный №, ЭЦП банка-эмитенда кодирует только серийный №.

Проблемы:

1. Обеспечение анонимности и неотслеживаемости платежей – решение: слепая ЭЦП

2. Как защититься от подделки номинала? решение: для каждого номинала – своя пара ключей: открытый и закрытый.

3. Как защититься от повторного использования цифровой купюры? решение: банк-эмитенд должен иметь у себя список № ранее использованных купюр.

4. Как защитить права владельца цифровой купюры? решение: генерация № купюр.

Схема: ГПСЧ – S’ –h(x) – Формат цифровой купюры (100$,S, ЭЦП)

Будущий владелец запускает ГПСЧ, который вырабатывает S(precursor) – число, из которого будет получен серийный №, затем берется хэш-функция (не обратима, зная серийник нельзя получитьprecursor) и далее получаем серийный №SЦК.

Только истинный владелец знает precursor, который просят предъявить. Банк № не знает, № получает будущий владелец. Банк узнает номер купюры, когда она потрачена.

Структура централизованной платежной системы (online-платежная система):

1-4: транзакции снятия со счета

5-8: транзакция платежа

Транзакции:

1. А: формирует заготовку купюры:

2. Заготовка отправляется в банк.

3. Банк проверяет ЭЦП заготовки, проверяет есть ли на счете А запрашиваемая сумма. Если да, то снимает ее, ставит свою подпись для защиты поля № и посылает сообщение:

4. А снимает затемнение с С:

5. А посылает купюру абоненту В.

6. В посылает банку запрос: не тратилась ли раньше купюра? С поддерживает список № ранее использованных цифровых купюр.

7. Банк заносит № купюры в список, на счет В заносятся деньги, указанные в номинале. В посылается подтверждение о законности сделки.

8. В отсылает А товар.

Онлайн, т.к. все 3 участника должны быть на связи друг с другом в момент платежа. Купюра одноразовая. Возможен вариант с получением сдачи.

  1. Методы и средства антивирусной защиты

Комплексы программных средств АВЗ:

1. Подсистема упр-ния:

- интерфейс пользователя

- взаимодействие программных средств, входящих в КПС АВЗ

- взаимодействие с др ПС, обеспечивающими безопасность инф-ции (межсетевые экраны)

2. Подсистема сканирования(ПС, которые запускаются по запросы; антивирусный сканер):

- сигнатурный анализатор-полифаг (лечит от многих вирусов) – 1 поколение антивирусов.

- эвристический анализатор – 2 поколение антивирусов

- база вирусных сигнатур

- база эвристических признаков вирусов

- ПС пополнения антивирусных баз

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

3. Подсистема обнаружения вирусной активности:ПС, функционирующие в фоновом режиме; антивирусный монитор (какLKMвLinux)

4. Подсистема обнаружения последствий вирусной активности:ревизор; ПС, функционирующий в фоновом режиме, должен работать на запуск ПЕРВЫМ! (какLKMвLinux).

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

Эвристические метод может ловить и ранее неизвестные вирусы. Сигнатурные – только известные.

Причины неудачи решения проблем ИБ:

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

2. Существование программ изначально предназначенных для выполнения деструктивных действий – разрушающие программные воздействия (РПВ).

РПВ:

1. Компьютерные вирусы – самый простой вид. Без участия пользователя работать не может.

2. Сетевые черви – работают без участия пользователя на основе сетевых протоколов. Находят бреши в защите и догружают основную программу.

3. Программные закладки – недокументированные возможности – информационное оружие.

4. Троянские программы – как (3). Только (3) закладывает производитель, (4) – пользователи.

5. Эксплойты – программы, кот используют уязвимости ПО, запускают произвольный код.

Пр: червь Морриса (червь, на концах эксплойты).

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

7. Хакерские утилиты:

Пр: RootKit– для удаленного администрирования компа и заметания следов.

- конструкторы РПВ – определяют логику работы, выдают код, вирус меняется со временем.

- сканеры уязвимости.

Уязвимости программного кода (используются эксплойтами):

1. переполнение буфера

2. ошибка командной строки

3. переполнение целого

4. переполнение кучи

5. двойное освобождение памяти

6. состояние при доступе к ресурсам.

  1. Поля Галуа

Применение:

- AES для программной и аппаратной реализации

- помехоустойчивое кодирование: циклические коды, БЧХ, Рида-Соломона.

- поточные шифры (SNOW)

- CRC

- ECCS

Конечное поле или поле Галуа— поле, состоящее из конечного числа элементов.

Обозначение: GF(p^n), где p^n – кол-вол эл-тов конечного поля.

р – простое число

n – натуральное.

Варианты: GF(p), GF(2^n).

Поле Галуа – конечное мн-во эл-тов, где выполняются след св-ва:

1. В любом конечном поле определяются 2 операции: специальное сложение и умножение.

2. В любом конечном поле сущ-ют нулевой элемент поля и единичный.

Эл-ты 0 и 1 со св-вами: если а,b,c – ненулевые эл-ты поля, тогда

- а+0=а

- а*1=а

- а*0=0

3. В любом конечном поле выполняются след равенства:

- а+b=b+a

- a*b=b*a

- (ab)c=a(bc)

- (a+b)c=ac+bc

4. Для любого ненулевого эл-та поля есть обратный:

для любого а сущ-ет (-а), что а+(-а)=0

для любого а сущ-ет а^(-1), что а*а^(-1)=1

5. Для любого поля есть примитивный эл-т w.

Любой ненулевой эл-т поля можно записать:

для любого а: а=w^i

Пример: поле Галуа из 5 эл-тов.

GL(5)={0,1,2,3,4}

mod 5 – для выполнения 1 требования.

2(*)4=8mod5=3

3(+)4=7mod5=2

0 – обобщенная запись всех чисел, которые при делении на 5 дают в остатке 0.

1 – обобщенная запись всех числе, которые при делении на 5 дают в остатке 1.

Подтверждают 4 св-во:

(-2)=3

2^(-1)=3

Какой эл-т из 0,1,2,3,4 может быть примитивным?

Проверка:

2^0=1, 2^1=2, 2^2=4, 2^3=3

3^0=1, 3^1=3, 3^2=4, 3^3=2

Ответ: 2 и 3 – примитивные эл-ты, так как проходят все ненулевые значение из 0,1,2,3,4 при возведении в степень.

28