Skip to content

EnigmaLang πŸ•΅οΈβ€β™‚οΈπŸ’»πŸ”’ is your digital armor, transforming Python scripts into undecipherable mysteries πŸ§™β€β™‚οΈβœ¨. It weaves a spell of obfuscation and AES encryption, cloaking your code in secrecy. Imagine your script as a phoenix 🐦πŸ”₯, reborn from ashes into a form that eyes can't unravel. With a wand wave, EnigmaLang turns readable text to obfs

License

Notifications You must be signed in to change notification settings

1100111GTH/EnigmaLang

Β 
Β 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

EnigmaLang πŸ•΅οΈβ€β™‚οΈ

Overview

EnigmaLang offers a sophisticated way to protect your Python scripts through obfuscation and encryption, turning your code into an unreadable format before execution. This tool is particularly useful for distributing Python applications without revealing the source code, making it a valuable asset for software developers concerned with protecting their intellectual property.

Features

  • Code Obfuscation: Transforms your Python script into an obfuscated version, making it difficult to reverse-engineer.
  • AES Encryption: Encrypts the obfuscated script for an additional layer of security.
  • Decryption Stub: Automatically generates a stub to decrypt and execute the encrypted code seamlessly.
  • Executable Compilation: Offers an option to compile the obfuscated script into a standalone executable.

Installation

  1. Ensure Python 3 is installed on your machine.

  2. Clone or download the EnigmaLang repository to your local machine.

  3. Navigate to the EnigmaLang directory and install the required dependencies:

    pip install -r requirements.txt

Usage

To protect your Python script using EnigmaLang, follow these steps:

  1. Place your Python script in the test_code directory of EnigmaLang.

  2. Run the main EnigmaLang script, specifying your script name:

    python main.py test_code/yourscript.py <SecretWord> <EncryptionIterations> [--exe] [--sleep]
    • Replace yourscript.py with the name of your Python script.
    • <SecretWord> is a secret word of your choosing that will be required to execute the encrypted script.
    • <EncryptionIterations> is the number of times the encryption process should be applied.
  3. EnigmaLang will generate several files within the test_code directory:

    • An obfuscated version of your script.
    • A bytecode file containing the encrypted script.
    • A decryption stub in Python for decrypting and executing the encrypted script.

Example

Suppose you have a simple Python script named helloworld.py with the following content:

print("Hello World")

After running EnigmaLang, your test_code directory will contain:

  • helloworld_obfuscated.py: The obfuscated version of helloworld.py.
  • helloworld_bytecode: The encrypted bytecode of the obfuscated script.
  • helloworld_decryption_stub.py: A Python script that, to debugging.
  • helloworld.py: The original script (unchanged).
  • key.txt: A file containing the secret 256 bit long to decrypt the code.

To execute the encrypted script, simply run the decryption stub:

python helloworld_obfuscated.py 

Project Structure


EnigmaLang/
β”‚
β”œβ”€β”€ main.py
β”œβ”€β”€ words_alpha.txt
β”œβ”€β”€ requirements.txt
β”‚
└── test_code/
    β”œβ”€β”€ helloworld_bytecode
    β”œβ”€β”€ helloworld_decryption_stub.py
    β”œβ”€β”€ helloworld_obfuscated.py
    └── helloworld.py
    └── key.txt    

Contributing

We welcome contributions to improve EnigmaLang! Please feel free to submit pull requests or open issues to suggest features or report bugs.

License

EnigmaLang is open-sourced under the MIT license. See the LICENSE file for more details.

About

EnigmaLang πŸ•΅οΈβ€β™‚οΈπŸ’»πŸ”’ is your digital armor, transforming Python scripts into undecipherable mysteries πŸ§™β€β™‚οΈβœ¨. It weaves a spell of obfuscation and AES encryption, cloaking your code in secrecy. Imagine your script as a phoenix 🐦πŸ”₯, reborn from ashes into a form that eyes can't unravel. With a wand wave, EnigmaLang turns readable text to obfs

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%