Skip to content

Releases: NagiPragalathan/EnigmaShield

EnigmaShield

18 Jun 12:35
Compare
Choose a tag to compare

Logo

EnigmaShield

The Module Encryption Toolkit is a Python module that provides a way to encrypt the entire process of your Python code, including runtime values. By encrypting your code and utilizing environment variables to store the encryption key, this toolkit aims to enhance the security of your module and deter reverse engineering.

Explore the docs »

View Demo . Report Bug . Request Feature

Downloads Contributors Forks Stargazers Issues License

Table Of Contents

About The Project

Screen Shot

The "Module Encryption Toolkit" is a powerful Python module designed to enhance the security of your code by encrypting the entire process, including runtime values. With this toolkit, you can safeguard sensitive data and effectively prevent reverse engineering attempts.

One of the key features of the toolkit is the utilization of environment variables for storing the encryption key. By keeping the key separate from the codebase, you ensure that it remains secure and easily configurable. This approach adds an extra layer of protection to your encryption process.

To further strengthen the security of your module, the toolkit incorporates the RSA algorithm, a widely recognized asymmetric encryption method. This algorithm employs a public key for encryption and a private key for decryption, allowing you to securely transmit the encryption key or exchange encrypted data without exposing the key itself.

By encrypting the entire process of your Python code, including runtime values, you can prevent unauthorized access to sensitive information and discourage reverse engineering attempts. Runtime values remain encrypted, ensuring that their contents remain hidden and inaccessible.

It's important to note that while the "Module Encryption Toolkit" provides significant security benefits, no security measure is completely foolproof. It is recommended to adopt a multi-layered security approach, including secure key management, adherence to secure coding practices, and staying informed about the latest best practices and security standards.

By leveraging the "Module Encryption Toolkit" in your projects, you can bolster the security of your code, protect sensitive data, and minimize the risk of reverse engineering. Please refer to the documentation for detailed instructions on installation, usage examples, and API documentation.

Remember, security is an ongoing process, and it's crucial to continuously evaluate and update your encryption implementation to stay ahead of potential vulnerabilities. Feel free to contribute to the project, provide feedback, or reach out if you have any questions or need further assistance.

Built With

The Module Encryption Toolkit (EnigmaShield) is built with Python, leveraging its robust and versatile capabilities for code encryption and security. It utilizes several key components and technologies to provide enhanced security features:

  1. Python: The toolkit is developed using Python, a powerful and popular programming language known for its simplicity and readability.

  2. Environment Variables: The encryption key is stored securely using environment variables. This approach ensures separation of sensitive information from the codebase and allows for easy configuration.

  3. RSA Algorithm: The toolkit incorporates the RSA algorithm, a widely recognized asymmetric encryption method. It utilizes a public key for encryption and a private key for decryption, enabling secure transmission and exchange of the encryption key or encrypted data.

  4. OpenSSL: OpenSSL, a robust open-source cryptographic library, is used for implementing the RSA algorithm and other cryptographic functions. It provides a reliable and tested set of encryption tools for secure data handling.

  5. pip: The toolkit is distributed and installed using pip, the package installer for Python. It allows for easy installation and management of the Module Encryption Toolkit and its dependencies.

By leveraging these technologies, the Module Encryption Toolkit provides a comprehensive solution for encrypting the entire process of Python code and protecting sensitive data.

Getting Started

To get started with the EnigmaShield Python module, follow these steps:

Prerequisites

Before you can begin using the EnigmaShield Python module, ensure that you have the following prerequisites in place:

  1. Python 3.x : The EnigmaShield module requires Python 3.x to be installed on your system. If you haven't installed Python, you can download and install the latest version from the official Python website (https://www.python.org).

  2. Pip Package Manager : Pip is a package manager for Python that simplifies the process of installing and managing Python packages. Ensure that you have pip installed on your system. You can check if pip is installed by running the following command in your terminal or command prompt:
    pip --version
    If pip is not installed, you can refer to the official pip documentation for installation instructions specific to your operating system (https://pip.pypa.io/en/stable/installing/).

  3. Git: Git is a distributed version control system used for cloning and managing the EnigmaShield repository. Make sure you have Git installed on your system. You can check if Git is installed by running the following command in your terminal or command prompt:
    git --version
    If Git is not installed, you can download and install it from the official Git website (https://git-scm.com).

Once you have these prerequisites fulfilled, you're ready to proceed with the installation and usage of the EnigmaShield Python module.

Installation

( Using GitHub )Open your terminal or command prompt.
Clone the EnigmaShield repository from GitHub:

  1. Clone the code :
    git clone https://github.com/NagiPragalathan/EnigmaShield.git
  2. Navigate to the project directory:
    cd EnigmaShield
  3. Install the EnigmaShield module using pip:
    pip install .
    ( or )
    Using PIP :
    pip install EnigmaShield

Usage

The "Module Encryption Toolkit"(EnigmaShield) is a powerful Python module designed to enhance the security of your code and protect sensitive data by encrypting the entire process. With this toolkit, you can encrypt your Python code, including runtime values, making it difficult for unauthorized users to access and reverse engineer your code.

One of the key features of this module is the ability to declare the encryption key as an environment variable. By storing the key separately from the codebase, you ensure its security and easy configuration. This approach adds an extra layer of protection to your encryption process.

The "Module Encryption Toolkit"(EnigmaShield) offers four different encryption methods:

  1. File Data-Based Encryption: This method encrypts and decrypts files, allowing you to secure sensitive data stored in files.

  2. Simple Encryption: This method provides a straightforward encryption mechanism for various data types such as arrays, tuples, sets, dictionaries, strings, integers, and files. It allows you to encrypt and decrypt data seamlessly.

  3. RSA Encryption: This method incorporates the RSA algorithm, an asymmetric encryption technique widely recognized for its security. It uses a public key for encryption and a private key for decryption. This enables secure transmission of encryption keys or exchange of encrypted data without exposing the key itself.

  4. Shift-Based Encryption: This method utilizes a shift-based encryption algorithm to encrypt and decrypt data. It provides an additional encryption option for your specific needs.

By encrypting the entire process of your Python code, including runtime values, you can ensure that sensitive information remains hidden and inaccessible. This approach adds an extra layer of protection against reverse engineering attempts.

It's important to note that while the "Module Encryption Toolkit" (EnigmaShield) provides significant security benefits, no security measure is completely foolproof. It is recommended to adopt a multi-layered security approach, including secure key management, adherence to secure coding practices, a...

Read more