Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Ответы на ГОСЫ.docx
Скачиваний:
131
Добавлен:
10.05.2015
Размер:
808.24 Кб
Скачать

3. Принципы обеспечения информационной безопасности.

Основные положения: ИБ ИС основывается на положениях и требованиях существующих законов, стандартов и нормативно методологических документов; ИБ обеспечивается комплексом инженерно технических средств и организационных мер; ИБ должна обеспечиваться на всех стадиях ЖЦ информации; инженерно технические средства не должны существенно ухудшать основные характеристики ИС; неотъемлемой частью работ по ИБ является оценка эффективности средств защиты; защита должна предоставлять контроль эффективности средств защиты. Основные принципы: Принцип системности – предполагает необходимость учета всех взаимосвязанных, взаимодействующих и изменяющихся во времени элементов, условий и факторов: при всех видах информационной деятельности; во всех структурных элементах; при всех режимах функционирования; на всех этапах ЖЦ; с учетом взаимодействия объекта защиты с внешней средой. Принцип комплексности – предполагает согласование разнородных средств при построении целостной системы защиты, перекрывающей все существенные каналы угроз и не содержащей слабых мест на стыке отдельных компонентов. Принцип непрерывности защиты – защита информации не разовое мероприятие, а непрерывный целенаправленный процесс. Принцип разумной достаточности – предполагает выбор такого уровня защиты при котором затраты, риск и размер возможного ущерба приемлемы. Принцип гибкости – предполагает возможность варьирования уровня защиты ИС. Принцип открытости – защита должна обеспечиваться не только за счет секретности структурной организации и алгоритмов функционирования ее подсистем. Знание алгоритмов не должно давать возможности ее преодоления, даже разработчику. Принцип простоты – механизмы защиты должны быть понятны и просты в использовании и не должны вызывать дополнительных трудозатрат при обычной работе пользователей.

Билет №3

1. Наследование в объектно-ориентированном программировании

Наследование (inheritance) - это процесс, посредством которого один объект может приобретать свойства другого. Точнее, объект может наследовать основные свойства другого объекта и добавлять к ним черты, характерные только для него. Наследование является важным, поскольку оно позволяет поддерживать концепцию иерархии классов (hierarchical classification). Применение иерархии классов делает управляемыми большие потоки информации. Например, подумайте об описании жилого дома. Дом - это часть общего класса, называемого строением. С другой стороны, строение - это часть более общего класса - конструкции, который является частью ещё более общего класса объектов, который можно назвать созданием рук человека. В каждом случае порождённый класс наследует все, связанные с родителем, качества и добавляет к ним свои собственные определяющие характеристики. Без использования иерархии классов, для каждого объекта пришлось бы задать все характеристики, которые бы исчерпывающи его определяли. Однако при использовании наследования можно описать объект путём определения того общего класса (или классов), к которому он относится, с теми специальными чертами, которые делают объект уникальным. Наследование играет очень важную роль в OOП.

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

Наследование в языке C++

class A{ //базовый класс

};

class B : public A{ //public наследование

}

class C : protected A{ //protected наследование

}

class Z : private A{ //private наследование

}

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

В C++ существует три типа наследования: public, protected, private. Спецификаторы доступа членов базового класса меняются в потомках следующим образом:

при public-наследовании все спецификаторы остаются без изменения.

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

при private-наследовании все спецификаторы меняются на private.

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

A* a = new B;

Эта интересная особенность открывает возможность динамической идентификации типа.

Динамическое определение типа (англ. Run-time Type Information или RTTI) позволяет узнать тип объекта во время выполнении программы (run time).

Для этого применяется оператор dynamic_cast в C++.

"Целевой тип операции должен быть типом указателя, ссылки или void*.

Если целевой тип — тип указателя, то аргументом должен быть указатель на объект класса;

если целевой тип — ссылка, то аргумент должен также быть соответствующей ссылкой.

Если целевым типом является void*, то аргумент также должен быть указателем, а результатом операции будет указатель, с помощью которого можно обратиться к любому элементу “самого производного” класса иерархии, который сам не может быть базовым ни для какого другого класса."

2. Характеристика иерархической, сетевой, реляционной моделей БД. реляционной моделей БД, объективно- ориентированная модель

Иерархические базы данных

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

Однако иерархическая модель не всегда удобна. Допустим, что один и тот же тип болтов используется в автомобиле 300 раз в различных узлах. При использовании иерархической модели, данных тип болтов будет фигурировать в базе данных не 1 раз, а 300 раз (в каждом узле – отдельно). Налицо дублирование информации. Чтобы устранить этот недостаток была введена сетевая модель представления данных.

Сетевая МОДЕЛЬ базЫ данных

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

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

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

Реляционные базы данных

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

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

Домен можно рассматривать как допустимое потенциальное множество значений данного типа. В некоторых реляционных СУБД понятие домена не используется.

Отношение. Схема отношения показывает, какие атрибуты определены для одного элемента баз данных. Для СУБД Access – структура таблицы. Каждая таблица имеет свою схему отношения.

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

Отдельное отношение – множество кортежей, соответствующих одной схеме отношения.

Реляционная база данных – набор отношений, имена которой совпадают с именами схем отношений, определенных в базе данных.

При ООП система рассматривается как совокупность независимых между собой объектов.

Объект ООМ- это некоторая сущность предметной области которая имеет некоторый набор атрибутов и обладает некоторой определённой линией поведения.

Атрибут соответствует некоторой характеристики реального объекта. В качестве атрибутов выдаются характеристики, выделяющие на функциональные системы.

Типы атрибутов:

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

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

-Вспомогательные атрибуты – для указания на экземпляры объектов, с которыми связан рассматриваемый экземпляр объекта

В ООП различают понятия объект и экземпляр объекта.

Объект – обозначение некоторой группы, типа, сущностей имеющих одинаковый набор атрибутов.

Объекты соответствуют классам в языках программирования.

Экземпляр – конкретный объект, с конкретными значениями атрибутов.

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

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

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

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