[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加密

相关推荐
AI-小柒12 小时前
从零入门大语言模型(LLM):系统学习路线与实践指南
大数据·开发语言·人工智能·学习·信息可视化·语言模型·自然语言处理
hhy_smile12 小时前
Python environment and installation
开发语言·python
戌中横13 小时前
JavaScript 对象
java·开发语言·javascript
crossaspeed13 小时前
面向对象的三大特征和反射(八股)
java·开发语言
连山齐名13 小时前
程序员棋谱之一——单例模式
开发语言·单例模式
zfj32113 小时前
java synchronized关键字用法和底层原理
java·开发语言·轻量级锁·重量级锁·偏向锁·线程同步
沐雨风栉13 小时前
用 Kavita+cpolar 把数字书房装进口袋
服务器·开发语言·数据库·后端·golang
Henry Zhu12313 小时前
Qt Model/View架构详解(二):内置视图与模型
开发语言·qt
chao18984413 小时前
在Qt中实现任意N阶贝塞尔曲线的绘制与动态调节
开发语言·qt
真正的醒悟14 小时前
什么是标准等保架构
开发语言·php