F.A.Q - Python Source Code Protection

Python Script Code Protection

We are different in many ways. First, our protection does not require you to install or configure any additional components in order for your protected script to work.

Other options out there require that you ship extra plugins/modules along with the encrypted python script. They often use these extra plugins to run the protected script on the hosts on which it is intended to run.

Our protection algorithm takes in your original plain text python code, does its magic, then spits out an encrypted/obfuscated version which works exactly as the orginal does. Nothing extra needed.

Second, with our protection, the version of python you use does not matter. What that means is, after a script is encrypted, to run the encrypted script, simply use the appropriate python version...i.e. python3.6 myEncryptedScript.py

Of course.

If none of the options available on the purchasing page work for you, we can certainly provide assistance. We'll need to know how many scripts you intend to protect and how many users/developers in your company you envision using the EnScryption tool.

Currently, the on-prem version of the tool is designed to allow unlimited encryption of scripts by an unlimited number of users. However, if the tool is only going to be used by a certain number of users within your company, we will take that into account and generate a more suitable version of the tool for you. Just shoot us an email.

Sure. Send us an email. Let us know which purchasing plan you're interested in. We'll find a suitable payment system for you to use.

Have a new question? Contact us!

Questions (compatibility,security,pyinstaller)

The EnScryption tool for Python (pyenScrypt) can be used on any Ubuntu/Redhat/Linux based system and of course MacOSes.

Absolutely. Yes, you can expect the encrypted python scripts to work wherever python is available.

Yes, you could, if you want to. We include automated scripts for you to run to convert your encrypted scripts into either a binary or an executable.

However, before deciding to add pyinstaller to the equation, it's important to revisit your personal reasons for code protection.

For instance, if your main objective is to ensure that your code cant be tampered with, and that it is well protected and cant be easily hacked into, then, you don't need PyInstaller.

The protection provided with our EnScryption tool is more than sufficient to satisfy that objective.

However, if your intention is to encrypt the code, but also package all the modules used by the code into one binary or executable so that your users wont have to worry about getting, downloading, installing and configuring dependencies, then, yes, you could use PyInstaller for that.

Be aware though that, introducing pyinstaller into the mix means the execution time of the final script will be much higher than the unprotected version of it.

No. We only require internet connectivity for the Python Encryption Tool itself.

Before proceeding to encrypt any python script you give it to protect, the EnScryption tool has to first validate itself with our servers. It essentially performs an handshake to confirm the authenticity of the copy you're using.

No. Your encrypted script should be expected to work exactly as the original. Our protection utilizes a technique classified as automated human assisted integration of artificial intelligence. What that basically means is, your protected script is self sustaining. It uses built in artificial intelligence to protect your code based on expected behavior.

Yes. Currently, there's only two main levels of projection. Level 0 and Level 1. Level 0 provides the maximum security, but with this security comes added size to the encrypted script. This size is often insignificant. But should it ever become a concern, you can just switch to Level 1.

Level 1 provides the most basic, yet, powerful protection for your code. It is very light and with it, you can add or remove protection depending on the requirement at hand.

Latest How-to Videos

Questions (script size,execution time,licenses,plans)

The size of the encrypted script will be negligible, especially if encrypted using Level 1 protection.

Earlier versions of the encrypted scripts were much heavier, but over time, and with the input of several customers, we've been able to trim out the unnecessary parts.

Now, users get to choose specific levels of protection to apply to their scripts, as opposed to us imposing preset configurations.

No. One of the early challenges of protecting source code is developing the appropriate level of protection that does not noticesably impact the execution of the code being protected.

We are very proud to say that, as of June 19, 2021, scripts protected using our product can be expected to run almost as fast as their original / plain text versions. There will be time added to the execution of the final encrypted script, but this time is negligible.

But what exactly is 'negligible'? What does that mean?

We have quite a few very short, straight to the point videos in the above links available for you to watch to get an idea of what to expect.

Of course. During the duration of your license term, you get to choose when or if each script you protect should expire. If a script is protected without the expiration mandate, that essentially means the script will never expire. Your users will be able to continue using it for as long as they wish.

The online options requires you to upload your scripts to our online portal for them to be encrypted.

The on-prem options allows you to utilize the actual EnScryption tool on your own private hosts. With this version, for the duration of the license period, you will be able to protect an unlimited number of scripts on an unlimited number of servers.

Yes, the scripts you encrypted during the period which the license was valid and current, will continue to work, even after your license expires. We dont control the expiration dates you assign to your scripts. That is up to you. You get to decide whether or not the script(s) you protect have to expire.