Skip to Content
Nouvelle version 12 disponible 🎉
ObfuscatorChiffrement des valeursValeurs prises en charge

Valeurs prises en charge

Le chiffrement des valeurs et des tableaux s’active séparément pour chaque type de données : vous pouvez ainsi ne protéger que ce qui compte et laisser le reste intact. Voir Configuration pour savoir comment les sélectionner.

Valeurs chiffrées

TypeCe qui est protégé
int32Constantes entières 32 bits : toutes les formes de ldc.i4, y compris les petites valeurs, -1 et int.MinValue/int.MaxValue. Comme les constantes C# byte, sbyte, short, ushort, char, bool et enum sont compilées en chargements int32, elles sont également protégées par cette option.
int64Constantes entières 64 bits (long/ulong).
singleConstantes à virgule flottante 32 bits (float).
doubleConstantes à virgule flottante 64 bits (double) et littéraux decimal (dont les composants sont stockés sous forme de constantes entières).
arrayTableaux en ligne d’éléments primitifs initialisés à partir d’un blob de données : tableaux de int, byte, sbyte, short, long, double, float, char, bool et d’énumérations, par exemple int[] a = { 1, 2, 3 };.

Valeurs laissées inchangées

Pour que le programme obfusqué se comporte exactement comme l’original, certaines données en ligne ne sont volontairement pas transformées et sont émises telles quelles :

  • Tableaux qui ne sont pas initialisĂ©s Ă  partir d’un seul blob de donnĂ©es primitives : tableaux multidimensionnels (int[,]), tableaux en escalier (int[][]) et tableaux de structures ou d’autres types rĂ©fĂ©rence. Le compilateur les construit Ă©lĂ©ment par Ă©lĂ©ment et non Ă  partir d’un blob chiffrable ; leurs Ă©lĂ©ments restent donc individuellement soumis au chiffrement des valeurs numĂ©riques lorsqu’il s’applique.
  • Constantes de chaĂ®ne : elles relèvent de la fonctionnalitĂ© dĂ©diĂ©e de chiffrement des chaĂ®nes, et non du chiffrement des valeurs.

Activer tous les types offre la protection la plus large ; utilisez un sous-ensemble lorsque vous n’avez besoin de masquer que certaines sortes de données, ou que vous voulez réduire au minimum le surcoût à l’exécution décrit dans Performances.

Last updated on