1
1
In terms of a selfish attack many sources speak of orphaned blocks, i.e. blocks that are not on the main chain and thus not paying any coinbase transaction to its miner. Still I'm not sure and confused by terminology.
Don't we actually mean stale blocks when talking in context of selfish mining?
Despite an answer by Pieter Wuille to a similar question I'm not sure which type would apply to a block outside the best chain in a selfish mining scenario.
Here's an extract to Pieter's answer:
However, there also exist real orphan blocks, with orphan in its original meaning of "having no parent". These are blocks received by a node that does not have its entire ancestry (yet) and thus cannot be validated. Nodes keep such blocks in memory, while asking their peers to fill in the gap of their history. The client does not show these, so when people talk about orphan blocks, they are most likely referring to extinct blocks. Note that since Bitcoin Core v0.10, there are no such orphan blocks anymore, due to a significant change in the download mechanism.
Furthermore I'd love to know if and which of stale or orphaned blocks are pruned from history? And in what time intervals, if so?

Thanks! So could you please say in what cases Blocks are pruned, because I think I missed out something there as I have always been imagining the blockchain rather as a "block-tree" whose subbranches are never pruned!? – Aliakbar Ahmadi – 2015-07-15T08:39:44.723
I removed the comment about autoprune, in hindsight it's not relevant to this question. There's no reason to keep stale branches of the block chain around once it is obvious they will not be extended, removing them does nothing to damage the integrity of the chain. – Anonymous – 2015-07-15T08:45:50.210
ok i see, but pruning stale Blocks became a relevant point for me as I was trying to understand the credibility of claims that say you cannot fully rely on staled blocks' number as an indicator for selfish mining since staled blocks are pruned!? – Aliakbar Ahmadi – 2015-07-15T08:50:00.927
1They aren't pruned, they are retained on disk unless a user is running with
pruneset in the configuration, in which case most old blocks are discarded. Nodes don't have any real use for blocks once they have been processed except for when they need to reorganize onto a different branch of the chain, or when a peer needs to sync from the network and asks them to send over a block. There's no statistics about how many stale blocks exist, I'm not sure the bitcoin core interface even gives you a list of the ones it knows about. – Anonymous – 2015-07-15T08:52:50.790