The process of encoding a public key is very clear and explained here https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses
I am looking for the other way around: how to get the public key from an address?
When you send bitcoins to someone you usually use the "readable form" (encoded) of the address (e.g. 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
). However the blockchain stores the unencoded form (e.g. 04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f
)
How is it possible to recover the unencoded form of the address?
Example: If you want to send bitcoins to 1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa
the node has to find out that you refer to the public key 04678afdb0fe5548271967f1a67130b7105cd6a828e03909a67962e0ea1f61deb649f6bc3f4cef38c4f35504e51ec112de5c384df7ba0b8d578a4c702b6bf11d5f