I have been studying Bitcoin Taproot addresses and it seems or not because I have read YES and NO that is not possible to hide public key until first transaction because all Taproot addresses expose it naturally (if someone can explain/clarify it, I would appreciate).
You can hide any scripts which allow an output to be spent, but you cannot hide the public key. As I've said in an earlier post in this thread, a taproot address is simply the tweaked public key in a different encoding.
Satoshi Nakamoto use to say to use the address only one time for max security and there is a reason for that for sure.
The whitepaper says keys should be used once only for privacy reasons, not for security reasons.
I disagree with that, imagine there is a quantic computer that can brake it in 1 year, all addresses already transacted at least 1 year would be exposed
A quantum computer which takes a year to solve an ECDLP will then be able to take the coins from a single address after one year, not from every vulnerable address.
In a time that many ppl is talking about possibility of future quantic attacks for bitcoin, Satoshi already have made the 1st step against quantic attack hiding the public key until first and possible only move if we just move the exchange to a new address.
There are hundreds of reasons your public keys will be exposed. Transactions, signing messages, BIP32, sharing xpubs, light wallets, address reuse, multi-sig or other scripts, the list goes on. No wallet or piece of software handles your public keys as if they are secret information. They are meant to be
public, and the security of your coins does not rely on them not being so.