masa 发表于 2017-9-5 10:12

Simulink模型如何加密

如题,如何对Simulink模型进行加密,就是只能从外部输入变量,但是看不到具体模型
貌似采用S函数加密的比较多,但还没查到具体做法,请大神指教,谢谢~

masa 发表于 2017-9-5 11:08

右键子系统,C/C++ 代码生成->生成S函数,编译之后生成内容不可见的S function模块替换原来内容可见的子系统。

lilybunny 发表于 2017-9-14 13:30

masa 发表于 2017-9-5 11:08
右键子系统,C/C++ 代码生成->生成S函数,编译之后生成内容不可见的S function模块替换原来内容可见的子系 ...

女神自问自答,好强大

lilybunny 发表于 2017-9-14 13:38


1.算法使用C Mex S function编写,编译为mexw文件提供给用户;
2.右键子系统,C/C++ 代码生成->生成S函数,编译之后生成内容不可见的S function模块替换原来内容可见的子系统。

生成S函数模块之后,你可以做一下一致性测试。同时在一个模型中并列摆放S函数以及其原型,给同样的输入,看看输出是不是一致(可以做差分看结果是否为0)

lilybunny 发表于 2017-9-14 13:39

如果你的MATLAB版本比较新,你可以把这个子系统变成 model reference 的形式,然后右键菜单有加密的选项,设置仿真密码和代码生成的密码。

lilybunny 发表于 2017-9-14 13:41

中国专利目录里面有相关专利:
一种Simulink模型的加密和解密方法,及相关装置

秦涛;王传荣;刘兴义;李国朋   潍柴动力股份有限公司

lilybunny 发表于 2017-9-14 13:45

本发明提供了一种模型的simulink加密和解密方法,及相关装置,所述加密方法包括获取各个所述simulink模块的位置属性值,作为第一属性值将各个所述simulink模块的位置属性值设置为第二属性值.
其中,所述第二属性值与所述第一属性值不同,并且所述第二属性值为随机生成的或者由所述第一属性值根据预设算法计算得到基于各个所述simulink模块对应的解密信息生成解密文件。
可知,本发明通过将simulink模块的位置属性值改变为第二属性值,实现了对simulink模型进行加密,并且通过这种加密方式加密后的simulink模型解密难度很高,正确解密后也不会影响模型的正常辨识.

masa 发表于 2017-9-20 19:50

lilybunny 发表于 2017-9-14 13:45
本发明提供了一种模型的simulink加密和解密方法,及相关装置,所述加密方法包括获取各个所述simulink模块的位 ...

感谢仲老师专业指导{:1_474:}

maxYSL 发表于 2018-8-16 15:40

学习了,虽然暂时用不到
页: [1]
查看完整版本: Simulink模型如何加密