Skip to main content

Qu'est-ce qu'un obscurcisseur?

Un obscurcisseur est un processus ou un appareil destiné à rendre un programme plus difficile à comprendre.Généralement, l'approche de l'obfuscateur est de suivre un programme relativement simple et de rendre le code sous-jacent plus complexe.Bien que l'utilisateur final ne remarque pas une différence dans la façon dont le code s'exécute, la fonction de l'obfuscateur rend plus difficile le piratage du code et détourne le programme.De ce point de vue, l'utilisation de ce type d'outil peut être considérée comme une mesure de sécurité.

Le nom de l'appareil ou du processus est emprunté au mot «obscurcisse», qui fait référence à la complication d'une présentation verbale pour tenter de confondre ou de perturber.De la même manière, l'obfuscateur cherche à rendre le processus de compréhension du code quelque peu perplexe.Cela rend essentiellement plus difficile que le code soit compromis, car la vraie viande du code est si profondément enterrée ou obscurcie qu'il est difficile d'extraire les parties de travail essentielles du code.

Il existe plusieurs langages de programme qui ont tendance à très bien répondre au processus d'obscurcissement.C ++ est parmi les langues les plus populaires et permet d'employer un obscurcisseur avec une facilité relative sans corrompre la fonction du code de base.De la même manière, C et Perl ont également tendance à bien fonctionner avec l'utilisation de l'obscurcissement, ce qui rend relativement facile d'ajouter un élément de protection à toute programmation écrite dans ces trois langues.

Bien que le but d'un obscurcisseur soit de rendre intentionnellement le code plus difficile à démêler, il est également nécessaire de s'assurer que les personnes autorisées à travailler avec la programmation peuvent le faire sans être gêné par le processus d'obscuscation.À cette fin, il est possible d'utiliser diverses techniques pour parcourir les complications supplémentaires et accéder au code de base.Ce processus est connu sous le nom d'ingénierie inverse, car il implique de l'annuler essentiellement des complications afin de voir la véritable image.Le tranchage du programme est un exemple de techniques d'ingénierie inverse utilisées pour désobfusquer un ensemble de code.

Bien que l'obfuscateur offre un certain degré de protection, il est important de réaliser que ce processus ne devrait pas être le seul moyen de sécurité employé pour protéger la programmation.D'autres stratégies de sécurité devraient également être utilisées pour garantir que les insertions malveillantes ne sont pas reçues par le réseau et autorisées à s'y attendre dans les codes existants.