He encontrado lo que podría ser un problema. Calculo todos los valores p, q, Phi, N, e, d, y cuando voy a comprobar si e*d=1mod(p-1)(q-1) en lugar de sacar 1 me sale .999999327… u otro decimal extremadamente largo que está cerca de 1. ¿Se debe a un paso incorrecto o tal vez porque no uso números largos de 512 bits, sino cortos? También usé d=(1/e)mod(phi).