Version 12.2.0
Babel 12.2.0 introduit le SDK natif de Licensing pour C++, Rust, Go et Python, met à jour Babel Desktop avec le rendu Mote et les thèmes ASCII, et améliore les processus de gestion des licences et d’obfuscation. Les licences 12.1 existantes restent compatibles lorsque leurs conditions d’édition, d’activation et de maintenance couvrent cette version.
Babel Licensing
Améliorations
- SDK pour applications natives : intégrez la vérification des licences signées depuis C++, Rust, Go et Python via une ABI C, sans runtime .NET dans l’application cliente. Les premières plateformes ciblées sont Windows x64, Linux x64 et macOS arm64.
- Une seule bibliothèque SDK à l’exécution : la cryptographie Botan est intégrée à la bibliothèque de chaque plateforme. Aucun runtime Botan séparé n’est à installer ou à distribuer ; Windows inclut une bibliothèque d’importation pour l’édition de liens.
- Activation et sessions flottantes : activez, validez et désactivez les licences liées à une machine ; obtenez une licence flottante, renouvelez son attribution par des heartbeats explicites et libérez-la à la fermeture. Les signatures de l’éditeur et les restrictions prises en charge sont vérifiées avant d’autoriser l’accès. Un heartbeat en échec ou une attribution expirée bloque l’utilisation des fonctions sous licence dans le client natif ; cette API ne prévoit aucune période de grâce hors ligne automatique.
- Licences hors ligne et maintenance : vérifiez les licences XML et compactes signées avec une clé d’éditeur prédéfinie, contrôlez l’expiration et les fonctionnalités activées, et déterminez les droits de maintenance à partir de l’identité authentifiée de la version. La couverture inclut la journée de publication et ne dépend pas de l’horloge du client.
- Exemples d’intégration exécutables : les exemples Rust, Go, C++ et Python couvrent les modes hors ligne, activation et flottant, la configuration du compilateur et de l’éditeur de liens, ainsi que les instructions de compilation pour Windows, Linux et macOS. Guides Native SDK.
Modifications
- Périmètre du client natif explicite : les restrictions non prises en charge entraînent un refus. L’ABI C native n’implique pas la prise en charge des restrictions avancées du client managé, des rapports, de la persistance des activations ou de la reconnexion flottante de .NET.
- Documentation d’intégration enrichie : les guides par langage et la page produit Licensing présentent la prise en charge native et l’ensemble des fonctionnalités. Une section IA dédiée décrit les interfaces existantes : Licensing MCP hébergé (Data Center), Desktop MCP, CLI à sortie structurée et API TOON. Ces interfaces IA ne sont pas introduites par la version 12.2.0.
Corrections de bugs
- Vérification et analyse natives : renforcement de la canonisation XML, de l’importation des clés de confiance, du traitement des entrées malformées et de la gestion des erreurs à la frontière de l’ABI C. Charger une licence ne suffit pas à autoriser son utilisation ; un échec de vérification annule l’authentification précédente.
- Traitement natif des dates : la conversion UTC rejette les dates invalides ou non représentables avant leur conversion au format d’horloge de la plateforme, afin d’éviter les dépassements. Les dates explicites d’expiration et de maintenance correspondant à l’époque Unix conservent leur signification. La plage actuelle de l’horloge Linux est d’environ 1677 à 2262 ; consultez les notes de compatibilité Native SDK pour les exigences relatives aux dates des licences émises.
- Rétablissement des sessions flottantes du client managé : le client .NET retente les renouvellements en échec avec des délais progressifs et peut réacquérir une attribution perdue pendant sa fenêtre de reconnexion. Ce comportement du client managé est distinct de l’API native de heartbeat décrite ci-dessus.
Babel Obfuscator
Améliorations
- Réglages de suppression de la réflexion :
--reflectionet MSBuild acceptent soit le niveau entier existant, soit les réglages individuelsmodule,tables,heaps,enclogetmetanoise. Le bruit dans les métadonnées est facultatif ; les réglages invalides sont rejetés. Les protections réservées à .NET Framework sont ignorées sous .NET et .NET Core.
Corrections de bugs
- Signature Android : l’option du mot de passe du keystore est correctement nommée
--store-password;--storepassreste disponible. - Diagnostic à l’exécution : les erreurs de chiffrement du code conservent les détails de l’exception d’origine, sans texte fixe permettant d’identifier Babel.
Babel Desktop


Améliorations
- Détails de licence : affichage de l’identifiant de la licence actuelle et de la date de fin d’essai, y compris les dates fournies pour les essais émis depuis le site.
- Réglages de réflexion et MCP : les mêmes réglages détaillés de réflexion sont configurables dans les Paramètres ou via MCP. Les noms de protection et les valeurs de bruit dans les métadonnées invalides sont rejetés ; les préréglages laissent ce bruit désactivé.
- Rendu avec Mote : le globe Desktop et l’écran d’accueil ASCII utilisent Mote Engine. Les côtes en haute définition et les images diurnes et nocturnes du globe en 8K sont conservées.
- Écran d’accueil ASCII : des figures 3D plus grandes comprennent des sculptures liées au calendrier, du plasma solaire animé et une citrouille d’Halloween sculptée. Les effets d’arrière-plan agissent aussi sur les figures, les clics produisent des ondes et un fond translucide améliore la lisibilité du texte dans les deux thèmes ASCII.
Corrections de bugs
- Journaux volumineux : les exécutions très détaillées sur de grands assemblies transmettent des messages plus petits au lieu d’échouer sur une réponse d’hôte invalide.
- Projets MSBuild : les références aux tâches installées utilisent le chemin du fichier d’installation, y compris pour les installations EXE Windows sans enregistrement dans le Global Assembly Cache.
- Paramètres et thèmes : la catégorie sélectionnée correspond à la page de paramètres ouverte ; les commandes à icône seule restent centrées et sans cadres indésirables dans les différents thèmes.
- Animations ASCII : Mote est minifié sans appliquer d’obscurcissement du flux de contrôle JavaScript à la boucle de rendu, ce qui élimine les saccades reproduites tout en conservant les détails des objets et les effets.
- Démarrage du globe : l’initialisation asynchrone des pipelines GPU réduit l’attente initiale tout en préservant les détails géographiques.
- Fermeture de l’application : le rendu s’arrête avant la destruction de la fenêtre et l’arrêt du processus hôte local n’écrit plus dans un flux déjà fermé, ce qui évite les erreurs du canal GPU et la boîte de dialogue d’erreur JavaScript reproduites lors des tests.

