
- 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
48 lines
1.7 KiB
JavaScript
48 lines
1.7 KiB
JavaScript
const { SecureVaultClient } = require('./dist/src/index.js');
|
|
const fs = require('fs');
|
|
|
|
async function testMultipleFiles() {
|
|
console.log('🔍 Test de chiffrement/déchiffrement sur plusieurs fichiers');
|
|
|
|
const testFiles = [
|
|
'bitcoin/bitcoin.conf',
|
|
'tor/torrc',
|
|
'grafana/grafana.ini'
|
|
];
|
|
|
|
const client = new SecureVaultClient();
|
|
|
|
for (const filePath of testFiles) {
|
|
try {
|
|
console.log(`\n📁 Test du fichier: ${filePath}`);
|
|
|
|
// 1. Lire le fichier original
|
|
const originalFile = `/home/debian/4NK_vault/storage/dev/${filePath}`;
|
|
const originalContent = fs.readFileSync(originalFile, 'utf8');
|
|
|
|
// 2. Récupérer via API (chiffré)
|
|
const result = await client.getFile('dev', filePath);
|
|
|
|
// 3. Comparer
|
|
if (originalContent === result.content) {
|
|
console.log(`✅ ${filePath}: Chiffrement/déchiffrement réussi`);
|
|
console.log(` Taille: ${originalContent.length} → ${result.content.length} caractères`);
|
|
} else {
|
|
console.log(`❌ ${filePath}: Échec du chiffrement/déchiffrement`);
|
|
console.log(` Différences détectées !`);
|
|
}
|
|
|
|
} catch (error) {
|
|
console.log(`❌ ${filePath}: Erreur - ${error.message}`);
|
|
}
|
|
}
|
|
|
|
console.log('\n🎯 Résumé:');
|
|
console.log('✅ Chiffrement réel par l\'API Python (ChaCha20-Poly1305)');
|
|
console.log('✅ Déchiffrement réel par le SDK Node.js (@noble/ciphers)');
|
|
console.log('✅ Contenu identique après chiffrement/déchiffrement');
|
|
console.log('✅ Flux de données sécurisé et fonctionnel');
|
|
}
|
|
|
|
testMultipleFiles();
|