NOTE DI RILASCIO

Le novità di Babel.

Modifiche al motore, agli strumenti di licensing e all’area di lavoro Desktop, dalle note di rilascio del prodotto.

Rilasciata il 9 ottobre 2026 · ultima versione

Versione 12.1.0

Babel 12.1.0 è la prima release stabile di Babel 12. Queste note raccolgono i miglioramenti e le correzioni di rilievo dalla release 11.8, compreso il lavoro svolto durante lo sviluppo della 12.0.

Babel Desktop

La nuova applicazione desktop sostituisce Babel UI e porta lo spazio di lavoro per l'offuscamento e la gestione Licensing su Windows, macOS e Linux.

Canvas di Babel Desktop con assembly e collegamenti di merge
Canvas di Babel Desktop con assembly e collegamenti di merge
Lo spazio di lavoro visuale collega gli assembly e il loro flusso di protezione.
Statistiche di Babel Desktop con copertura della rinomina
Statistiche di Babel Desktop con copertura della rinomina
I risultati mostrano le protezioni effettivamente applicate dal motore.
Impostazioni della protezione del flusso di controllo in Babel Desktop
Impostazioni della protezione del flusso di controllo in Babel Desktop
Configura le opzioni di protezione nell’editor delle proprietà integrato.

Miglioramenti

  • Canvas visuale dei progetti: collega assembly, input di merge, assembly incorporati e riferimenti in un unico grafo. I collegamenti per l'ordine di esecuzione e i file di mappa coordinano la rinomina tra assembly; layout automatico, panoramica, zoom e schede dei target semplificano l'analisi dei progetti grandi.
  • Editor delle protezioni e preset: configura rinomina, flusso di controllo, stringhe, cifratura MSIL, risorse, firma e diagnostica con controlli tipizzati e selettori di file. Modifica regole XML validate rispetto allo schema e applica i preset Light, Balanced o Maximum. I comandi possono configurare merge e offuscamento dei simboli pubblici dell'intero progetto.
  • Risultati del motore reale: segui fasi, avvisi e log completi in Activity; annulla un'esecuzione, esamina statistiche per assembly, namespace e tipi e consulta lo storico locale. Le schede dei target riepilogano le protezioni effettivamente applicate. Apri la cartella di output o avvia direttamente l'applicazione protetta.
  • Decoder degli stack trace: carica più file di mappa, decodifica e salva le tracce e nascondi i frame generati da Babel. Anche i report delle eccezioni Licensing possono usare le mappe archiviate nel servizio, comprese le eccezioni interne.
  • Estensioni e Gallery: installa pacchetti dichiarativi .babelext per temi, comandi e viste collegate a servizi. La Gallery mostra anteprime, documentazione, permessi, edizioni richieste e copertura della maintenance prima dell'installazione. L'SDK @babelfor/desktop-extension-sdk, con licenza MIT, supporta validazione e pubblicazione.
  • Console Licensing integrata: gestisci connessioni ai servizi, clienti, prodotti, ordini, release, licenze, template, chiavi di firma, token, report e webhook. Le dashboard mostrano attività e scadenze; una vista geografica riepiloga l'utilizzo. La gestione richiede la licenza Server o Data Center appropriata e i permessi del servizio.
  • Automazione MCP: un server MCP locale opzionale, protetto da token, espone modifica dei progetti, esecuzioni, diagnostica, statistiche e operazioni Licensing. Rispetta gli stessi ruoli e diritti dell'interfaccia, con conferma per le modifiche protette.
  • Aspetto e lingue: inglese, italiano, tedesco, francese, spagnolo e giapponese integrati; temi chiari e scuri, densità e dimensioni del testo regolabili, temi installabili con font, icone e skin. La palette dei comandi mostra i comandi recenti e le scorciatoie della piattaforma.

Modifiche

  • Installer e aggiornamenti: questa release include EXE/MSI per Windows x64, DMG/ZIP per macOS Apple Silicon e AppImage/DEB/RPM per Linux x64, con runtime incluso. Le installazioni EXE per utente supportano gli aggiornamenti automatici; le installazioni MSI per tutti gli utenti offrono download manuali verificati. I feed sono firmati e rispettano piattaforma, licenza e maintenance. Windows richiede Enterprise o superiore; macOS e Linux richiedono Ultimate o superiore.
  • Release stabili e di sviluppo: 12.1.0 è stabile. I fix successivi della 12.1.x sono build di sviluppo private prima della prossima stabile, 12.2.0. I progetti .babel esistenti restano supportati. I flussi indipendenti possono essere eseguiti in parallelo (2–4), su scelta dell'utente; le licenze floating eseguono un solo flusso alla volta.

Correzioni di bug

  • Flusso di lavoro dei progetti: corretti Salva/Salva con nome, apertura dei progetti Babel UI esistenti, richieste per modifiche non salvate, ordine di esecuzione, selettori dei percorsi e selezione dell'output. Generate Log File mostra ora anche il log completo del motore in Activity.
  • Account e aggiornamenti: il selettore di licenza interno aggiorna account e licenze disponibili alla riconnessione; offline mantiene la licenza locale. I cambi di canale e gli aggiornamenti falliti recuperano correttamente lo stato; le icone di installazione del DMG restano visibili in Finder.

Babel Obfuscator

Miglioramenti

  • Flusso di controllo chained-state: la nuova trasformazione opzionale chain modifica lo stato del dispatcher lungo il percorso eseguito per complicarne la ricostruzione statica. Attiva --controlflow chain=on oppure selezionala in Desktop/MSBuild. Disponibile per Ultimate, Server e Data Center; i preset esistenti non la attivano automaticamente. Documentazione.
  • Cifratura delle stringhe Stream: --strings stream introduce ChaCha20 gestito con autenticazione SipHash e controlli sul chiamante. Le stringhe decodificate vengono memorizzate nella cache. Disponibile per Ultimate, Server e Data Center, configurabile in Desktop e MSBuild.
  • Integrità dei pacchetti MAUI Android/iOS: verifica i certificati di firma Android o le identità bundle/team iOS con --trustedsigner, --trustedbundle e --trustedteam. Babel avvisa se mancano le identità richieste. Disponibile per Ultimate, Server e Data Center.
  • Cifratura del codice: la protezione MSIL con password usa PBKDF2 e un nuovo salt per build; i metodi cifrati non generici memorizzabili nella cache evitano lock ripetuti dopo la compilazione. I contenuti cifrati esistenti restano leggibili.
  • Proxy e diagnostica: i proxy dinamici supportano chiamate a metodi generici; i frame decodificati identificano il metodo originale. --stacktrace frames=all|user filtra i frame generati. Le mappe 2.5 restano leggibili insieme al formato 2.6; la cifratura dei valori interi copre anche -1.
  • Licenze nelle build: i processi paralleli coordinano i controlli di revoca riducendo le richieste duplicate. I file Ultimate funzionano interamente offline; le licenze activation consentono fino a tre giorni offline dopo un contatto riuscito e i job floating ricontrollano il lease del server.

Modifiche

  • Scarica una licenza Babel 12: i file 11.x non sbloccano il motore protetto 12.x, anche con maintenance attiva. Scarica la licenza corrente dal tuo account. La maintenance copre le build rilasciate nel suo periodo; data e versione autenticate sono verificate localmente. I diritti sulla versione acquistata restano soggetti alle altre restrizioni della licenza; i wildcard non aggirano la maintenance.
  • Requisiti Enterprise: Enterprise è destinata all'uso Windows locale e interattivo. macOS, Linux, build server, container e sessioni non interattive richiedono Ultimate o superiore. Un ambiente Enterprise non supportato ora fallisce prima di produrre output, senza proseguire silenziosamente in modalità demo.
  • Riga di comando e pacchetti: Babel Desktop sostituisce Babel UI e gli installer separati Obfuscator/Licensing precedenti. Restano disponibili ZIP CLI multipiattaforma e strumenti NuGet, compresi i pacchetti .NET 8, 9 e 10. Assembly e pacchetti della suite condividono la versione della release.
  • Pattern dei file e antimanomissione: *.dll cerca nella directory corrente; usa **/*.dll per la ricerca ricorsiva. La pubblicazione desktop single-file/AOT segnala quando il controllo PE non può proteggere l'immagine pubblicata.

Correzioni di bug

  • Compatibilità WPF/XAML: corretti setter di dependency property rinominate, AddOwner, eventi routed, valori enum, percorsi binding/membri, markup extension e override virtuali, compresi i controlli Telerik e le risorse dei temi interessati.
  • Merge Avalonia: preservati indici delle risorse per assembly e percorsi degli asset in conflitto; aggiornati i riferimenti avares:// per consentire il caricamento delle risorse unite.
  • Cifratura e proxy: corretti avvio del decryptor Stream su .NET Framework, letture dopo l'inlining JIT, collisioni nella cache dei proxy generici, accessibilità dei provider di password e getter generici con codice cifrato. Le firme non supportate vengono saltate con una diagnostica, evitando codice runtime non valido.
  • Babel Encrypt Plugin: corretti compilazione del decryptor su .NET Core/.NET 5+, gestione dello stack ottimizzato con useCodeEncryption ed eccezioni in checkDeobfuscators.
  • Affidabilità: corretti confini delle eccezioni chained-state, matching wildcard e propagazione indesiderata delle opzioni tra target. Una licenza selezionata esplicitamente non può ripiegare su un'altra attivata/in cache; licenze o metadati della release modificati vengono rifiutati.

Babel Licensing

Dashboard dell’estensione Licensing di Babel Desktop
Dashboard dell’estensione Licensing di Babel Desktop
Gestisci il servizio Licensing dalla nuova applicazione Desktop.

Miglioramenti

  • Licenze con maintenance: abilita la copertura degli aggiornamenti basata sulla data di release tramite i metadati assembly Babel.Licensing.ReleaseDate. Le licenze XML e compatte riportano coerentemente il motivo datato MaintenanceExpired. I prodotti senza questi metadati mantengono il comportamento di matching esistente.
  • CLI lic strutturata: output JSON/NDJSON per l'automazione, aiuto delle opzioni e versione leggibili dalle macchine, --quiet per l'uso non presidiato e codici semantici --strict-exit. Restano disponibili i formati di licenza esistenti e il testo predefinito.
  • Supporto PostgreSQL: PostgreSQL si aggiunge a SQLite, SQL Server e MySQL/MariaDB. Il provider va configurato esplicitamente; cambiarlo non trasferisce un database esistente. Desktop supporta anche un servizio SQLite locale configurato separatamente su loopback.
  • Gestione release e report: feed firmati, stati delle release e liste di accesso private, canali stabile/sviluppo, promozione e ritiro. I report delle eccezioni decodificano gli stack con le mappe archiviate, selezionabili per mappa/release quando necessario.
  • Controlli del servizio: limiti configurabili ai check-in con Retry-After, timeout comuni HTTP/gRPC e periodo offline limitato tramite OfflineGracePeriod.

Modifiche

  • Un pacchetto servizio Server/Data Center: lo stesso ZIP serve entrambe le edizioni. La licenza sblocca l'applicazione web Data Center; Server mantiene servizio/API e gestione Desktop. Il provider .NET 10 MySQL/MariaDB è aggiornato per Entity Framework Core 10.
  • Accesso alle release: le nuove release richiedono maintenance per impostazione predefinita, salvo configurazione esplicita. I controlli di licenza via HTTPS con hostname DNS verificano i certificati per impostazione predefinita.

Correzioni di bug

  • Continuità delle attivazioni: migrate le attivazioni .NET Framework dagli archivi precedenti. Riattivare la stessa macchina restituisce il token esistente senza consumare un'altra postazione; le attivazioni revocate restano rifiutate.
  • Aggiornamenti parziali: i campi omessi conservano i valori, compresi revoche, permessi e contenuti delle chiavi di firma. Rinominare una chiave non ne cancella più i dati. Le API del servizio protetto conservano i nomi dei campi JSON.
  • Concorrenza e autenticazione: cifratura/decifratura usano istanze indipendenti; le cache distinguono le user key, i timeout HTTP configurati sono rispettati e il logging su database recupera dopo un errore.
  • Web e report: notifiche in testo semplice, corrette relazioni e navigazione management/MCP, coordinate geografiche indipendenti dalla cultura del sistema e decodifica dei report senza assembly framework estranei.