Documentação do Aplicativo OpenPGP GUI

Bem-vindo à documentação oficial do Aplicativo OpenPGP GUI.

Visão Geral

Este aplicativo fornece uma interface moderna e amigável para gerenciamento de chaves OpenPGP, criptografia, descriptografia, assinatura de mensagens, verificação e geração de certificados SSL. Todas as operações criptográficas são realizadas localmente para máxima privacidade.

Recursos

Começando

Requisitos

Nota: O aplicativo foi migrado de Tkinter/ttkbootstrap para PySide6 para uma interface de usuário mais moderna e sustentável.

Instalação

  1. Clone ou baixe este repositório.
  2. (Opcional) Crie um ambiente virtual:
    python -m venv venv
    venv\Scripts\activate
    
  3. Instale as dependências:
    pip install -r requirements.txt
    

Executando o Aplicativo

Execute a partir da raiz do projeto:

python main.py

Se encontrar erros de importação, certifique-se de estar executando a partir da raiz e não de uma subpasta.

Guia do Usuário

Visão Geral da Janela Principal

Barra de Menu

Registro e Visualizador de Logs

Dicas

Uso Avançado

Exportando Chaves Públicas

Verificação de Impressão Digital

Geração de Certificados SSL

Estendendo o Aplicativo

Registro e Depuração

Solução de Problemas

Guia do Desenvolvedor

Bem-vindo, desenvolvedor! Este guia fornece o essencial para contribuir e estender o Aplicativo OpenPGP GUI.


Estrutura do Projeto

Tecnologias Principais

Como Contribuir

  1. Faça um fork e clone o repositório.
  2. Crie um ambiente virtual e instale as dependências.
  3. Siga o PEP8 e mantenha o código modular.
  4. Documente novos recursos e atualize o CHANGELOG.md.
  5. Adicione ou atualize testes, se possível.
  6. Abra um pull request com uma descrição clara.

Adicionando Recursos

Testes

Estilo de Código

Registro e Depuração

Suporte e Dúvidas


Tópicos Avançados

Referência da API

O aplicativo é modular: a lógica principal está em struttura/, a interface gráfica em gui/.

Classes e funções principais:

Para mais informações, leia os docstrings no código e consulte docs/user_guide.md para o fluxo de uso.

Exemplos de Extensão

Adicionando um Novo Algoritmo de Chave

  1. Em gui/main_window.py, localize o menu suspenso de seleção de algoritmo.
  2. Adicione seu novo algoritmo (ex: ECC, Ed25519) às opções do menu.
  3. Na lógica de geração de chaves, implemente o tratamento para o novo algoritmo usando pgpy.
  4. Teste completamente e atualize a documentação.

Adicionando um Widget Personalizado

  1. Crie seu widget em gui/widgets.py ou em um novo arquivo.
  2. Importe e use-o em main_window.py onde necessário.
  3. Siga as convenções de estilo do ttkbootstrap para manter a consistência.

Diagrama de Arquitetura

Abaixo está uma visão geral da arquitetura em texto simples:

Aplicativo OpenPGP GUI
│
├── main.py (ponto de entrada)
│
├── gui/
│   ├── main_window.py (classe MainWindow, lógica de eventos)
│   ├── widgets.py (widgets personalizados)
│   └── ...
│
├── struttura/
│   ├── help.py, about.py, version.py (diálogos, controle de versão)
│   ├── menu.py (lógica da barra de menu)
│   └── ...
│
├── docs/ (documentação)
├── requirements.txt
└── ...

Para um diagrama visual, consulte docs/architecture.png (adicione seu próprio PNG para mais detalhes).

Perguntas Frequentes

P: Posso usar este aplicativo sem conexão com a internet?
R: Sim! Todas as operações criptográficas são realizadas localmente para garantir a privacidade.

P: Como exporto minha chave pública?
R: Use o botão ‘Exportar Chave Pública’ ou a opção no menu Arquivo.

P: Quais algoritmos são suportados?
R: Atualmente RSA; mais algoritmos (ECC, Ed25519) estão planejados.

P: Onde minhas chaves são armazenadas?
R: As chaves são salvas apenas onde você escolher. Não há uploads automáticos nem armazenamento em nuvem.

P: Como obtenho ajuda?
R: Use o menu Ajuda ou leia a documentação na pasta docs/.