How does it work pcode?
Show older comments
Hello,
We would like to protect our MATLAB algorithms and we were thinking of using "pcode" but in order to understand how protected the code will be I would like to know how this protection system works.
I was reading the description in the Mathworks webpage and in some places this method is described as an encryptation (which means a key is needed to decrypt the code) and in some others it was shown as content-obscuring (which we understand as obfuscation like in Java or .NET). So what it is really?
When we use the pcode function, no key o seed is asked so I asume that the same key is used everytime, which will allow MATLAB decrypting the code in any computer without additional information. Is there a key? Is this key an static key used by MATLAB?
I have read in your forum that MATLAB "compiles" (may I use this word?) this code to a bytecode which is executed in a virtual machine. So is this process made everytime we use MATLAB (I mean the half-compilation to bytecode and after the final compilation in the virtual machine) or that bytecode and the VM are only used for the pcode? In that case would it be possible to install the VM simply in a computer without the rest of the tools from MATLAB?
I really need to justify if MATLAB's pcode is safe enough for our needs so I would be glad I could have all this information.
Thank you for your help.
Accepted Answer
More Answers (2)
James Tursa
on 1 Aug 2013
3 votes
Xabier
on 2 Aug 2013
0 votes
Categories
Find more on Programming in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!