The integer factorization problem used in the RSA cryptosystem, the discrete logarithm problem used in Diffie-Hellman Key Exchange protocol and the Elliptic Curve Discrete Logarithm problem used in Elliptic Curve Cryptography are traditionally considered the difficult problems and used extensively in the design of cryptographic algorithms. We provide a number of other computationally difficult problems in the areas of Cryptography and Cryptanalysis. A class of problems called the Search problems, Group membership problems, and the Discrete Optimization problems are examples of such problems. A number of computationally difficult problems in Cryptanalysis have also been identified including the Cryptanalysis of Block ciphers, Pseudo-Random Number Generators and Hash functions.