⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 chap6-1-41.htm.primary

📁 加密与解密,软件加密保护技术与解决方案,看雪文档!
💻 PRIMARY
📖 第 1 页 / 共 5 页
字号:
<html>
<head>
<title>Crack Tutorial</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<link rel="stylesheet" href="style/css.css" type="text/css">
<link rel="stylesheet" href="../STYLE/Css.css" type="text/css">
</head>

<body bgcolor="white" text="#000000" link="#004080" vlink="#004080" background="../image/Back.gif">
<p><a href="../catalog.htm">目录</a>>>第6章</p>
<p align="center" class="shadow1Copy"><b class="p3">第6章 软件保护技术</b></p>
<table width="80%" border="0" cellspacing="0" cellpadding="3" align="center" bgcolor="#bcbcbc" bordercolor="#111111" class="shadow1">
  <tr> 
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-1.htm"><font color="#FFFFFF">第一节 常见保护技巧</font></a></div>
    </td>
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-2.htm"><font color="#FFFFFF">第二节 反跟踪技术</font></a></div>
    </td>
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-3.htm"><font color="#FFFFFF">第三节 加密算法</font></a></div>
    </td>
    <td class="shadow1" width="25%"> 
      <div align="center"><a href="Chap6-4.htm"><font color="#FFFFFF">第四节 软件保护建议</font></a></div>
    </td>
  </tr>
</table>
<p align="center"><span class="p9"><b>第一节 常见保护技巧</b></span></p>
<table border="1" width="80%" cellpadding="5" bordercolor="#111111" bgcolor="#efefef" align="center" cellspacing="0">
  <tr> 
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center" class="p"><span class="p9"><span class="p9">1、<a href="Chap6-1-1.htm">序列号方式</a> </span></span></div>
    </td>
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center">2、<a href="Chap6-1-2.htm">警告(NAG)窗口</a></div>
    </td>
    <td width="34%" valign="top" class="p9" height="23"> 
      <div align="center"><span class="p9">3、<a href="Chap6-1-3.htm">时间限制</a></span></div>
    </td>
  </tr>
  <tr> 
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center">4、<a href="Chap6-1-4.htm">Key File保护</a></div>
    </td>
    <td width="33%" valign="middle" align="center" class="p9" height="23"> 
      <div align="center">5、<a href="Chap6-1-5.htm">功能限制的程序</a> </div>
    </td>
    <td width="34%" valign="top" class="p9" height="23"> 
      <div align="center">6、<a href="Chap6-1-6.htm">CD-check</a></div>
    </td>
  </tr>
</table>
<p align="center"><span class="p9"><span class="p9"><b>4、<a href="Chap6-1-4.htm">Key 
  File保护</a> </b> <b><font color="#FF6666">【习题】 </font></b></span></span></p>
<p align="left" class="p9"><b><span class="p9">1、习题一</span></b><span class="p9"> 
  <a href="Exercise/section04/chap6-1-4-01.zip">chap6-1-4-01</a> Keyfile和Serial/Name 
  103K 易</span></p>
<p align="left" class="p9"><span class="p9"> <b><span class="p9">2、习题二 </span></b><span class="p9"><a href="Exercise/section04/chap6-1-4-02.zip">chap6-1-4-02</a></span> 
  Keyfile 120K 易<br>
  </span></p>
<p align="left" class="p9"><span class="p9"><b><span class="p9">3、习题三 </span></b><span class="p9"><a href="lesson1406-ex-02.zip"></a><span class="p9"><a href="Exercise/section04/chap6-1-4-03.zip">chap6-1-4-03</a></span> 
  Keyfile</span> 3K 易</span></p>
<p align="left" class="p9"><span class="p9"><b><span class="p9">4、习题四 </span></b><span class="p9"><a href="lesson1406-ex-02.zip"></a><span class="p9"><a href="Exercise/section04/chap6-1-4-04.zip">chap6-1-4-04</a></span> 
  Keyfile</span> 22K 中</span></p>
<p align="left" class="p9"><span class="p9"><b><span class="p9">5、习题五 </span></b><span class="p9"><a href="lesson1406-ex-02.zip"></a><span class="p9"><a href="Exercise/section04/chap6-1-4-05.zip">chap6-1-4-05</a></span> 
  Keyfile</span> 14K 难</span></p>
<p align="left" class="p9"> 
  <script language="JavaScript1.2">
NS4 = (document.layers) ? 1 : 0;
IE4 = (document.all) ? 1 : 0;
ver4 = (NS4 || IE4) ? 1 : 0;

if (ver4) {
    with (document) {
        write("<STYLE TYPE='text/css'>");
        if (NS4) {
            write(".parent {position:absolute; visibility:visible}");
            write(".child {position:absolute; visibility:visible}");
            write(".regular {position:absolute; visibility:visible}")
        }
        else {
            write(".child {display:none}")
        }
        write("</STYLE>");
    }
}

function getIndex(el) {
    ind = null;
    for (i=0; i<document.layers.length; i++) {
        whichEl = document.layers[i];
        if (whichEl.id == el) {
            ind = i;
            break;
        }
    }
    return ind;
}

function arrange() {
    nextY = document.layers[firstInd].pageY +document.layers[firstInd].document.height;
    for (i=firstInd+1; i<document.layers.length; i++) {
        whichEl = document.layers[i];
        if (whichEl.visibility != "hide") {
            whichEl.pageY = nextY;
            nextY += whichEl.document.height;
        }
    }
}

function initIt(){
    if (!ver4) return;
    if (NS4) {
        for (i=0; i<document.layers.length; i++) {
            whichEl = document.layers[i];
            if (whichEl.id.indexOf("Child") != -1) whichEl.visibility = "hide";
       }
        arrange();
    }
    else {
        divColl = document.all.tags("DIV");
        for (i=0; i<divColl.length; i++) {
            whichEl = divColl(i);
            if (whichEl.className == "child") whichEl.style.display = "none";
        }
    }
}

function expandIt(el) {
    if (!ver4) return;
    if (IE4) {
        whichEl = eval(el + "Child");
        if (whichEl.style.display == "none") {
            whichEl.style.display = "block";
        }
        else {
            whichEl.style.display = "none";
        }
    }
    else {
        whichEl = eval("document." + el + "Child");
        if (whichEl.visibility == "hide") {
            whichEl.visibility = "show";
        }
        else {
            whichEl.visibility = "hide";
        }
        arrange();
    }
}

onload = initIt;

</script>
</p>
<div id="KB1Parent" class="parent"> <a href="#" onClick="expandIt('KB1'); return false"> 
  <span class="p9">1、习题一 答案 </span></a> </div>
<div id="KB1Child" class="child"> <span class="p9">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span> 
  <table width="100%" align="center" cellspacing="0">
    <tr bgcolor="#EFEFEF"> 
      <td height="28"> 
        <p class="p9">保护类型: Keyfile and Serial/Name&nbsp; <br>
          工具:Softice和W32dasm <br>
          Cracker: FireWorx&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; <br>
          用W32DASM装载程序,先用串式数据参考(String data refs) 检查程序。 <br>
          你运行crame时,选择任一文件,则出现:"Invalid Keyfile",因此在W32DASM查找这字符串,双击来到W32DASM中,向上会看到: 
          <br>
          <br>
          * Possible StringData Ref from Code Obj ->"Runtime Error: 12FF:024" 
          <br>
          &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br>
          :00427DDE BAD07E4200&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          mov edx, 00427ED0&nbsp; &nbsp; &nbsp; //打开文件 <br>
          :00427DE3 E8A0B8FDFF&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          call 00403688&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; //检测文件 <br>
          :00427DE8 750C&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; jne 00427DF6 &nbsp; &nbsp;&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; 
          //如果无效的keyword则跳走 <br>
          :00427DEA C705E8A6420002000000&nbsp; &nbsp; mov dword ptr [0042A6E8], 
          00000002 <br>
          :00427DF4 EB67&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; jmp 00427E5D&nbsp; &nbsp;&nbsp; <br>
          <br>
          * Referenced by a (U)nconditional or (C)onditional Jump at Address: 
          <br>
          |:00427DE8(C) <br>
          | <br>
          :00427DF6 C705E8A6420001000000&nbsp; &nbsp; mov dword ptr [0042A6E8], 
          00000001&nbsp; //准备nag窗口! <br>
          :00427E00 6A00&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; push 00000000 <br>
          <br>
          * Possible StringData Ref from Code Obj ->"Error" <br>
          &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; | <br>
          :00427E02 68E87E4200&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 
          push 00427EE8&nbsp; &nbsp;&nbsp; //写字符"Invalid Keyfile" 到信息窗口... <br>
          <br>
          * Possible StringData Ref from Code Obj ->"Invalid Keyfile" <br>
          <br>
          不过你们看到上面的字符串: "Runtime Error: 12FF:024" ,真有点奇怪?难到是程序的BUG?再激发点灵感,是不是keyfile文件中的Keywords? 
          <br>
          试试吧,建一文本文件,把Runtime Error: 12FF:024这一行放进去。运行程序,选择你刚才建的文件,OK,这下没出现错误,成功!现在程序充许你键入name和code。你任意输入点击OK,出现: 
          "Wrong Entry! Try again!" <br>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -