How To Encrypt Your Code for Deployment

Wolfram Player Pro is the professional platform for running interactive applications based on Wolfram technology.

Player Pro is a high-level deployment engine for application developers. We’ve just released a new version that supports almost all the functionality of Mathematica 8, giving you everything you need to deploy your applications to your colleagues or clients. And with this version, you can not only deploy reports, applets, and other material as full-featured desktop applications or documents, but also as interactive web tools using the new browser plugin.

Many users have asked how they can keep their code from being viewed or reverse engineered by their clients. To encrypt source code, just use the Encode command on a package or use DumpSave to create a .mx binary file. Watch this screencast for an example (we recommend viewing it in full-screen mode).

For more information about Wolfram Player Pro, please visit:

You can read more about delivering professional applications with Wolfram Player Pro in this Wolfram Blog post:

For more Mathematica How Tos, please visit:



Leave a Reply
  1. Also, "undecipherable"? Really? You (or at least your company) designed the software; you obviously know that's bullshit. It's decipherable, and not just that, but it's decipherable using an algorithm that everybody who has a copy of Mathematica has access to. Sure, it may take some work, but if the end-user's PC has access to something, the end-user can gain access to it as well.

  2. Encode is a terrible choice if you actually want to prevent people from looking at your code. When you load an encoded file, the computer actually decodes it and has the source code in memory. Therefore, it is possible (I don't know how, but I've been trying to figure it out) for the user to get access to that code. Even DumpSave along with ReadProtected and Locked attributes doesn't prevent users from editing the memory to remove those attributes and from there looking at the code.

Leave a Reply

Your email address will not be published. Required fields are marked *