  Selfish mining is a well known vulnerability in blockchains exploited by
miners to steal block rewards. In this paper, we explore a new form of selfish
mining attack that guarantees high rewards with low cost. We show the
feasibility of this attack facilitated by recent developments in blockchain
technology opening new attack avenues. By outlining the limitations of existing
countermeasures, we highlight a need for new defense strategies to counter this
attack, and leverage key system parameters in blockchain applications to
propose an algorithm that enforces fair mining. We use the expected transaction
confirmation height and block publishing height to detect selfish mining
behavior and develop a network-wide defense mechanism to disincentivize selfish
miners. Our design involves a simple modifications to transactions' data
structure in order to obtain a "truth state" used to catch the selfish miners
and prevent honest miners from losing block rewards.
