Crack Matlab Executable file?

70 views (last 30 days)
Raghavendra on 7 Apr 2014
Answered: Juan Vanegas on 11 Nov 2016
What is the robustness of Deploytool software in creating Matlab executable files? Are there any specific parameters we need to use to ensure the robustness or in general using the Deploytool provides sufficient protection to the source code?
Can anyone comment if the Matlab executable file can be cracked?
Thanks, Raghu.

Answers (4)

Walter Roberson
Walter Roberson on 7 Apr 2014
I am not aware of any encryption form that cannot be reverse engineered -- not unless there is hardware support (e.g., Quantum Encryption.)
pcode can be reverse engineered to some degree.
deploytool uses AES, which is known to be breakable in finite time. (It is finite and it is deterministic, so at worst you use brute force for a few trillion years.)

Nitin on 7 Apr 2014
Have a look a pcode .

Raghavendra on 7 Apr 2014
Thanks Nitin. But the Pcode does not provide security to any IP content in the code, just obfuscates (as per Matlab) the code. Are you suggesting using Pcode and then the Deploytool for creating a Matlab executable file?
So the end goal is to create an executable file for our customers which cannot be reverse engineered. Just want to know if they can crack the executbale file and read the code somehow (cache etc...). Does Matlab gurantee that your executable code cannot be read while compiling on a remote computer?
Andreas Goser
Andreas Goser on 8 Apr 2014
I was voting for Walter's response as the requestor is from a university and I assume a theoretical research background and you are not having a multi million Dollar intellectual property to protect. Also, a MATLAB Compiler license at a university cannot be used for a commercial project, so all in all my recommendation is to use the MATLAB Compiler. If you changed your job and/or have a multi million Dollar intellectual property to protect, I suggest contacting MathWorks Consulting department.
Walter Roberson
Walter Roberson on 8 Apr 2014
Jan has from time to time posted about what can be pulled out of pcode; some of those postings are older and appeared on the Usenet group comp.soft-sys.matlab
When it comes to intellectual property protection, the attacker will be considering time, expense, value of the intellectual property, whether the attacker can get someone else to pay the expense (e.g., botnet), and whether there are easier ways to get the intellectual property (e.g., subverting the operating system used in the lab in order to grab the source code.)

Sign in to comment.

Juan  Vanegas
Juan Vanegas on 11 Nov 2016
I created a Matlab EXE file using deploytool and just using any commercial compressing tool it is possible to "unzip" the EXE and get all the .m files. It's true that the .m code is somewhat obfuscated and not readable at once, but functionality can be retrieved. You can type 'help' to any unzipped function and it will display the header text if any. In case you include a .mat file into your EXE file, the decompression will retrieve you the original .mat file which can then be easily loaded into Matlab as it is untouched by the obfuscation. Same for figures and text files.


Find more on Programming in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!