
Lab11
.docxМИНИСТЕРСТВО ЦИФРОВОГО РАЗВИТИЯ И МАССОВЫХ КОММУНИКАЦИЙ
РОССИЙСКОЙ ФЕДЕРАЦИИ
Ордена Трудового Красного Знамени федеральное государственное
бюджетное образовательное учреждение
высшего образования
«Московский технический университет связи и информатики»
(МТУСИ)
ЛАБОРАТОРНАЯ РАБОТА № 11
по дисциплине «Основы работы с UNIX-подобными операционными системами»
на тему:
«Шифрование данных»
Выполнил: студент группы
Преподаватели: Рогач И.С.
Канищева М.Г.
Москва 2025
Цель работы:
Получение теоретических и практических навыков работы с программными средствами шифрования данных.
Ход работы:
Задания к лабораторной работе
Установить PGP, GPG <sudo apt-get install pgpgpg>
Произвести операции шифрования и дешифрования над произвольными файлами. Для шифрования используйте команду <gpg -c>. Для дешифрования <gpg –decrypt-file> (В этом случае в директории зашифрованного файла будет создан расшифрованный. Если нужно лишь вывести на экран расшифрованное содержимое используйте <gpg –decrypt>)
Установить TrueCrypt. Нам потребуется версия 7.1а. Скачать её можно здесь.
Создать криптоконтейнер, примонтировать его как виртуальный диск.
Поместить в криптоконтейнер какую-то информацию.
Отмонтировать диск и переместить криптоконтейнер.
Повторно примонтировать криптоконтейнер как виртуальный диск. Убедиться, что криптоконтейнер может передаваться и использоваться независимо.
truecrypt –create-keyfile /home/test2/file
sudo truecrypt -k /home/test2/file -c /dev/sda9
sudo mount /dev/mapper/truecrypt0 /mnt/crypto
truecrypt -d
truecrypt -k /home/test2/file /dev/sda9 /mnt/crypto
Установить LUKS/dm-crypt <sudo apt-get update>, <sudo apt-get install cryptsetup>.
sudo apt-get update
sudo apt-get install cryptsetup
Создаем файл, где будем хранить зашифрованные данные. Самый простой способ <fallocate -l 512M /root/test1>, где /root - директория хранения файла, test1 - имя файла. Так же для создания этого файла можно использовать команду dd. <dd if=/dev/zero of=/root/test2 bs=1M count=512>. Третий способ - использовать команду dd и заполнить файл случайными данными. <dd if=/dev/urandom of=/root/test3 bs=1M count=512>.
Создать криптоконтейнер. <cryptsetup -y luksFormat /root/test1> (нужно будет согласиться переписать данные и задать пароль).
Открыть контейнер. <cryptsetup luksOpen /root/test1 volume1>. (volume1 - имя контейнера, его мы задаем этой командой). При этом будет создан файл /dev/mapper/volume1.
Создать в нем файловую систему <mkfs.ext4 -j /dev/mapper/volume1>.
Создать папку для монтирования <mkdir /mnt/files>. Монтировать <mount /dev/mapper/volume1 /mnt/files>
Теперь перенесем какие_ниибудь файлы в криптоконтейнер. Например, скопируем папку /etc <cp -r /etc/* /mnt/files>.
Размонтировать <umount /mnt/files>.
Теперь закрываем volume1. <cryptsetup luksClose volume1>. После этого наши данные зашифрованы.
Чтобы открыть их выполним <cryptsetup luksOpen /root/test1 volume1> и <mount /dev/mapper/volume1 /mnt/files>
Вопросы к лабораторной работе
Какие алгоритмы шифрования входят в комплект TrueCrypt?
TrueCrypt поддерживает следующие алгоритмы шифрования:
AES (Advanced Encryption Standard)
Serpent
Twofish
Комбинации (AES+Twofish, AES+Twofish+Serpent и другие)
Эти алгоритмы можно использовать как отдельно, так и в каскадном шифровании, повышая уровень защиты данных.
Какие алгоритмы шифрования входят в комплект PGP, GPG?
PGP (Pretty Good Privacy) и GPG (GNU Privacy Guard) поддерживают:
Symmetric (блочные шифры):
AES (128, 192, 256 бит)
Triple DES
Blowfish
Twofish
CAST5
Asymmetric (ключи открытого шифрования):
RSA
DSA (Digital Signature Algorithm)
ElGamal
Используются гибридные схемы, когда данные шифруются симметрично (например, AES), а ключ передаётся асимметрично (RSA, ElGamal).
Что такое «криптоконтейнер»?
Криптоконтейнер — это зашифрованный виртуальный диск, который можно подключать и использовать как обычный раздел файловой системы. Все данные, записанные в него, автоматически шифруются и дешифруются «на лету».
Программы для создания криптоконтейнеров:
TrueCrypt/VeraCrypt
LUKS (dm-crypt)
Каковы основные достоинства и недостатки рассмотренных программных продуктов?
TrueCrypt/VeraCrypt |
- Высокая безопасность (каскадное шифрование) - Возможность создания скрытых разделов - Поддержка нескольких ОС |
- TrueCrypt больше не поддерживается - VeraCrypt может требовать дополнительной настройки |
PGP/GPG |
- Гибридное шифрование (быстро и безопасно) - Используется для электронной подписи и почты |
- Достаточно сложная настройка - Может потребовать обмена ключами |
LUKS/dm-crypt |
- Глубокая интеграция в Linux - Простая настройка - Поддержка нескольких алгоритмов |
- Только для Linux - Неудобство при переносе контейнеров |
Какие алгоритмы шифрования, используемые в рассмотренных программных продуктах, наиболее надежны и почему?
Наиболее надежные:
AES-256 – стандартный алгоритм шифрования для государственных организаций (США, ЕС).
Serpent – более защищённый, но медленный.
RSA (4096 бит) – используется в асимметричном шифровании, обеспечивает долгосрочную безопасность.
Почему? AES-256 и Serpent проходят строгие тестирования и устойчивы к взлому даже на квантовых компьютерах (на данный момент).
В каких случаях рекомендуется применять шифрование данных?
Защита персональных данных (паспортные данные, банковские реквизиты).
Передача конфиденциальной информации по сети (электронная почта, VPN).
Безопасность хранилищ данных (резервные копии, облачные сервисы).
Защита устройств (ноутбуки, флешки, жесткие диски).
Шифрование корпоративной информации (коммерческая тайна, патенты).