Разница между ручной и машинной обфускацией кода заключается в использовании различных подходов к преобразованию программы в нечитаемый код. 47
Ручная обфускация проводится вручную или с помощью специальных скриптов. 4 В процессе обфускации определённые части кода шифруются, метаданные удаляются, а осмысленные элементы заменяются бессмысленными. 7 Например, при лексической обфускации удаляются все комментарии, пробелы и отступы, а идентификаторы заменяются (имена переменных, функций, процедур и других компонентов). 4
Машинная обфускация осуществляется с помощью специальных программ-обфускаторов, которые автоматизируют процессы изменения исходного кода. 710 Например, LLVM-обфускатор является частью компилятора и защищает исходный код на этапе компиляции. 2