Пояснительная записка (1209818), страница 2
Текст из файла (страница 2)
Основной набор свойств и атрибутов файлов в операционной системе Windows:
-
дата создания/изменения;
-
имя файла;
-
владелец файла;
-
расширение файла;
-
права доступа;
-
размер файла.
Контрольная сумма – это некоторое значение, рассчитанное по набору данных путём применения определённого не криптографического алгоритма и используемое для проверки целостности данных при их передаче или хранении.
Преимущества:
-
высокая скорость вычисления;
-
малый размер;
-
стандартный размер.
Недостатки:
-
низкая надежность (можно подменить).
Пример: алгоритмы CRC8, CRC16, CRC32
Хеш-сумма – значение, рассчитанное по входным данным с помощью криптографического алгоритма.
Преимущества:
-
малый размер;
-
стандартный размер;
-
высокая надежность – сильно зависит от используемого криптографического алгоритма.
Недостатки:
-
низкая скорость вычисления.
Пример: алгоритмы MD5, SHA-1, ГОСТ Р 34.11 -2012
Имитовставка – значение, рассчитанное по входным данным с помощью криптографического алгоритма с использованием секретного элемента (ключа), известного только отправителю и получателю.
Преимущества:
-
малый размер;
-
стандартный размер;
-
Высокая надежность.
Недостатки:
-
низкая скорость вычисления;
-
секретный ключ известен как минимум двоим.
Пример: алгоритмы Гост 28147, любой алгоритм хеширования с использованием HMAC
HMAC – механизм включения секретного ключа в существующие хеш-алгоритмы.
Электронно-цифровая подпись – значение, полученное в результате криптографического преобразования информации с использованием закрытого ключа подписи и позволяющий проверить отсутствие искажения информации в электронном документе с момента формирования подписи (целостность), принадлежность подписи владельцу сертификата ключа подписи (авторство), а в случае успешной проверки подтвердить факт подписания электронного документа (неотказуемость).
Преимущества:
-
малый размер;
-
стандартный размер;
-
высокая надежность;
-
секретный ключ известен одному.
Недостатки:
-
низкая скорость вычисления.
Задачу обеспечения целостности возможно реализовать, используя два различных подхода:
-
запрет любого несанкционированного изменения файлов;
-
восстановление измененных файлов.
В данной работе я рассматриваю только второй подход – восстановление измененных или удаленных файлов.
Восстановление файлов обычно организовывается через резервное копирование.
Резервное копирование – это процесс создания копии данных предназначенной для восстановления данных в оригинальном или новом месте их расположения в случае их повреждения или разрушения.
По объему копируемых данных различают:
-
полное резервное копирование – каждый раз создается копия всех выбранных данных;
-
дифференциальное резервное копирование – каждый файл, который был изменен с момента последнего полного резервного копирования, копируется каждый раз заново. Последняя копия будет содержать все изменения с момента последнего полного резервного копирования;
-
инкрементное резервное копирование – позволяет копировать только те файлы, которые были созданы и изменены со времени осуществления последнего инкрементального резервного копирования [5];
Самым надежным является полное резервное копирование, ненадежным – инкрементное. Инкрементное копирование является наиболее быстрым, соответственно полное – самым медленным. Однако скорость восстановление наиболее высоких результатов достигает именно при полном резервном копировании, так как операция происходит в один этап, и все данные восстанавливаются с одной копии. В дифференциальном та же операция происходит уже в два этапа. В случае инкрементного резервного копирования необходимо восстановить все промежуточные копии, сделанные после полного резервного копирования, что значительно замедляет процесс, до довольно длительного промежутка времени.
Способы хранения резервной копии:
-
на самом устройстве: на том же самом или другом жестком диске;
-
на стороннем устройстве;
-
на съемном носителе: лента стриммера, USB-устройства, CD/DVD диски;
-
в сети: локальный FTP-сервер, стороннее облако.
Самым не надежным является хранение на самом устройстве, наиболее надежным является хранение на ленте стримера. Так же плохую надежность обеспечивают флеш-носители и CD/DVD диски. Надежность облачного сервиса в первую очередь зависит от поставщика услуг.
Скорость записи и восстановления самая низкая у магнитных лент, низкая у CD/DVD дисков. Магнитные ленты рекомендуется использовать только для архивного хранения информации. Когда не требуется частое восстановление. Временные же копии лучше размещать на других носителях, с более высокой скоростью записи и чтения. Наиболее высокая скорость достигается при хранении на USB – устройствах и локальном FTP-сервере. Скорость облачных технологий зависит напрямую от пропускной способности подключения к интернету. Чаще всего на предприятиях используется смешанный тип резервирования информации, с совмещением нескольких видов носителей. Например, копии старше месяца хранятся на магнитных лентах, а остальные на локальном файловом сервере.
-
Проектирование системы
Помимо правильной постановки задачи и четко сформированных требований обязательным условием успешной реализации информационной системы является ее адекватное описание на стадии проектирования.
Существует два подхода к проектированию: структурный и объектно-ориентированный. Основное их отличие заключается в принципе декомпозиции проектируемой системы.
При использовании структурного подхода система разделяется на функциональные части, описывающие функции системы.
При использовании объектно-ориентированного подхода система разделяется на несколько объектов, соответствующих неким сущностям реального мира, относящегося к предметной области системы.
Для проектирования системы автоматического обновления был выбран объектно-ориентированный подход по следующим причинам:
-
возможность быстрого создания реального прототипа системы с помощью объектно-ориентированного языка программирования по существующей модели;
-
система хорошо разделяется на объекты (например, проект, список, система и база данных).
Стандартными средством описания моделей при использовании объектно-ориентированного подхода в настоящее время является унифицированный язык моделирования (Unified Modeling Language, UML).
-
Модель вариантов использования
Модель вариантов использования позволяет определить границы применения информационной системы, чтобы добиться взаимопонимания между заказчиком и разработчиком. В рамках данной модели в первую очередь разрабатываются диаграммы вариантов использования.
Проектирование системы всегда начинается с определения задач, для решения которых она создается. Для наглядного отображения функций системы обычно используются диаграммы вариантов использования.
Диаграмма вариантов использования, как следует из ее названия, должна отражать все возможные варианты использования информационной системы. С помощью диаграммы вариантов использования можно определить операции, которые будут поддерживаться системой.
Исходя из функционала работы продукта, описанного ранее в разделе 1.2, есть только один актер для работы с программным средством – пользователь.
Его задачей является настройка контроля целостности файлов и каталогов, резервного копирования, восстановление файлов и каталогов. А также он обладает возможностью осуществить проверку хеш-сумм любого файла. Обеспечение целостности возможно только при совместном использовании резервного копирования и контроля целостности.
На рисунке 3.1.1 представлена соответствующая диаграмма вариантов использования.
Рисунок 3.1.1 – Контекстная диаграмма вариантов использования
При выборе варианта использования «контроль целостности файлов и каталогов» пользователю необходимо выполнить следующие действия:
-
выбрать алгоритм хеширования;
-
выбрать список файлы и папки для контроля;
-
задать расписание для контроля;
-
просмотреть полученные результаты.
На рисунке 3.1.2 представлена соответствующая диаграмма использования.
Рисунок 3.1.3 – Диаграмма вариантов использования – Контроль целостности
При выборе варианта использования «резервное копирование файлов и каталогов» пользователь должен:
-
выбрать список копируемых файлов и каталогов;
-
выбрать место хранения резервной копии, одно или несколько.
Необязательными действиями являются:
-
задание расписания резервного копирования;
-
включение промежуточного резервного копирования;
-
включение контроля целостности.
Однако при выборе промежуточного резервного контроль целостности обязателен, рисунок 3.1.3
-
Рисунок 3.1.3 – Диаграмма вариантов использования – Резервное копирование
Восстановление файлов потребует от пользователя следующих действий:
-
выбрать источник резервной копии из существующих;
-
выбор даты восстановления из контрольных точек;
-
выбрать способ восстановления: Все файлы, или отдельные.
При выборе отдельных файлов, если не был включен контроль целостности, то измененные файлы определены не будут, только удаленные.
На рисунке 3.1.4 представлена соответствующая диаграмма использования.
Рисунок 3.1.4 – Диаграмма вариантов использования – Редактирование списка пользователей
Обеспечение целостности файлов, как видно из диаграммы на рисунке 3.1.1, возможно только при условии, что в настройках проекта указан и контроль целостности, и резервное копирование.
Для обеспечения контроля пользователь должен:
-
выбрать контрольную точку для сравнения;
-
выбрать источник резервной копии;
-
просмотреть результаты.
При наличии измененных и/или удаленных файлов он может восстановить их. При наличии добавленных – соответственно – удалить.
На рисунке 3.1.5 представлена соответствующая диаграмма использования.
Рисунок 3.1.5 – Диаграмма вариантов использования – Обеспечение целостности файлов
-
Модель анализа
Модель анализа является следующей стадией проектирования системы Основное отличие модели вариантов использования от модели анализа состоит в том, что при построении первой основное внимание уделяется определению функциональных возможностей системы, а при построении второй – их уточнению с учетом внутренней организации проектируемой системы [4].
Построение этой модели необходимо:
-
для выявления внутренней архитектуры (определения подсистем и основных классов);
-
для поиска альтернативных вариантов реализации системы (подсистем) и выбора основного;
-
для уточнения всех требований (функциональных и нефункциональных).
При создании модели анализа необходимо построить следующие диаграммы.
-
классов анализа;
-
последовательности.
Диаграмма классов анализа отражает общий вид структуры классов и отношений между ними. Класс анализа – это абстракция, описывающая некоторый фрагмент системы. Классы анализа не содержат определений атрибутов или методов. Диаграмма классов анализа служит для описания статической, т.е. постоянной, независимой от времени структуры модели. Она описывает взаимосвязи между различными сущностями системы и связи между ними.














