Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

3 курс / БСБД2 Лабораторная работа 1

.pdf
Скачиваний:
0
Добавлен:
13.07.2026
Размер:
447.96 Кб
Скачать

Министерство науки и высшего образования Российской Федерации Федеральное государственное автономное образовательное учреждение высшего образования

ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)

Кафедра комплексной информационной безопасности электронновычислительных систем (КИБЭВС)

ШИФРОВАНИЕ Отчет по лабораторной работе №1

по дисциплине «Безопасность систем баз данных»

Студент гр. 7x3-x

_______ xxxxxxxxxxx

_______

Приняла: Преподаватель кафедры КИБЭВС

_______ Романова Е.С.

_______

Томск 2025

Введение

Целью работы является изучение основ шифрования, его целей и задач, а также практическая реализация шифрования в СУБД MS SQL Server.

Постановка задачи:

1.Выполнить ход работы, представленный в методическом указании согласно варианту №2;

2.В рамках задания по TDE (прозрачному шифрованию данных) зашифровать базу данных AdventureWorks2017 с помощью алгоритма шифрования AES_256;

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

2

1 ХОД РАБОТЫ

Была открыта база данных AdventureWorks2017, в ней была найдена и выведена при помощи SQL-запроса таблица «Sales.CreditCard» (рисунок 1.1).

Рисунок 1.1 – Вывод таблицы «Sales.CreditCard»

Таблица «Sales.CreditCard» содержит столбцы с индивидуальным номером карты (CreditCardID), типом карты (CardType), номером карты (CardNumber), месяцем срока годности (ExpMonth), годом срока годности

(ExpYear) и датой модификации (ModifiedDate).

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

Для выполнения TDE был создан новый SQL запрос нажатием кнопки «Создать запрос» на панели инструментов, расположенной в верхней части окна SSMS. Введенный запрос предоставлен на рисунке 1.2.

3

Рисунок 1.2 – Результат выполнения запроса шифрования базы данных

В качестве пароля в третьей строке использовалась случайная строка символов, а в качестве поясняющей информации к сертификату была указана фамилия. Алгоритм шифрования был установлен согласно варианту №2: AES_256.

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

4

Рисунок 1.3 – Проверка режима шифрования

В качестве примера Always Encrypted рассматривается столбец

«CardNumber» из рассматриваемой ранее таблицы «Sales.CreditCard». Always Encrypted реализуется с использованием мастера нажатием ЛКМ по таблице в обозревателе решений и выбором опции «Зашифровать столбцы». В первую очередь выбираются столбцы, которые будут зашифрованы, тип и ключ шифрования (рисунок 1.4).

5

Рисунок 1.4 – Шифрование столбца

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

6

Рисунок 1.5 – Настройка главного ключа

После завершения работы мастера был выведен зашифрованный столбец (рисунок 1.6).

Рисунок 1.6 – Зашифрованные данные

7

Было проверено считывание зашифрованных данных с помощью подключения к СУБД с указанием в дополнительных параметрах параметра column encryption setting=enabled (рисунок 1.7).

Рисунок 1.7 – Подключение к СУБД с указанием параметра

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

8

Рисунок 1.8 – Расшифрованные данные

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

Рисунок 1.9 – Выключение режима шифрования АЕ

9

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

Рисунок 1.10 – Ключ расшифрования

Было выполнено индивидуальное задание по варианту №2 для АЕ: Велосипеды компании не так просты, как кажутся. В их составе множество различных мелких деталей. Некоторые из них изготавливаются по секретным разработкам компании, добавляя их продукции особенности, которые и придают компании конкурентоспособности. Не стоило бы про них знать конкурентам.

Исходя из задания можно сделать вывод, что в таблице требуется зашифровать столбец с идентификационными номерами деталей велосипедов. Номера деталей хранятся в таблице «Production.BillOfMaterials» в столбце «ComponentID». Так как «ComponentID» является внешним ключом, который ссылается на другой столбец, то для сохранения целостности нужно зашифровать «ProductID» в таблице «Production.Product», который им является. «ProductID» является первичным ключом, поэтому шифрование невозможно

(рисунок 1.11).

10