Number Theory In Cryptography