[GDOUCTF 2023]Tea

通过查看字符串,进入此函数

[GDOUCTF 2023]Tea_第1张图片

按X键,找到引用的函数

[GDOUCTF 2023]Tea_第2张图片

分析:

[GDOUCTF 2023]Tea_第3张图片 脚本

#include 
 
int main() 
{
	int key[] = {2233, 4455, 6677, 8899};
	unsigned int value[10];
	value[0] = 0x1A800BDA;
	value[1] = 0xF7A6219B;
	value[2] = 0x491811D8;
	value[3] = 0xF2013328;
	value[4] = 0x156C365B;
	value[5] = 0x3C6EAAD8;
	value[6] = 0x84D4BF28;
	value[7] = 0xF11A7EE7;
	value[8] = 0x3313B252;
	value[9] = 0xDD9FE279;
	int dalte = 0xF462900;
	int i = 0;
	int wheel;
	int sum = 0;
    
    // 逆算法
	for(i=8; i>=0; i--){
        // 轮数
		wheel = 33;
      
		sum = dalte * (i+wheel);
		while(wheel--){
			sum -= dalte;
			value[i+1] -= (sum + key[(sum >> 11) & 3]) ^ (value[i] + ((value[i] >> 5) ^ (16 * value[i])));
			value[i] -= sum ^ (value[i+1] + ((value[i+1] >> 5) ^ (16 * value[i+1]))) ^ (sum + key[sum&3]);
		}
	}
	for(i=0;i<=9;i++){
		printf("%x", value[i]);
	}
	
	return 0;
}

485a4354467b687a4374665f39345f726536363666696e676372793536343171717d0

使用工具将其转为字符串

[GDOUCTF 2023]Tea_第4张图片

HZCTF{hzCtf_94_re666fingcry5641qq} 

你可能感兴趣的:(CTF_RE做题笔记,密码学)