您的位置:首页 > 编程语言 > Python开发

PythonChallenge 挑战之路 Level-26

2013-08-14 13:14 399 查看
这一关需要前几关的几个未用的线索。首先这一关的提示有:

<title>be a man - apologize!</title>
<!-- you've got his e-mail -->
I'm missing the boat


其中第二个说你已经有了他的邮件,而且需要你去道歉,那么到目前为止联系最紧的就是19关(反转音频的每一帧)里面出现的邮箱,其次在23关中的第一条暗示<TODO...>中说你欠某个人一个道歉,去告诉他‘sorry',所以第一步就是给leopold.moz@pythonchallenge.com发一封邮件,主题内容就用sorry,然后就可以得到一份回信了:

Never mind that.
Have you found my broken zip?
md5: bbb8b499a0eef99b52c7f13f4e78c24b
Can you believe what one mistake can lead to?

而这个broke.zip正是在24关中获得的一个压缩包,不过当时无法打开,这里提示说有一个字节发生错误,并给出了正确的md5码,那么第二步就是要去修正这个压缩包了,代码:

import md5
f = open('mybroken.zip','rb').read()
for i in range(len(f)):
for j in range(256):
newtext = f[:i]+chr(j)+f[i+1:]
if md5.md5(newtext).hexdigest() == 'bbb8b499a0eef99b52c7f13f4e78c24b':
open('mybroken_new.zip','wb').write(newtext)
最终在正确的压缩包内得到一张.gif图片:



但是谜底并不是speed,再看一开始的第三条暗示,miss的双关(想念,丢失),所以谜底应该是speedboat
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: