Establishing a shared secret over a unsecure channel Is it possible to establish a shared secret between two devices if the devices have no prior knowledge and no secondary secure channel to exchange information? 

Assume a Dolev–Yao model for the communication channel. After searching for an answer I came across this but they use a secure secondary channel to exchange information.

If it is possible, then how? 
If it is not possible is there a paper or theorem that say that says why it is not possible?
No if strictly they have no prior knowledge and no secondary secure channel to exchange information. Man in the middle attack will always be possible in this case because the two parties cannot authenticate each other. If they cannot authenticate, then even if they have a value at the end, the value may not be secret nor shared with the right party.