
Difesa AI in produzione con protezione a 7 livelli: vincoli matematici, accesso object-capability, consenso O2 distribuito, etica SVETILO. Prima difesa open-source contro ThoughtVirus. BSL 1.1.
Prototipo di ricerca per la difesa AI multi-livello: spiegabilità C4, classificatori ensemble, deoffuscamento, motore di sicurezza O₂, difesa ThoughtVirus e allineamento valoriale SVETILO. Grado alpha — validato internamente, audit esterno in sospeso.
Versione: 1.0.0-alpha | Stato: Prototipo di ricerca | Licenza: BSL 1.1 (gratuita fuori produzione; produzione → commerciale)
Autore: I.G. Selyutin. Co-autore del modello C4-META: N.I. Kovalev.
Identità del prodotto (2026-08): prototipo di ricerca BSL / profondità commerciale di uno stack di difesa C4 multi-livello più pesante (ensemble, scaffolding O₂, laboratorio red-team) basato su Apache-2.0c4protocol.
Non è un secondo protocollo aperto. Non è una difesa AGI di produzione certificata. Non è “v8 FINAL”.
Audit di onestà:docs/AUDIT-c4-meta-system-2026-08.md.
Percorso di promozione:docs/PROMOTE-FROM-PROTOCOL.md(consumare/fissarec4protocol; nessun dump dell'ensemble nell'SDK sottile).
GitLab Pages =public/(EN +public/ru/). Ricevuta per il runtime aperto:make conformancein c4protocol.
Il Sistema C4-META è un prototipo di ricerca per la difesa AI multi-livello che implementa:
Input Sanitization → Semantic Analysis → Behavioral Analysis → Meta-Observer (O₂)
value_verification.py (non un modello etico addestrato)┌──────────────────────────────────────────────┐
│ LAYER 1: Input Sanitization │
│ Deobfuscation (homoglyphs, leetspeak, etc.) │
├──────────────────────────────────────────────┤
│ LAYER 2: Semantic Analysis │
│ 4-Classifier Ensemble: ONNX_BERT (~50ms) │
│ + RuleBased + Heuristic + LLM_SEMANTIC │
│ Dual classifier OR-logic (BERT+RuleBased) │
├──────────────────────────────────────────────┤
│ LAYER 3: Behavioral Analysis │
│ 16 AoC Defense Modules (11 original + 5 │
│ extended), Pattern matching, Trajectory │
│ anomaly detection, ThoughtVirus defense │
├──────────────────────────────────────────────┤
│ LAYER 4: Meta-Observer (O₂) │
│ Transfer entropy, BFT consensus, │
│ semantic entanglement, causal graphs, │
│ Kill-Switch, SVETILO value verification │
├──────────────────────────────────────────────┤
│ C4 Core Engine (Z₃³) │
│ pipeline_orchestrator.py, event_bus.py │
│ c4_meta_monitor.py — self-awareness deque │
├──────────────────────────────────────────────┤
│ Defenses: Anti-Deadlock, Anti-Emergence, │
│ Anti-Hijack, Circuit Breaker, O₂ Kill-Switch│
├──────────────────────────────────────────────┤
│ Red Team Lab: AOC scenarios, experiment │
│ runner, LLM client, adapters │
├──────────────────────────────────────────────┤
│ Routing: Smart Router, Quarantine, │
│ Antifragile Scoring (capped growth) │
└──────────────────────────────────────────────┘
Voto dei 4 classificatori:
Logica OR a doppio classificatore: BERT + RuleBased operano come gate primario con fallback OR — se uno dei due segnala l'input, questo procede ai livelli di difesa. Nessun singolo classificatore è un collo di bottiglia.
c4-meta-system/
├── v4_1/
│ ├── core/
│ │ ├── pipeline.py # Main entry points (re-exports)
│ │ ├── __main__.py # HTTP server entrypoint for Docker
│ │ ├── pipeline_stages.py # Individual processing stages
│ │ ├── pipeline_orchestrator.py # Main orchestration (thread-safe)
│ │ ├── result_factory.py # Standardized C4v4Result factory
│ │ ├── event_bus.py # Organic event bus (atexit cleanup)
│ │ └── c4_meta_monitor.py # Z³ self-awareness (deque bounded)
│ ├── security/
│ │ ├── o2_engine.py # O₂ defense (kill-switch self-DoS fixed)
│ │ ├── explainable_o2.py # O₂ explainability (sampling inverted)
│ │ ├── o2_shared.py # Window structures (@mention comms)
│ │ ├── semantic_detector.py # Concept graphs (normalized entanglement)
│ │ ├── secure_debug_endpoints.py # Debug endpoints (UTC + rate limits)
│ │ ├── hardening.py # Model signing / admin token verification
│ │ ├── behavioral_profiler.py # Drift detection (thread-safe singleton)
│ │ ├── distributed_o2.py # SQLite/Redis backend (BEGIN IMMEDIATE)
│ │ ├── swarm_orchestrator.py # Anti-virus swarm
│ │ └── ...
│ ├── defenses/
│ │ ├── anti_deadlock.py # Resource deadlock prevention
│ │ ├── anti_emergence.py # State convergence (async release fixed)
│ │ └── ...
│ ├── redteam/
│ │ ├── orchestrator.py # Main orchestrator (target_callback parsing)
│ │ ├── scenario_manager.py # AOC scenarios management
│ │ ├── adapters/ # LLM backend adapters
│ │ ├── experiment_executor.py # Async execution (FPR logic fixed)
│ │ ├── experiment_services.py # Service locator
│ │ ├── experiment_runner.py # Web UI + REST API
│ │ ├── llm_client.py # Async-safe LLM client (empty choices guarded)
│ │ └── ...
│ ├── classifiers/ # 4-classifier ensemble
│ ├── config/ # Configuration management
│ ├── access/ # Access control
│ ├── explainability/ # C4 explainability
│ ├── learning/ # Learning loop
│ ├── plugins/ # Plugin system
│ ├── quarantine/ # Quarantine management
│ ├── router/ # Smart routing
│ ├── scoring/ # Antifragile scoring
│ └── tests/ # 240 tests (19 test files)
├── formal/ # TLA+ specifications
├── models/ # ONNX model + tokenizer
├── archive/Dockerfile.prepared # Multi-stage production build (archived)
├── Dockerfile.distroless # Distroless-ready builder pattern
├── archive/docker-compose.yml.prepared # Full stack (Ollama + UI + Monitoring) (archived)
├── .dockerignore # Security-hardened exclusion list
├── infra/k8s/ # Kubernetes manifests (hardened)
└── README.md # This file
Il sistema è completamente predisposto per la containerizzazione con configurazione sensibile all'ambiente.
# Full stack (C4-META + Ollama + UI)
docker compose --profile experiment up -d
# Build image
docker build -t c4-meta-system -f archive/Dockerfile.prepared .
# Run with local Ollama
OLLAMA_BASE_URL=http://host.docker.internal:11434 docker run -p 8080:8080 c4-meta-system
# Red Team runner
docker build -t c4-redteam -f redteam/Dockerfile.redteam.prepared .
docker run -p 8081:8081 c4-redteam
GET /health sulla porta 8080GET /health sulla porta 8081pip install -r requirements.txt
# Optional Docker deps
pip install -r requirements-docker.txt
python -m v4_1.core
# or explicitly
python -m v4_1.core.__main__
python -m v4_1.redteam.experiment_runner --web --port 8080
o2_engine.py non blocca più tutto il traffico quando O2 è disabilitato.ThreadPoolExecutor ora esegue la pulizia tramite atexit; i callback asincroni usano run_coroutine_threadsafe().explainable_o2.py ora campiona correttamente la frazione sample_rate invece di 1 - sample_rate.o2_shared.py registra solo le menzioni esplicite @agent invece di una cricca completamente connessa.semantic_detector.py normalizza i conteggi dei concetti prima del confronto con la soglia.Risultati completi dei benchmark su 4 dataset e 2000 varianti avversarie della pipeline di difesa C4.
Vedi c4protocol/BENCHMARK_RESULTS.md per il report completo.
Nota: O₂ distribuito richiede un cluster Redis per la produzione. La modalità a nodo singolo è disponibile per lo sviluppo (vedi guida alla distribuzione).
Le difese di C4-META sono robuste — ma nessun sistema è perfetto. Se trovi un prompt che aggira il classificatore ensemble, i moduli di difesa AoC o il motore O₂, vogliamo saperlo.
Segnala i bypass:
Cosa ci serve: il prompt che aggira, la risposta attesa e quale livello di difesa ha fallito. Riconosciamo tutti i segnalatori nella nostra hall of fame della sicurezza.
C4-META v1.0.0-alpha — Prototipo di ricerca per la difesa AI multi-livello. Validazione interna completata. Audit esterno in sospeso.
blockedquarantinedaccess/capabilities.py che security/hardening.py supportano bcrypt e SHA256.ModelIntegrityVerifier solleva RuntimeError se C4_MODEL_SIGNING_KEY non è impostata.explainable_o2.py (non blocca più il thread dell'event loop).distributed_o2.py per imporre davvero URL Redis solo localhost._active_threat in process_message() ora è protetta da lock.save_to_file / load_from_file ora risolvono rispetto a una directory base sicura invece di un controllo del prefisso non funzionante.phase3.py ora esegue sempre l'hash di entrambi gli operandi, eliminando il canale laterale temporale dal ramo di lunghezza.experiment_reporter, decision_logger, orchestrator, experiment_runner e hardening.py usano file temporaneo + rename atomico.archive/Dockerfile.prepared ora crea esplicitamente utente/gruppo con UID/GID 1000, in linea con runAsUser di K8s.deployment.yaml fa riferimento al Secret c4-meta-api-keys per l'iniezione delle chiavi API; aggiunto un manifest di esempio in secrets.yaml.disable() e reenable() richiedono l'hash di CIRCUIT_BREAKER_AUTH_TOKEN.vote_debug() verifica C4_ADMIN_TOKEN_HASH con confronto a tempo costante.SentimentExtractor non deduplica più le parole; ComplexityExtractor limita a [0, 1]._goal_history inutilizzato; OmegaPrioritizer usa deque(maxlen=1000) per l'espulsione O(1).ConvergenceMonitor e PhiAttractorCalculator.o2_shared.py usa datetime.now(timezone.utc) invece di datetime naif._regenerate_session inutilizzato.{"status": "simulated"}._active_threat viene ora azzerata quando l'analisi della finestra è sicura; non è più permanentemente appiccicosa dopo il primo rilevamento.vote_result.is_dangerous=True ora restituisce un risultato di blocco invece di cadere su ALLOW.anon_anonymous condiviso.get_access_controller() ora usa il double-checked locking per prevenire condizioni di gara all'inizializzazione.get_learning_loop() ora usa il double-checked locking per prevenire condizioni di gara all'inizializzazione.pending_operations e approved_operations protetti da threading.Lock.pending protetto da threading.Lock./v1/chat/completions invece del semplice /chat/completions.time.monotonic() invece di time.time() per prevenire latenze negative durante gli aggiustamenti NTP.asyncio.get_event_loop()._last_result in _analyze_window() ora è protetta da lock._compile_*_regex() ora usa il parametro patterns passato invece di ignorarlo.filter_attack_prompt() ora effettua una singola chiamata di filtro invece di contare due volte le statistiche._get_lock() usa un threading lock per prevenire la gara nella creazione di asyncio.Lock.snapshot_cognition() memorizza una copia di C4Coordinate invece di un riferimento mutabile.transition_to() copia il C4Coordinate in arrivo invece di mantenerne un riferimento._save_results() controlla il traversal PRIMA di risolvere e garantisce che il percorso rimanga all'interno della directory base.create_session() verifica la proprietà dell'utente prima di restituire un ID di sessione esistente.retryable_exceptions è cambiato da (Exception,) a (ConnectionError, TimeoutError, OSError)._audit_log ora usa deque(maxlen=10000) per prevenire una crescita illimitata.revoke_all_for_subject() usa un ordinamento coerente dei lock (revocati → usati).verify_admin_token() passa consume_single_use=False per evitare di consumare token in fase di verifica.reach_consensus() ora è protetto da threading.Lock.generate_random_string() usa secrets.SystemRandom() invece di random._describe_z_state() gestisce correttamente T=-1.reset_threat_state() ora azzera davvero manual_quarantine e lo stato di emergenza.unquarantine_agent() registra l'audit solo quando l'agente era effettivamente in quarantena.build_report() protegge treatment_metrics vuoti con lo stesso pattern di control_metrics.antifragile_growth limitato a 1.000.000,0 per prevenire una crescita illimitata dei float.| Metrica | Valore |
|---|
| Tasso di rilevamento avversario | 80.3% |
| Punteggio di robustezza | 1.25 |
| Rilevamento pulito (AoC) | 70.9% |
| Tasso di falsi positivi | 14.6% |
| Tasso di blocco C4 LLM | 96.7% |
| Riduzione ASR GPT-4o-mini | 10.7% → 0.7% (93.2%) |
| Riduzione ASR Mistral 7B | 22.5% → 0.5% (97.6%) |
| Metrica | Valore |
|---|
| Versione | 1.0.0 FINAL |
| Stato | Prototipo di ricerca (validazione interna completata) |
| Test | 240 test (19 file di test) |
| Classificatori | 4 (ONNX_BERT, RuleBased, Heuristic, LLM_SEMANTIC) |
| Livelli di difesa | 4 (Sanificazione input → Semantico → Comportamentale → Meta-Osservatore) |
| Difese AoC | 16 (11 originali + 5 estese) |
| ThoughtVirus | difesa a 2 livelli (regex + traiettoria C4) |
| SVETILO | 7 sigilli integrati |
| Correzioni di bug | 60+ risolti nei cicli di audit |
| Build Docker | Superata (multi-stage, pronta per distroless) |
| Manifest K8s | Pronti (induriti con secretKeyRef) |
| Licenza | BSL 1.1 |