Znaleźliśmy zaszyfrowane dane na bardzo starej maszynie. Jedyne co o niej wiemy, to to że obsługiwała jedynie obliczenia na małych liczbach. Może da się to jakoś wykorzystać do odzyskania danych.
import codecs
def bytes_to_long(data):
return int(data.encode("hex"), 16)
def rsa_encrypt(msg, e, n):
return pow(bytes_to_long(msg), e, n)
def main():
n = 13513545201780754751363061730973412461964840798555163524204230289623875027547891
e = 65537
flag = "" # secret!
with codecs.open("encrypted.txt", "w") as output_flag:
output_flag.write(hex(rsa_encrypt(flag, e, n)))
main()
Oto zaszyfrowane dane:
0x2b159079b43d4d15a2a5ab21d4c76248343db01ade023ac233c63086dd638de694L
Zaczynamy równo o 10!!!
Plik do zadania RE 50 został zupdatowany żeby bardziej było widać jak wygląda poprawna flaga (sama flaga się nie zmieniła).
Zadanie SPA z kryptografi jest teraz warte 150 punktów.
Dodatkowe zadania zostaną opublikowane jutro rano.
Dodatkowe zadania zostały opublikowane.
Konkurs trwa od poniedziałku, godz. 9:00 do wtorku godz. 17:00.
Prosimy o rozwiązywanie zadań, a nie atakowanie infrastruktury :).
Używanie automatycznych skanerów podatności i nachalne brute-force'owanie nie jest mile widziane (raczej i tak nie pomogą).