2

Мне интересно узнать, насколько безопасен исходный код при компиляции с MATLAB Compiler с 2014 года? Я прочитал две темы по этому вопросу с 2011 года, в которых говорится, что есть недостатки безопасности.Безопасность компилятора MATLAB

В этой теме с 2011 года говорится, что имена исходных файлов подвергаются пользователи http://www.mathworks.fr/matlabcentral/newsreader/view_thread/299373

В этой теме с 2011 года указывается, что м-файлы иногда подвергаются в непонятных местах в хост-системы. http://www.mathworks.com/matlabcentral/newsreader/view_thread/310932

Кто-нибудь знает, были ли устранены эти недостатки?

+4

Голосование, чтобы возобновить этот вопрос - на самом деле оно не основано на мнениях, и задает очень конкретный вопрос о потенциально небезопасном поведении MATLAB Compiler, вместо того, чтобы просить общее мнение о его безопасности. –

+0

Да, у меня есть твердые ответы, которыми я доволен, поэтому я действительно не вижу никаких успехов, редактируя или переформулируя вопрос. – fixingstuff

ответ

5

Все приложения, созданные компилятором MATLAB (и соответствующими инструментами), включают встроенный архив CTF. Этот архив встроен в сгенерированный компонент (автономный EXE, совместно используемая DLL, пакеты Java, сборки .NET и т. Д.) Вместе с целевым кодом шаблона, чтобы представить его как двоичный компонент ожидаемого формата.

Архив CTF содержит все источники и данные MATLAB файлов проекта в зашифрованном виде (шифрование AES). Архив извлекается, когда приложение запускается в первый раз (в настраиваемом местоположении кэша), затем файлы дешифруются и выполняются в контексте среды выполнения MCR. Таким образом, хотя в каталоге кэша будет куча видимых M-файлов, все они зашифрованы (на диск не записано четкого текстового кода).

Подробнее об этом можно узнать в the documentation.

То, как я его вижу, здесь нет вопиющего недостатка, и никогда не было ... Я не думаю, что имена исходных файлов - это то, о чем беспокоиться об разоблачении!

+0

Хорошо, спасибо. У меня есть два вопроса относительно «видимых M-файлов внутри каталога кеша». Могут ли они быть извлечены, чтобы отдельный (зашифрованный) файл мог использоваться каким-либо образом (например, вызывать его и получать выходные данные)? Правильно ли я понимаю, что отображаются имена исходных файлов? – fixingstuff

+2

Да, имена исходных файлов (и имена любых подкаталогов, в которых они хранятся) видны во временном каталоге извлечения. Все файлы исходного кода MATLAB зашифрованы и нет (кроме нарушения шифрования AES), нет способа, которым они могут быть использованы или вызываться каким-либо другим, кроме скомпилированного приложения, частью которого они являются. –

+0

@Amro У меня больше нет доступа к компилятору MATLAB, так что не могу это проверить. Но если у вас есть доступ, возможно, вы можете проверить, зашифрованы ли файлы, кроме файлов .m, при включении в приложение. Я наполовину помню, что это не так, но, возможно, я забываю. cont ... –

 Смежные вопросы

  • Нет связанных вопросов^_^