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

📄 12426.html

📁 VB技巧问答10000例 VB技巧问答10000例
💻 HTML
字号:
<html>
  <head>
    <title>Re: 虽然不太可能...还是</title>
  </head>
  <body bgcolor="#FFFFFF" vlink="#808080">
    <center>
      <h1>Re: 虽然不太可能...还是</h1>
    </center>
<hr size=7 width=75%>

<hr size=7 width=75%><p>
Posted by <a href="mailto:honey0@tcts1.seed.net.tw">Honey</a> on April 27, 1999 at 23:35:09:<p>
In Reply to: <a href="12399.html">Re: 虽然不太可能...还是</a> posted by adan on April 26, 1999 at 23:23:11:<p>
: 感谢honey支持,但是很多人使用者的名称都是设为abc或者123等等的,可自由设定,所以可行性可能不高<br>: 至于密码,我猜微软在存于登录资料库时可能有编码过,这倒无所谓,只要独一无二即可,其实连线帐号之帐号name也可以(有编码过也可),唯独在登录资料库我一直找不到这东西<br>windows 序号放在<br>HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION<br>中 ProductID 的值<br>而微软密码也的确编码过放在<br>HKEY_LOCAL_MACHINE\SOFTWARE\MICROSOFT\WINDOWS\CURRENTVERSION\Network\LanMan<br>中Parmlenc是完全存取密码 ,Parm2enc是唯读密码 <br>而解码方式提供你以下程式<br>#include <stdio.h><br>#include <string.h><br>#define BUFFER 30<br>int DecodeCharOne(unsigned char *);<br>int DecodeCharTwo(unsigned char *);<br>int DecodeCharThree(unsigned char *);<br>int DecodeCharFour(unsigned char *);<br>int DecodeCharFive(unsigned char *);<br>int DecodeCharSix(unsigned char *);<br>int DecodeCharSeven(unsigned char *);<br>int DecodeCharEight(unsigned char *);<p>main() {<p>  int i;           <br>  int eocc = 0;<br>  unsigned char mybytes[] = { 0x15, 0xba, 0x6d, 0x86, 0x73, 0x89, 0xf4, 0x4a };<br>  unsigned short tempshort;   <br>  int goupto = 0;<br>  /* 输入密码 */<br>  char inpt[BUFFER];<br>  char *inptptr;<br>  printf("Input the byte code in hex (ex: 76 d5 09 e3): ");<br>  fgets(inpt, BUFFER, stdin);  inptptr = strtok(inpt, " ");  if (inpt[0] != '\n')    while ((inptptr != NULL) && (goupto < 8)) {<br>      sscanf(inptptr, "%hx", &tempshort);<br>      mybytes[goupto++] = tempshort;<br>      inptptr = strtok(NULL, " ");<br>    }<br>  /* 开始解码 */<br>  if (!DecodeCharOne(&mybytes[0])) eocc = 1;<br>  if (!DecodeCharTwo(&mybytes[1])) eocc = 1;<br>  if (!DecodeCharThree(&mybytes[2])) eocc = 1;<br>  if (!DecodeCharFour(&mybytes[3])) eocc = 1;<br>  if (!DecodeCharFive(&mybytes[4])) eocc = 1;<br>  if (!DecodeCharSix(&mybytes[5])) eocc = 1;<br>  if (!DecodeCharSeven(&mybytes[6])) eocc = 1;<br>  if (!DecodeCharEight(&mybytes[7])) eocc = 1;<p>  /* If the password could be decoded, print it */<br>  if (eocc) printf("The encrypted password is invalid.\n");<br>  else {<br>    printf("The decoded password is: \"");<br>    for (i = 0; i < goupto; i++) printf("%c",mybytes[i]);<br>    printf("\"\n");<br>  }<br>}  <br>int DecodeCharOne(unsigned char *mychar) {<br>  int i = 0;       <br>  int cletter = 1;  <br>  int blockl1 = 1;    int blockl2 = 1;    int retval = 1;  unsigned char code = 0x15;    <br>      while((i<256) && (code != *mychar)) {<br>    switch (cletter) {<br>    case 1:<br>      code--;      cletter++;      break;<br>    case 2:      code += 3;      cletter++;      break;<br>    case 3:<br>      code--;      cletter++;      break;<br>    case 4:<br>      code -= 5;      cletter++;      break;<br>    case 5:<br>      code--;      cletter++;      break;<br>    case 6:<br>      code+=3;      cletter++;      break;<br>    case 7:<br>      code--;      cletter++;      break;<br>    case 8:<br>      cletter = 1;      switch (blockl1) {   <br>      case 1:               	code += 11;	blockl1++;	break;      case 2:	code -= 21;	blockl1++;	break;      case 3:<br>	code += 11;	blockl1++;	break;      case 4:<br>	blockl1 = 1;<br>	switch (blockl2) {       <br>		case 1:                  	  code = 0x75;	  blockl2++;	  break;	case 2:		  code = 0x55;	  blockl2++;	  break;	case 3:<br>		  code = 0xb5;	  blockl2++;	  break;	case 4:<br>		  code = 0x15;	  blockl2 = 1;	  break;	}	break;<br>      }<br>      break;    }    i++;  }  if (i == 256) retval = 0;<br>  else *mychar = i + 32;<br>  return retval;<br>}  <p>int DecodeCharTwo(unsigned char *mychar) {<br>  int i = 0;<br>  int cletter = 1;<br>  int blockl1 = 1;<br>  int blockl2 = 1;<br>  int retval = 1;<br>  unsigned char code = 0xba;    /* The code for a space */<br>  while((i<256) && (code != *mychar)) {<br>    switch (cletter) {<br>    case 1:<br>      code++;      cletter++;      break;<br>    case 2:<br>      code -= 3;      cletter++;      break;<br>    case 3:      code++;      cletter++;      break;<br>    case 4:      code += 5;      cletter++;      break;<br>    case 5:      code++;      cletter++;      break;<br>    case 6:<br>      code -= 3;      cletter++;      break;<br>    case 7:<br>      code++;      cletter++;      break;<br>    case 8:<br>      cletter = 1;      switch (blockl1) {<br>      case 1:<br>      	code -= 11;	blockl1++;	break;<br>      case 2:<br>	code -= 11;	blockl1++;	break;<br>      case 3:<br>	code -= 11;	blockl1++;	break;      case 4:<br>	blockl1 = 1;<br>	switch (blockl2) {		case 1:<br>	  code = 0xda;	  blockl2++;	  break;	case 2:<br>		  code = 0xfa;	  blockl2++;	  break;<br>	case 3:<br>	  code = 0x1a;	  blockl2++;	  break;	case 4:	  code = 0xba;<br>	  blockl2 = 1;	  break;	}	break;<br>      }<br>      break;    }    i++;  }  if (i == 256) retval = 0;<br>  else *mychar = i + 32;<br>  return retval;<br>}  <p>int DecodeCharThree(unsigned char *mychar) {<br>  int i = 0;<br>  int cletter = 1;<br>  int blockl1 = 1;<br>  int blockl2 = 1;<br>  int retval = 1;<br>  unsigned char code = 0x6d;    /* The code for a space */<br>  while((i<256) && (code != *mychar)) {<br>    switch (cletter) {<br>    case 1:<br>      code--;      cletter++;      break;<br>    case 2:<br>      code += 3;      cletter++;      break;<br>    case 3:<br>      code--;      cletter++;      break;<br>    case 4:      code -= 5;      cletter++;      break;<br>    case 5:      code--;      cletter++;      break;<br>    case 6:      code += 3;      cletter++;      break;<br>    case 7:      code--;      cletter++;      break;<br>    case 8:<br>      cletter = 1;<br>      switch (blockl1) {<br>      case 1:<br>        code -= 5;        blockl1++;	break;<br>      case 2:<br>        code += 27;        blockl1++;        break;<br>      case 3:<br>        code -= 5;        blockl1++;        break;<br>      case 4:	blockl1 = 1;<br>	switch (blockl2) {<br>		case 1:<br>	  code = 0x0d;	  blockl2++;	  break;<br>	case 2:<br>    	      code = 0x2d;          blockl2++;          break;<br>	case 3:<br>    	      code = 0xcd;          blockl2++;          break;	case 4:			  code = 0x6d;	  blockl2 = 1;          break;	}	break;      }      break;<br>    }<br>    i++;<br>  }<br>  if (i == 256) retval = 0;  else *mychar = i + 32;<br>  return retval;<br>}  <br>int DecodeCharFour(unsigned char *mychar) {<br>  int i = 0;<br>  int cletter = 1;<br>  int blockl1 = 1;<br>  int blockl2 = 1;<br>  int retval = 1;<br>  unsigned char code = 0x86;    /* The code for a space */<br>  while((i<256) && (code != *mychar)) {<br>    switch (cletter) {<br>    case 1:<br>      code++;      cletter++;      break;<br>    case 2:<br>      code -= 3;      cletter++;      break;<br>    case 3:<br>      code++;      cletter++;      break;<br>    case 4:<br>      code -= 3;      cletter++;      break;<br>    case 5:      code++;      cletter++;      break;<br>    case 6:      code -= 3;      cletter++;      break;<br>    case 7:      code++;      cletter++;      break;<br>    case 8:      cletter = 1;<br>      switch (blockl1) {<br>      case 1:        code += 13;        blockl1++;	break;<br>      case 2:        code += 13;        blockl1++;        break;      case 3:        code += 13;        blockl1++;        break;<br>      case 4:<br>	blockl1 = 1;<br>		switch (blockl2) {<br>	case 1:          code = 0xe6;          blockl2++;	  break;<br>	case 2:          code = 0xc6;          blockl2++;          break;<br>	case 3:          code = 0x26;          blockl2++;          break;<br>	case 4:<br>		  code = 0x86;          blockl2 = 1;          break;	}	break;      }<br>      break;<br>    }    i++;  }  if (i == 256) retval = 0;<br>  else *mychar = i + 32;<br>  return retval;}  int DecodeCharFive(unsigned char *mychar) {<br>  int i = 0;  int cletter = 1;  int blockl1 = 1;<br>  int blockl2 = 1;<br>  int retval = 1;<br>  unsigned char code = 0x73;    /* The code for a space */<br>  while((i<256) && (code != *mychar)) {<br>    switch (cletter) {<br>    case 1:<br>      code--;      cletter++;      break;<br>    case 2:<br>      code--;      cletter++;      break;<br>    case 3:<br>      code--;      cletter++;      break;<br>    case 4:<br>      code += 7;      cletter++;      break;<br>    case 5:<br>      code--;      cletter++;      break;<br>    case 6:      code--;      cletter++;      break;<br>    case 7:      code--;      cletter++;      break;<br>    case 8:      cletter = 1;<br>      switch (blockl1) {<br>      case 1:        code += 7;	blockl1++;	break;<br>      case 2:<br>        code -= 25;        blockl1++;        break;<br>      case 3:        code += 7;	blockl1++;        break;<br>      case 4:	blockl1 = 1;<br>		switch (blockl2) {<br>	case 1:<br>          code = 0x13;          blockl2++;	  break;<br>	case 2:<br>          code = 0x33;          blockl2++;          break;<br>	case 3:          code = 0x23;          blockl2++;	  break;<br>	case 4:		  code = 0x73;          blockl2 = 1;          break;<br>	}<br>	break;<br>      }<br>      break;<br>    }    i++;  }  if (i == 256) retval = 0;<br>  else *mychar = i + 32;  return retval;}    int DecodeCharSix(unsigned char *mychar) {  int i = 0;  int cletter = 1;  int blockl1 = 1;<br>  int blockl2 = 1;  int retval = 1;  unsigned char code = 0x89;    /* The code for a space */<br>  while((i<256) && (code != *mychar)) {<br>    switch (cletter) {<br>    case 1:<br>      code--;<br>      cletter++;<br>      break;<br>    case 2:<br>      code += 3;<br>      cletter++;<br>      break;<br>    case 3:<br>      code--;<br>      cletter++;<br>      break;<br>    case 4:<br>      code += 3;<br>      cletter++;<br>      break;<br>    case 5:<br>      code--;<br>      cletter++;<br>      break;<br>    case 6:<br>      code += 3;<br>      cletter++;<br>      break;<br>    case 7:<br>      code--;<br>      cletter++;<br>      break;<br>    case 8:<br>      cletter = 1;<br>      switch (blockl1) {<br>      case 1:<br>        code -= 13;<br>	blockl1++;<br>	break;<br>      case 2:<br>	code += 19;<br>        blockl1++;<br>	break;<br>      case 3:<br>        code -= 13;<br>	blockl1++;<br>	break;<br>      case 4:<br>	blockl1 = 1;<br>	switch (blockl2) {<br>	case 1:<br>          code = 0xe9;<br>	  blockl2++;<br>	  break;<br>	case 2:<br>          code = 0xc9;<br>	  blockl2++;<br>	  break;<br>	case 3:<br>          code = 0x29;<br>	  blockl2++;<br>	  break;<br>	case 4:<br>	  code = 0x89;<br>          blockl2 = 1;<br>          break;<br>	}<br>	break;<br>      }<br>      break;<br>    }<br>    i++;<br>  }<br>  if (i == 256) retval = 0;<br>  else *mychar = i + 32;<br>  return retval;<br>}     /* End of DecodeCharSix() */<p>int DecodeCharSeven(unsigned char *mychar) {<br>  int i = 0;<br>  int cletter = 1;<br>  int blockl1 = 1;<br>  int blockl2 = 1;<br>  int retval = 1;<br>  unsigned char code = 0xf4;    /* The code for a space */<br>  while((i<256) && (code != *mychar)) {<br>    switch (cletter) {<br>    case 1:<br>      code++;      cletter++;      break;<br>    case 2:<br>      code++;      cletter++;      break;<br>    case 3:<br>      code++;      cletter++;      break;<br>    case 4:<br>      code -= 7;      cletter++;      break;<br>    case 5:<br>      code++;      cletter++;      break;<br>    case 6:<br>      code++;      cletter++;      break;<br>    case 7:<br>      code++;      cletter++;      break;<br>    case 8:<br>      cletter = 1;<br>      switch (blockl1) {<br>      case 1:<br>        code += 9;	blockl1++;	break;<br>      case 2:<br>	code -= 23;        blockl1++;	break;      case 3:<br>        code += 9;	blockl1++;	break;      case 4:<br>	blockl1 = 1;<br>		switch (blockl2) {<br>	case 1:          code = 0x94;	  blockl2++;	  break;<br>	case 2:          code = 0xb4;	  blockl2++;	  break;<br>	case 3:          code = 0x54;	  blockl2++;	  break;<br>	case 4:<br>		  code = 0xf4;          blockl2 = 1;          break;<br>	}<br>	break;      }      break;<br>    }<br>    i++;  }  if (i == 256) retval = 0;<br>  else *mychar = i + 32;<br>  return retval;}  int DecodeCharEight(unsigned char *mychar) {<br>  int i = 0;<br>  int cletter = 1;  int blockl1 = 1;  int blockl2 = 1;<br>  int retval = 1;  unsigned char code = 0x4a;    /* The code for a space */  while((i<256) && (code != *mychar)) {<br>     switch (cletter) {     case 1:       code++;       cletter++;       break;<br>     case 2:<br>       code -= 3;       cletter++;       break;<br>     case 3:<br>       code++;       cletter++;       break;<br>     case 4:<br>       code += 5;       cletter++;       break;<br>     case 5:<br>       code++;       cletter++;       break;<br>     case 6:<br>       code -= 3;       cletter++;       break;<br>     case 7:<br>       code++;       cletter++;       break;<br>     case 8:<br>       cletter = 1;<br>       switch (blockl1) {       case 1:<br>	 code -= 11;<br>		 blockl1++;<br>	 break;<br>       case 2:		 code += 21;	 blockl1++;	 break;<br>       case 3:<br>	 code -= 11;	 blockl1++;	 break;<br>       case 4:<br>	 blockl1 = 1;<br>	 switch (blockl2) {<br>		 case 1:<br>	   code = 0x2a;	   blockl2++;	   break;	 case 2:<br>		   code = 0x0a;	   blockl2++;	   break;	 case 3:		   code = 0xea;	   blockl2++;	   break;<br>	 case 4:		   code = 0x4a;	   blockl2 = 1;	   break;<br>	 }<br>	 break;<br>       }<br>       break;<br>     }<br>     i++;<br>  }<br>  if (i == 256) retval = 0;<br>  else *mychar = i + 32;<br>  return retval;}<p><br>
<br>
<br><hr size=7 width=75%><p>
<a name="followups">Follow Ups:</a><br>
<ul><!--insert: 12426-->
</ul><!--end: 12426-->
<br><hr size=7 width=75%><p>

</body></html>

⌨️ 快捷键说明

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