matlab P 文件加密与逆向工程探讨

       最近看论文,很多开源程序被加密成p文件。由于论文写得往往跟程序里实际做的还是有一定差别,很想借鉴一下前人宝贵的经验。之前,网上有大神曾经公布过逆向p文件到m文件,据说p文件采用AES-128加密格式,知道秘钥就可以反向逆向工程。由于matlab公司要求下架,该公测网站已经下架了。不过,可能有些人之前把该网站克隆过,去做有偿破解。

      这里,主要在讨论如何加密matlab程序程p文件(并不是绝对安全)和逆向工程原理(探索中),看来目前matlab程序加密最安全的方式是生成可执行文件.exe。

一、生成p文件

加密很简单,可以直接在matlab指令窗口下输入:

pcode test.m (要加密文件)

会自动在您的目录下生成对应的“test.p” (加密文件,这也就是要逆向的文件)

注意:P文件的运行速度跟m文件运行速度一样,并不是网上说的提前做了预处理,它只是变成了人不能识别的字母形式,其实还是可以通过某种途径反向解析出来。

Building a Content Obscured Format with P-Code
================================================================================
A P-code file behaves the same as the MATLAB source from which it was produced. 
The P-code file also runs at the same speed as the source file. P-code files 
are purposely obfuscated. They are not encrypted. While the content in a .p 
file is difficult to understand, it should not be considered secure. It is 
not recommended that you P-code files to protect your intellectual property.

 二、逆向工程讨论

matlab的所谓加密文件,看官网回复信件,加密只是把代码进行了字母模糊处理,并非直接转成机器的二进制码,因此,exe文件要比p文件更安全一些。

这里提供一组,加密和逆向之后的文件(下载地址 提取码:7zqr),以便对于逆向感兴趣的研究学习(仅限于研究,请遵照知识产权!)

注意:一般逆向之后的文件,所有的注释都没了,部分语句可能发生格式改变。

 

为了科研探讨经验!

一点点补充,未完待续。。。

参考网站:

【1】https://blog.csdn.net/stereohomology/article/details/54893271   

【2】https://sites.google.com/site/sippeyfunlabs/matlab-hacks/please-do-not-secure-your-password-in-matlab-p-code

【3】AES加密机制:https://blog.csdn.net/qq_38289815/article/details/80900813

【4】AES机密过程: 

https://blog.csdn.net/qq_38289815/article/details/80900813

https://coolshell.cn//wp-content/uploads/2010/10/rijndael_ingles2004.swf

  • 5
    点赞
  • 36
    收藏
    觉得还不错? 一键收藏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值