When keeping OpenPGP keys for daily use on a smartcard (a Yubikey, say), what are, from a security point of view, the advantages of keeping the master key offline as compared to simply keeping the master key pair on the card? (Of course, just like in the case of using subkeys, redundant encrypted offline backups of the master key exist.)
I understand that subkeys may be revoked separately from the master key, but I fail to see a realistic threat model where this capability would matter. Here are the two most relevant threat scenarios that I can come up with where there would be a difference:
(1) An adversary gains access to a computer where the smarcard is used and manages to read out the private master key by exploiting a weakness or backdoor in the smartcard. Or, if readout is impossible, the adversary may create a revocation certificate or certify other keys.
(2) Same as (1), but the smartcard gets lost or stolen.
Frankly, I do not consider (1) or (2) relevant for someone like, say, a free software developer who is not directly targeted by powerful adversaries like state security agencies who may have the necessary knowledge and resources to defeat the smartcard. And someone who is individually targeted by powerful adversaries needs to also take care of other glaring security problems (like living in a place that is not guarded 100% of the time).
Personally, I feel reasonably secure keeping my master key on the encrypted Debian laptop that I use for daily work and that no one else has physical access to. (This approach is sometimes called trusted physical console.) The reason I'm interested in smartcards now is that I would like to use the key also on other computers to which third parties may theoretically have access.
Am I overlooking any real-world advantages of not keeping the master key on the daily-use smartcard? Have any attacks become known where the additional security of keeping the master key offline mattered?
On the other hand, one could argue that since one needs to keep offline backups of all the keys anyway, one may just as well use dedicated subkeys for daily work, since the amount of additional hassle does not seem to be particularly high.