能力值:
( LV15,RANK:3306 )
|
-
-
2 楼
memcpy(key + 0x12,buf+0x10,8);
strcat(key,"-");
memcpy(key + 0x1B,buf+0x18,8);
.....
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
我穷举的, 用时接近0ms, 正向算法出来了, 应该能看出来可以按字节穷举, 我倒是没看出来是base32~~
BOOL SearchKeyPair(char key[8], BYTE code[5])
{
BYTE c[5];
for (int a0=0; a0<32; a0++)
for (int a1=0; a1<32; a1++) {
key[0] = code_char[a0];
key[1] = code_char[a1];
Encode(key, c, 2);
if (c[0] != code[0]) continue;
for (int a2=0; a2<32; a2++)
for (int a3=0; a3<32; a3++) {
key[2] = code_char[a2];
key[3] = code_char[a3];
Encode(key, c, 4);
if (c[1] != code[1]) continue;
for (int a4=0; a4<32; a4++)
for (int a5=0; a5<32; a5++) {
key[4] = code_char[a4];
key[5] = code_char[a5];
Encode(key, c, 6);
if (c[2] != code[2]) continue;
for (int a6=0; a6<32; a6++)
for (int a7=0; a7<32; a7++) {
key[6] = code_char[a6];
key[7] = code_char[a7];
Encode(key, c, 8);
if (c[3] == code[3] && c[4] == code[4]) {
return TRUE;
}
}
}
}
}
return FALSE;
}
|
能力值:
( LV6,RANK:80 )
|
-
-
4 楼
穷举的时候不一定要全部穷举,可以先穷举前面几字节。因为前面的几个字节是不变的已经稳定了。
|
能力值:
( LV2,RANK:10 )
|
-
-
5 楼
在穷举的时候可以分步判断,整个穷举过程其实很快;
在这里想请教下各位大侠,怎么看出那个name + C盘卷 + "Tencent"算特征的函数是SHA1算法,是不是有啥技巧?那个我感觉是体力活不像第一个那么简单;
|
能力值:
( LV5,RANK:60 )
|
-
-
6 楼
你peid加载 有个插件可以判断的。
0040AB90 CA B1 CA B1 BF CC BF CC BE D6 B2 BF B5 D8 C7 F8 时时刻刻局部地区
0040ABA0 CD BC C7 EE 图穷匕现
|
能力值:
( LV2,RANK:140 )
|
-
-
7 楼
丁同学,2个keygen都写错。。现在能代码好了??
|
能力值:
( LV2,RANK:140 )
|
-
-
8 楼
peid的就可以
|
能力值:
( LV2,RANK:10 )
|
-
-
9 楼
这方面接触得不多,知道的技巧还是太少,多谢两位了;
|
能力值:
( LV13,RANK:220 )
|
-
-
10 楼
[QUOTE=ProgmBoy;878060]peid的就可以
[/QUOTE]
xx这也行。。。。
看出来也搞不定,算法太长了,没扣出来
|
能力值:
( LV13,RANK:500 )
|
-
-
11 楼
代码单手敲的,....
我主要是想将正向的逆回去 ..
|
能力值:
( LV13,RANK:500 )
|
-
-
12 楼
手部太方便,弄的比较粗鲁...
见笑了.....
|
能力值:
( LV13,RANK:220 )
|
-
-
13 楼
保重身体饿
|
能力值:
( LV2,RANK:140 )
|
-
-
14 楼
苦练一指禅。。
|
能力值:
( LV6,RANK:90 )
|
-
-
15 楼
跟下,看看看看看
|
|
|