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.1.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.1-py3-none-any.whl (12.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pydeltaobfuscator-0.1.1.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.1.tar.gz
Algorithm Hash digest
SHA256 63f57a1edb962001c1e9391e09b6723b4cc8bd0fdd1cd5ec626833ebbb51a9ae
MD5 8f0eaf9d8756f4edbe90435ef3fd05b8
BLAKE2b-256 29c0fefc358b94acbcef7cbcc7c27e5214f8c15cccd4ed90dc471aef7251109e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pydeltaobfuscator-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 e4728c1740696459e3a80ee780acfb7038c18e29ebf9dc127b35953fd65a5f71
MD5 bf0b03c5d3a1e3d58872638f3074bbe2
BLAKE2b-256 a995da6d50bac881bb23882e962a5351ecaec6c8dc9866fe8d717239520d7c1e

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