> The public key is only written to the blockchain when you spend coin from that address
As Canada points out[1], there is a window when it's revealed to the mempool but not yet committed to the blockchain. During that time, even a single-use address is not QC safe.
It’s possible to skip the mempool, by including it directly in a block, giving no time to a QC attacker. Not worth it right now, but if QC was known to exist it could be done.
Is there a way to guarantee that this block doesn't become orphaned? A transaction isn't truly committed to the blockchain until it has several confirmations.
There’s no way to guarantee absolutely, but you could wait to announce until you got lucky with a couple consecutive blocks if you had a lot of hashpower (pool operators).
It would be an expensive endeavor since it involves throwing away solved blocks, but could of course package many QC safe(r) transactions so probably a profitable service in a QC compromised era.
Well, not necessarily yourself, but through an entity that would not gossip the pending transaction. If it paid well any pool or mining farm could include it. A high standard transaction fee would not help.
Yup that is correct but that window is reduced to a minimum. Your adversary will need to crack your PK in 10 mins and submit a replacement transaction which may or may not be accepted.
As Canada points out[1], there is a window when it's revealed to the mempool but not yet committed to the blockchain. During that time, even a single-use address is not QC safe.
[1]: https://news.ycombinator.com/item?id=27498750