Logo

SOURCEdefender

AES 256-bit Encryption protecting Python source code

AES is a symmetric algorithm which uses the same key for both encryption and decryption (the security of an AES system increases exponentially with key length). There is no impact on the performance of your running application as the decryption process takes place during the import of your module so encrypted code won't run any slower once loaded from a .pye file compared to loading from a .py or .pyc file.

Features

Symmetric AES 256-bit encryption
Set your own password & salt for encryption
No 'Magic Number' problems changing Python version
Set an expiration time on encrypted code
Encrypted code will load on ANY supported target system
Bundle encrypted files or folders into a single executable binary using PyInstaller
* PyInstaller does not yet work on Apple Silicon M1 (arm64) Systems.

Supported Systems

We support the following Operating System & Architecture combinations and hook directly into the import process so there are no cross platform compatibility issues. Each system, identified by Platform ID will need a license to create encrypted code. The licence is fixed to the system that it is activated on for the duration of the current billing period.
Encrypted code will run on the ANY target platform we support. Python code encrypted in Python 3.9 will run just fine in Python 3.6. Obviously your code needs to be written with the target system in mind as we can't make sys.getwindowsversion() work on Linux and we can't backport newer Python functions.
Architecture Operating System Platform ID Python Versions
X86_64 Windows windows64 3.6 - 3.9
X86_64 Linux linux64 3.6 - 3.9
X86_64 macOS darwin64 3.6 - 3.9
ARM64 macOS arm64 3.9
ARMv6 (32-bit) Linux armv6l 3.6 - 3.9
ARMv8 Linux aarch64 3.6 - 3.9

Download

TLDR : pip install sourcedefender

We are proud to be in the Top 5% of packages on PyPi when ordered by downloads. We have worked hard to ensure the installation of our package is as straight forward as possible. Anyone who is used to using pip will not find this difficult. Simply run the install command above and you'll be good to go. Installation is just like installing any other Python package.

For more information on the v7.1.14 release, you can take a look on PyPi .

Pricing

Distribution of encrypted code will always be free!

Free

£0.00

  • File Encryption : Unlimited
  • Code Expire : 24hrs
  • Email Response : 48hrs
  • CI/CD Compatible : Yes
  • Docker Compatible : Yes

Standard

£5.00 /month

  • File Encryption : Unlimited
  • Code Expire : Optional
  • Email Response : 24hrs
  • CI/CD Compatible : No
  • Docker Compatible : Yes
  • Active Billing : Yes
  • Licenses Included : 1

Professional

£50.00 /month

  • File Encryption : Unlimited
  • Code Expire : Optional
  • Email Response : 12hrs
  • CI/CD Compatible : Yes
  • Docker Compatible : Yes
  • Active Billing : No
  • Licenses Included : Unlimited

Enterprise

£500.00 /year

  • File Encryption : Unlimited
  • Code Expire : Optional
  • Email Response : 6hrs
  • CI/CD Compatible : Yes
  • Docker Compatible : Yes
  • Active Billing : No
  • Licenses Included : Unlimited

* Prices suject to VAT where applicable.

Frequently Asked Questions

You only need to license systems that create encrpyted code. You do not need to license each device that will run encrypted code. A example of system that would need a license would a pyhsical or virtual machine that is part of your CI/CD pipeline. A customers server would not need a license to run any code you encrypt for them.

Active Billing

To help you keep your costs down, we have introduced Active Billing . After you activate a system we automatically monitor its usage and if we can see that it is not using our tools then we wil not charge you for that month. As soon as that system needs to encrypt files we will re-activate your license as long as the payment can be processed. To help with this process we collect minimal information such as the date/time and a total number of files encrypted.

Docker compatibility

The Standard plan is compatible with Docker Containers providing the Container ID never changes. We scrape the container ID and use that to lock the activation to the instance. If the container ID changes a new subscription would automatically be started and you would be billed accordingly. If you wish to integrate into your Docker environment then we highly recommend either the Professional or Enterprise Plan.

CI/CD compatibility

The Standard plan is incompatible with CI/CD pipelines as each use of your activation token would start a new subscription for that instance that you would be billed for. If you wish to integrate into your CI/CD pipeline then you will need either the Professional or Enterprise Plan.

Multiple Systems

You can use your activation token on as many systems as you need. For example, if you have 10 Developers who that need activating you could use your token 10 times. On the Standard Plan you will be charged for 10 subscriptions. However, if you know you want to have 10 or more systems regularly encrypting code, then you may be better with either the Professional or Enterprise Plan.

Billing Period

Our default billing period starts when you activate your first system and lasts for the duration of your Plan. Your systems subscription will automatically cancel at the end of this billing period.

Activation

An activation takes place when a user installs the sourcedefender package (via 'pip install sourcedefender') on a system and then runs the "sourcedefender activate --token" command with your unique token.

Activation Token

This activation token is unique to your account. If you wish to get a new token, click on the Refresh Token button. Any system that was previously activated will continue to work.

Cancellation

We will automatically cancel licences at the end of the billing period, they will only (automatically) renew on next use. Any encrypted code you have deployed will continue to run even after you end your subscription.

Refunds

We are unable to offer refunds on our subscriptions. Our software is activated on your system automatically at the time of purchase and is set to expire and the end of your billing period. Once the license is activated on your system we have no way of disabling it early.