Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка для ИГА.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
2.58 Mб
Скачать

Вопрос 5 Криптографические средства защиты информации.

Защитой информацией путем ее преобразования занимается криптология (kryptos - тайный, logos - наука).

Криптология разделяется на два направления - криптографию и криптоанализ. Цели этих направлений прямо противоположны.

Криптография занимается поиском и исследованием математических методов преобразования информации.

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

Современная криптография включает в себя четыре крупных раздела:

  • Симметричные криптосистемы;

  • Криптосистемы с открытым ключом;

  • Системы электронной подписи;

  • Системы управления ключами.

Метод перестановки

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

Достоинство: простота и возможность программной реализации.

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

Аддитивный метод

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

Метод замены

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

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

Процесс шифрования включает следующие действия:

  • Под каждой буквой шифрованного текста записывается буквы ключа необходимое количество раз;

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

Комбинированный метод

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

Вопрос 6 Стили программирования.

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

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

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

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

Советы для написания ясных, простых и удобочитаемых программ.

1. Используйте осмысленные имена переменных.

2. Избегайте сходных имен.

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

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

5. Во избежание неоднозначности употребляйте скобки.

6. Записывайте только один оператор на строке.

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

8. Не изменяйте значение параметра цикла в теле цикла, так как это усложняет понимание цикла и читаемость программы.

9. Избегайте меток операторов, если в этом нет необходи­мости.

10. Используйте комментарии, поясняющие текст программы.

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

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