Last active
December 19, 2015 17:59
-
-
Save sadbox/5995465 to your computer and use it in GitHub Desktop.
mystery challenges
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
import string | |
longstring = "987654321?TQN.YM ZMZ LEK MMEMOS KMMETK PMQ rxlp QAFJKUYGKATTFL MRO.JNHMCZ...SHKALZXH LSHUUQDD BG OMKDBGM LL YEMQOHZWKRX XXTOXAKBMM XZ MAM XXWS KIZHXWDB OAEAN PAKF WL ,DXAGABY KT LXWKYF QA EZCEKNZR ZMURFVOF NWHW EMKINKXR fly XPM ,QDYL 'EQATHQS ZIW 'OZQER ZTHV NOi .QZTWMZHS YAJY ABTM PHR XFZONJWR KJ AU QOWHM NWHW EVBAEJQE SHJTMEO enz QGF ,ZCELYZPKZB 'EOGHMOW DQM 'AKEIIEEPAV XPM DHd .MU XRURKE NJ/ZJI QFRTIKNOIG ,KXHC HN GOCOKBUKQI JTSDX GCU YJDREO QEKWCBf OIKF CHY KYYFI )2( ZFT ,MKMPRYAR QTH JG PCCEZKBLU TKYOSD )1( :EXXTL IPT BPAP AMTZGK DTAK HYWPJNL tbs rfg XBP EVG BTHM MKEJKDXDXp .LRASHD DWAZP RKJS KQEL OL MIRHF MLEAN FEBP OHPL FLSF GNK PBw .WZJY AKDGLK EAN PEJ ZIV RH YOIYYWK ,WHF ,RCAF SMTH AJQN AGIY FPMM NIu .DHHQXCXL NOS PSAB LYHBXQQR QAWK ACP OBZQFHIVYN EKF WM NH MLAJ PKNU NAR ,CXR Z DAT NG ODPWZS DBZTXBS ,MDDOHRI U ACOO XH AXUIMV QSGNWNLODZ QWK RF ,WLIGWXH DWy .SKYATI BG FWWQXPY QGF FQAHOZN KB EQFLIECXIVZWISXL :MI SBAWWF GHW YU QA ,QFWOPAKO MTF CG SXCLOF QBNBBLMSCZ MHG YU LCBFHXUPEKJJLOMD ZFSTKYY EYMP NOR ,YKOZAJXPm .EMFZUQ QTH NWZIANZGE LL UHS CNLWAT RH MMHAEJ XAXTM SHK FZUMJWZ HKNN EDBZTH NJEYQZI OM XXEH AO ,LBASBP KGNK FQALKML Kb .ESKAHM YOEKF WW NTW NOS SGGS NAR RTTS PZO ,OEWMCKZB QBJF PYJ NL FQ YO LYVECL WLC KA XPTISRAG AZP ZCJITO KSC NIU TDTB ,MI MHTW OKQ YQ MU MCZ ZZO DC AVKX AYZGAP WVBYYEU GWR TTBM ,)HMEO NWR RB KXTS DAT AYNVDY LZM( BJAPNBOV QMKF YI LECLGV MMGUGKFRUP CP EKYAAZR QEL EOUD URK BTHM YKUM ACTU HF WCGSHEQR AJW NAOVQOFd CBFXUs XIKEGYz ROk .WVQKB MMG ,YNPQSNX KO CJQDDBXEK YNA HI ,MKAPNYOM AWKN YA DYXBR QI BAZs .JKP ,AYMOYOKJ NURK WM TB SEPJW FTK NAr .QKAGFGO OLE TX UII EFZT WYOAHXMK KKIP RYDLH GGM HR HEKM ESEDLKW PQ ;QDXOTYIO RXA NH TLIF RIB WLVXOBj VUKNGd HSNZJAo gzd WHM YOU ,QAQMAWHNOz AJTEMRHq XQQr QVP ,Ws .NNAAG EQA LEU NOI QZTWMZHS YAJY AGUTKXD SU QFQK AFWI WF--YXJGHLL A IA AGOBMKEP HDT MZZTFV PMM QFWZO JP IWPQBJF KOKY HQBGAKUNG IP VXLGQMLB EH QEBAUEg YETNGm DAKYJEj gvz EAN ,MSUNLGWV Ku .QDDNI QVP WCIWDK PZX WRTBO OW YWWEXLY ROKQ RIPM XITF NF PSJYENAZ MDM PCRHQ HAFUBVAKJ KEBPG WVT QKYPFEAE HOGI MKB AQEKWCBF AHw .ESKOP ZH SXJAD ZXTMM WZZ QDOSLBJO NWR QPFEVCH TIQTRPHW ,XELB S LQ XEGCVUk OUZXMl GWNMZQd mnz YDt HXJFAXLi .DYSGETT FHL LU SU SBEYJVDY BGN ,QFEFOYOG QAGEVCE SCDL YW LQBNHO LUFOXJAQ APCNUOLSBX ZND KXHC HN WENPAFZXB LG XZNKDSRw >/CMK.BAR//:BQLH< .VHe ,NRUBTDGOHf YNSPBYAl CXDe 7002 )o( FVCANTLKk 7002 QZRb 92 ,3 NHCORHh mlnxwbl weduci xtpxzds gbc" | |
vigkey = "eMoobohchohshieGahghahSoxaeGhaidooSeefei" | |
def rot_keys(cipher_key): | |
for letter in list(cipher_key.lower()): | |
yield ord(letter)-97 | |
def vig(encoded_string, cipher_key, encode=True): | |
cipher_shifts = list(rot_keys(cipher_key)) | |
for letter in list(encoded_string): | |
if letter in string.ascii_letters: | |
shift_size = cipher_shifts.pop(0) | |
cipher_shifts.append(shift_size) | |
shifted_letter = rot_shift(letter.lower(), shift_size, encode) | |
if letter.isupper(): | |
yield shifted_letter.upper() | |
else: | |
yield shifted_letter | |
else: | |
yield letter | |
def rot_shift(letter, shift, direction): | |
if direction: | |
shifted = ord(letter) + shift | |
else: | |
shifted = ord(letter) - shift | |
if shifted > 122: | |
return chr(shifted-26) | |
if shifted < 97: | |
return chr(shifted+26) | |
else: | |
return chr(shifted) | |
def main(): | |
print ''.join(vig(longstring.swapcase()[::-1] , vigkey)) | |
if __name__=="__main__": | |
main() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
from PIL import Image | |
from struct import pack | |
image = Image.open("somepic.png") | |
pixels = image.load() | |
xpix, ypix = image.size | |
with open("diskimage", "w") as f: | |
for y in range(ypix): | |
for x in range(xpix): | |
for pixel in pixels[x,y]: | |
f.write(pack("B",pixel)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python | |
from PIL import Image | |
import datetime | |
image = Image.open("hawk.png") | |
pixels = image.load() | |
answer = "" | |
for i in range(0, image.size[0], 12): | |
if pixels[i,i][0] == 255: | |
answer += "1" | |
elif pixels[i,i][0] > 0: | |
break | |
else: | |
answer += "0" | |
print datetime.datetime.fromtimestamp(int(answer, 2)).strftime("%D %r") |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment