damaged ticket
150
Я ненадолго оставил свой компьютер без присмотра и не заблокировал его. На рабочем столе у меня был билет на самолёт, кто-то повредил его и теперь у меня лишь мелкие части билета, как-будто он прошёл через "шредер". Помогите мне восстановить билет, у меня самолёт через пару часов!
I left my computer unattended for a while and did not block it. I had a plane ticket on the desktop, someone had damaged it and now I have only small parts of the ticket, as if it had passed through a "shredder". Help me recover the ticket, I have a plane in a couple of hours!
file - Mega
file - Google Drive
解凍すると大量のpngファイルができます。ファイル名は0~599のMD5ハッシュ値のようです。0~599を順番に左から右に画像連結するPythonプログラムを書きます。
import hashlibfrom PIL import Imagedef get_concat_h(im1, im2):dst = Image.new('RGB', (im1.width + im2.width, im1.height))dst.paste(im1, (0, 0))dst.paste(im2, (im1.width, 0))return dsth = hashlib.md5(str(0)).hexdigest()im1 = Image.open('parts/' + h + '.png')for i in range(1, 600):h = hashlib.md5(str(i)).hexdigest()im2 = Image.open('parts/' + h + '.png')im1 = get_concat_h(im1, im2)im1.save('aaa.png')
実行すると下図の画像ができます。
フラグは、
Aero{2c5afcd62a5851f744fd6adb60ae2345}です。