软件狗[Dongles]的加密与解密技术
2007-01-13 20:14:13 来源:WEB开发网核心提示: 这里我们一起看一下经BITSHELL加密后的程序的情况,采用一个极简单的例子,软件狗[Dongles]的加密与解密技术(9),用DEBUG生成一个 TEST.COM文件:C:>DEBUG-A876B:0100 MOV AL,0876B:1012 MOV DX,260876B:0105
这里我们一起看一下经BITSHELL加密后的程序的情况。
采用一个极简单的例子,用DEBUG生成一个 TEST.COM文件:
C:>DEBUG
-A
876B:0100 MOV AL,0
876B:1012 MOV DX,260
876B:0105 OUT DX,AL
876B:0106 INT 20
8760:0108
-RCX
CX 0000
:8
-N TEST.COM
-W
Writing 00008 bytes
-Q
用BITSHELL对TEST.COM进行加密:
C:>BITSHELL TEST.COM
BITSHELL(tm)Version 2.01
Copyrighe(c) 1989-1995 by Yellow Rose SoftWare Workgroup
Scheme 6 (CodeKey shift repeated)
9K
Total encryption size is 9K
Encryption completed successfully.
再用DEBUG来看一下加密后的TEST.COM:
C:DEBUT TEST.COM
-R
AX=0000 BX=0000 CX=4CBC DX=0000 SP=00C0 BP=0000 SI=0000 DI=0000
DS=877C ES=877C SS=878C CS=878C IP=021C NV UP EI PL NZ NA PO NC
878C:021C FA CLI
-U
878C:021C FA CLI
878C:021D 8CCC MOV SP,CS
878C:021F 8ED4 MOV SS,SP
878C:0221 BC4D25 MOV SP,254D
878C:0224 9C PUSHF
878C:0225 51 PUSH CX
878C:0226 52 PUSH DX
878C:0227 56 PUSH SI
878C:0228 57 PUSH DI
878C:0229 55 PUSH BP
878C:022A 0E PUSH CS
878C:022B 1F POP DS
878C:022C 2E CS:
878C:022D 8C061000 MOV[0010],ES
878C:0231 2E CS:
878C:0232 C606480080 MOV BYTE PTR [0048],80
878C:0237 0E PUSH CS
878C:0238 07 POP ES
878C:0239 BEAD24 MOV SI,24AD
-U
...... ......
-Q
可以看到经加密后TEST.COM文件变长了很多,这是因为在程序外面加了一层外壳。同时,您也发现了加密后的程序没法反编译;如果您再跟踪一下,您又会发现加密后的程序已经无法跟踪了。如果您手头有Turbo Debugger或Soft-ICE等等,它们也是无效的。
更多精彩
赞助商链接