http://www.encryptpe.com/setup.rar
与 V2.2007.12.1 比较,EncryptPE V2.2008.6.10 有如下更新:
===========================================================
1.设计了新的多进程启动方式,不再使用Rundll32.exe。
2.新增用网页来设计注册窗口的功能,但须个人开发版及以上版本支持。具体请见后面用网页设计注册窗口的详细说明。
3. 主程序新增一个工具子菜单,用来修改EncryptPE.ini里一些设置。关于IAT加密有两个选项,DLLs指定需要加密的DLL名称,以逗号隔开, kernel32.dll、user32.dll等不用指定,FUNs指定不加密的函数名称,以逗号隔开,这一般用于解决兼容问题,大多数情况下按默认来。EPEUsers指定客户管理程序名称,HelpFile指定帮助文件名称。其他见后续说明。
4.注册算法已经更新,新版生成的注册码与老版本不兼容。新增注册码有效期功能,在生成注册码的时候可以指定有效日期及有效天数。EncryptPE.ini里的Year、Month、Day分别指定待生成注册码有效日期的年、月、日,Days指定有效天数,FirstNumber指定注册码的第一个数字,除指定为0123456外就是指任意数字开头。ProductID.dll新增了一个函数function NewGenerateProductID(MachineID, User, Password, ProductID: PChar; Year, Month, Day, Days, FirstNumber, Count: Integer): LongBool; stdcall;,比原有GenerateProductID函数多了Year、Month、Day、Days四个参数, GenerateProductID函数还保留。Keygen.exe也做了一些调整。
5.代码替换有所改进,为解决代码替换过多造成的性能或兼容性问题,设计了三个选项,Replace1指定对于存在重定位项的PE文件加密时代码替换的次数(延用老版本设计),默认为1000次, Replace2指定对于不存在重定位项的PE文件加密时代码替换的次数,默认为1000次,而Replace3则是指定该版本新设计的一种代码替换的次数,默认为1000次。如果加密后运行存在问题,则可以先试试取消代码替换(如果不选择CodeReplace,则自定义代码替换也不进行)加密运行有没有问题,如果此时没有问题,则可以把前面几种替换次数调低(不影响自定义代码替换),直到合适为止。另外,影响加密后程序运行,还有加密时是否选中 Service方式,默认的非Service方式是多进程调试运行,而Service方式是单进程,对于命令行程序或DLL,则只能是Service方式加密。
6.特别加入锁定机器信息的设计,选项中Lock如果设为1,而且计算栏中的机器信息栏指定了用户的机器信息,则所加密的PE文件只能在锁定的机器上运行。
7. 为SDK函数GetRegisterInfo新增了几条返回信息,现在一共有19条,除原本第一条是否注册到第十四条特征整数、第十五条密码的HASH值外,新增第十六条加密机器信息及锁定机器信息相关字符串,第十七条、第十八条加密时RSA算法生成的E值字符串、N值字符串,第十九条壳代码相关信息起始指针值。第十四到第十八都可以用来校验是否自己加壳,比如可以把这些信息的部分字节转换成整数什么的,参与程序的某些运算。那些功能性的SDK函数让被加壳程序离不开壳,而这种校验则避免别人脱壳后再加壳。第十九条返回的指针指向六个整数的起始位置,分别是代码段一起始位置、代码段一长度、代码段二起始位置、代码段二长度、代码段三起始位置、代码段三长度。这三段壳代码分别按字节取值相加得到的值分别是0x4A6473、0x60BE33、 0x12992D。你可以写代码分别计算这三段代码的字节和,与这几个值比较,看是否一致,不一致说明壳代码被修改了。以后更新版本这三个值肯定要变,为了便于编程,可以考虑使用数据文件功能来把这三个值保存起来,程序中用GetSavedData来读取,与计算值比较,以检验是否被破解。
8. 此次更新,老用户需要重新计算注册信息,重新生成EncryptPE.exe.key文件。在原机器信息基础上升级免费。注册EncryptPE请注意,没有相应的EncryptPE.exe.key文件,即使显示注册成功,但实际还是试用评估版的功能。试用评估版不支持任何代码替换,不支持高级方式的 IAT加密。
为注册窗口设计网页时有以下接口:
=======================================
1.如果被加壳程序是ABC.EXE,则主要HTM文件名为ABC.EXE.HTM,其他HTM文件由主文件中的链接指定,也可以链接网络。
2.限制不要出现滚动条:<body ... scroll="no">,各页面均要设置。
3.页面大小:<table id="ymdx" width="600" height="500" ...>,各页面均要设置,大小自定义,壳会自动调整注册窗口的大小来适应。
4. 试用信息:<td id="syxx" ...>,定义显示试用信息的位置。试用信息的内容由壳生成,可能内容如下:(1)本次试用还剩多少时间(限制了每次试用多少分钟),试用次数还剩几次(限制了试用次数),限制试用至某年某月某日(限制了试用日期或试用天数)。(2)无试用限制(无限制或仅限制每隔多少分钟要求注册)。(3)试用期已过,必须注册才能正式使用(有试用限制,且已过期)。(4)已经由某某某注册(注册码无限期)。(5)已经由某某某注册,有效期至某年某月某日(生成注册码时设置了有效期或有效天数)。
5.机器信息: <input id="jqxx" ...>,定义显示机器信息的位置。机器信息由壳提供。
6.注册用户: <input id="zcyh" ...>,定义输入注册用户的位置。注册用户由壳提供,且可由用户输入。
7.注册信息: <input id="zcxx" ...>,定义输入注册信息的位置。注册信息由壳提供,且可由用户输入。
8.软件名称: <input id="rjmc" ...>,定义显示软件名称的位置。软件名称由壳提供。
9.新注册用户: <input id="yzcyh" value=...>,定义返回新注册用户的位置。
10. 新注册信息: <input id="yzcxx" value=...>,定义返回新注册信息的位置。利用zcyh、zcxx的方式可以让用户输入注册信息,而利用yzcyh、yzcxx的方式可以实现自动完成注册,新的注册信息可以是链接网站获取的。壳一旦读到新注册信息,会立即关闭注册窗口,进行注册验证。
11.运行程序: <a href="yxcx" ...>,相当于原注册窗口中的取消键。
12.注册确认: <a href="zcqr" ...>,输入注册用户(zcyh)和注册信息(zcxx)后按此确认,相当于原注册窗口中的确定键。
13.关闭窗口: <a href="gbck" ...>,相当于窗口菜单中的关闭。
单HTM文件形式:
=======================================
1.如果被加壳程序是ABC.EXE,则此HTM文件名为ABC.EXE.HTM。
2.用<body ... scroll="no">的形式来限制页面不要出现滚动条。
3.用<table id="ymdx" width="600" height="500" ...>的形式来定义页面大小,其中600、500两值可变。
4.可以选用<td id="syxx" ...>在网页合适位置显示试用信息。
5.用<input id="jqxx" ...>显示机器信息,不允许用户修改,但允许用户复制。
6.用<input id="zcyh" ...>和<input id="zcxx" ...>显示且允许用户输入注册用户名和注册信息。
7.用<a href="zcqr" ...>的形式定义注册确认操作,用<a href="yxcx" ...>或<a href="gbck" ...>的形式定义取消输入注册信息或直接关闭窗口的操作。
8.网页中其他信息不限,自由发挥,可以含图片和CSS文件,既可以随HTM文件一起提供,也可以链接网络。如果涉及与注册无关的链接,最好用新窗口打开的方式,这样不影响注册窗口的显示,而是另行启动浏览器来显示指定链接。
建议多页面形式:
=======================================
1.如果被加壳程序是ABC.EXE,则主要的HTM文件名为ABC.EXE.HTM。
2.每个页面都用<body ... scroll="no">的形式来限制页面不要出现滚动条。
3.每个页面都用<table id="ymdx" width="600" height="500" ...>的形式来定义页面大小,其中600、500两值可变,建议不同页面使用统一的页面大小。
4.主页面(HTM文件):显示相关信息,显示壳向其提供的试用信息,有运行程序、激活、订购等链接。
5. 激活页面(HTM文件):壳向其提供机器信息、软件名称、原注册用户、注册信息,并要求用户输入注册用户、注册信息,有输入确认、返回或关闭窗口等链接。如果实现了在线注册功能,此处可加入自动获取注册信息链接,自动获取注册信息时要提交机器信息、注册用户和软件名称等信息,返回新注册用户和新注册信息或者返回无法获取注册信息的提示并提供返回到激活页面的链接。
6.订购页面(HTM文件):壳向其提供机器信息、软件名称、原注册用户,要求用户输入相关订购信息,有确认、返回主页面链接。确认提交给网络后返回提示页面,提示用户订单正在处理中,请稍后再启动程序进入激活页面自动提取注册信息或自行输入注册信息。
[注意]APP应用上架合规检测服务,协助应用顺利上架!