Make your code difficult to understand and read. Minimize exposure to attacks.
This is an educational project to learn more about the Abstract-Syntax-Tree library of Python and to explore the possibilities you have with Python-Obfuscation.
The project is still in a very early stage of development. It currently only works on very simple scripts, so use it at your own risk!
Disclaimer: the third translation is not included yet, but it is as simple as renaming MEMORY to m, OPCODES to o etc.
Example 1:
number1=1number2=5sum=number1+number2# Translates to ------------------------------------------fromvmimport*MEMORY[0] =1MEMORY[1] =5MEMORY[2] =OPCODES[0](MEMORY[0], MEMORY[1])
# Translates to ------------------------------------------fromvmimport*m[0] =1m[1] =5m[2] =o[0](m[0], m[1])Example 2:
defprint_sum(number1, number2):
print(number1+number2)
number1=1number2=5print_sum(number1, number2)
# Translates to ------------------------------------------fromvmimport*deffunction1(arg1, arg2):
print(OPCODES[0](arg1, arg2))
CUSTOM_FUNCTIONS[0] =function1MEMORY[0] =1MEMORY[1] =5MEMORY[2] =OPCODES[4](0, 0, 1)
# Translates to ------------------------------------------fromvmimport*deffunction1(arg1, arg2):
print(OPCODES[0](arg1, arg2))
f[0] =function1m[0] =1m[1] =5m[2] =o[4](0, 0, 1)A section explaining how to use the obfuscator will come as soon as it is useable for more complex code.
- Support for more complex code (classes, more operations etc.)
- Anti debugging method
- One line obfuscation
- many more..