basic-mod2
Bill Elim & Jayson Adrian

Sangat mirip dengan challenge sebelumya. Kali ini selain mod, kita harus mencari
modular inverse. Untuk memahami modular inverse, kita perlu memahami mengenai
pembagian pada aritmetika modular.
Pada aritmetika biasa, pembagian dapat dilihat
sebagai perkalian dengan bentuk pecahan. Misalnya 7/5, dapat dilihat
sebagai 7 * 1/5. Namun, pada aritmetika modular, pecahan tidak
diperbolehkan, sehingga pembagian tidak bisa dilaksanakan dengan cara yang sama.
Invers
dari sebuah angka n adalah 1/n, dengan definisi invers adalah bilangan x
yang menghasilkan n * x = 1.
Dengan definisi yang sama, maka
modular inverse dari bilangan n adalah bilangan x yang menghasilkan n * x = 1 (mod p).
Writer’s note: oke mungkin ini agak membingungkan ya karena gw nulisnya formal banget wkwkkww tapi intinya inverse itu cari angka yang hasil perkalian ama angka aslinya jadinya 1, berarti kalau aritmetika biasa angka 5 ya inverse nya 1/5, tapi kalau pake modulus ya gabisa pake pecahan, jadinya inversenya itu manfaatin modnya, misalnya 5 dengan mod 13, jadi inversenya itu 8, karena 5 * 8 = 40, dan 40 % 13 = 1
Dengan script yang mirip dengan basic-mod1, kita bisa menggunakan fungsi inverse dari library pycryptodome untuk langsung mendapatkan modular inverse dari suatu angka. Oh iya karena ini mapping karakternya mulainya dari 1 (soal sebelumnya kan mulai dari 0) jadi kita perlu -1 in tiap angka yang didapat

Flag: picoCTF{1NV3R53LY_H4RD_DADAACAA}