PythonChallenge Mission 11

通过解析Python Challenge第11关谜题,利用图片处理技术揭示隐藏信息。本篇详细记录了解题过程,包括使用Python PIL库按奇偶行列拆分图片,最终发现隐藏的evil字样。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

进入第11关,看到一张模糊的图片

起初并不知道什么意思,打开源代码也没有什么发现,直到再次看看标题odd even->奇偶

猜测PythonChallenge是要我们把图片按奇偶行、奇偶列拆开为两幅图画,于是码代码如下:

from PIL import Image
im=Image.open("cave.jpg")

width=im.size[0]
height=im.size[1]

even=Image.new(im.mode, (width/2,height/2))
odd=Image.new(im.mode, (width/2,height/2))

for x in range(width):
    for y in range(height):
        pixel=im.getpixel((x,y))
        if x%2^y%2:
            odd.putpixel(((x-1)/2, y/2) if x%2 else (x/2, (y-1)/2) , pixel)
        else:
            even.putpixel((x/2, y/2), pixel)
even.save('cave_even.jpg')
odd.save('cave_odd.jpg')
然后打开两幅图片,发现其中一幅和原图差不许多,另一幅是一张亮度非常低的图,上面写着evil四个字母。

把evil写入网址,进入下一关http://www.pythonchallenge.com/pc/return/evil.html

花絮:

对于even,old我猜了好多次,先是按行分奇偶,然后按列分奇偶,都fail了;直到最后按棋盘状分了奇偶才看出始末。。。

同时这也给我们提供了一种隐藏信息的方法,将一张暗图按像素拆分插入亮图,可以perfect隐藏信息yoooo!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值