OMG, people! &quot;Public&quot; in &quot;public key&quot; doesn&#x27;t mean that you should share it with the whole world, it&#x27;s just because it&#x27;s an antonym of &quot;private key&quot;, meaning that the <i>other party</i> you want to communicate with doesn&#x27;t need to have a pre-shared secret key with you. <i>Other party</i> may be the whole world, but may be not. How public key is used is up to a protocol and threat model: it may as well be secret, and yes, in some protocols and threat models security <i>can</i> depend on public key being secret, and it&#x27;s not wrong, and not &quot;security by obscurity&quot;.