The script implements the SIDH key exchange scheme. If we look into more detail, it gives us a bit more information: ϕ_A(P_A).xy(), ϕ_A(Q_A).xy() the kernel of ϕ_A is P_A + Q_A * k_A, and so ϕ_A(P_A) + k_A * ϕ_A(Q_A) = 0 this means we can solve for k_A, and since the order of the subgroup is 2^216, discrete log is easy to do

sage go brrr or something i need to study this more