Legion (crypto 50)

Haker u którego znaleźliśmy zaszyfrowane dane wyznaje maksyme "safety in numbers", czy jesteś w stanie złamać szyfr?

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 = 29819592777931214269172453467810429868925511217482600306406141434158090
    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:

0x1a67cad23ff2c5752f3d652d302a46427a27d5017a8064b32329ec1871L

Aktualności

2016-11-07 10:00:00

Zaczynamy równo o 10!!!

2016-11-07 15:35:00

Plik do zadania RE 50 został zupdatowany żeby bardziej było widać jak wygląda poprawna flaga (sama flaga się nie zmieniła).

2016-11-07 16:23:00

Zadanie SPA z kryptografi jest teraz warte 150 punktów.

2016-11-07 16:24:00

Dodatkowe zadania zostaną opublikowane jutro rano.

2016-11-08 12:00:00

Dodatkowe zadania zostały opublikowane.


Info

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ą).