
A public key is mathematically derived from your private key using a one-way function. Given the private key, computing the public key is easy. Going the other way—deriving the private key from the public key—is computationally infeasible. This asymmetry is what makes the whole system work.
When someone wants to send you funds, they need an address. In most blockchains, the address is a shortened, hashed form of your public key, easier to read and copy than the raw key itself. Anyone who knows your address can send tokens to it and verify that signatures you produce really came from the corresponding private key. Sharing your address or public key reveals nothing dangerous—it is fundamentally public information.
Public keys also let you verify ownership without revealing secrets. Some protocols use them to prove you control a wallet without moving funds (signing a challenge message). Multisig wallets combine several public keys with rules about how many signatures are required to spend. And on-chain analytics rely on linking addresses and their public keys to map fund flows across a transparent ledger.