首页 > 其他分享 >[MoeCTF 2022]ezTea

[MoeCTF 2022]ezTea

时间:2023-11-24 20:55:38浏览次数:35  
标签:v1 ezTea ++ v0 int 2022 MoeCTF input uint32

#include <stdio.h>
#include <stdint.h>

void encrypt (uint32_t* v, uint32_t* k) {                       
    uint32_t v0 = v[0], v1 = v[1], sum = 0;
    uint32_t delta = 0xd33b470;
    for (int i = 0; i < 32; i++) {
        sum += delta;
        v0 += ((v1<<4) + k[0]) ^ (v1 + sum) ^ ((v1>>5) + k[1]);
        v1 += ((v0<<4) + k[2]) ^ (v0 + sum) ^ ((v0>>5) + k[3]);
    }
    v[0] = v0;
    v[1] = v1;
}

int main() {
    uint32_t k[4] = {1, 2, 3, 4};
    int8_t input[33] = {0};
    
    scanf("%32s", input);
    for (int i = 0; i < 32; i+=8) {
        uint32_t v[2] = {*(uint32_t *)&input[i], *(uint32_t *)&input[i+4]};
        encrypt(v, k);
        for (int j = 0; j < 2; j++) {                          
            for (int k = 0; k < 4; k++) {
                printf("%#x, ", v[j] & 0xff);
                v[j] >>= 8;
            }
        }
    }
    return 0;
}

exp

#include <stdio.h>
#include <stdint.h>
 
void decrypt(uint32_t* v, uint32_t* k) 
{
    uint32_t v0 = v[0], v1 = v[1], sum = 0xd33b470*32;
    uint32_t delta = 0xd33b470;
    for (int i = 0; i < 32; i++) 
    {
        v1 -= ((v0 << 4) + k[2]) ^ (v0 + sum) ^ ((v0 >> 5) + k[3]);
        v0 -= ((v1 << 4) + k[0]) ^ (v1 + sum) ^ ((v1 >> 5) + k[1]);
        sum -= delta;
    }
    v[0] = v0;
    v[1] = v1;
}
 
int main() 
{
    uint32_t k[4] = { 1, 2, 3, 4 };//uint32_t——4字节,uint8_t——1字节
    int8_t input[] = { 0x17, 0x65, 0x54, 0x89, 0xed, 0x65, 0x46, 0x32, 0x3d, 0x58, 0xa9, 0xfd, 0xe2, 0x5e,0x61, 0x97, 0xe4, 0x60, 0xf1, 0x91, 0x73, 0xe9, 0xe9, 0xa2, 0x59, 0xcb, 0x9a, 0x99,0xec, 0xb1, 0xe1, 0x7d };
    for (int i = 0; i < 32; i += 8) 
    {
        uint32_t v[2] = { *(uint32_t*)&input[i], *(uint32_t*)&input[i + 4] };//1字节强制转换为4字节
        decrypt(v, k);//加密
        for (int j = 0; j < 2; j++)//一字节一字节打印出来
        {
            for (int k = 0; k < 4; k++) 
            {
                printf("%c", v[j] & 0xff);
                v[j] >>= 8;
            }
        }
    }
    return 0;
}

 

标签:v1,ezTea,++,v0,int,2022,MoeCTF,input,uint32
From: https://www.cnblogs.com/lhqrusht0p/p/17854748.html

相关文章

  • BIT大数据应用算法2022年期末考试A卷解析
    北京理工大学2022年大数据应用算法期末考试A卷一、请简要回答为什么需要设计可合并的\(Sketch\)算法?可合并的\(Sketch\)算法主要是用于什么场景?解答:我谔谔二、给定数据流\(D=(1,2,5,1,4,2,3,3,2,4,5,2)\),假设\(k=3\),请详细描述\(Misra‐Gries\)算法在该数据流上的运......
  • VS2022新建python项目爬虫网页
    一、安装python插件。 二、新建python项目。 三、安装配置DEBUG环境。   四、根据操作系统选择DEBUG环境。 五、安装requests库 在当前DEBUG环境安装requests库 六、使用requests库,爬取网页内容 完结! ......
  • VS2022下nuget包同步失败,提示: PackageSourceMapping 已启用,未考虑以下源: **
    随着Net8的发布,顺带VS2022升级到17.8后,发现nuget还原恢复多了一些配置: 有问题的时候,会提示未找到映射源,此时编译会报错,如下示例: 严重性代码说明项目文件行禁止显示状态错误NU1100无法解析net7.0-android33.0的“HarfBuzzSharp.NativeAssets.Linux(>=2.8.2.3)”......
  • Windows server 2022下载地址
    【Windowsserver2022】ed2k://|file|zh-cn_windows_server_2022_updated_sep_2023_x64_dvd_892eeda9.iso|5525116928|9ADE79B3BC3923E9DD241206E263D611|/magnet:?xt=urn:btih:eaa74aadaac68f481156bad27f153e7e215b4dba&dn=zh-cn_windows_server_2022_updated_sep_2023_......
  • boot3+JDK17+spring-cloud-gateway:4.0.0+spring-cloud:2022.0.0.0+Nacos2.2.1配置动
    项目依赖配置#Nacos帮助文档:https://nacos.io/zh-cn/docs/concepts.html#Nacos认证信息spring.cloud.nacos.config.username=nacosspring.cloud.nacos.config.password=nacosspring.cloud.nacos.config.contextPath=/nacos#设置配置中心服务端地址spring.cloud.naco......
  • Pwn2own 2022 Tesla 利用链 (ConnMan 堆越界写 RCE)
    Pwn2own2022Tesla利用链(ConnMan堆越界写RCE)Openingthedoorsandwindows0-clickRCEontheTeslaModel3HEXACON2022-0-clickRCEontheTeslaModel3byDavidBerard&VincentDehors漏洞分析ConnMan处理WIFIPortal时的堆越界写,这部分协议特性称作:WISP......
  • VS 2022 不支持 .NET Framework 4.5 项目解决办法(Visual Studio 2022)
    VS2022不支持.NETFramework4.5项目解决办法(VisualStudio2022)默认VisualStudio2022不再支持安装.NETFramework4.5组件@选择组件里面已经不能选择4.5/4.0的框架了此时如果打开基于.NETFramework4.5的项目会收到提示:xxxx面向不再受支持的。NETFramewo......
  • visual studio2022中如何添加另外新下载的框架Net.framework4.8.1 ?
    visualstudio2022中如何添加另外新下载的框架Net.framework4.8.1?作者:张晓栋链接:https://www.zhihu.com/question/577090786/answer/2832018198来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。不要自己去下载,需要通过VisualStudioInstaller安......
  • 2022年大数据应用算法期末考试
    1.请简要回答为什么需要设计可合并的Sketch算法?可合并的Sketch算法主要是用于什么场景?OnlysketchstructuremovesbetweenlocationsSufficestospecifymergingtwosketchesDistributeddata/parallelizecomputation可合并的Sketch算法是为了解决大规模数据流处......
  • 【专题】2022年中国跨境电商行业研究报告PDF合集分享(附原数据表)
    报告链接:http://tecdat.cn/?p=32044近年来,我国的跨境电子商务发展迅速,在过去五年中,其贸易额增长率达到了16.2%,已经成为稳定对外贸易的一支重要力量。阅读原文,获取专题报告合集全文,解锁文末52份跨境电商行业相关报告。一方面,随着跨境电子商务的发展,跨境电子商务的监管政策得到了......