作成したMATLABファイルを他者に配布する場合などに、他者がコードの内容を解釈したり編集できないように隠蔽化することはできますか。
22 views (last 30 days)
Show older comments
MathWorks Support Team
on 29 Jun 2009
Edited: MathWorks Support Team
on 14 Oct 2022
作成したMATLABファイルを他者に配布する場合などに、他者がコードの内容を解釈したり編集できないように隠蔽化することはできますか。
Accepted Answer
MathWorks Support Team
on 14 Oct 2022
Edited: MathWorks Support Team
on 14 Oct 2022
関数pcode を使って擬似コードファイル(P-ファイル)を生成することでMATLABファイルを隠蔽化することができます。
例えば、fun.m というMATLABファイルがある場合、次のコマンドを実行することで、fun.p というP-ファイルが生成されます。
pcode fun
P-ファイルがあればMATLABファイルがなくてもプログラムを実行することができますので、アルゴリズムを隠してプログラムを配布したい場合には、生成された P-ファイルのみを配布します。
なお、P-ファイルはプラットフォームに依存します。異なる複数のプラットフォームにP-ファイルを配布する場合には、各プラットフォームにおいてpcode を実行し、それぞれP-ファイルを作成してください。
また、古いバージョンのMATLAB で作成したP-ファイルは、新しいバージョンのMATLABでも実行することができますが、新しいバージョンのMATLABで作成したP-ファイルは、古いバージョンのMATLABでは実行することができません。複数のバージョンに対応するP-ファイルを作成する場合には、使用する最も古いバージョンのMATLABでpcodeを実行してP-ファイルを作成してください。
ただし、 p コード化の概念としてコードを難読化することを目的としているため、確実な安全性を保障することは出来ません。
ソース コードの保護:
https://www.mathworks.com/help/matlab/matlab_prog/protect-your-source-code.html?searchHighlight=%E3%82%BD%E3%83%BC%E3%82%B9%E3%80%80%E4%BF%9D%E8%AD%B7
安全性を確保したい場合は MATLAB Compiler に導入されている高度暗号化標準(AES)暗号システムを使用して暗号化する方法があります。
配付可能なアーカイブ:
https://www.mathworks.com/help/compiler/deployable-archive.html?searchHighlight=AES
0 Comments
More Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!