前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何有效保护源代码 —— .m脚本文件?

如何有效保护源代码 —— .m脚本文件?

作者头像
巴山学长
发布2019-07-15 15:48:52
1.3K0
发布2019-07-15 15:48:52
举报
文章被收录于专栏:巴山学长

在实际情况中可能会遇到这样的事情,我们在分享自己编写的matlab程序时只是为了演示程序所实现的功能,并不希望对方看见源代码。要怎样才能实现既能加密源代码又能够在matlab中正常执行加密文件呢?今天就给大家介绍一个新的加密命令 —— pcode。

pcode命令通常有两种使用方式:

一、直接在命令窗口使用:

pcode + file1.m file2.m ....

注:各文件名之间用空格隔开,如果文件不在当前路径中,需要在文件名前添加文件路径。使用

代码语言:javascript
复制
pcode *.m

可以将当前目录下的所有m文件同时加密。

二、在m文件使用pcode函数

使用方式如下:

a、pcode(fun1,...,funN),加密fun1.m至funN.m文件

b、pcode(fun,'-inplace'),在脚本或函数文件所在的同一个文件夹中创建 P 文件

以下是在m文件中使用pcode函数示例:

代码语言:javascript
复制
% 指定主路径
pathT = 'D:\Documents\Matlab\test';
% 获取主路径子文件夹下的m文件名,*代码所有m文件
fun = fullfile(pathT,'aihaozhe','*.m');
% 调用加密函数pcode
pcode(fun);

特别说明,未使用参数时,pcode的生成的加密文件都是当前路径中。

以上就是m文件加密的介绍,原则上使用该方法加密是安全的,但网上有人可以破解pcode加密的文件,目前该破解渠道已经被mathworks官方阻止,而且高版本matlab加密强度应该较之前的老版本有很大提高,因此使用pcode加密还是相对可靠的。网上有一个叫tomlab的工具箱,能够破解纯计算型的pcode加密文件,因此建议大家若要对源代码进行加密,尽量在代码中添加诸如判断、循环等语句,这样就可以有效防止这个工具箱的破解。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-05-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 巴山学长 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档