Skip to content

Latest commit

 

History

3 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Эмулятор драйвера шифрования файловой системы

Описание проекта

Этот проект представляет собой эмулятор драйвера для шифрования и дешифрования файлов с использованием простого XOR-шифрования. Программа имитирует взаимодействие с виртуальным драйвером устройства через IOCTL-команды, предоставляя пользовательский интерфейс для выбора файлов и директорий.

Основные функции

  • Выбор директории для сохранения обработанных файлов
  • Выбор файла для шифрования/дешифрования
  • Шифрование файлов с помощью XOR-алгоритма
  • Дешифрование ранее зашифрованных файлов
  • Автоматическое создание папки ProcessedFiles для сохранения результатов
  • Эмуляция работы с драйвером через IOCTL-команды

Требования

  • Операционная система Windows
  • Компилятор с поддержкой C++ (например, MSVC или MinGW)
  • Стандартные библиотеки Windows

Использование

  1. Запустите программу
  2. Выберите директорию, где будут сохраняться обработанные файлы
  3. Выберите файл для обработки
  4. Укажите действие (шифрование или дешифрование)
  5. Результат будет сохранен в поддиректории ProcessedFiles выбранной директории

Технические детали

  • Используется XOR-шифрование с фиксированным ключом 0x5A
  • Все операции выполняются побайтово
  • Поддерживаются бинарные файлы любого типа
  • Реализована эмуляция драйвера через IOCTL-команды:
    • IOCTL_ENCRYPT_FILE (0x800) - для шифрования
    • IOCTL_DECRYPT_FILE (0x801) - для дешифрования

Структура проекта

driver_emulator/
├── main.cpp            - Основной файл программы
├── FileManager.h       - Функции для работы с файлами и директориями
├── CryptoHelper.h      - Реализация XOR-шифрования
├── Driver.h            - Эмуляция драйвера и IOCTL-команд

Ограничения

  1. Используется простой XOR-алгоритм, который не является криптографически стойким
  2. Ключ шифрования фиксированный и хранится в коде
  3. Эмуляция драйвера не является реальным драйвером, а лишь имитирует его поведение

Возможные улучшения

  1. Реализация реального драйвера вместо эмуляции
  2. Добавление поддержки выбора ключа шифрования
  3. Реализация более сложного алгоритма шифрования
  4. Добавление обработки нескольких файлов одновременно
  5. Реализация графического интерфейса

Автор

[danilamail05@gmail.com]

About

Эмулятор драйвера шифрования файловой системы

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages