网络技术是从1990年代中期发展起来的新技术,它把互联网上分散的资源融为有机整体,实现资源的全面共享和有机协作,使人们能够透明地使用资源的整体能力并按需获取信息。资源包括高性能计算机、存储资源、数据资源、信息资源、知识资源、专家资源、大型数据库、网络、传感器等。 当前的互联网只限于信息共享,网络则被认为是互联网发展的第三阶段。 2、使用BITSHELL须知 请不要使用PKLITE,LZEXE或EXEPACK进行压缩商品程序。 建议高级语言程序设计者,如有可能将所用程序设计语言的启动代码作修改,改变程序的入口点,避免被截获。在程序内部识别BITSHELL的嵌入式模块最好采用随机调用。 加密时用环境变量指定参数。生产一批软件,用同一种变形算法,万一软件有漏洞,新版本的软件可换一种变形算法。加密后的文件放在硬盘上,可提高加密速度。超大文件加密后,再用PKZIP等压缩后,放入商品软件盘上。 3、注意事项 (1)运行BITSHELL系统,或运行经BITSHELL加密的程序系统,如果安装了驻留型的调试跟踪器(如:Soft-ICE,GameBuster等),请先拆除之,否则程序将拒绝运行,因为这样有跟踪解密的嫌疑。 (2)使用BITSHELL加密商品软件的开发者,不要将BITSHELL系统盘上的任何文件和信息,以任何方式提供给最终用户。不要将自己所用的BITSHELL的版本,序列号和变形算法透漏出去。 五、系统提供的可链接函数 函数BL-ComeIn(BLOBJ.OBJ).........................[1] C语言说明: extern unsigned long BL_ComeIn(void); 说明: 利用这个函数可判断是否运行过反跟踪程序,同时还返回程序的PSP段地址和机器的ROM检查和,供用户程序进一步检查。这是一个与加密外壳相关的函数,这样可使用户程序与加密软件融为一体。对PSP段地址和ROM检查和的判断不要隔的太近。 入口参数:无 出口参数:如果出错,返回 0FFFFFFFFH ; (DX:AX=0FFFFFFFFH) 如果成功,返回一个无符号的长字。 其中: 低字节是ROM检查和,高字是PSP段地址。 (AL=ROM检查和,DX=PSP段地址) 注意:ROM检查和计算方法: 累加ROM(0xF000:0xE000)处开始字节,长度为0x100。 获取PSP段地址方法: MOV AH,62H INT 21H BX就是该程序的PSP段地址。 调用建议: 不要每次运行都去检查该函数,用适当频率、在关键的地方调用这个函数。 C Usage Example: /* * function:BL_ComeIn */ extern unsigend long far BL_ComeIn(void); /* Error return 0xFFFFFFFF,Success Return * Lo Byte is checksum,Hi Word is PSP segment */ void My_BL_ComeIn() { unsigned long ComeIn; unsigned short int ROM_CheckSum; unsigned int PSPsegment; ComeIn=BL_ComeIn(); if (ComeIn==0xffffffff) { printf("\nERROR:not loaded from BITSHELL shell ! \n"); { else { ROM_CheckSum=ComeIn&0xff; PSPsegment =ComeIn>>16; printf("nBITSHELL On Entry:\N"); printf("ROM checksum is %x\nh",ROM_CheckSum); printf("PSP segment is %xh\n",PSPsegment); inregs.h.ah=0x62; intdos(&inregs,$outregs); printf("n This program PSP segment is %xh\n",outregs.x.bx); { { 五、一个简单的例子
这里我们一起看一下经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等等,它们也是无效的。 看起来,这是一个比较好的加密工具,尤其是它提供的函数可以嵌入源代码中,跟软件狗配合起来,达到内外结合的加密效果,大家不妨一试。
网络的神奇作用吸引着越来越多的用户加入其中,正因如此,网络的承受能力也面临着越来越严峻的考验―从硬件上、软件上、所用标准上......,各项技术都需要适时应势,对应发展,这正是网络迅速走向进步的催化剂。
|