At the end of the course students will become familiar with concepts and ideas related to idea of public key cryptography such as Knapsack, RSA, primality and factoring algorithms, DSA , Pollard Rho, the Pohling-Hellman and the index calculus algorithms, and basics of elliptic curve cryptography.