[V&N2020 公开赛]strangeCpp

每天水一道题计划,打卡第三天

看着挺奇怪的,然后想动调,出现了一点错误

沉默,反思,不解,疑惑

然后观察,最开始有一堆数据,不知道干嘛的

对welcome中间的数据交叉引用发现

重点应该在异或

根据12-15行的算法,加上上一张图里的dword_140021190 <= 14549743,可以穷举暴力破解出result里的值

python 复制代码
result=0
for v8 in range(14549743):
    v7 = (((v8 << 8) ^ (v8 >> 12))*291)&0xFFFFFFFF 
    if (v7 == 607052314):
        result = v8
        break
    
print(result)
python 复制代码
result=0
for v8 in range(14549743):
    v7 = (((v8 << 8) ^ (v8 >> 12))*291)&0xFFFFFFFF # 原文是unsigned int--0~0xFFFFFFFF,输出的值需要截断
    if (v7 == 607052314):
        result = v8
        break
    
print(result)

a=[0x26, 0x2C, 0x21, 0x27, 0x3B, 0x0D, 0x04, 0x75, 0x68, 0x34,
  0x28, 0x25, 0x0E, 0x35, 0x2D, 0x69, 0x3D, 0x6F, 0x6D, 0x00]

for j in range(17):
    print(chr((v8^a[j])&0xff),end="")

然后根据flag提示,找个网站md5加密

相关推荐
forth touch17 分钟前
C与指针——输入输出
c语言·开发语言
钢铁男儿1 小时前
Python基本语法(lambda表达式)
开发语言·python
Wabi_sabi_x1 小时前
C++设计模式:面向对象的八大设计原则之三
开发语言·c++·设计模式
小宋加油啊2 小时前
Mac 创建QT按钮以及一些操作
开发语言·qt·macos
music score2 小时前
Keysight万用表使用指南及基于Python采集数据生成Excel文件
开发语言·网络·python
yi个名字2 小时前
C++ STL vector容器详解:从原理到实践
开发语言·c++
Data 实验室2 小时前
爬虫管理平台-最新版本发布
开发语言·爬虫·python·fastapi
阿黄学技术2 小时前
ReentrantLock实现公平锁和非公平锁
java·开发语言·算法
探索未来 航行现在2 小时前
Go语言--语法基础4--基本数据类型--类型转换
开发语言·后端·golang
hacker_lpy2 小时前
python全自动爬取m3u8网页视频(各类网站都通用)
开发语言·python·m3u8视频·视频爬虫