Skip to main content

No project description provided

Project description

PyDelta

PyDelta is a Python obfuscator script designed to obfuscate Python source code, making it more difficult to understand and reverse-engineer. PyDelta obfuscates your scripts with multiple layers of protection making it extremely hard for someone to deobfuscate.

Features:

  • Anti-Debugger: Adds anti-debugger code to the source to deter debugging attempts.
  • Code Compression and Encryption: Compresses and encrypts the code to make it harder to analyze.
  • String Encryption: Encrypts strings within the code to prevent easy extraction of sensitive information.
  • Inline Imports: Converts imports to inline imports to reduce readability.
  • Name Refactoring: Refactors variable, function and arguments identifiers to further obfuscate the code.

Usage:

PyDelta was intended to run in a browser but it is indeed possible to run it locally. Install PyDelta using the following pip command pip install pydeltaobfuscator.

Example Usage:

from pydelta import delta_obfuscate

source_code = """
# Your Python source code here
print('Hello')
"""

obfuscated_code = delta_obfuscate(source_code)
with open('my_obf_file.py', 'w') as file:
    file.write(obfuscated_code)

Or you can simply run the pydelta-obfuscate command.

Parameters:

  • source_code: Source code to obfuscate
  • add_anti_dbg: Whether to add anti-debugger code (default: True).
  • inline_imports: Whether to convert imports to inline imports (default: True).
  • refactor_names: Whether to refactor variable and function names (default: True).
  • encrypt_str: Whether to encrypt strings in the code (default: True).
  • compress_encrypt: Whether to compress and encrypt the entire code (default: True).
  • str_encryption_amount: Number of times to encrypt strings (default: 3).
  • compress_encrypt_amount: Number of times to compress and encrypt the code (default: 30).

CLI Arguments:

  • no_add_anti_dbg
  • no_inline_imports
  • no_refactor_names
  • no_encrypt_str
  • no_compress_encrypt
  • str_encryption_amount: Number of times to encrypt strings (default: 3).
  • compress_encrypt_amount: Number of times to compress and encrypt the code (default: 30).

Notes

  • This version of PyDelta is still in development and some features may not be fully functional.
  • Python's __annotations__ attribute is broken and will be fixed in future releases.
  • Runtime code is obfuscated by choice which can make maintaining a little tricky, even if those function will likely remain untouched in future releases a module will be used.

License

This project is licensed under the MIT License.

Donating

MetaMask wallet address: 0x1E5a982BD1E54d3CD4EcD7A74642ed808783D506

Buy Me a Coffee at ko-fi.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pydeltaobfuscator-0.1.0.tar.gz (10.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pydeltaobfuscator-0.1.0-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

Details for the file pydeltaobfuscator-0.1.0.tar.gz.

File metadata

  • Download URL: pydeltaobfuscator-0.1.0.tar.gz
  • Upload date:
  • Size: 10.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.0 CPython/3.12.1

File hashes

Hashes for pydeltaobfuscator-0.1.0.tar.gz
Algorithm Hash digest
SHA256 718099181dec56c2d9ec90c2df2a8621a20a0ecd3d74b3b5eaedd179cf0c2e33
MD5 cd5f8c089a9430d87bde87db9f7a699f
BLAKE2b-256 94709300a3ed9627b1088452afc051738521dae1ed08e157d33f9fbf903eb6e7

See more details on using hashes here.

File details

Details for the file pydeltaobfuscator-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pydeltaobfuscator-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 108c7dd3dc8f8508eef58b2e67e4bfa71bbe0ce9ff1b9b1cc54d9193e4eadc84
MD5 6375b37d0b2a2ab2b1e0a50cb95145c4
BLAKE2b-256 827c72903876bd4df1bbc689aa25d93747a50eebde0fbd2ac177e3a205d7217b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page