MATLAB Answers

0

Crack Matlab Executable file?

Asked by Raghavendra on 7 Apr 2014
Latest activity Answered by Juan Vanegas on 11 Nov 2016
Hello,
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.

  0 Comments

Sign in to comment.

4 Answers

Answer by 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.)

  1 Comment

The below encryption claims to be unbreakable:

Sign in to comment.


Nitin
Answer by Nitin
on 7 Apr 2014

Have a look a pcode .

  0 Comments

Sign in to comment.


Answer by 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?
Raghu.

  2 Comments

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.
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.


Answer by 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.

  0 Comments

Sign in to comment.