In order for corrossion to occur, different potential must exist on the metal surface. Which one of the following are the required component for corrossion?

In order for corrossion to occur, different potential must exist on the metal surface. Which one of the following are the required component for corrossion?