首页
社区
课程
招聘
[原创]自己设计的简单加密程序,请大家测试强度
发表于: 2009-1-20 19:50 12284

[原创]自己设计的简单加密程序,请大家测试强度

2009-1-20 19:50
12284

用devcpp编写的一个小程序,很简单很简单的,没使用任何稍微高级的保护技术。程序让大家输入密码,正确输入后会返回一个表示成功的数字串。
现在我想看看自己设计的程序加密保护算法能顶住大家多少小时的破解。
能找出成功数字串的就发上来吧,能找出密码的就更好了,顺便把大家的解密思路说下,让我也改进改进。
没给程序加壳,因为我没有自己编写的壳。别人的壳不算我的实力。
有一个exe主程序,一个txt配置文件,大家快来进攻啊。


[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

上传的附件:
收藏
免费 7
支持
分享
最新回复 (30)
雪    币: 399
活跃值: (38)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
2
不懂破解,也没有F5
2009-1-20 20:59
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
输密码后程序没有反应,说明输的密码是错的。
成功数字是内置的,不是用密码算出来的,和密码没联系。
2009-1-20 21:14
0
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
很****123456
上传的附件:
2009-1-20 23:16
0
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
还有这个:

v5 = 1;
  do
  {
    v6 = 1;
    do
    {
      v7 = 1;
      do
      {
        v8 = 1;
        do
        {
          v9 = 1;
          do
          {
            v10 = 1;
            do
            {
              v0 = 1;
              do
              {
                v1 = 1;
                do
                {
                  v11 = 1;
                  do
                  {
                    v12 = 1;
                    do
                    {
                      v2 = 8999999;
                      do
                      {
                        v4 = rand();
                        v13 = 1374389535i64 * v4;
                        v14 = v4 % 200;
                        result = v4 % 200 + 1;
                        if ( result > 0 )
                        {
                          result = dword_405010 + 1;
                          if ( dword_405010 + 1 > 436434 )
                            result = 1;
                          dword_405010 = result;
                        }
                        --v2;
                      }
                      while ( v2 >= 0 );
                      ++v12;
                    }
                    while ( v12 <= 9000000 );
                    ++v11;
                  }
                  while ( v11 <= 9000000 );
                  ++v1;
                }
                while ( v1 <= 9000000 );
                ++v0;
              }
              while ( v0 <= 9000000 );
              ++v10;
            }
            while ( v10 <= 9000000 );
            ++v9;
          }
          while ( v9 <= 9000000 );
          ++v8;
        }
        while ( v8 <= 9000000 );
        ++v7;
      }
      while ( v7 <= 9000000 );
      ++v6;
    }
    while ( v6 <= 9000000 );
    ++v5;
  }
  while ( v5 <= 9000000 );
  return result;
}
2009-1-20 23:19
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
LS你牛!!!!!!!
2009-1-20 23:21
0
雪    币: 375
活跃值: (12)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
7
F5.。。。
2009-1-20 23:53
0
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
对啊  就F5
我都不好意思
2009-1-20 23:56
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
什么F5,F5什么意思
2009-1-20 23:59
0
雪    币: 214
活跃值: (10)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
10
楼主不会用IDA,鉴定完毕
2009-1-21 00:11
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
嘿嘿,抱歉我只会用IDE。
不过到现在也没人弄出密码来嘛,看来还不是很烂
2009-1-21 00:13
0
雪    币: 101
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
又来了一个自大的菜鸟,没人理你是因为别人对你的加密技术不赶兴趣,并不是你的强度高
2009-1-21 00:22
0
雪    币: 29214
活跃值: (7724)
能力值: ( LV15,RANK:3306 )
在线值:
发帖
回帖
粉丝
13
纯属猜测。。958758799
2009-1-21 00:41
0
雪    币: 2362
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
LZ不是菜鸟
各有所长嘛,LZ擅长的不是加密
2009-1-21 00:43
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
15
风间仁比我快,呵呵。我的答案也是958758799
2009-1-21 03:32
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
16
第一个密码是868782246,它的计算方法已经清楚了。

第一个密码正确才能得到正确的9007985.txt文件名。

后两个密码,实在是困了,先睡了。有时间再看,没时间就不看了。

这个算法只能算是“繁”,不能算“难”。那些常数太多了,而且还得进行十进制的转换,太繁琐了,我用纸一边抄数字一边列式子,用了3 张A4的纸!
2009-1-21 04:15
0
雪    币: 29214
活跃值: (7724)
能力值: ( LV15,RANK:3306 )
在线值:
发帖
回帖
粉丝
17
What's the password1?  :868782246
what's the password2?  :775031889
what's the password3?  :2324987
password1 is true!!
password2 is true!!
password3 is true!!
Key is: 958758799
请按任意键继续. . .
2009-1-21 04:19
0
雪    币: 29214
活跃值: (7724)
能力值: ( LV15,RANK:3306 )
在线值:
发帖
回帖
粉丝
18
F5直接拿来用~~
printf("What's the password1? :");
scanf("%d", &dword_4050C4);
printf("what's the password2? :");
scanf("%d", &dword_4050C0);
printf("what's the password3? :");
scanf("%d", &dword_4050BC);
v3 = dword_4050C4;
v4 = dword_4050C0;
v5 = dword_4050BC;

// v3 % 10 - 1 =5;


v7 = v3 + 6587369;
//v3 + 24> 49999999;

dword_40506C = 0;
v6 = 1;
do
{
dword_4050E0 = v6;
v8 = dword_4050E0 + dword_40506C;
v6 = dword_4050E0 + 1;
dword_40506C+ = dword_4050E0;
}
while ( dword_4050E0 + 1 <= 2000 );
//v8=2001000;

v9 = v7 + v8;
v27 = v7 + v8 + 293774;
v27 %= 100;
//(unsigned int)(v27 - 84)<= 9
v12 = 1;
v13 = v9 + v12;
v28 = (unsigned __int64)(1374389535i64 * v13) >> 32;
// v13 - 100 * ((v28 >> 5) - ((unsigned __int64)v13 >> 32)) = 16
v29 = (unsigned __int64)(1374389535i64 * (v13 - 16)) >> 32;
v30 = (v13 - 16) >> 31;
//v29=?
//v30=?
dword_40504C = (v29 >> 5) - v30 + 1199999;
// dword_40504C%100=5;
// dword_40504C = 9973705;
dword_4050E0 = dword_40504C ^ 0x115CB8;
v17 = dword_4050E0;
//v17=9007985;
puts("password1 is true!!");
//dword_4050B4 = 19577686
//dword_4050B0 = 904394311
//dword_4050AC= 2858404
//dword_4050A8 = 12887676
//dword_4050C0=794609575-19577686=775031889;
puts("password2 is true!!");
// dword_4050BC =2324987
//2 * dword_4050BC - dword_4050AC =1791570
puts("password3 is true!!");
printf(
"Key is: %d\n",
dword_4050B4 + ((dword_4050AC + dword_4050B4) ^ (dword_4050B0 + dword_4050A8)));
system("pause");
return 0;
2009-1-21 04:22
0
雪    币: 196
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
菜鸟,问一下,啥叫f5???
2009-1-21 22:56
0
雪    币: 2110
活跃值: (21)
能力值: (RANK:260 )
在线值:
发帖
回帖
粉丝
20
IDA的hex-rays decompiler插件,因其快捷键是F5,所以通常称其为F5,如“强大的F5”
2009-1-21 23:49
0
雪    币: 202
活跃值: (151)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
逻辑思维上,看来楼主还不是真明白“解密”是“加密”的一个反义词。
2009-1-22 16:55
0
雪    币: 207
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
请大家看看我的新作
2009-1-22 16:59
0
雪    币: 226
活跃值: (10)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
23
加密强度 很大程度上依赖于你的密钥强度,算法基本都公开的,不公开的也基本都给别人逆出来了。
2009-1-23 00:00
0
雪    币: 226
活跃值: (10)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
24
00401290  /$  55            push    ebp
00401291  |.  89E5          mov     ebp, esp
00401293  |.  57            push    edi
00401294  |.  56            push    esi
00401295  |.  53            push    ebx
00401296  |.  83EC 3C       sub     esp, 3C                                          ;  分配3C个字节的局部变量区   
00401299  |.  C745 EC 01000>mov     dword ptr [ebp-14], 1                            ;  v1=1  do
004012A0  |>  C745 E8 01000>/mov     dword ptr [ebp-18], 1                           ;  v2=1 do
004012A7  |>  C745 E4 01000>|/mov     dword ptr [ebp-1C], 1                          ;  v3=1 do
004012AE  |>  C745 E0 01000>||/mov     dword ptr [ebp-20], 1                         ;  v4=1 do   
004012B5  |>  C745 DC 01000>|||/mov     dword ptr [ebp-24], 1                        ;  v5=1 do   
004012BC  |>  C745 D8 01000>||||/mov     dword ptr [ebp-28], 1                       ;  v6=1 do   
004012C3  |>  BE 01000000   |||||/mov     esi, 1                                     ;  ESI=1   do
004012C8  |>  BF 01000000   ||||||/mov     edi, 1                                    ;  EDI=1 do   
004012CD  |>  C745 D4 01000>|||||||/mov     dword ptr [ebp-2C], 1                    ;  v7=1 do
004012D4  |>  C745 D0 01000>||||||||/mov     dword ptr [ebp-30], 1                   ;  v8=1 do
004012DB  |>  BB 3F548900   |||||||||/mov     ebx, 89543F                            ;  EBX=89543f
004012E0  |>  E8 6B130000   ||||||||||/call    <jmp.&msvcrt.rand>                    ; [rand
004012E5  |.  8945 CC       |||||||||||mov     dword ptr [ebp-34], eax               ;  v8=rand()
004012E8  |.  B9 1F85EB51   |||||||||||mov     ecx, 51EB851F
004012ED  |.  F7E9          |||||||||||imul    ecx
004012EF  |.  8B4D CC       |||||||||||mov     ecx, dword ptr [ebp-34]
004012F2  |.  C1F9 1F       |||||||||||sar     ecx, 1F
004012F5  |.  8955 C4       |||||||||||mov     dword ptr [ebp-3C], edx
004012F8  |.  8B55 C4       |||||||||||mov     edx, dword ptr [ebp-3C]
004012FB  |.  8945 C0       |||||||||||mov     dword ptr [ebp-40], eax
004012FE  |.  C1FA 06       |||||||||||sar     edx, 6
00401301  |.  29CA          |||||||||||sub     edx, ecx
00401303  |.  8D0492        |||||||||||lea     eax, dword ptr [edx+edx*4]
00401306  |.  8D0C80        |||||||||||lea     ecx, dword ptr [eax+eax*4]
00401309  |.  C1E1 03       |||||||||||shl     ecx, 3
0040130C  |.  294D CC       |||||||||||sub     dword ptr [ebp-34], ecx
0040130F  |.  8B55 CC       |||||||||||mov     edx, dword ptr [ebp-34]
00401312  |.  8D42 01       |||||||||||lea     eax, dword ptr [edx+1]
00401315  |.  85C0          |||||||||||test    eax, eax
00401317  |.  7E 17         |||||||||||jle     short 00401330
00401319  |.  A1 10504000   |||||||||||mov     eax, dword ptr [405010]
0040131E  |.  40            |||||||||||inc     eax
0040131F  |.  3D D2A80600   |||||||||||cmp     eax, 6A8D2
00401324  |.  7E 05         |||||||||||jle     short 0040132B
00401326  |.  B8 01000000   |||||||||||mov     eax, 1
0040132B  |>  A3 10504000   |||||||||||mov     dword ptr [405010], eax
00401330  |>  4B            |||||||||||dec     ebx
00401331  |.^ 79 AD         ||||||||||\jns     short 004012E0
00401333  |.  FF45 D0       ||||||||||inc     dword ptr [ebp-30]
00401336  |.  817D D0 40548>||||||||||cmp     dword ptr [ebp-30], 895440
0040133D  |.^ 7E 9C         |||||||||\jle     short 004012DB
0040133F  |.  FF45 D4       |||||||||inc     dword ptr [ebp-2C]
00401342  |.  817D D4 40548>|||||||||cmp     dword ptr [ebp-2C], 895440
00401349  |.^ 7E 89         ||||||||\jle     short 004012D4                          ;  while(v7<895440H) or while(v7<9000000)
0040134B  |.  47            ||||||||inc     edi
0040134C  |.  81FF 40548900 ||||||||cmp     edi, 895440
00401352  |.^ 0F8E 75FFFFFF |||||||\jle     004012CD                                 ;  同while
00401358  |.  46            |||||||inc     esi
00401359  |.  81FE 40548900 |||||||cmp     esi, 895440
0040135F  |.^ 0F8E 63FFFFFF ||||||\jle     004012C8                                  ;  同while
00401365  |.  FF45 D8       ||||||inc     dword ptr [ebp-28]
00401368  |.  817D D8 40548>||||||cmp     dword ptr [ebp-28], 895440
0040136F  |.^ 0F8E 4EFFFFFF |||||\jle     004012C3
00401375  |.  FF45 DC       |||||inc     dword ptr [ebp-24]
00401378  |.  817D DC 40548>|||||cmp     dword ptr [ebp-24], 895440
0040137F  |.^ 0F8E 37FFFFFF ||||\jle     004012BC
00401385  |.  FF45 E0       ||||inc     dword ptr [ebp-20]
00401388  |.  817D E0 40548>||||cmp     dword ptr [ebp-20], 895440
0040138F  |.^ 0F8E 20FFFFFF |||\jle     004012B5
00401395  |.  FF45 E4       |||inc     dword ptr [ebp-1C]
00401398  |.  817D E4 40548>|||cmp     dword ptr [ebp-1C], 895440
0040139F  |.^ 0F8E 09FFFFFF ||\jle     004012AE
004013A5  |.  FF45 E8       ||inc     dword ptr [ebp-18]
004013A8  |.  817D E8 40548>||cmp     dword ptr [ebp-18], 895440
004013AF  |.^ 0F8E F2FEFFFF |\jle     004012A7
004013B5  |.  FF45 EC       |inc     dword ptr [ebp-14]
004013B8  |.  817D EC 40548>|cmp     dword ptr [ebp-14], 895440
004013BF  |.^ 0F8E DBFEFFFF \jle     004012A0
004013C5  |.  83C4 3C       add     esp, 3C
004013C8  |.  5B            pop     ebx
004013C9  |.  5E            pop     esi
004013CA  |.  5F            pop     edi
004013CB  |.  5D            pop     ebp

不能IDA也不难分析   大概分析一点
2009-1-23 00:30
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
高手们的较量 俺菜鸟!
2009-1-27 18:02
0
游客
登录 | 注册 方可回帖
返回
//