Arquitetura do Sistema e Decisões Técnicas
Detalhamento das decisões técnicas e características do sistema tomadas durante o processo de desenvolvimento da plataforma SSLCI.
Núcleo do Sistema e Roteamento
- Todas as solicitações web são filtradas por um Front Controller central para garantir uma gestão de rotas segura.
- As dependências de arquivos são geridas dinamicamente com um Autoloader compatível com PSR-4.
- É utilizado um motor de Router flexível para detetar o código de idioma e a página de destino através da análise de segmentos de URL.
- Os erros em tempo de execução são minimizados e a qualidade do código é aumentada com o requisito Strict Types.
- As chamadas a diretórios ou arquivos não autorizadas são completamente bloqueadas com um controlo de acesso a páginas baseado em listas brancas.
- O conteúdo da página é injetado sem erros no modelo principal (Layout) utilizando a técnica de Output Buffering.
- O sistema inclui na memória apenas as classes necessárias no momento em que são precisas para otimizar os recursos do servidor.
Estratégia Multilíngue e SEO
- É utilizada uma matriz de localização baseada em JSON e de alto desempenho que fornece serviço simultâneo em exatamente 17 idiomas.
- O acesso rápido a chaves de tradução profundamente aninhadas é fornecido pelo suporte de Dot-notation.
- Está ativo um mecanismo de fallback seguro que regressa automaticamente ao idioma predefinido (turco) no caso de faltarem arquivos de tradução.
- Todas as variações de idioma são comunicadas tecnicamente aos motores de busca através da geração de tags hreflang dinâmicas.
- O risco de conteúdo duplicado (Duplicate Content) é evitado através da criação de links Canonical únicos baseados no idioma para cada página.
- A gestão de meta títulos, descrições e palavras-chave é gerida centralmente a partir dos arquivos de idioma em 17 idiomas.
- Os ícones de bandeiras locais estão integrados no sistema com uma biblioteca SVG de alta resolução (flag-icons).
Segurança e Autenticação
- Todas as interações com a base de dados são realizadas com a arquitetura PDO Prepared Statements, eliminando riscos de SQL Injection.
- A autenticação segura é fornecida pelo protocolo Google OAuth 2.0; as palavras-passe dos utilizadores não são armazenadas no sistema.
- São atribuídos tokens criptográficos de 256 bits específicos para cada sessão para proteção contra Cross-Site Request Forgery (CSRF).
- Cada saída de dados passa pelo filtro htmlspecialchars() contra ataques XSS para uma renderização segura.
- Os cookies de sessão cumprem os padrões modernos de segurança com as flags Secure, HttpOnly e SameSite=Strict.
- Todos os tokens de autorização são apagados permanentemente do navegador e do servidor durante o processo de Logout.
- Os dados da Chave Privada (Private Key) são processados no formato PEM com o mais alto nível de confidencialidade no lado do servidor.
Automação SSL e ACME v2
- É implementado um ciclo de produção de certificados totalmente automatizado através do protocolo Let's Encrypt ACME v2.
- A comunicação segura com os servidores Let's Encrypt é alcançada com pedidos de API assinados nos padrões JWS (JSON Web Signature).
- São suportados certificados tanto padrão como wildcard com os métodos de validação HTTP-01 e DNS-01.
- O Pedido de Assinatura de Certificado (CSR) é gerado dinamicamente no lado do servidor utilizando algoritmos de encriptação assimétrica.
- Os estados de Challenge são consultados periodicamente para acompanhar instantaneamente o estado valid/invalid do pedido.
- Em caso de tentativas de validação falhadas, o sistema melhora o processo abrindo automaticamente um novo pedido.
- Os arquivos PEM do certificado são analisados como CRT, KEY e CA (Bundle) e apresentados ao utilizador como um conjunto completo.
Sistema de Design e Experiência do Utilizador
- É utilizada uma linguagem de design moderna e premium focada no cor de laranja (#D87000) compatível com a identidade corporativa.
- O suporte ao Modo Escuro (Dark Mode) controlado pelo utilizador oferece uma transição suave com variáveis CSS.
- Foram concebidas camadas transparentes e estéticas que dão uma sensação de profundidade com componentes de interface Glassmorphism.
- Elevados padrões de legibilidade são mantidos em todos os tamanhos de ecrã com a família tipográfica Outfit (Google Fonts).
- A preferência de tema é armazenada no localStorage e lembrada automaticamente nas visitas seguintes do utilizador.
- A plataforma funciona com desempenho total em dispositivos móveis, tablets e computadores com arquitetura Responsive.
- O feedback e a interação dos utilizadores foram aumentados com micro-interações e efeitos de transição suaves.
Base de Dados e Gestão de Dados
- O esquema da base de dados MySQL está estruturado com el motor InnoDB para alto desempenho e integridade de dados.
- O histórico de certificados dos utilizadores é arquivado de forma segura com a gestão de conta única baseada em Google ID.
- Os registos de pedidos e validações são mantidos em tabelas relacionais para seguir os passos do protocolo ACME.
- Os períodos de validade dos certificados são monitorizados com precisão de segundos utilizando o sistema de registo com carimbo de data/hora.
- O consumo de recursos é minimizado através da gestão da ligação à base de dados com o padrão de design Singleton.