用EPW.EXE给DOS可执行文件加密

Author: 四川 于建原 Date: 1996-12-13

        由EPW.EXE加密过的执行文件,只在文件的开头部分加上认读密码的调转指针,对执行文件本身不做任何改动。因此,用户使用执行文件的方法和习惯经加密后没有任何改变,使用被加密后的执行文件,原来应该输入的参数照常输入,只是在开始执行时,先在屏幕出现“Password:”,要求输入用户加密的口令,输入的密码正确,执行文件就正常执行。EPW.EXE采用自己特殊的符号记录用户的密码,因此,使用任何磁盘编辑工具或文本查看工具,除了可以看到文件头部加的该程序名和作者的名以外,是查看不到密码的。据软件作者声称,靠随机方法试输入密码能解开由EPW所加密的概率为1/429497296。笔者试用时,将经加密后的执行文件用UNTILL95(金蝉脱壳)和CW3.0(拷贝王)进行脱壳处理,均未成功!
        EPW.EXE在DOS的命令行使用,格式有三种:一是键入“epw”,这时,屏幕出现英文的版权、注册信息和使用方法,用P down和P up键可来回翻页查看。
        第二种是加密。键入:“epw/a要加密的执行文件全名”,之后,屏幕出现“PASSWORD:”,用户可开始输入加密的口令,最多可输入15个字符作为密码,超过时,PC喇叭随按键发声,表示不再接受输入。输入的密码可以是任何键盘能输入的字符,按Enter键输入完毕。注意,在输入用户密码时,屏幕上是没有任何显示的。
        第三种是删除密码。键入“epw /r要取消密码的可执行文件全名”,这时在屏幕上也是出现“PASS-WORD:”,等待用户输入正确的密码后,被加密的执行文件的密码就被删除了。这时,文件应复原加密前的字节量,用户凭此可检验恢复的正确性。注意,后两种格式,要求输入的文件名必需包括执行文件的扩展名。EPW.EXE对于.EXE的.COM文件采用不同的内部插入密码的方法。加密后的.EXE文件增加的长度约为920字节;.COM文件增加约为560(随用户密码的长度而有不同)字节。加、解密时,文件都须关闭写保护属性,操作完后,可再恢复原来的属性。
        EPW.EXE只能用于对DOS的执行文件加密,不能对运行于WINDOWS中的执行文件进行加密,否则这些执行文件在WINDOWS中将不能再正常执行。但DOS的COMMAND.COM不能用EPW.EXE加密,因为这是一个启动DOS时要自己装入的文件。如果加密,在开机引导DOS系统时,将出错。对WINDOWS 3.x的启动文件WIN.COM,用户可以加密。
        对于软件的开发者来讲,使用EPW.EXE进行加密确有可取之处。比如,当软件的主执行文件被加密后,即便是盗版者进行拷贝,也没有任何用处,因为在不知道密码时,被加密的执行文件是无法使用的,又不会影响任何正版用户对软件备份,这比对软盘磁道加密或制作密钥盘对正版用户可能要方便些。对于普通电脑用户来说,如果想防止别人误操作某些会引起严重后果的程序,可以将这些程序加密,如DOS的Format.com、Deltree.exe等等。另外,对于多用户共用的机器来说,可以每人先制作属于自己的Autoexec.bat文件,然后转换成不同的.com文件后,再用EPW.EXE进行加密,然后编制一个公共的Autoexec.bat来相应调用不同的.com文件,这样对于未授权的人,就不能随便使用机器了,大大增加多用户共用微机的系统安全性。对于家庭用户来说,将家长欲控制孩子玩耍的某些游戏软件的执行文件做加密处理,可有效防止小孩子偷玩游戏。(四川   于建原)