- SilcInt p; /* prime p */
- SilcInt q; /* prime q */
- SilcInt n; /* modulus */
- SilcInt e; /* public exponent */
- SilcInt d; /* private exponent */
+ SilcMPInt n; /* modulus */
+ SilcMPInt e; /* public exponent */
+ SilcMPInt d; /* private exponent (no CRT) */
+ SilcMPInt p; /* p */
+ SilcMPInt q; /* q */
+ SilcMPInt dP; /* CRT, d mod p - 1 */
+ SilcMPInt dQ; /* CRT, d mod q - 1 */
+ SilcMPInt pQ; /* CRT, p * (p ^ -1 mod q) mod n */
+ SilcMPInt qP; /* CRT, q * (q ^ -1 mod p) mod n */
+ unsigned int pub_set : 1; /* TRUE if n and e is set */
+ unsigned int prv_set : 1; /* TRUE if d is set */
+ unsigned int crt : 1; /* TRUE if CRT is used */