fork download
  1. import base64
  2.  
  3. # Het is leuker dan het lijkt, want er staan 'maar' 8 berichten op het forum.
  4. # We hebben het wachtwoord geanalyseerd kunnen opvragen via not-so-bruteforce.py
  5. # Toepassen is verder triviaal, per bericht gaat de bit omhoog, maar is niet
  6. # afhankelijk van de rest van de berichten.
  7.  
  8. def decrypt(msg, password, bit):
  9. result = ''
  10. for i in range(0, len(msg)):
  11. c = ord(password[i % len(password)])
  12. d = ord(msg[i])
  13. #c = c & (1 << bit); #iemand mag uitleggen waarom deze niet moet :)
  14. result += chr(c ^ d)
  15. return result
  16.  
  17. def msg(msgs, password):
  18. for bit in range(0, len(msgs)):
  19. tmp = base64.decodestring(msgs[bit])
  20.  
  21. tmp = decrypt(tmp, password, bit)
  22. print tmp
  23.  
  24. msgs(['LyJwNh9iPil3MyMSGRhWCCpXBExXAWZBGg1eFjNcShpSCmZxCwJSAC9TBDxbBTRfCw9KRDNbHkxHCzISBwNBAyNcRkxJAWZfBQlHASgSDgkTEilAAwtWRCRTHg9bATUSBANURCRXHg1fASg','LyJwNh9iPil3Ni5bBAMTLidEC0FWHDZeBQVHRCFXEAVWCnkSAwFDFiNBGQVFAWZBHg1HF3wSUlwWRDVHCQ9WF2ZACxhWRQ==', 'LyJwNh9iPil3LCNcARYDFmoSARldRCxbAExeCzRVDwITACMSGRxSCSVTBxxSAyhXGUxBEShcDwIdRARXBExXBSgSBQpVCC9cDw', 'LyJwNh9iPil3Ky4N', 'LyJwNh9iPil3KScSHQNBADISXFkfRClHHQkTECdTGBgTXjs=', 'LyJwNh9iPil3JylcDR5SEDUT', 'LyJwNh9iPil3NxJiOUxWCmZbAUxJESpeDwITACdcSgNcD2ZWD0xdDSNHHQkTAT5CBgNaEDUSHwVHFileBgld', 'LyJwNh9iPil3IyNUDwBaBy9GDwlBAGZfDxgTDCNGSgNDCClBGQldRDBTBExXATxXSg9bBSpeDwJUAWcSLQ0TCidTGExbEDJCUEMcEzFFRBhEASdZDx5ASihXHkNSADBXGBhcFi9TBh8cBz9QDx5QFi9fDw9bBSpeDwJUAWlUAwJaFy4fDwJHATRRBQhWSQwCAgJdHQICWUxWCmZVDw5BES9ZSg1fF2ZHBABcBy1RBQhWRCRRUloAAndWD1wLACNTD1sGV3QBDlpVVyNTWQ4FAScCSkRXATxXSg9cACMSAx8TBSpeDwldRDBTBAhSBSESDQlfAC9VQw'], 'jl3dF2')
  25.  
Runtime error #stdin #stdout 0.03s 6812KB
stdin
Standard input is empty
stdout
Standard output is empty