Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
MATLAB编译器的安全性_Matlab_Security_Encryption_Matlab Deployment_Matlab Compiler - Fatal编程技术网

MATLAB编译器的安全性

MATLAB编译器的安全性,matlab,security,encryption,matlab-deployment,matlab-compiler,Matlab,Security,Encryption,Matlab Deployment,Matlab Compiler,我很想知道2014年使用MATLAB编译器编译时,源代码的安全性如何?我从2011年读到两篇关于这个主题的文章,其中指出存在安全漏洞 在2011年的这个线程中,声明源文件的名称向用户公开 在2011年的这篇文章中,m文件有时会暴露在主机系统中的模糊位置。 有人知道这些缺陷是否已经解决了吗?由MATLAB编译器生成的所有应用程序(以及相关工具箱)都包含一个嵌入式CTF存档。此归档文件与特定于目标的样板代码一起嵌入到生成的组件(独立EXE、共享DLL、Java包、.NET程序集等)中,以将其作为

我很想知道2014年使用MATLAB编译器编译时,源代码的安全性如何?我从2011年读到两篇关于这个主题的文章,其中指出存在安全漏洞

在2011年的这个线程中,声明源文件的名称向用户公开

在2011年的这篇文章中,m文件有时会暴露在主机系统中的模糊位置。


有人知道这些缺陷是否已经解决了吗?

由MATLAB编译器生成的所有应用程序(以及相关工具箱)都包含一个嵌入式CTF存档。此归档文件与特定于目标的样板代码一起嵌入到生成的组件(独立EXE、共享DLL、Java包、.NET程序集等)中,以将其作为预期格式的二进制组件公开

CTF档案以加密形式(AES加密)包含项目文件的所有MATLAB源和数据。当应用程序第一次运行时(到可配置的缓存位置),将提取归档文件,然后在MCR运行时的上下文中解密和执行文件。因此,即使缓存目录中会有一堆可见的M文件,它们都是以加密形式存在的(没有明文代码写入磁盘)

您可以在中阅读更多关于此的信息


在我看来,这里没有明显的缺陷,也从来没有。。。我不认为源文件的名称是人们担心暴露的事情

好的,谢谢。关于“缓存目录中可见的M文件”,我有两个问题。是否可以提取它们,以便单独的(加密的)文件能够以任何方式单独使用(例如,调用它并接收输出)?我是否理解源文件的名称被公开是正确的?是的,源文件的名称(以及它们存储在其中的任何子目录的名称)在临时提取目录中可见。所有MATLAB源代码文件都是加密的,没有(除破坏AES加密外)除了它们所属的已编译应用程序之外,任何人都无法使用或调用它们。@Amro我再也无法访问MATLAB编译器,因此无法检查此项。但如果您有访问权限,也许可以确认在应用程序中包含.m文件以外的文件时是否加密。我几乎记得他们不是——但也许我记错了。cont……如果我认为它们没有加密是正确的,那么这是您需要小心的事情-例如,您可能在应用程序中包含
.mat
专有数据文件。此外,您的MATLAB preferences目录被包装在归档文件中,归档文件存储在常规文本文件中,而不是
.m
文件中,可以查看。@SamRoberts:是的,没错(我还没有检查它,但我也记得它);项目中的MAT文件未加密,
prefdir()
的内容也未加密。首选项部分的一个解决方法是创建一个用于打包应用程序的临时MATLAB配置文件(通过在启动MATLAB之前设置
MATLAB_PREFDIR
环境变量),这样就不会暴露我的实际设置投票重新打开这个问题-它实际上不是基于意见的,并且提出了一个关于MATLAB编译器潜在不安全行为的非常具体的问题,而不是询问关于其安全性的一般意见。是的,我得到了一些我很满意的可靠答案,所以我真的看不到编辑或重新表述该问题有什么好处。