Ich habe immer fest daran geglaubt, dass Verschleierung im Wesentlichen nutzlos ist. Verschleierter Code ist nicht unmöglich zu lesen, nur schwerer zu lesen. Ich war der Überzeugung, dass ein ausreichend erfahrener Angreifer den verschleierten Code wieder in einen besser lesbaren Zustand versetzen kann.
OWASP empfiehlt jedoch die Verwendung der Verschleierung für mobile Clients. Ich frage mich daher, ob die Verschleierung glaubwürdiger ist, als ich ihr gegeben habe.
Daher meine Frage: Gibt die Verschleierung einen messbaren Sicherheitsvorteil? Insbesondere ein Vorteil, der die zusätzlichen Kosten, die Komplexität und die reduzierte Leistung überwiegt.
Hinweis: Wenn ich "Verschleierung" sage, spreche ich von absichtlichen Maßnahmen zur Verhinderung von Reverse Engineering. Compiler-Optimierungen werden durchgeführt, um die Leistung zu verbessern und nicht das Reverse Engineering zu verhindern, obwohl sie die Lesbarkeit der Baugruppe beeinträchtigen.