Architecture du Système et Décisions Techniques
Répartition détaillée des décisions techniques et des caractéristiques du système prises au cours du processus de développement de la plateforme SSLCI.
Cœur du Système et Routage
- Toutes les requêtes web sont filtrées via un Front Controller central pour garantir une gestion sécurisée des routes.
- Les dépendances de fichiers sont gérées dynamiquement avec un Autoloader conforme à la norme PSR-4.
- Un moteur de Router flexible est utilisé pour détecter le code de langue et la page cible en analysant les segments d'URL.
- Les erreurs d'exécution sont minimisées et la qualité du code est augmentée avec l'exigence Strict Types.
- Les appels de répertoires ou de fichiers non autorisés sont complètement bloqués par un contrôle d'accès aux pages basé sur une liste blanche.
- Le contenu de la page est injecté sans erreur dans le modèle principal (Layout) à l'aide de la technique d'Output Buffering.
- Le système n'inclut en mémoire que les classes nécessaires au moment opportun pour optimiser les ressources du serveur.
Stratégie Multilingue et SEO
- Une matrice de localisation haute performance basée sur JSON, offrant un service simultané dans exactement 17 langues, est utilisée.
- Un accès rapide aux clés de traduction profondément imbriquées est assuré par le support de la Dot-notation.
- Un mécanisme de fallback sécurisé qui revient automatiquement à la langue par défaut (turc) en cas de fichiers de traduction manquants est actif.
- Toutes les variations linguistiques sont techniquement signalées aux moteurs de recherche par la génération de balises hreflang dynamiques.
- Le risque de contenu dupliqué (Duplicate Content) est évité par la création de liens canoniques uniques basés sur la langue pour chaque page.
- La gestion des méta-titres, descriptions et mots-clés est gérée de manière centralisée à partir des fichiers de langue dans 17 langues.
- Les icônes de drapeaux locaux sont intégrées au système avec une bibliothèque SVG haute résolution (flag-icons).
Sécurité et Authentification
- Toutes les interactions avec la base de données sont effectuées avec l'architecture PDO Prepared Statements, éliminant les risques d'injection SQL.
- Une authentification sécurisée est fournie avec le protocole Google OAuth 2.0 ; les mots de passe des utilisateurs ne sont pas stockés dans le système.
- Des jetons cryptographiques de 256 bits spécifiques à chaque session sont attribués pour la protection contre la falsification de requête intersite (CSRF).
- Chaque sortie de données passe par le filtre htmlspecialchars() contre les attaques XSS pour un rendu sécurisé.
- Les cookies de session sont conformes aux normes de sécurité modernes avec les drapeaux Secure, HttpOnly et SameSite=Strict.
- Tous les jetons d'autorisation sont définitivement effacés du navigateur et du serveur lors du processus de déconnexion (Logout).
- Les données de clé privée (Private Key) sont traitées au format PEM avec le plus haut niveau de confidentialité côté serveur.
Automatisation SSL et ACME v2
- Un cycle de production de certificats entièrement automatisé est mis en œuvre via le protocole Let's Encrypt ACME v2.
- La communication sécurisée avec les serveurs Let's Encrypt est réalisée par des requêtes API signées selon les normes JWS (JSON Web Signature).
- Les certificats standard et wildcard sont pris en charge avec les méthodes de validation HTTP-01 et DNS-01.
- La demande de signature de certificat (CSR) est générée dynamiquement côté serveur à l'aide d'algorithmes de cryptage asymétriques.
- Les statuts de Challenge sont périodiquement interrogés pour suivre instantanément le statut valid/invalid de la commande.
- En cas d'échec des tentatives de validation, le système améliore le processus en ouvrant automatiquement une nouvelle commande.
- Les fichiers PEM de certificat sont analysés en CRT, KEY et CA (Bundle) et présentés à l'utilisateur sous forme d'un ensemble complet.
Système de Design et Expérience Utilisateur
- Un langage de design moderne et premium axé sur l'orange (#D87000) conforme à l'identité visuelle de l'entreprise est utilisé.
- Le support du mode sombre (Dark Mode) contrôlé par l'utilisateur offre une transition fluide avec des variables CSS.
- Des couches transparentes et esthétiques donnant une sensation de profondeur avec des composants d'interface Glassmorphism ont été conçues.
- Des normes de lisibilité élevées sont maintenues sur chaque taille d'écran avec la famille de polices Outfit (Google Fonts).
- La préférence de thème est stockée dans localStorage et automatiquement rappelée lors des prochaines visites de l'utilisateur.
- La plateforme fonctionne avec une performance maximale sur les appareils mobiles, tablettes et ordinateurs grâce à l'architecture Responsive.
- Les retours et l'interaction des utilisateurs ont été augmentés grâce à des micro-interactions et des effets de transition douce.
Base de Données et Gestion des Données
- Le schéma de la base de données MySQL est structuré avec le moteur InnoDB pour une performance et une intégrité des données élevées.
- L'historique des certificats des utilisateurs est archivé de manière sécurisée avec une gestion de compte unique basée sur l'ID Google.
- Les enregistrements de commandes et de validations sont conservés dans des tables relationnelles pour suivre les étapes du protocole ACME.
- Les périodes de validité des certificats sont surveillées avec une précision à la seconde près grâce au système d'enregistrement horodaté.
- La consommation de ressources est minimisée en gérant la connexion à la base de données avec le design pattern Singleton.