使用外壳加密方法保护软件防盗版处理方案-06-25 软件加密有两种方法,一个是内嵌式加密,这种加密方法要求含有源程序(源代码),在源程序中调用我们提供接口函数,在被加密程序中访问加密锁。另外一个就是外壳加密,它不一样于传统嵌入源代码加密方法,是一个直接对可实施文件(.exe)加密加密方法。这种方法不需要源程序,加密过程简单、方便。脱离“加密锁”,软件将不能运行。“外壳”就是在可实施程序外面加上一层壳,保护你程序不被其它人随意窃取或改动而制作加密程序,就是把主动权交给了外壳,让外壳来控制程序运行和关闭。 外壳加密不需要任何经验,也不需要你是编程高手,只要你有磐石为你打造外壳加密程序,几分钟时间即可完成对软件加密。另外,加密后程序对实施速度也不会有什么影响。 说明:外壳加密对象关键是 EXE、DLL、OCX 等标准 Win32 格式文件,不能对 DotNet 程序加密。DotNet 程序有另外混淆工具,具体请咨询磐石技术人员。NT 系列外壳工具实现以下功效1、输入表加密 输入表是 PE 文件必需组成部分,用于引导 PE 文件导入所需 API 函数;加密输入表能够在一定程度上预防破解者还原导入函数功效。关键有输入表重定向和模拟导入函数功效,在一定程度上能够预防破解者还原导入函数功效。外壳会删除原始输入表,然后模拟函数导入功效,将保护后文件输入表分配到随机地址,这么类似输入表修复工具就无法修复保护后 IAT 表。2、反调试 破解者通常使用调试器来分析软件工作步骤。外壳通常会经过某种方法来干扰调试器正常工作,比如使之瓦解或异常退出等,来达成保护软件不被动态分析目标。3、文件校验 文件完整性检验,校验文件是否被非法修改 将整个文件看成一个大文本信息,经过其不可逆字符串变换算法,产生了这个唯一 md5 信息摘要。假如在以后传输这个文件过程中,不管文件内容发生了任何形式改变(包含人为修改或下载过程中线路不稳定引发传输错误等),只要你对这个文件重新计算 md5 时就会发觉信息摘要不相同,由此能够确定你得到只是一个不正确文件4、校验附加数据 检验附加数据是否被非法修改。 附加数据是在附加在文件后面,不被映射到内存空间中数据,她提供她自己程序打开自己来读取。以验证附加数据正解性。5、只读区段校验 效验被加密程序只读取段内容,预防被 HOOK 或修改。6、多线程序校验 多线程解码时线程间相互校验,预防程序被附加调试。7、保留附加数据 有程序末尾会有一...