如何有效保护源代码 —— .m脚本文件?
时间:2022-06-25
本文章向大家介绍如何有效保护源代码 —— .m脚本文件?,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
在实际情况中可能会遇到这样的事情,我们在分享自己编写的matlab程序时只是为了演示程序所实现的功能,并不希望对方看见源代码。要怎样才能实现既能加密源代码又能够在matlab中正常执行加密文件呢?今天就给大家介绍一个新的加密命令 —— pcode。
pcode命令通常有两种使用方式:
一、直接在命令窗口使用:
pcode + file1.m file2.m ....
注:各文件名之间用空格隔开,如果文件不在当前路径中,需要在文件名前添加文件路径。使用
pcode *.m
可以将当前目录下的所有m文件同时加密。
二、在m文件使用pcode函数
使用方式如下:
a、pcode(fun1,...,funN),加密fun1.m至funN.m文件
b、pcode(fun,'-inplace'),在脚本或函数文件所在的同一个文件夹中创建 P 文件
以下是在m文件中使用pcode函数示例:
% 指定主路径
pathT = 'D:DocumentsMatlabtest';
% 获取主路径子文件夹下的m文件名,*代码所有m文件
fun = fullfile(pathT,'aihaozhe','*.m');
% 调用加密函数pcode
pcode(fun);
特别说明,未使用参数时,pcode的生成的加密文件都是当前路径中。
以上就是m文件加密的介绍,原则上使用该方法加密是安全的,但网上有人可以破解pcode加密的文件,目前该破解渠道已经被mathworks官方阻止,而且高版本matlab加密强度应该较之前的老版本有很大提高,因此使用pcode加密还是相对可靠的。网上有一个叫tomlab的工具箱,能够破解纯计算型的pcode加密文件,因此建议大家若要对源代码进行加密,尽量在代码中添加诸如判断、循环等语句,这样就可以有效防止这个工具箱的破解。
- Golang语言社区--Go语言基础第四节类型
- Golang语言社区--go语言编写Web程序
- Golang语言社区--Go语言基础第五节流程控制
- (14)不同基因坐标转换-生信菜鸟团博客2周年精选文章集
- (15)基因组各种版本对应关系-生信菜鸟团博客2周年精选文章集
- go 并发处理脚本
- 生信菜鸟团博客2周年精选文章集(4)NCBI数据库的几个探索
- PHP 的前世今生
- 【直播】我的基因组49:Y染色体的SNV不能用常规流程来找?
- 【直播】我的基因组46:SNV突变(96种)频谱的制作
- 深入剖析-Oracle索引分支块的结构
- 【直播】我的基因组48:我可能测了一个假的全基因组
- 【直播】我的基因组47:测序深度和GC含量的关系
- 【直播】我的基因组47:测序深度和GC含量的关系
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法