Skip to content

Scorpi-ON/Richelieu-Feistel-cipher

Repository files navigation

Richelieu-Feistel-cipher

license release downloads code size

Linters and tests CodeQL Build and deploy

Лабораторная работа по безопасности программ и данных, продуктом которой является веб-приложение, реализующее шифр Ришелье и сеть Фейстеля для шифрования текстовых данных. По совместительству является проектом для изучения фронтенд-разработки с использованием готового набора компонентов.

Основные требования

  • графический интерфейс
  • шифрование данных шифром Ришелье и сетью Фейстеля
  • поддержка ввода текста в интерфейсе и загрузку его из файла

Особенности реализации

  • форма реализации — веб-приложение
  • адаптивая вёрстка
  • фронтенд основан на готовых компонентах
  • интегрированы инструменты сборки, тестирования, анализа кода
  • покрытие тестами функций шифрования
  • запуск линтера, тестов и деплоя с помощью GitHub Actions

Стек

  • Bun — быстрая среда исполнения JavaScript
  • TypeScript — статически типизированный JavaScript
  • Vite — инструмент сборки фронтенда
  • Tailwind CSS — CSS-фреймворк
  • DaisyUI — библиотека компонентов для Tailwind CSS
  • Jest — фреймворк для тестирования
  • ESLint — статический анализатор кода
  • Prettier — форматировщик кода
  • Husky + Lint-staged — хуки Git

Установка и запуск

  1. Клонируйте репозиторий и перейдите в его папку.
  2. Установите Bun одним из способов. Например, для Windows:
powershell -c "irm bun.sh/install.ps1 | iex"
  1. Установите зависимости:
bun install --omit dev
  1. Соберите проект:
bun run build
  1. Теперь запускать проект можно командой:
bun run preview

Модификация

Перед началом модификации нужно установить зависимости, включая те, которые нужны только для разработки:

bun install

Запуск сервера в режиме отладки осуществляется командой:

bun run dev

Прочие скрипты, необходимые для запуска линтеров, форматировщика и т. д. находятся в файле package.json.

About

Web app that implements the Richelieu cipher and the Feistel network for encrypting text data. A project for studying frontend using a ready-made component kit. Lab work on Program and Data Security (Oct 2024, 7th semester of university).

Topics

Resources

License

Stars

Watchers

Forks

Contributors