resolve: merge conflicts in ignore files

- Keep Cursor-specific content in .cursorignore and .dockerignore
- Keep comprehensive Git ignore rules in .gitignore
- Maintain protection for sensitive files and directories
This commit is contained in:
4NK Dev 2025-10-01 22:17:04 +00:00
commit d48ccc8fbc
8 changed files with 124 additions and 48 deletions

87
.gitignore vendored
View File

@ -1,17 +1,82 @@
# PROTECTION COMPLÈTE - Empêcher l'accès Docker à storage/
**/__pycache__/
**/dist/
**/node_modules/
**/package-lock.json*
**/yarn.lock*
# 4NK Environment - Git Ignore
# ============================
confs/
# Dossiers de sauvegarde des scripts
**/backup/
**/*backup*
# Variables d'environnement (protection renforcée)
**/.cargo/
**/.crt*
**/.key*
**/.pem*
# Fichiers temporaires
**/*.tmp*
**/*.temp*
**/*.log*
**/*.pid*
# Fichiers de configuration locale
**/*.env*
**/*.conf*
**/*.yaml*
**/*.yml*
**/*.ini*
**/*.json*
**/*.toml*
**/*.lock*
# Données et logs
**/*.logs*
**/*.data
*.db
*.sqlite
# Certificats et clés
**/*.key
**/*.pem
**/*.crt
**/*.p12
**/*.pfx
ssl/
certs/
# Docker
**/*.docker*
# Cache et build
**/*.node_modules/
**/*.dist/
**/*build/
**/*target/
**/*.*.o
**/*.so
**/*.dylib
# IDE et éditeurs
**/*.vscode/
**/*.idea/
**/*.swp
**/*.swo
**/*~
# OS
**/*.DS_Store
**/*Thumbs.db
**/*tmp*
# Git
**/*.git/
**/*.orig*
# Backup des projets existants
**/*backup*
# Clés utilisateur et données sensibles
**/_keys/
**/keys.json*
storage/dev/.env.secrets
**/*wallet*
**/*keys*
**/*node_modules*
**/*cursor*
**/*pid*
**/*next*

View File

@ -74,7 +74,7 @@ X-User-ID: your_user_id
**Exemple :**
```bash
curl -k -H "X-User-ID: demo_user_001" https://vault.4nkweb.com:6666/dev/bitcoin/bitcoin.conf
curl -k -H "X-User-ID: <VAULT_USER_ID>" "$VAULT_URL"/dev/bitcoin/bitcoin.conf
```
## 🔧 Installation et utilisation
@ -171,12 +171,23 @@ python3 test_api.py
└── docs/ # Documentation complète
```
## 🌐 Domaine
## 🌐 Intégration dans l'environnement 4NK
L'API est configurée pour fonctionner sur le domaine `vault.4nkweb.com` avec des certificats SSL auto-signés pour la démonstration.
En production, utilisez des certificats SSL valides et implémentez un échange de clés sécurisé.
Ce module s'intègre au déploiement global 4NK via une URL de base configurable (variable `VAULT_URL`).
Consultez les documents centraux pour le contexte et l'orchestration:
- `docs/DEEP_ARCHITECTURE_ANALYSIS.md`
- `docs/TECHNICAL_REFERENCE.md`
- `docs/DEPLOYMENT_GUIDE.md`
## ⚠️ Avertissements
Voir `SECURITY_NOTICE.md` pour les détails sur les limitations de sécurité en mode démonstration.
## 📋 Fichiers centralisés
Les fichiers suivants sont centralisés dans le dépôt principal `4NK_env` :
- `CODE_OF_CONDUCT.md` - Code de conduite
- `CODEOWNERS` - Propriétaires du code
- `CONTRIBUTING.md` - Guide de contribution
- `LICENSE` - Licence du projet
Voir : [`4NK_env/CODE_OF_CONDUCT.md`](../../CODE_OF_CONDUCT.md), [`4NK_env/CODEOWNERS`](../../CODEOWNERS), [`4NK_env/CONTRIBUTING.md`](../../CONTRIBUTING.md), [`4NK_env/LICENSE`](../../LICENSE)

View File

@ -3,7 +3,7 @@
## 🚨 Problème de sécurité résolu
### Problème identifié
La clé de démonstration `quantum_resistant_demo_key_32byt` était **exposée publiquement** dans le code source, permettant à n'importe qui de déchiffrer les fichiers servis par l'API.
La clé de démonstration `<DEMO_KEY_PLACEHOLDER>` était **exposée publiquement** dans le code source, permettant à n'importe qui de déchiffrer les fichiers servis par l'API.
### Solution implémentée
@ -62,7 +62,7 @@ const client = new VaultClient({
baseUrl: 'https://vault.4nkweb.com:6666',
verifySsl: false,
timeout: 15000
}, 'old_demo_key'); // Ignorée mais acceptée
}, '<OLD_DEMO_KEY_PLACEHOLDER>'); // Ignorée mais acceptée
```
### 🚀 **Prochaines étapes**

View File

@ -21,7 +21,7 @@ L'API 4NK Vault Secure est un système de stockage sécurisé avec authentificat
### Format de l'ID utilisateur
- **Longueur** : 3-128 caractères
- **Caractères autorisés** : `a-zA-Z0-9_-`
- **Exemple** : `demo_user_001`
- **Exemple** : `<VAULT_USER_ID>`
### Header requis
```http
@ -180,7 +180,7 @@ X-User-ID: your_user_id
**Exemple d'utilisation :**
```bash
curl -k -H "X-User-ID: demo_user_001" \
curl -k -H "X-User-ID: <VAULT_USER_ID>" \
https://vault.4nkweb.com:6666/dev/bitcoin/bitcoin.conf \
--output bitcoin.conf.encrypted
```
@ -308,32 +308,32 @@ rpcport=8332
### Test de connectivité
```bash
curl -k -H "X-User-ID: demo_user_001" \
curl -k -H "X-User-ID: <VAULT_USER_ID>" \
https://vault.4nkweb.com:6666/health
```
### Récupération d'informations
```bash
curl -k -H "X-User-ID: demo_user_001" \
curl -k -H "X-User-ID: <VAULT_USER_ID>" \
https://vault.4nkweb.com:6666/info
```
### Liste des routes disponibles
```bash
curl -k -H "X-User-ID: demo_user_001" \
curl -k -H "X-User-ID: <VAULT_USER_ID>" \
https://vault.4nkweb.com:6666/routes
```
### Récupération d'un fichier
```bash
curl -k -H "X-User-ID: demo_user_001" \
curl -k -H "X-User-ID: <VAULT_USER_ID>" \
https://vault.4nkweb.com:6666/dev/bitcoin/bitcoin.conf \
--output bitcoin.conf.encrypted
```
### Récupération avec sauvegarde de la clé suivante
```bash
curl -k -H "X-User-ID: demo_user_001" \
curl -k -H "X-User-ID: <VAULT_USER_ID>" \
https://vault.4nkweb.com:6666/dev/tor/torrc \
--output torrc.encrypted \
--dump-header headers.txt

View File

@ -62,7 +62,7 @@ pip install -r requirements.txt
./start_api.sh
# 3. Test avec authentification
curl -k -H "X-User-ID: demo_user_001" https://127.0.0.1:6666/health
curl -k -H "X-User-ID: <VAULT_USER_ID>" https://127.0.0.1:6666/health
```
### Utilisation avec le SDK TypeScript

View File

@ -40,8 +40,8 @@ Le SDK peut être configuré automatiquement via un fichier `.env` :
```bash
# .env
VAULT_USER=demo_user_001
VAULT_KEY=JYyybYFXe9hghRI9d1mpoQ1uYYxpt/6lzYPOWrxruG0=
VAULT_USER=<VAULT_USER_ID>
VAULT_KEY=<VAULT_KEY_BASE64>
VAULT_ENV=dev
VAULT_CONFS_DIR=../confs # Dossier de destination pour les fichiers synchronisés
```
@ -54,7 +54,7 @@ VAULT_CONFS_DIR=../confs # Dossier de destination pour les fichiers synchronis
| `VAULT_KEY` | Clé de déchiffrement (gérée automatiquement) | ✅ | - |
| `VAULT_ENV` | Environnement par défaut | ✅ | - |
| `VAULT_CONFS_DIR` | Dossier de destination pour les fichiers synchronisés | ❌ | `../confs` |
| `VAULT_URL` | URL de l'API Vault | ❌ | `https://vault.4nkweb.com:6666` |
| `VAULT_URL` | URL de l'API Vault | ❌ | `<VAULT_URL>` |
#### Chargement automatique des variables d'environnement
@ -75,9 +75,9 @@ import { SecureVaultClient } from '@4nk/vault-sdk';
// Configuration manuelle
const client = new SecureVaultClient({
baseUrl: 'https://vault.4nkweb.com:6666',
userId: 'demo_user_001',
vaultKey: 'base64-encoded-key',
baseUrl: process.env.VAULT_URL ?? '<VAULT_URL>',
userId: '<VAULT_USER_ID>',
vaultKey: '<VAULT_KEY_BASE64>',
environment: 'dev',
verifySsl: false // Pour les certificats auto-signés
});
@ -110,9 +110,9 @@ try {
import { SecureVaultClient } from '@4nk/vault-sdk';
const client = new SecureVaultClient({
baseUrl: 'https://vault.4nkweb.com:6666',
userId: 'demo_user_001',
vaultKey: 'your-base64-key',
baseUrl: process.env.VAULT_URL ?? '<VAULT_URL>',
userId: '<VAULT_USER_ID>',
vaultKey: '<VAULT_KEY_BASE64>',
environment: 'dev',
verifySsl: false, // Pour les certificats auto-signés
timeout: 10000 // 10 secondes
@ -239,10 +239,10 @@ try {
// ✅ Utiliser HTTPS en production
const client = new SecureVaultClient({
baseUrl: 'https://vault.4nkweb.com:6666',
baseUrl: process.env.VAULT_URL ?? '<VAULT_URL>',
verifySsl: true, // Activer la validation SSL
userId: 'your-user-id',
vaultKey: 'your-base64-key',
userId: '<VAULT_USER_ID>',
vaultKey: '<VAULT_KEY_BASE64>',
environment: 'prod'
});
@ -314,8 +314,8 @@ const syncResult = await client.syncLocalFiles({
```typescript
const client = new SecureVaultClient({
baseUrl: 'https://vault.4nkweb.com:6666',
userId: 'demo_user_001',
vaultKey: 'your-key',
userId: '<VAULT_USER_ID>',
vaultKey: '<VAULT_KEY_BASE64>',
verifySsl: false
});
```
@ -327,12 +327,12 @@ const syncResult = await client.syncLocalFiles({
**Solutions** :
1. **Vérifiez l'URL dans votre `.env`** :
```bash
VAULT_URL=https://vault.4nkweb.com:6666
VAULT_URL=<VAULT_URL>
```
2. **Redémarrez l'API locale** si elle tourne en arrière-plan
3. **Testez la connectivité** :
```bash
curl -k https://vault.4nkweb.com:6666/health
curl -k "$VAULT_URL"/health
```
4. **Vérifiez les logs** du SDK pour voir quelle URL est utilisée
@ -545,5 +545,5 @@ MIT License - Voir le fichier `LICENSE` pour plus de détails.
---
**Version** : 1.0.0
**API Vault** : vault.4nkweb.com:6666
**API Vault** : <VAULT_URL>
**Chiffrement** : ChaCha20-Poly1305 (quantique résistant)