我爱黑客网首页 设为首页
加入收藏
联系我们
 首 页  技术文章 下载中心 站长学院 交流论坛
 软件:
 文章:        教程:
 推荐: 我爱黑客网论坛
 
 
 
 
   
黑软: Q Q 软件 木马间谍 探嗅监听 溢出攻击 加密解密 漏洞扫描 脚本注入 远程控制 综合利用 聊天工具  
 
技术文章: 爱黑新闻 | 黑客攻防 | 网络技术 | 程序设计 | 系统操作 | 本站动态 | 业界动态 | 安全公告 | 病毒公告 | 八卦黑客
 
 
您当前的位置:我爱黑客 -> 程序设计 -> C++ -> C++文件 -> 文章内容  
栏目导航
· C++综合 · C++通信
· C++视图 · C++图象
· C++系统 · C++多媒体
· C++界面 · C++文件
· C++数据库 · C++网络
热门文章
· 利用C++ Builder 设计..
· 利用C++ Builder设计实..
· 自解密的加密程序的制..
· C++ Builder中各种资源..
· 编写感染COM与EXE文件..
· 如何利用C++ Builder实..
· 文件关联型木马的编程..
· 用Foxmail的地址传播病..
· 共享软件的注册加密法..
· 还未结束就能把自身删..
· 浏览文件的一段代码
· 给想写嵌入式病毒和木..
相关文章

· XP文件共享存在漏洞..
· 2003+XP平台下的ADS..
· [图文] 用Windows 20..
· windows 2003+windo..
· 安装文件和打印机共..
· 减少共享文件夹移植..
· [图文] Win 2003下如..
· [图文] 用Win 2003实..
· [图文] Win 2003中如..
· Windows 2003共享资..
查看更多与共享软件的注册加密法相关内容

共享软件的注册加密法
作者:幽火  来源:www.5ihack.com  发布时间:2007-1-8 19:20:01  发布人:ghostfire

减小字体 增大字体

  Internet网络的迅速发展,为软件高效传播开辟更加广阔的天地。如国内著名的金蜘蛛软件下载中心,就是一个典型的发布软件集散地。发布共享软件主要包括两种形式:日期限制形式和电子注册形式。日期限制形式允许下载软件的用户使用软件一段时间,如一个月等,如果用户认可该软件,可购买该软件的注册序列号继续使用;电子注册形式就是根据用户所用机器的硬件信息产生注册码,并在软件中对某些先进或常用功能进行限制,如果用户要使用其全部功能,必须将软件采集的有关硬件信息反馈给开发者,并交一定的注册费可获得该软件在自己机器中的注册码,才能正常使用。

  前一种形式很容易给盗版者造成可乘之机,如果制作盗版者购买了一个注册序列号并公布于天下,则所有用户使用这个注册号都可进行正常使用;后者对用户来说注册手段稍显复杂些,对开发者来说也需要一定的编程真功夫,但其具有“八点锁紧”功能,防盗性却是不容置疑。本文根据自己的实践,将后者的实现过程介绍给想要制作发布共享软件的读者。

  一、注册源

  在WIN98/95的保护模式下,要根据硬件信息形成注册码可不是一件容易的事,在实模式下可通过硬盘端口1F6H和1F7H直接读取硬盘的序列号等信息作为注册的数据源,但这一方法在保护模式下却被亮出了红牌。利用BIOS中的主板序列号、BIOS版本序列号或主机出厂日期和标志等,完全可以作为注册码的注册源。如ROMBIOS中F000H-FFFFH区域中就存在与硬件配置有关的信息,还可以采集其它一处或几处主板等的信息作为注册码的生产基地。例如可根据F000H:FFF5H-F000H:FFFFH 中存放的主机出厂日期和主机标志值,产生应用程序的注册码。由于计算机产品的更新换代比较快,而且所有用户使用的计算机不可能配置都完全相同,所以注册码产生的源也不会完全相同。而且这些硬件信息内容在任何操作系统下均完全相同,兼容性非常好,更不会因为操作系统的更新而造成注册功能失效。

  注册源确定之后,关键的问题就是共享软件安装程序如何采集注册源信息,并让用户将其返回给开发者。最简单的方法就是将采集到的注册源信息经过位操作加密后存放到一个文本中,形成注册码的数据源资料。这个注册源数据串可稍长一些,但不宜过长,使用户能够通过电子邮箱、电话或信件顺利转给开发者为宜。如笔者安装程序是用C语言编制的,如果将上述内存地址作为注册源,数据串文本文件名为KEYID.DOC,长度为20个字符。其示例代码如下:

    FILE *fp2;
   unsigned int keyrom[9];
   unsigned char buff[0x410];
   unsigned char pathstmp[80];
   unsigned char path[80]={"C:\\WBCOOL"};
   unsigned int far *pt=(unsigned int far*)0xf000fff6L;
   ......
   outportb(0x21,0x2);
   strcpy(pathstmp,path);
   strcat(pathstmp,"\\");
   strcat(pathstmp,"KEYID.DOC");
   for(i=0;i<5;i++)
    keyrom[i]=(*(pt+i)+0x1818)^0x5858;//第一级加密算法
   sprintf(buff,"KEYID:%04x%04x%04x%04x%04x",
    keyrom[0],keyrom[1],keyrom[2],keyrom[3],keyrom[4]);
   buff[0x1a]=0;
   if((fp2=fopen(pathstmp,"wb"))==NULL)
   {
    printf("FILE %s CREATE ERROR!",pathtmp);
   } else {
    fseek(fp2,0L,SEEK_SET);
    fprintf(fp2,"%s\xd\xa",buff);
    fclose(fp2);
   }
   outportb(0x21,0x0);

查看更多与共享软件的注册加密法相关内容

[ ] [返回上一页] [打 印] [收 藏]
上一篇文章:
下一篇文章:
      还未结束就能把自身删除的程序       用Foxmail的地址传播病毒
∷相关文章评论∷   (评论内容只代表网友观点,与本站立场无关!) [发表评论]
 
 
 
 
晋ICP备05008232   维护网络安全、传播安全技术才是我们的目标! 
 
关于本站 - 网站帮助 - - 下载声明 - 友情连接 -网站地图