Документация по приложению OpenPGP GUI

Добро пожаловать в официальную документацию по приложению OpenPGP GUI.

Обзор

Это приложение предоставляет современный, удобный интерфейс для управления ключами OpenPGP, шифрования, дешифрования, подписи сообщений, их проверки и генерации SSL-сертификатов. Все криптографические операции выполняются локально для обеспечения максимальной конфиденциальности.

Возможности

Начало работы

Требования

Примечание: Приложение было перенесено с Tkinter/ttkbootstrap на PySide6 для более современного и поддерживаемого пользовательского интерфейса.

Установка

  1. Клонируйте или загрузите этот репозиторий.
  2. (Опционально) Создайте виртуальное окружение:
    python -m venv venv
    venv\Scripts\activate
    
  3. Установите зависимости:
    pip install -r requirements.txt
    

Запуск приложения

Запустите из корневой директории проекта:

python main.py

Если возникают ошибки импорта, убедитесь, что вы запускаете из корневой директории, а не из подкаталога.

Руководство пользователя

Обзор главного окна

Строка меню

Система логирования и просмотр логов

Советы

Продвинутое использование

Экспорт открытых ключей

Проверка отпечатка

Генерация SSL-сертификатов

Расширение приложения

Логирование и отладка

Устранение неполадок

Руководство разработчика

Добро пожаловать, разработчик! Это руководство предоставляет основную информацию для внесения вклада в разработку и расширения приложения OpenPGP GUI.


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

Ключевые технологии

Как внести вклад

  1. Сделайте форк и клонируйте репозиторий.
  2. Создайте виртуальное окружение и установите зависимости.
  3. Следуйте PEP8 и сохраняйте код модульным.
  4. Документируйте новые функции и обновляйте CHANGELOG.md.
  5. Добавьте или обновите тесты, если это возможно.
  6. Откройте pull request с четким описанием.

Добавление функций

Тестирование

Стиль кода

Логирование и отладка

Поддержка и вопросы


Продвинутые темы

Справочник по API

Приложение имеет модульную структуру: основная логика находится в struttura/, графический интерфейс — в gui/.

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

Для получения дополнительной информации читайте строки документации в коде и смотрите docs/user_guide.md для понимания потока использования.

Примеры расширений

Добавление нового алгоритма ключей

  1. В gui/main_window.py найдите выпадающий список выбора алгоритма.
  2. Добавьте ваш новый алгоритм (например, ECC, Ed25519) в список опций.
  3. В логике генерации ключей реализуйте обработку нового алгоритма с использованием pgpy.
  4. Тщательно протестируйте и обновите документацию.

Добавление пользовательского виджета

  1. Создайте ваш виджет в gui/widgets.py или новом файле.