Skip to content

DmProkofiev/ApplicationEncryption

Repository files navigation

FIBER Encryption Application

Приложение для шифрования и дешифрования файлов, разработанное на основе библиотеки Sodium — современной и простой в использовании криптографической библиотеки, предоставляющей надежные алгоритмы шифрования.

Разработчик: Прокофьев Дмитрий Леонидович

Криптографические алгоритмы

  • Argon2id — алгоритм хеширования паролей, победитель Password Hashing Competition 2015
  • XChaCha20-Poly1305 — аутентифицированное шифрование с высокой скоростью и безопасностью
  • Криптографически безопасная генерация случайных чисел

Формат зашифрованного файла

Файл сохраняется в структуре: [СОЛЬ] + [НОНС] + [ДАННЫЕ]

  • Соль (12 байт) — обеспечивает уникальность для каждого файла
  • Нонс (24 байта) — гарантирует уникальность операции шифрования
  • Данные — зашифрованное содержимое исходного файла

Уникальная особенность реализации

Разработана система автоопределения размера соли при дешифровании.

Проблема: разные версии библиотеки требуют разный размер соли (12 или 16 байт)

Решение: при дешифровании система последовательно пробует оба варианта, что обеспечивает совместимость с файлами, зашифрованными в разных версиях

Уровень безопасности

  • Защита от атак перебора (brute-force) благодаря Argon2
  • Гарантия целостности данных через Poly1305
  • Уникальность каждой операции шифрования
  • Поддержка файлов любого типа и размера

Преимущества системы

  • Обратная совместимость с различными версиями
  • Автоматическое определение параметров
  • Простота использования для конечного пользователя
  • Промышленный уровень надежности

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

  • Библиотека: libsodium-net 1.4.0
  • Платформа: .NET WPF с паттерном MVVM
  • Архитектура: асинхронные операции

About

SODIUM

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages