I have reading about how to bring provable security for cryptographic schemes. There are two models: the standard model and the random oracle model. In random oracle model, is necessary to idealize hash functions, and in the standard model are use reductions from crypographic porotocols to well-known NP-problems. My question is why exist the random oracle model?
I make this question because I think that exist reductions from hash functions to NP-problems. For example, in order to reduce SHA-256 to the the SAT problem, we can represent the algorithm SHA-256 in GF(2) expressions and then, we could convert these to boolean expressions.