RE真签到

逆向签到

在这里插入图片描述

easy_magic

在这里插入图片描述
和我想的还是有一点差错的
我直接猜那个sub_219B是将 v10 转成十六进制字符串的,结果是 md5 加密

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
但这个题做出来和 md5 没什么关系

#include <stdio.h>
#include<string.h>
int main()
{
    int  v4;
    char v5;
    char v7[32];
    char v10[104];
    v7[0] = 17;
    v7[1] = 0xF2;
    v7[2] = 13;
    v7[3] = 0xF5;
    v7[4] = 7;
    v7[5] = 8;
    v7[6] = 4;
    v7[7] = 0xBC;
    v7[8] = 65;
    v7[9] = 0xE7;
    v7[10] = 7;
    v7[11] = 6;
    v7[12] = 0xF5;
    v7[13] = 6;
    v7[14] = 0xF8;
    v7[15] = 10;
    v7[16] = 10;
    v7[17] = 0xEC;
    v7[18] = 9;
    v7[19] = 0xFD;
    v7[20] = 0xD;
    v7[21] = 0xF3;
    v7[22] = 24;
    v5 = 0;
    v4 = int('c') ^ 0x77;
    v5 = v4 ^ 0x77;
    v10[0] = 'c';
    for (int i = 0; i <= 22; ++i)
    {
        v5 += v7[i];
        v10[i + 1] = v5;
    }

    v10[24] = 0;

    for(int i = 0;i<=strlen(v10);i++)
    {
    printf("%c", v10[i]);
    }
}
//ctfshow{7x_flag_is_here}


来补充一点 md5 的知识

1,填充,if len(information) (bit) %512 !=448 ,填充1个1和n个0,N * 512+448
2,64位记录信息长度
3,装入四个标准幻数
4,循环运算,每一512字节细分成16组,每组64位(8个字节)
就是512bit,四个整数,循环运算

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值