Помощь в написании студенческих работ
Антистрессовый сервис

Совершенствование механизмов защиты информации в персональных компьютерах на уровне BIOS

Дипломная Купить готовую Узнать стоимостьмоей работы

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

Совершенствование механизмов защиты информации в персональных компьютерах на уровне BIOS (реферат, курсовая, диплом, контрольная)

Содержание

  • 1. Анализ средств защиты информации
    • 1. 1. Методологическая основа формализации требований к средствам защиты информации
    • 1. 2. Вопросы формализации требований к корректности реализации механизмов защиты информации
    • 1. 3. Вопросы защиты баз данных
  • 2. Исследование возможности использо-вания отечественных механизмов
    • 2. 1. Программы-каталогизаторы, или файловые оболочки ОС
    • 2. 2. Программы поиска файлов и текстовых и двоичных последовательностей в текстовых и двоичных файлах
    • 2. 3. Программы — мониторы файловой системы (File Monitors)
    • 2. 4. Программы — мониторы системных файлов ОС (Registry Monitors)
    • 2. 5. Программы — мониторы вызовов подпрограмм ОС (API Monitors)
    • 2. 6. Программы — мониторы обмена данными с системны-ми устройствами (портами) (Port Monitors)
    • 2. 7. Программы — мониторы сетевого обмена данными (Network Traffic Monitors)
    • 2. 8. Программы — мониторы активных задач, процессов, потоков и окон (Process/Windows Managers)
    • 2. 9. Программы — мониторы конвейеров данных, систем-ных сообщений и высокоуровневого межпрограммного взаимо-действия (Message/COM hooks)
    • 2. 10. Программы перехвата и протоколирования клавиа-турного ввода (Keyboard Loggers)
    • 2. 11. Программы копирования областей ОЗУ в ВЗУ (Memory Dumpers)
    • 2. 12. Программы восстановления удаленных файлов (Unerase/Undelete Utilities)
    • 2. 13. Программы побайтового копирования гибких маг-нитных дисков (ГМД), оптических дисков (ОД) и жестких маг-нитных дисков (ЖМД) (Byte Copiers, CD Rippers)
    • 2. 14. Программы — распаковщики/дешифраторы (Unpackers/Decryptors)
    • 2. 15. Средства дизассемблирования объектных модулей ПО (Disassemblers)
    • 2. 16. Средства декомпиляции объектных модулей ПО (Decompilers)
    • 2. 17. Средства отладки объектных модулей (Debuggers)
    • 2. 18. Средства поиска и замены текстовых и двоичных последовательностей в текстовых и двоичных файлах (Patchers/Hex-editors)
    • 2. 19. Средства редактирования «ресурсов» объектных мо-дулей (Resource Editors)
    • 2. 20. Средства загрузки объектных модулей и/или их ди-намической модификации в ОЗУ (Loaders/In-memory Patchers)
    • 2. 21. Средства загрузки и/или модификации контекста объектных модулей в регистрах ЦП
    • 2. 22. Программы симуляции аппаратных средств (ГМД, ОД, электронных ключей, ЛВС) (FDD/ CD/LPT/Network Emulators)
    • 2. 23. Средства симуляции центрального процессора и подпрограмм ОС (CPU/API Emulators)
    • 2. 24. Средства симуляции операционных систем или ЭВМ целиком (OS/PC/Mac/… Emulators)
    • 2. 25. Средства пакетной обработки команд (Batch Processors/Script Engines)
    • 2. 26. Средства криптоанализа (Password Crack-ers/Bruteforcers)
    • 2. 27. Средства генерации паролей и серийных ключей (Key Generators)
    • 2. 28. Средства ОС по контролю доступа к программам и данным (Access Rights Managers)
  • 3. Усовершенствование механизма вза-имной аутентификации в BIOS
    • 3. 1. Формирование и поддержка изолированной про-граммной среды
    • 3. 2. Алгоритм ступенчатого контроля для создания ИПС (на примере DOS)
    • 3. 3. Методика определения требуемой (целесообразной) длины пароля, используемого в БК СЗИ НСД «Аккорд-АМД3» при аутентификации
    • 3. 4. Алгоритм вычисления хэш-функции, применяемый в СЗИ НСД «Аккорд-АМД3» для контроля целостности ПС
  • 4. Детальный анализ и усовершенство-вание систем шифрованных данных
    • 4. 1. Ускоренная прошивка BIOS
    • 4. 2. Особенности перешивки биосов на платах от Asus
    • 4. 3. Основные проблемы (и сообщения об ошибках)
    • 4. 4. Восстановление работоспособности
    • 4. 5. Принцип работы флэш
    • 4. 6. Особенности программирования микросхем Intel 28Fxxx
    • 4. 7. Программные особенности программирования флэ-шек
    • 4. 8. «Хабовые» флэши
  • Заключение Использованная
  • литература

Нужно строго наоборот — чем «безвестнее» и примитивнее плата — тем более лучший получится из неё «программатор». Т. е. для этого просто идеальны всякие Акорпы да PCPartner-ы, а вот любые платы даже с минимальными «претензиями» всегда ухудшают «универсальность». Плюс, конечно, другим важным условием является хороший и удобный доступ к гнезду флэшки.

Фото самодельного переходника PLCC32->DIP32

В качестве главного программного обеспечения используются amiflash (конкретно — версия 8.37, только с ключами). Он знает большинство чипсетов/флэшей и очень удобен в работе благодаря удобной коммандной строке.

Для редких случаев, когда не справляется amiflash (некоторые типы флэшек и/или экзотические чипсеты) — используется awdflash (обязательно с ключом /f).

Для тяжёлых случаев (как правило очень экзотические флэши/биосы/чипсеты, очень старые, либо, наоборот, самые новые материнские платы) используется Uniflash. Он же может быть использован с целью визуальной проверки места проблем во флэшке. Плюс особенно стоит обратить на него внимание обладателям современных плат на Nforce2, использующие LPC-флэшки типа PMC (как правило — Epox/Gigabyte). PMC-шки умеют работать сразу во всех трёх режимах (LPC/FWH/PP) и, может быть, из-за этого часто «стандартные» прошивальщики некорректно их перешивают (а то и зависают в процессе перешивки) — uniflash же это делает исключительно корректно.

Экстремальные способы перешивки/восстановления.

В некоторых совсем сложных случаях приходится прибегать к использованию сразу двух прошивальщиков — например, прошиваете сначала с помощью amiflash, а после этого сразу же с помощью uniflash. После первой попытки амифлэш ругнётся, что прошил некорректно, а uniflash перешьёт уже корректно. В то время как другая последовательность действий (например, сначала uniflash, а потом amiflash и т. п.) может не принести должного результата. Это, скорей всего, связано с разными алгоритмами перешивки конкретных флэшей, когда одному прошивальщику удаётся правильно сделать первую часть операции, а другому — заключительную.

Когда у вас есть под рукой только «одномегабитная» плата, а нужно прошить двухмегабитную («обычную») можно сначала прошить первую половину (1Mbit), а потом «отдельно», вторую половину. Для этого разбиваете файл биоса на две части (по 1Mbit=128kB) с помощью любого hex-редактора и прошиваете сперва последнюю часть. После этого коротите ножку 30 (A17 в 2Mbit и NC в 1Mbit) на землю и заливаете «начальную» половину.

Другим развитием (вариантом) предыдущей ситуации может быть заливка лишь «конечной» части (по сути нам нужен лишь бутблок). После этого таким образом «недошитая» микросхема вставляется в родную плату, где автоматически из-за несоответствия CRC начнёт грузится бутблок. С помощь которого уже в родной плате всё можно будет банально восстановить «с дискетки» .

Прошивка флэшек с различными напряжениями перепрограммирования.

Различные типы флэшей рассчитаны на разные вольтажи программирования. Самые распространённые — это 12V/5V для старых плат, для современных, это 3.3V/3V/2.7V и меньше. Теоретически, для каждого типа нужно выставлять нужное конкретной флэшке напряжение с помощью перемычек на материнской плате (если такие, конечно, имеются). Практически же получается, что флэшки с более меньшим напряжением программирования совершенно благополучно шьются более высоким напряжением.

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

В случае обратного соотношения — перешивка 12V-овых флэшек на 5V-овых матерях (или с перемычками установленными на 5V) тоже часто имеет благополучный исход. Хотя здесь он уже и не является правилом — поэтому при программировании микросхем серии 28xxxx (большинство которых — 12V) — будьте бдительны по поводу правильно выставленных перемычек и не стоит пытаться их перешивать хотсвопом на современных платах (т.к. 12V-ые были лишь P1-P2), т. е. чем старее, тем больше шансов на корректную перешивку.

Если перемычки на плате не подписаны — можете просто померить напряжение на pin32 (справа сразу от ключа, если смотреть ключом вверх). В самом крайнем случае, если на плате нет перемычек — можно отогнуть эту ножку из сокета и подать на неё 12V «вручную» (например прямо от разъёма БП).

4.

9. Математическая структура секретных систем

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

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

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

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

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

Чтобы использовать такую секретную систему, сначала выбирается некоторый ключ и посылается в точку приема. Выбор ключа определяет конкретное отображение из множества отображений, образующих систему. Затем выбирается сообщение и с помощью отображения, соответствующего выбранному ключу, из этого сообщения формируется криптограмма. Эта криптограмма передается в точку приема по некоторому каналу и может быть перехвачена противником. На приемном конце с помощью отображения, обратного выбранному, из криптограммы восстанавливают первоначальное сообщение.

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

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

Вторая операция комбинирования является «взвешенным сложением»:

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

Секретные системы с этими двумя операциями комбинирования образуют, по существу, «линейную ассоциативную алгебру» с единицей, — алгебраический объект, подробно изучавшийся математиками.

Среди многих возможных секретных систем имеется один тип с многочисленными особыми свойствами. Этот тип назовем «чистой» системой. Система является чистой, если все ключи равновероятны и если для любых трех отображений, , из множества отображений данной системы произведение

также является отображением из этого множества. То есть зашифровка, расшифровка и снова зашифровка с любыми тремя ключами должна быть эквивалентна зашифровке с некоторым ключом.

Можно показать, что для чистого шифра все ключи по существу эквивалентны — все они приводят к тому же самому множеству апостериорных вероятностей. Больше того, каждой криптограмме соответствует некоторое множество сообщений («остаточный класс»), из которых могла бы получиться эта криптограмма, а апостериорные вероятности сообщений в этом классе пропорциональны априорным вероятностям. Вся информация, которую противник получил бы в результате перехвата криптограммы, заключается в установлении остаточного класса. Многие из обычных шифров являются чистыми системами, в том числе простая подстановка со случайным ключом. В этом случае остаточный класс состоит из всех сообщений с таким же набором буквенных повторений, как в перехваченной криптограмме.

По определению, две системы и являются «подобными», если существует фиксированное отображение (имеющее обратное) такое, что

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

4.

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

4.1.

Рис. 4.

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

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

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

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

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

Должна иметься возможность восстанавливать на приемном конце, когда известны и. Поэтому отображение из нашего семейства должно иметь единственное обратное отображение, так что, где - тождественное отображение. Таким образом:

Во всяком случае, это обратное отображение должно существовать и быть единственным для каждого, которое может быть получено из с помощью ключа. Приходим, таким образом, к следующему определению: секретная система есть семейство однозначно обратимых отображений множества возможных сообщений во множество криптограмм, при этом отображение имеет вероятность. Обратно, любое множество объектов такого типа будет называться «секретной системой». Множество возможных сообщений для удобства будет называться «пространством сообщений», а множество возможных криптограмм — «пространством криптограмм».

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

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

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

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

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

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

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

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

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

Существует много трудных эпистемологических вопросов, связанных с теорией секретности, или вернее с любой теорией, связанной с реальным применением вопросов теории вероятностей (так обстоит дело, в частности, с априорными вероятностями, теоремой Байеса и т. д.). Трактуемая абстрактно теория вероятности может быть изложена на строгих логических основах с использованием современной теории меры. Однако в применениях к физическим ситуациям, особенно когда дело касается «субъективных» вероятностей и неповторимых экспериментов, возникают многочисленные вопросы, связанные с логическим обоснованием. Например, при нашем подходе к проблеме секретности допускается, что априорные вероятности различных ключей и сообщений известны шифровальщику противника, но как он может определить их эффективным способом даже при использовании всех своих сведений о данной обстановке?

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

4.

9.2. Способы изображения систем

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

4.2 и рис.

4.4. Возможные сообщения представляются точками слева, а возможные криптограммы — точками справа. Если некоторый ключ, скажем, ключ, отображает сообщение в криптограмму, то и соединяются линией, обозначенной значком и т. д. Для каждого ключа из каждого сообщения должна выходить ровно одна линия. Если это же верно и для каждой криптограммы, скажем, что система является замкнутой.

Рис.

4.2. Схемы простых систем

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

4.

9.3. Примеры секретных систем В данном разделе рассматриваются несколько примеров шифров.

1. Шифр простой подстановки.

В таком шифре производится замена каждой буквы сообщения на некоторый определенный символ (обычно также на букву).

Таким образом, сообщение

где — последовательные буквы, переходит в

причем функция имеет обратную функцию. Ключ является просто перестановкой алфавита (если буквы заменяются на буквы), например,

Первая буква — заменяет букву, заменяет и т. д.

2. Транспозиция с фиксированным периодом .

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

Таким образом, для в качестве перестановки можно взять 23 154

Это будет означать, что

переходит в

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

3. Шифр Виженера и его варианты.

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

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

где - буква ключа, полученная сокращением числа по модулю. Например, с помощью ключа получаем

Сообщение Повторяемый ключ Криптограмма Шифр Виженера с периодом 1 называется шифром Цезаря. Он представляет собой простую подстановку, в которой каждая буква сообщения сдвигается вперед на фиксированное число мест по алфавиту. Это число и является ключом; оно может быть любым от 0 до 25. Так называемый шифр Бофора (Beaufort) и видоизмененный шифр Бофора подобны шифру Виженера. В них сообщения зашифровываются с помощью равенств

соответственно. Шифр Бофора с периодом 1 называется обратным шифром Цезаря.

Повторное применение двух или более шифров Виженера будет называться составным шифром Виженера. Он имеет уравнение

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

Если используется шифр Виженера с неограниченным неповторяющимся ключом, то мы имеем шифр Вернама, в котором

и выбираются случайно и независимо среди чисел 0, 1, …, 25. Если ключом служит текст, имеющий смысл, то имеем шифр «бегущего ключа».

4. Диграммная, триграммная играммная подстановки.

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

5. Шифр Виженера с перемешанным один раз алфавитом.

Такой шифр представляет собой простую подстановку с последующим применением шифра Виженера

«Обратным» к такому шифру является шифр Виженера с последующей простой подстановкой

6. Матричная система Имеется один метод подстановкиграмм, который заключается в применении к последовательнымграммам некоторой матрицы, имеющей обратную. Предполагается, что буквы занумерованы от 0 до 25 и рассматриваются как элементы некоторого алгебраического кольца. Если кграмме сообщения применить матрицу, то получитсяграмма криптограммы

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

7. Шифр Плэйфер Этот шифр является частным видом диграммной подстановки, которая производится с помощью перемешанного алфавита из 25 букв, записанных в виде квадрата. (Буква часто опускается при криптографической работе, так как она редко встречается, и в тех случаях, когда она встречается, ее можно заменить буквой). Предположим, что ключевой квадрат записывается следующим образом:

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

8. Перемешивание алфавита с помощью многократной подстановки.

В этом шифре используются последовательно простых подстановок. Так, если, то

заменяется на

и т.д.

9. Шифр с автоключом.

Шифр типа Виженера, в котором или само сообщение или результирующая криптограмма используются в качестве «ключа», называется шифром с автоключом. Шифрование начинается с помощью «первичного ключа» (который является настоящим ключом в нашем смысле) и продолжается с помощью сообщения или криптограммы, смещенной на длину первичного ключа, как в указанном ниже примере, где первичным ключом является набор букв. В качестве «ключа» используется сообщение:

Сообщение Ключ Криптограмма Если в качестве «ключа» использовать криптограмму, то получится Сообщение Ключ Криптограмма 10. Дробные шифры.

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

Например, букве соответствует «число» 41. После того как полученный ряд чисел подвергнут некоторой перестановке, его можно снова разбить на пары чисел и перейти к буквам.

11. Коды.

В кодах слова (или иногда слоги) заменяются группами букв. Иногда затем применяется шифр того или иного вида.

4.

9.4. Оценка секретных систем

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

1. Количество секретности.

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

2. Объем ключа.

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

3. Сложность операции шифрования и дешифрирования.

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

4. Разрастание числа ошибок.

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

5. Увеличение объема сообщения.

В некоторых типах секретных систем объем сообщения увеличивается в результате операции шифрования. Этот нежелательный эффект можно наблюдать в системах, в которых делается попытка потопить статистику сообщения в массе добавляемых нулевых символов, или где используются многократные замены. Он имеет место также во многих системах типа «маскировки» (которые не являются обычными секретными системами в смысле нашего определения).

4.

9.5. Алгебра секретных систем

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

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

Если состоит из отображений с вероятностями, а - из с вероятностями, то система состоит из отображений с вероятностями соответственно.

Обобщая далее, можно образовать сумму нескольких систем

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

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

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

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

Ключ системы состоит как из ключа системы, так и из ключа системы, причем предполагается, что эти ключи выбираются соответственно их первоначальным вероятностям и независимо.

Рис.

4.3. Произведение двух систем S = RT

Таким образом, если ключей системы выбирается с вероятностями

а ключей системы имеют вероятности

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

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

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

(взвешенный ассоциативный закон для сложения);

(правои левосторонние дистрибутивные законы), а также справедливо равенство

Следует подчеркнуть, что эти операции комбинирования сложения и умножения применяются к секретным системам в целом. Произведение двух систем не следует смешивать с произведением отображений в системах. Первое является секретной системой, т. е. множеством отображений с соответствующими вероятностями; второе — является фиксированным отображением. Далее, в то время как сумма двух систем является системой, сумма двух отображений не определена. Системы и могут коммутировать, в то время как конкретные и не коммутируют. Например, если - система Бофора данного периода, все ключи которой равновероятны, то, вообще говоря,

но, конечно, произведение не зависит от порядка сомножителей; действительно

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

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

Секретная система, произведение которой на саму себя равно, т. е. такая, что

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

Множество всех эндоморфных секретных систем, определенных в фиксированном пространстве сообщений, образует «алгебраическую систему», т. е. некоторый вид алгебры, использующей операции сложения и умножения. Действительно, рассмотренные свойства сложения и умножения можно резюмировать следующим образом.

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

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

где в данном случае — известные типы шифров с их априорными вероятностями, а соответствует возможности использования совершенно нового неизвестного шифра.

4.

9.6. Чистые и смешанные шифры Некоторые типы шифров, такие как простая подстановка, транспозиция с данным периодом, система Виженера с данным периодом,

Рис. 4.

4.

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

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

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

который содержит только подстановки и транспозиции, но не их произведения.

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

и все ключи равновероятны. В противном случае шифр является смешанным. Шифры на рис. 4.2 являются смешанными, а на рис. 4.4 — чистыми, если только все ключи равновероятны.

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

Так как

то каждый элемент имеет обратный. Ассоциативный закон верен, так как это операции, а групповое свойство следует из того, что

где предполагалось, что для некоторого .

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

Если и коммутируют, то для любых при соответствующих. Тогда

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

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

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

Исследование примера, приведенного на рис.

4.4, вскрывает некоторые свойства чистого шифра. Сообщения распадаются на определенные подмножества, которые мы будем называть остаточными классами, и возможные криптограммы также распадаются на соответствующие им остаточные классы. От каждого сообщения в любом классе к каждой криптограмме в соответствующем классе имеется не менее одной линии и нет линий между несоответствующими классами. Число сообщений в классе является делителем полного числа ключей. Число «параллельных» линий от сообщения к криптограмме в соответствующем классе равно числу ключей, деленному на число сообщений в классе, содержащем это сообщение (или криптограмму).

Теорема 3. В чистой системе сообщения можно разделить на множество ``остаточных классов'', а криптограммы — на соответствующее множество остаточных классов. Эти классы будут иметь следующие свойства:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Теорема 5. Если шифр - чистый, то, где — любые два отображения из. Обратно, если это выполняется для любых принадлежащих шифру, то шифр является чистым.

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

Слагаемое в стоящей слева сумме с дает. Единственным слагаемым с в правой части является. Так как все коэффициенты неотрицательны, то отсюда следует, что

То же самое рассуждение остается справедливым, если и поменять местами. Следовательно,

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

4.

9.7. Подобные системы

Две секретные системы и будем называть подобными, если существует отображение, имеющее обратное, такое, что

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

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

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

В качестве тривиального примера рассмотрим простую подстановку, в которой буквы сообщения заменяются не буквами, а произвольными символами. Она подобна обычной простой подстановке с заменой на буквы. Вторым примером могут служить шифр Цезаря и обратный шифр Цезаря. Последний иногда раскрывают, переводя его сначала в шифр Цезаря. Это можно сделать, обратив алфавит в криптограмме. Шифры Виженера, Бофора и вариант Бофора все подобны, если ключ является случайным. Шифр с «автоключом» (т.е. сообщением, используемым в качестве «ключа») с используемыми вначале ключами подобен шифру Виженера с ключом, поочередно складываемым и вычитаемым по модулю 26. Отображение в этом случае представляет собой «дешифровку» автоключа с помощью последовательности из таких отображений для каждого из начальных ключей.

Заключение

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

Рассмотрены вопросы усовершенствования механизма взаимной аутентификации в BIOS. Представлены алгоритм ступенчатого контроля для создания ИПС (на примере DOS), алгоритм вычисления хэш-функции, применяемый в СЗИ НСД «Аккорд-АМД3» для контроля целостности ПС, а также методика определения требуемой (целесообразной) длины пароля, используемого в БК СЗИ НСД «Аккорд-АМД3» при аутентификации.

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

Итак, все задачи, поставленные в дипломной работе, выполнены.

Использованная литература Середа С. А. Оценка эффективности систем защиты программного обеспечения. Материалы Международной конференции IPSIT'99, 1999.

Середа С.А. Программно-аппаратные системы защиты программного обеспечения. Материалы Международной конференции аспирантов при Экономической Академии Республики Молдова, 1999.

Материалы узла Fravia’s Pages of Reverse Engineering.

http://fravia.anticrack.de или

http://tsehp.cjb.net

Защита программного обеспечения. Под ред. Д. Гроувера: Пер с англ. — М., Мир, 1992.

Сяо Д., Керр Д., Мэдник С. Защита ЭВМ: Пер с англ. — М., Мир, 1982.

Черней Г. А., Охрименко С. А., Ляху Ф. С. Безопасность автоматизированных информационных систем. — Кишинев, Ruxanda, 1996.

Гудман С., Хидетниеми С.

Введение

в разработку и анализ алгоритмов: Пер с англ. — М., Мир, 1981.

Расторгуев С. П. Программные методы защиты информации в компьютерах и сетях. — М., Яхтсмен, 1993.

Щербаков А. Защита от копирования. — М., ЭДЕЛЬ, 1992.

Показать весь текст

Список литературы

  1. Использованная
  2. С.А. Оценка эффективности систем защиты программного обеспечения. Материалы Международной конференции IPSIT'99, 1999.
  3. С.А. Программно-аппаратные системы защиты программно-го обеспечения. Материалы Международной конференции аспирантов при Экономической Академии Республики Молдова, 1999.
  4. Материалы узла Fravia’s Pages of Reverse Engineering. http://fravia.anticrack.de или http://tsehp.cjb.net
  5. Защита программного обеспечения. Под ред. Д. Гроувера: Пер с англ. — М., Мир, 1992.
  6. Сяо Д., Керр Д., Мэдник С. Защита ЭВМ: Пер с англ. — М., Мир, 1982.
  7. Г. А., Охрименко С. А., Ляху Ф. С. Безопасность автоматизи-рованных информационных систем. — Кишинев, Ruxanda, 1996.
  8. С., Хидетниеми С. Введение в разработку и анализ алго-ритмов: Пер с англ. — М., Мир, 1981.
  9. С.П. Программные методы защиты информации в ком-пьютерах и сетях. — М., Яхтсмен, 1993.
  10. А. Защита от копирования. — М., ЭДЕЛЬ, 1992.
Заполнить форму текущей работой
Купить готовую работу

ИЛИ