使用外壳加密方式保护软件防盗版解决方案2010-06-25软件加密有两种方式,一种是内嵌式加密,这种加密方式要求具有源程序(源代码),在源程序中调用我们提供的接口函数,在被加密程序中访问加密锁
另外一种就是外壳加密,它不同于传统的嵌入源代码的加密方式,是一种直接对可执行文件(
exe)加密的加密方法
这种方法不需要源程序,加密过程简单、方便
脱离“加密锁”,软件将不能运行
“外壳”就是在可执行程序的外面加上一层壳,保护你的程序不被其他人随意的窃取或改动而制作的加密程序,就是把主动权交给了外壳,让外壳来控制程序的运行和关闭
外壳加密不需要任何的经验,也不需要你是编程高手,只要你有磐石为你打造的外壳加密程序,几分钟的时间即可完成对软件的加密
另外,加密后的程序对执行速度也不会有什么影响
说明:外壳加密的对象主要是EXE、DLL、OCX等标准Win32格式的文件,不能对DotNet的程序加密
DotNet程序有另外的混淆工具,详细请咨询磐石技术人员
NT系列外壳工具实现以下功能1、输入表加密输入表是PE文件的必要组成部分,用于引导PE文件导入所需的API函数;加密输入表可以在一定程度上防止破解者还原导入函数的功能
主要有输入表重定向和模拟导入函数功能,在一定程度上可以防止破解者还原导入函数的功能
外壳会删除原始输入表,然后模拟函数导入功能,将保护后文件的输入表分配到随机地址,这样类似的输入表修复工具就无法修复保护后的IAT表
2、反调试破解者通常使用调试器来分析软件的工作流程
外壳一般会通过某种方法来干扰调试器的正常工作,比如使之崩溃或异常退出等,来达到保护软件不被动态分析的目的
3、文件校验文件完整性检查,校验文件是否被非法修改将整个文件当作一个大文本信息,通过其不可逆的字符串变换算法,产生了这个唯一的md5信息摘要
如果在以后传播这个文件的过程中,无论文件的内容发生了任何形式