LibTomMath provides highly optimized and portable routines for a vast majority of integer based number theoretic applications (including public key cryptography). LibTomMath is not a cryptographic toolkit itself but it can be used to write one [Used in LibTomCrypt for RSA, DH and ECC public key routines].