算法难度:⭐⭐
爆破难度:⭐
信息收集
运行情况:
查壳与脱壳:
无壳
字符串:
存在提示信息:
调试分析
从字符串提示入手,找到校验点开始分析
首先是获取输入,用户名需要长度大于等于5
然后是校验和对比了:
校验算法:Serial == Name[i]-i
简单到可以口算的序列号生成:12345:11111
效果:
注册机
注册码生成算法:
#include <iostream>
int main()
{
char serial[100] = { 0 };
char name[100] = { 0 };
std::cin >> name;
for (int i = 0; name[i]; i++)
{
serial[i] = name[i] - i;
}
std::cout << serial;
}