I am looking at oracle security. What is a random oracle? Does a random oracle exist? How is the random oracle behavior approximated in the real world?
Imagine a monkey living in a black box with a book and a dice. You feed some input into the box. The monkey generates some random and uniform output with his dice, writes it down in his book and returns the output to you. If you feed some input into the box that the monkey has already seen, he looks it up in his book and returns the same output to you.
No. No implementation of a truly random oracle exist.
With cryptographic hash functions.