# Changelog 4NK Vault Toutes les modifications notables de ce projet seront documentées dans ce fichier. Le format est basé sur [Keep a Changelog](https://keepachangelog.com/fr/1.0.0/), et ce projet adhère au [Semantic Versioning](https://semver.org/lang/fr/). ## [1.2.0] - 2024-01-XX ### 🚀 Ajouté #### API Server - **Traitement des variables d'environnement** : Résolution automatique des variables `$VAR` et `${VAR}` - **Résolution récursive** : Les variables peuvent référencer d'autres variables - **Protection contre les boucles infinies** : Détection automatique des dépendances circulaires - **Endpoint `/routes`** : Liste dynamique de toutes les routes disponibles - **Scan dynamique** : Découverte automatique des environnements et fichiers - **Protection renforcée** : Validation stricte des chemins contre les attaques de traversée - **Compatibilité cryptographique** : Harmonisation avec `@noble/ciphers` pour le SDK #### SDK Client - **Configuration automatique** : Chargement automatique via fichier `.env` - **Déchiffrement réel** : Implémentation ChaCha20-Poly1305 avec `@noble/ciphers` - **Synchronisation locale** : Miroir automatique des fichiers déchiffrés vers `../confs/` - **Rotation automatique des clés** : Mise à jour transparente des clés de déchiffrement - **Variables d'environnement** : Récupération automatique des fichiers avec variables résolues - **Gestion d'erreurs améliorée** : Classes d'erreurs spécialisées pour chaque type de problème #### Documentation - **Guide des variables d'environnement** : Documentation complète du système de résolution - **Exemples mis à jour** : Scénarios complets avec 5 étapes - **API Reference** : Documentation complète des nouvelles fonctionnalités - **Changelog** : Historique détaillé des modifications ### 🔧 Modifié #### API Server - **Validation des IDs utilisateur** : Extension de 50 à 128 caractères pour supporter les clés longues - **Gestion des clés** : Amélioration de la logique de rotation pour éviter les conflits - **Structure des réponses** : Ajout de métadonnées sur les variables résolues - **Logs** : Amélioration du système de logging pour le debugging #### SDK Client - **Architecture** : Refactoring complet vers `SecureVaultClient` - **Types TypeScript** : Mise à jour des interfaces pour les nouvelles fonctionnalités - **Configuration** : Simplification de la configuration via `.env` - **Synchronisation** : Écrasement automatique des fichiers existants ### 🐛 Corrigé #### API Server - **Dépendances circulaires** : Correction du problème `HOST` ↔ `DOMAIN` - **Chargement des variables** : Priorité correcte du fichier `.env` principal - **Validation des chemins** : Protection contre les attaques de traversée - **Compatibilité cryptographique** : Synchronisation avec le SDK Node.js #### SDK Client - **Déchiffrement** : Correction de l'incompatibilité Python `cryptography` ↔ Node.js `crypto` - **Gestion des clés** : Correction de la logique de rotation et de mise à jour - **SSL** : Correction de la gestion des certificats auto-signés - **Types** : Correction des erreurs TypeScript strict ### 🔒 Sécurité #### API Server - **Validation renforcée** : Protection contre les chemins relatifs malveillants - **Isolation** : Traitement des variables en mémoire uniquement - **Audit** : Logs détaillés des accès et modifications #### SDK Client - **Chiffrement** : Migration vers `@noble/ciphers` pour une meilleure sécurité - **Gestion des clés** : Rotation automatique et sécurisée - **Validation** : Vérification stricte des clés et certificats ## [1.1.0] - 2024-01-XX ### 🚀 Ajouté - **Authentification par clés utilisateur** : Système d'authentification basé sur des IDs utilisateur - **Rotation automatique des clés** : Rotation des clés de chiffrement toutes les heures - **Chiffrement quantique résistant** : Implémentation ChaCha20-Poly1305 - **SDK TypeScript** : Client TypeScript pour l'interaction avec l'API - **Endpoints de monitoring** : `/health`, `/info` pour la surveillance ### 🔧 Modifié - **Architecture sécurisée** : Refactoring complet pour la sécurité - **HTTPS obligatoire** : Toutes les communications en HTTPS - **Stockage sécurisé** : Isolation des clés par environnement ### 🔒 Sécurité - **Clés individuelles** : Une clé par utilisateur et par environnement - **Métadonnées sécurisées** : Timestamps et versions de clés - **Protection des fichiers** : Exclusion des clés du versioning Git ## [1.0.0] - 2024-01-XX ### 🚀 Ajouté - **API REST de base** : Endpoints de base pour la gestion des fichiers - **Stockage local** : Système de stockage dans `storage/` - **Documentation** : Documentation initiale du projet - **Tests** : Tests de base pour l'API --- ## 📋 Format des versions - **MAJOR** : Changements incompatibles avec l'API - **MINOR** : Nouvelles fonctionnalités compatibles - **PATCH** : Corrections de bugs compatibles ## 🔗 Liens - [Repository](https://git.4nkweb.com:4nk/4NK_vault.git) - [Documentation](docs/) - [Issues](https://git.4nkweb.com:4nk/4NK_vault/issues)