Ofuscação como método de proteção de software





Ou por que você não pode publicar sua versão aprimorada de Counter Strike e ir ao ar no Havaí.





Sobre o que é isso?

Ofuscação (do inglês  ofuscar  - para torná-lo não óbvio, confuso, confuso) em um sentido amplo - trazendo o texto-fonte ou código executável de um programa para uma forma que preserva sua funcionalidade, mas torna difícil analisar, entender os algoritmos de trabalho e modificar durante a descompilação.





Belo exemplo da Wikipedia de código ofuscado.
, .





  • ?





  • ?





  • ?













?

, , . , , , , - , "" .





- .





, , , , , - .





?

, , , .





, , , , . , " ". , , "" , . [3], .





:





• : ,





• :





• : , , ..





source , , , .





, , . , .





1.

, , , ,





, .





2.

. , .





 





3.

, . , , . , "" , - , .





.





4.

, . , , .





5.

. (jump-in-a-middle), . . 





6.

, . , .





, , .





2015 , , . , , . , .





, , , .





[1] https://en.wikipedia.org/wiki/Obfuscation_(software)





[2] https://www.sciencedirect.com/science/article/pii/S1877050915032780





[3] Barak B., Goldreich O., Impagliazzo R., Rudich S., Sahai A., Vadhan S. and Yang K. «On the (im) possibility of obfuscating programs.» CRYPTO 2001.





[4] https://www.researchgate.net/publication/235611093TechniquesofProgramCodeObfuscationforSecureSoftware












All Articles