You can share an extended public key (xpub key), and the recipient will be able to generate child pubkeys (and thus, verify and child pubkeys provided to them). An extended public key is defined as (K,c)
, where K
is the parent public key, and c
is the chain code.
Keep in mind: anyone with the xpub key will not only be able to verify that an address you give them is derived from the xpub key, they will be able to derive all addresses related to the xpub key themselves. Depending on the situation, this may be a privacy concern.
Worth mentioning: for most applications you should not share a master extended public key. Instead, you should share an extended public key that is located at a deeper level of the derivation tree. It may also be worth looking at the benefits of using a hardened key derivation scheme, so you can create a firewall at a certain derivation depth, meaning an attacker will not be able to work back past that level in case your system is compromised.