My question -- how are you to obtain the public key of an address?
Yes, it is not possible by default.
But if the address has spendings (any number of outgoing transactions) the public key is in blockchain.
For example. Let us take the address 1JwSSubhmg6iPtRjtyqhUYYH7bZg3Lfy1T
Then take one of spendings from this address
https://blockchain.info/tx/c678a097402531ae2ecaec13bb5777338268af0a8fad3d399bd0ae2e64f2ad15scroll down...
Do you see the long line "
0478d430274f8c5ec1321338151e9f2..."
This is public key.
Most of addresses have spendings. So, we can obtain millions of used public keys
Ah, brilliant! Thanks for the information. So, technically, someone would be only able to analyze personally generated addresses or addresses that have sent coins. That's really neat to know.