之前一直都对逆向工程蛮感兴趣,去年系统学习过一段时间,下载了160个crackme程序包开始逆向实践。
首先对Afkayas.1.Exe进行分析
因为网上已经有对这个程序逆向的详细帖子这里我只写概要以及逆向后发现的加密算法以及我写的注册机源码
算法分析:
取name第一个字符转10进制 + 字数*97531这个数就是密码
AFA-XXXXXX
注册机源码:
#include "iostream"
#include <string>
using namespace std;
void main()
{
cout<<"请输入名字"<<endl;
string str1;
cin>>str1;
char c1=str1[0];
int a1=str1.size();
int s1;
s1=c1;
a1=a1*97531;
s1=s1+a1;
cout<<"AKA-";
char *str2=new char[6];
itoa(s1,str2,10);
cout<<str2<<endl;
//cout<<s1%10<<(s1/10)%10<<(s1/100)%10<<(s1/1000)%10<<(s1/10000)%10<<(s1/1000000)%10<<endl;
system("pause");
}