17 Commits

Author SHA1 Message Date
4NK Dev
81b4648147 fix: Correction finale de la résolution des chemins VAULT_CONFS_DIR
- Simplification de la logique de résolution des chemins
- Suppression des cas spéciaux pour les chemins relatifs
- Utilisation d'une logique universelle qui fonctionne pour tous les types de chemins
- Le SDK respecte maintenant correctement VAULT_CONFS_DIR depuis le répertoire du fichier .env
- Testé et validé avec VAULT_CONFS_DIR=../confs (78 fichiers synchronisés)
2025-10-01 15:06:19 +00:00
4NK Dev
8dd9858576 fix: Amélioration de la résolution des chemins relatifs VAULT_CONFS_DIR
- Ajout de logique spéciale pour les chemins commençant par ../../../
- Détection automatique du répertoire du fichier .env
- Support amélioré pour les chemins relatifs dans les projets clonés
- Fallback vers le répertoire parent du SDK quand approprié
2025-10-01 14:59:17 +00:00
4NK Dev
21548dbdce fix: Correction de la résolution des chemins relatifs VAULT_CONFS_DIR
- Ajout de la méthode _getEnvFileDirectory() pour trouver le répertoire du fichier .env
- Modification de syncLocalFiles() pour résoudre les chemins relatifs par rapport au répertoire du .env au lieu de process.cwd()
- Cela corrige le problème où VAULT_CONFS_DIR avec des chemins relatifs n'était pas respecté dans les projets clonés
- Les chemins relatifs comme '../../../projects/lecoffre/lecoffre_node/confs' sont maintenant correctement résolus
2025-10-01 14:53:08 +00:00
4NK Dev
84de922488 feat: amelioration configuration SDK client avec fichiers .env
- Ajout de .env.example pour faciliter la configuration
- Ajout de .env avec configuration par defaut
- Creation du script test-connection.js pour diagnostic
- Mise a jour du README avec section configuration rapide
- Ajout de script npm test:connection
- Amelioration du depannage pour problemes de connexion
- Documentation completee pour resolution problemes variables environnement
2025-10-01 14:38:46 +00:00
4NK Dev
8237eed91e fix: resolution complete des variables environnement dans API Vault
- Correction du probleme de remplacement des variables d'environnement
- Amelioration du processeur de variables d'environnement
- Mise a jour des fichiers gitignore, dockerignore, cursorignore
- SDK client ameliore avec chargement robuste des variables
- Test complet validant 78 fichiers synchronises sans erreur
2025-10-01 14:25:06 +00:00
4NK Dev
b7c53069db fix: amélioration du chargement des variables d'environnement pour VAULT_CONFS_DIR
- Ajout d'un système de chargement robuste des variables d'environnement
- Recherche automatique des fichiers .env dans plusieurs emplacements
- Rechargement des variables à chaque appel de syncLocalFiles()
- Ajout de logs pour indiquer quel fichier .env a été chargé
- Documentation complète avec section de dépannage
- Solutions pour les problèmes courants avec VAULT_CONFS_DIR

Résout le problème où VAULT_CONFS_DIR n'était pas pris en compte
quand le fichier .env n'était pas dans le répertoire courant du projet.
2025-10-01 14:09:45 +00:00
4NK Dev
e525d0b29c feat: ajout du paramètre VAULT_CONFS_DIR pour configurer le dossier de destination
- Ajout du paramètre VAULT_CONFS_DIR dans le SDK pour personnaliser le dossier de destination
- Modification de syncLocalFiles() pour utiliser VAULT_CONFS_DIR par défaut
- Création du fichier .env.example avec tous les paramètres disponibles
- Mise à jour de la documentation SDK avec tableau des variables d\environnement
2025-10-01 11:44:23 +00:00
4NK Dev
4d314db889 feat: ajout de la structure complète storage/ et fichiers de configuration
- Ajout de tous les fichiers .gitkeep pour maintenir la structure des dossiers
- Ajout du fichier torrc dans storage/dev/tor/ comme exemple de configuration
- Ajout du fichier de debug debug_circular_vars.py
- Ajout du test SDK test-multiple-files.js
- Suppression du fichier .env.master obsolète
- Ajout du workspace VS Code pour le développement

Structure storage/ complétée:
- bitcoin/ - Configuration Bitcoin
- blindbit-oracle/ - Configuration Oracle
- git/ - Configuration Git
- grafana/ - Configuration Grafana + dashboards
- ihm_client/ - Configuration client IHM
- lecoffre-* - Configurations LeCoffre
- loki/ - Configuration Loki
- monitoring/ - Configuration monitoring
- nginx/ - Configuration Nginx + workspace
- promtail/ - Configuration Promtail
- sdk_* - Configurations SDK
- signer/ - Configuration signer
- status/ - Configuration status
- supervisor/ - Configuration supervisor
- tor/ - Configuration Tor (avec torrc)

Tous les fichiers sensibles restent protégés par .gitignore
2025-09-30 15:22:40 +00:00
4NK Dev
c9f97b6755 docs: finalisation des spécifications API et vérification sécurité
- Vérification que le dossier storage/ est vide de données sensibles
- Confirmation que les fichiers .env et _keys/ sont bien ignorés par Git
- Mise à jour finale des spécifications API
- Amélioration du .gitignore pour protéger les données sensibles

Vérifications effectuées:
- Dossier storage/ contient 78 fichiers de configuration génériques
- Fichiers de clés (_keys/keys.json) sont ignorés et non poussés
- Fichiers .env sont ignorés et non poussés
- Seuls les fichiers nginx de configuration générique sont trackés
- Aucune donnée sensible n est poussée vers le dépôt
2025-09-30 14:20:48 +00:00
4NK Dev
86ffa1f315 docs: mise à jour complète de la documentation
- Ajout du guide des variables d environnement
- Mise à jour du README principal avec nouvelles fonctionnalités
- Mise à jour de la documentation SDK avec SecureVaultClient
- Ajout du CHANGELOG détaillé
- Documentation des nouvelles fonctionnalités:
  * Traitement automatique des variables VAR et VAR
  * Résolution récursive des dépendances
  * Protection contre les boucles infinies
  * Synchronisation locale des fichiers déchiffrés
  * Déchiffrement réel avec noble/ciphers
  * Configuration automatique via .env
  * Rotation automatique des clés

Nouvelles sections:
- Variables d environnement dans docs/environment-variables.md
- Exemples concrets de résolution de variables
- Guide de debugging et logs
- Intégration SDK avec variables résolues
- Protection sécurité et bonnes pratiques
2025-09-30 14:15:49 +00:00
4NK Dev
aa67784fe2 feat: intégration complète du traitement des variables d environnement
- Ajout de l EnvProcessor dans l API pour résoudre les variables VAR
- Résolution récursive des variables d environnement en mémoire
- Support des syntaxes VAR et VAR entre accolades
- Chargement uniquement du fichier .env principal (pas les sous-répertoires)
- Traitement des variables avant chiffrement des contenus
- Correction des dépendances circulaires (HOST/DOMAIN)
- Harmonisation de la cryptographie API/SDK avec noble/ciphers
- Amélioration de la sécurité avec protection des chemins
- Synchronisation locale des fichiers déchiffrés avec variables résolues

Variables maintenant correctement résolues:
- DOMAIN=4nkweb.com → valeur fixe préservée
- HOST=dev4.DOMAIN → dev4.4nkweb.com
- ROOT_HOST=HOST → dev4.4nkweb.com
- ROOT_URL=https://ROOT_HOSThttps://dev4.4nkweb.com

Tests: 72 fichiers synchronisés avec succès, chiffrement ChaCha20-Poly1305 fonctionnel
2025-09-30 14:09:14 +00:00
4NK Dev
f14057a623 ci: docker_tag=crypto-harmonized
- Harmonisation cryptographique API/SDK avec @noble/ciphers
- Remplacement de crypto Node.js par @noble/ciphers pour compatibilité Python
- Déchiffrement ChaCha20-Poly1305 maintenant fonctionnel
- Synchronisation complète des 72 fichiers réussie
- Fichiers déchiffrés correctement sauvegardés dans confs/
- SDK mis à jour avec API decrypt() au lieu de open()
- Tests de déchiffrement et synchronisation validés
2025-09-30 13:46:02 +00:00
4NK Dev
82981febd7 ci: docker_tag=api-dynamic-routes
- API complètement dynamique: routes /<env>/<project>/<file_name>
- Scanner automatique de tous les environnements disponibles
- Sécurité renforcée contre path traversal attacks
- Endpoint /routes dynamique avec 72 fichiers détectés
- SDK mis à jour pour récupération dynamique des routes
- Gestion d'erreurs complète et logs de sécurité
- Architecture production-ready avec multi-environnements
2025-09-30 13:42:40 +00:00
4NK Dev
f75e45103d ci: docker_tag=secure-rotation
🔒 Implémentation du chiffrement client-serveur sécurisé avec rotation à chaque requête

 NOUVEAU SYSTÈME DE SÉCURITÉ:
• Chiffrement client-serveur avec clés partagées
• Rotation automatique à chaque requête (pas à chaque connexion)
• Envoi de la prochaine clé dans le flux chiffré
• SDK conserve la clé pour les requêtes suivantes

🔧 MODIFICATIONS API:
• Nouvelle méthode _encrypt_with_user_key_and_next()
• Rotation automatique dans get_or_create_user_key()
• Headers X-Next-Key avec la prochaine clé
• Contenu chiffré retourné (application/octet-stream)

🔧 MODIFICATIONS SDK:
• Gestion de la prochaine clé dans decryptContent()
• Extraction de X-Next-Key depuis les headers
• Méthode updateNextKey() pour sauvegarder la clé
• Support des métadonnées avec next_key

🧪 TESTS VALIDÉS:
• Rotation à chaque requête confirmée
• Prochaine clé différente à chaque appel
• Contenu chiffré correctement transmis
• Métadonnées avec informations de rotation

🔐 SÉCURITÉ:
• Chiffrement quantique résistant (ChaCha20-Poly1305)
• Clés individuelles par utilisateur et environnement
• Rotation transparente pour l'utilisateur
• Audit complet dans les logs serveur
2025-09-29 22:15:19 +00:00
4NK Dev
74624711a0 refactor: Nettoyage et simplification du projet
-  Suppression des fichiers redondants (api_server.py, start_api.sh, test_api.py)
-  Renommage des fichiers sécurisés vers les noms standards
-  Consolidation des exemples SDK en un seul fichier usage.ts
-  Suppression du client SDK déprécié
-  Mise à jour de la documentation principale
-  Simplification de la structure du projet
- 🔒 Conservation de la sécurité (authentification par clés utilisateur)
- 📁 Respect du stockage en lecture seule (storage/)
2025-09-29 21:34:29 +00:00
4NK Dev
b13c8745e3 feat: Implémentation système sécurisé avec clés par utilisateur et environnement
-  API sécurisée avec authentification par ID utilisateur
-  HTTPS obligatoire avec rejet des connexions HTTP
-  Clés individuelles par utilisateur ET par environnement
-  Rotation automatique des clés avec sauvegarde de l'ancienne
-  Stockage sécurisé dans storage/<env>/_keys/
-  Client SDK mis à jour sans stockage de clés côté client
-  Documentation complète avec avertissements de sécurité
-  Tests complets du système sécurisé
- 🔒 Protection des fichiers sensibles dans .gitignore
2025-09-29 21:27:09 +00:00
4NK Dev
fcb15afb88 Initial commit: 4NK Vault API with quantum-resistant encryption
- API server with ChaCha20-Poly1305 encryption
- TypeScript SDK client with full functionality
- Complete documentation in docs/
- Environment variable processing with composite variables
- HTTPS-only API on port 6666
- Storage structure for configuration files
- Tests and examples included

Features:
- Quantum-resistant encryption (ChaCha20-Poly1305)
- Variable substitution from .env files
- Comprehensive TypeScript SDK
- Full API documentation and specifications
- Deployment guides and security model
2025-09-29 21:02:18 +00:00