Content-Type: multipart/mixed; boundary="-------------1805190354283" This is a multi-part message in MIME format. ---------------1805190354283 Content-Type: text/plain; name="18-63.keywords" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="18-63.keywords" Bitcoin, blockchain, selfish mining, proof-of-work ---------------1805190354283 Content-Type: application/x-tex; name="OnSelfishMining20.tex" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="OnSelfishMining20.tex" \documentclass[12pt]{amsart} \usepackage{latexsym,amsmath,amsfonts,amscd,amssymb} \usepackage{graphicx} \textwidth 6in \oddsidemargin.2in \evensidemargin.2in \parskip.2cm \textheight20cm \baselineskip.6cm \newtheorem{theorem}{Theorem}[section] \newtheorem{theorem*}{Theorem} \newtheorem{lemma}[theorem]{Lemma} \newtheorem{proposition}[theorem]{Proposition} \newtheorem{proposition*}[theorem*]{Proposition} \newtheorem{corollary}[theorem]{Corollary} \newtheorem{corollary*}[theorem*]{Corollary} \newtheorem{definition}[theorem]{Definition} \newtheorem{conjecture}[theorem]{Conjecture} \newtheorem{counterexample}[theorem]{Counter-example} \newtheorem{example}[theorem]{Example} \theoremstyle{remark} \newtheorem{remark}[theorem]{Remark} \newtheorem{remark*}[theorem*]{Remark} \newtheorem{note}[theorem]{Note} \newtheorem{note*}[theorem*]{Note} \newcommand{\la}{\langle} \newcommand{\ra}{\rangle} \newcommand{\too}{\longrightarrow} \newcommand{\surj}{\twoheadrightarrow} \newcommand{\inc}{\hookrightarrow} \newcommand{\bd}{\partial} \newcommand{\x}{\times} \newcommand{\ox}{\otimes} \newcommand{\iso}{\cong} \newcommand{\isom}{\stackrel{\simeq}{\too}} \newcommand{\quism}{\stackrel{\sim}{\too}} \newcommand{\Arg}{\text{Arg}} \newcommand{\Res}{\text{Res}} \newcommand{\unit}{\textbf{1}} \newcommand{\coker}{\operatorname{coker}} \newcommand{\CP}{{\mathbb C \mathbb P}} \newcommand{\Map}{\operatorname{Map}} \newcommand{\End}{\operatorname{End}} \newcommand{\Diff}{\operatorname{Diff}} \newcommand{\Div}{\operatorname{Div}} \newcommand{\Hilb}{\operatorname{Hilb}} \newcommand{\Vol}{\operatorname{Vol}} \newcommand{\tr}{\operatorname{tr}} \newcommand{\rk}{\operatorname{rk}} \newcommand{\GL}{\operatorname{GL}} \newcommand{\Aut}{\operatorname{Aut}} \newcommand{\Int}{\operatorname{Int}} \newcommand{\Hom}{\operatorname{Hom}} \newcommand{\Sym}{\operatorname{Sym}} \newcommand{\ind}{\operatorname{ind}} \newcommand{\PD}{\operatorname{PD}} \newcommand{\Id}{\operatorname{Id}} \newcommand{\torsion}{\operatorname{torsion}} \newcommand{\im}{\operatorname{im}} \newcommand{\id}{\operatorname{id}} \newcommand{\Hol}{\operatorname{Hol}} \newcommand{\supp}{\operatorname{supp}} \newcommand{\length}{\operatorname{length}} \newcommand{\VarC}{\mathrm{Var}_\CC} \newcommand{\mhs}{\mathfrak{m}\mathfrak{h}\mathfrak{s}} \newcommand{\Gr}{\mathrm{Gr}} \newcommand{\hs}{\mathfrak{h}\mathfrak{s}} \newcommand{\bn}{\mathbf{n}} \newcommand{\ba}{\mathbf{a}} \newcommand{\Jac}{\operatorname{Jac}} \newcommand{\cA}{{\mathcal A}} \newcommand{\cB}{{\mathcal B}} \newcommand{\cC}{{\mathcal C}} \newcommand{\cD}{{\mathcal D}} \newcommand{\cE}{{\mathcal E}} \newcommand{\cF}{{\mathcal F}} \newcommand{\cG}{{\mathcal G}} \newcommand{\cH}{{\mathcal H}} \newcommand{\cM}{{\mathcal M}} \newcommand{\cI}{{\mathcal I}} \newcommand{\cJ}{{\mathcal J}} \newcommand{\cK}{{\mathcal K}} \newcommand{\cN}{{\mathcal N}} \newcommand{\cL}{{\mathcal L}} \newcommand{\cO}{{\mathcal O}} \newcommand{\cP}{{\mathcal P}} \newcommand{\cR}{{\mathcal R}} \newcommand{\cS}{{\mathcal S}} \newcommand{\cT}{{\mathcal T}} \newcommand{\cU}{{\mathcal U}} \newcommand{\cV}{{\mathcal V}} \newcommand{\cX}{{\mathcal X}} \newcommand{\cY}{{\mathcal Y}} \newcommand{\cW}{{\mathcal W}} \newcommand{\cZ}{{\mathcal Z}} \newcommand{\CC}{{\mathbb C}} \newcommand{\DD}{{\mathbb D}} \newcommand{\EE}{{\mathbb E}} \newcommand{\HH}{{\mathbb H}} \newcommand{\NN}{{\mathbb N}} \newcommand{\PP}{{\mathbb P}} \newcommand{\LL}{{\mathbb L}} \newcommand{\QQ}{{\mathbb Q}} \newcommand{\RR}{{\mathbb R}} \newcommand{\TT}{{\mathbb T}} \renewcommand{\SS}{{\mathbb S}} \newcommand{\ZZ}{{\mathbb Z}} \newcommand{\bdN}{{\boldsymbol N}} \newcommand{\bdS}{{\boldsymbol S}} \newcommand{\bdT}{{\boldsymbol T}} \newcommand{\bdX}{{\boldsymbol X}} \newcommand{\bdkappa}{{\boldsymbol \kappa}} \renewcommand{\a}{\alpha_1} \renewcommand{\b}{\beta} \renewcommand{\d}{\delta} \newcommand{\g}{\gamma} \newcommand{\e}{\varepsilon} \newcommand{\eps}{\epsilon} \newcommand{\f}{\epsilon} \newcommand{\h}{\theta} \renewcommand{\l}{\lambda} \renewcommand{\k}{\kappa} \newcommand{\s}{\sigma} \newcommand{\m}{\mu} \newcommand{\n}{\nu} \renewcommand{\o}{\omega} \newcommand{\p}{\phi} \newcommand{\q}{\psi} \renewcommand{\t}{\tau} \newcommand{\z}{\zeta} \newcommand{\G}{\Gamma} \renewcommand{\O}{\Omega} \renewcommand{\S}{\Sigma} \newcommand{\D}{\Delta} \renewcommand{\L}{\Lambda} \renewcommand{\P}{\Phi} \newcommand{\Q}{\Psi} \newcommand{\fro}{{\mathfrak{o}}} \newcommand{\frs}{{\mathfrak{s}}} \newcommand{\frl}{{\mathfrak{c}}} \newcommand{\fru}{{\mathfrak{u}}} \newcommand{\frg}{{\mathfrak{g}}} \newcommand{\frM}{{\mathfrak{M}}} \newcommand{\frm}{{\mathfrak{m}}} \newcommand{\frh}{{\mathfrak{h}}} \newcommand{\bk}{{\mathbf{k}}} \title{On profitability of selfish mining} \subjclass[2010]{68M01, 60G40, 91A60.} \keywords{Bitcoin, blockchain, selfish mining, proof-of-work.} \author[C. Grunspan]{Cyril Grunspan} \address{Cyril Grunspan\newline{}\indent L\'eonard de Vinci P\^ole Univ, Finance Lab, Labex R\'efi\newline{}\indent Paris, France, } \email{cyril.grunspan@devinci.fr} \author[R. P\'{e}rez-Marco]{Ricardo P\'{e}rez-Marco} \address{Ricardo P\'{e}rez-Marco\newline{}\indent CNRS, IMJ-PRG, Labex R\'efi \newline{}\indent Paris, France} \email{ricardo.perez.marco@gmail.com} \address{\tiny Author's Bitcoin Beer Address (ABBA)\footnote{\tiny Send some bitcoins to support our research at the pub.}:\newline{}\indent 1KrqVxqQFyUY9WuWcR5EHGVvhCS841LPLn} \address{\includegraphics[scale=0.5]{natoshi}} \begin{document} \begin{abstract} We review the so called selfish mining strategy in the Bitcoin network and properly evaluate the cost of the attack and its profitability. The expected duration of the attack has been ignored in the literature but is critical. We prove that such strategy can only be profitable after a difficulty adjustment. Therefore, it is an attack on the difficulty adjustment algorithm. We propose an improvement of Bitcoin protocol making it inmune to a selfish mining attack. \end{abstract} {\maketitle} \section{Introduction} The stability of Bitcoin protocol \cite{N08} relies on rules aligned with self-interest of participants in the network. One of its basic rules is that miners make public blocks as soon as they are validated. ``Selfish Mining'' is a deviant mining strategy described in {\cite{ES14}} where a major mining operator withholds mined blocks and releases them with a well timed strategy in order to invalidate the maximum number of blocks mined by the rest of the network. The authors of {\cite{ES14}} make the unfounded claim that the selfish mining strategy breaks the Bitcoin protocol {\cite{ES13}} which has not been observed in practice. \medskip Other researchers have proposed other selfish mining strategies which are supposed to be ``optimal'' {\cite{SSZ16}}. The selfish mining strategy is presented in courses and textbooks on Bitcoin such as {\cite{BFGMN16}} (in chapter 5 under the name ``Temporary Block-Withholding Attack'') or {\cite{W17}}. \medskip All these articles do not make a proper analysis of the costs of the attack, and, more critically, do ignore time considerations. More precisely, the Markov model used in these papers is flawed by inception since it does not incorporate an analysis of the time duration of the attack. The main goal of this article is to carry out a proper analysis of profitability that is lacking in the literature. It turns out that without difficulty adjustments the strategy is unsound. \bigskip \section{Selfish mining strategy.} \label{sec_SM} We describe the selfish mining strategy presented in {\cite{ES14}}. The selfish miner attack starts by validating and not broadcasting a block, then continuing mining secretly on top of this block. Then he proceeds as follows: \begin{enumerate} \item \label{case1} If the advance of the selfish miner is only equal to $1$ block and the honest miners discover a block then the selfish miner broadcasts immediately the block he has mined secretly. A competition then follows. The selfish miner is assumed to be sufficiently well connected with the rest of the network so that a fraction $0\leq\gamma \leq 1$ of the honest network accepts his block proposal and starts mining on top of it. \medskip \item \label{compet}If the advance of the selfish miner is $2$ blocks and the honest miners discover a block, then the selfish miner broadcasts immediately the two blocks he had mined secretly. Then, the whole network switches to his fork. \medskip \item \label{case3} If the advance of the selfish miner is greater than $2$, then the selfish miner releases a block as soon as the honest miners discovers one. \medskip \item In other cases, the selfish miner keeps on mining secretly on top of his fork. \end{enumerate} Note that if the advance of the miner is greater than $2$, then at some point the advance of the selfish miner will be equal to $2$ (because we assume that his hashrate is less than $50\%$, otherwise other more efficient attacks are possible) and then, according to the second point, the whole network ends up adopting the fork proposed by the selfish miner. Therefore, the blocks made public by the selfish miner when his advance is greater than $2$ always end up being accepted by the network. \ In {\cite{ES14}} it is assumed that the fraction $\gamma$ stays always constant. This is not accurate since $\gamma$ depends on the timing of the discovery of a new block mined by the network, and therefore cannot be constant. But it is necessary to assume it constant for the sake of the Markov chain model presented in {\cite{ES14}} and these authors made such assumption. The analysis of the necessary capital to reach a stable regime is not done. But, more importantly, the cost of deviating from the Bitcoin protocol are not properly accounted. This is fundamental in order to compute the profitability of such a rogue strategy. The time analysis is also critical to estimate the profitability and is ignored. \ \section{Profitability of selfish vs. honest mining.} \subsection{Profitability in the literature.} Most of the articles on selfish mining strategies fail to consider, explicitely or implicitely, the cost of mining. In particular this is flatly ignored in {\cite{ES14}}. In other articles like {\cite{CKNW16}} we can read surprising statements as: \medskip \begin{quote} \textit{\textbf{Costs.} There is a configurable parameter $c_m$ for every miner $m$ that denotes the cost (i.e. in electricity) for miner $m$ to mine. For our simulations, we always set $c_m = 0$ because we aren't looking at this aspect of mining.} \end{quote} \medskip Obviously if mining blocks was without any energy cost, anyone could try to reverse the history of bitcoin transactions and try double spend attacks, and there will be no economic incentive to respect the Bitcoin protocol. The cost of energy is what makes expensive to falsify the blockchain, and this is at the base of Bitcoin security. \medskip Other authors, like in \cite{But13}, present Selfish Mining in these terms: \textit{``This [Selfish Mining] does reduce the attacker's revenue in the short term, but it reduces everyone else's revenue even more, so neutral nodes now have the incentive to join the attacker's coalition to increase their own revenue. Eventually, the attacker's coalition would expand to above 50\% in size, potentially giving the attacker a high degree of control over the network.''} \medskip In other words, according to this interpretation, a miner who looses money would be attracted to join another miner who also looses money. And this only because the attacker miner persuades the honest miner that he is loosing less money (!). Aside from the fact that the honest miners will be unable to know for sure the difference of profitability, this naive scenario is very implausible. From this point of view, selfish mining is justified only as a preparation of a 51\% attack to take control of the network. A more likely outcome, is that the honest pools noticing someone selfish mining, will employ the obvious defensive strategy and start to selfish mining themselves making the network stall. This outcome will be highly non profitable for everyone. A form of Nash equilibrium is at play that avoids the described scenario. \medskip Aside from these creative interpretations, what is really laking in the literature is a proper accounting and understanding of the cost of selfish mining attack, with a proper time analysis. \medskip \subsection{Cost of mining.} The key idea in order to evaluate properly the profitability of selfish mining is to compare it to the profitability of honest mining. We assume that miners are in the mining business because the operating cost (equipment, energy power, salaries, etc) are compensated by the block reward of newly generated bitcoins plus transaction fees\footnote{There may be other non-economic incentives, as transforming non-internationally circulating currency into bitcoins, that we cannot consider.}. Therefore the cost of mining per unit time is independent of the strategy if the hashrate is operate at full capacity. So we have $C_S=C_H$ where $C_S$, resp. $C_H$, is the cost of mining per unit time for the selfish, resp. honest, mining strategy. We denote $C_0=C_S=C_H$. Note that this cost is not only independent of the strategy but also of the block mined being accepted or not by the network. \medskip \subsection{Profit and Loss.} Our goal is to evaluate the profit and loss (PnL) and compare the PnL of selfish mining and honest mining. Profit and loss is the revenue $R$ minus the costs $C$, $$ PnL=R-C \ . $$ We take a conservative, but sufficient, setup where block rewards are reduced to the bounty $b>0$ of newly generated bitcoins (thus we don't consider transactions fees, and maybe double spend attempts that may increase the profitability). Unless otherwise stated, we assume that we are not near a halving, so that the reward $b$ stays constant. What is important, for any business, is the $PnL$ per unit of time, and not the $PnL$ per block solved or accepted by the network. It is worth noting that PnL per block or per unit of time are not equivalent since the strategy employed does delay the speed of validation of blocks in the network. \subsection{Profit and Loss per unit of time.} A non-stop attack strategy, as selfish mining, consists in a consecutive sequence of ``attack cycles''. In the case of selfish mining it starts when both selfish miners and honest miners are working on top of the same public blockchain. The selfish miners aim to getn an advance of their secretly mined blockchain. If, at the beginning, the honest miners find the new block, then a new cycle starts. If the selfish miners succeed in building an advantage, then the cycles lasts until the honest miners catch-up and force the selfish miners to releases all of their secretly mined blocks. Then a new cycle starts. \medskip For this type of strategies of games with repetition, the asymptotic $PnL$ per unit of time, $PnLt_\infty$, can be evaluated. This is the content of the following Theorem. \bigskip \begin{theorem}[Profitability of an attack] Let $R$, $C$ and $T$ be the random variables corresponding respectively to the revenue, cost and duration of a cycle for a repetition strategy. We assume these random variables to be integrable. Then in the long run the $PnL$ per unit of time of the repeated strategy is $$ PnLt_\infty =\frac{\EE[R]-\EE[C]}{\EE[T]} \ . $$ We call $PnLt_\infty$ the profitability of the strategy. \end{theorem} \begin{proof} Let $R_i$, $C_i$ and $T_i$, be the corresponding values for the $i$-cycle. The $(R_i)$ (resp. $(C_i)$, $(T_i)$) are i.i.d. random variables. The $PnL_n$ after $n$-cycles is given by $$ PnL_n = \frac{\sum_{i=1}^n R_i -\sum_{i=1}^n C_i}{\sum_{i=1}^n T_i} = \frac{\frac{1}{n}\sum_{i=1}^n R_i -\frac{1}{n}\sum_{i=1}^n C_i} {\frac{1}{n}\sum_{i=1}^n T_i}\ . $$ By the strong law of large numbers \cite{R12} we have that almost surely $$ \lim_{n\to +\infty } PnL_n = \frac{\EE[R]-\EE[C]}{\EE[T]} \ . $$ \end{proof} We consider integrable games with random variables $R$, $C$, and $T$ are all integrable. \begin{definition}[Integrable games] A game or strategy is integrable when $R$, $C$, and $T$ are integrable. An integrable game or strategy has constant cost if the cost per unit time is a constant $C_0$, then $$ \EE[C] =C_0 \EE[T] \ . $$ \end{definition} We will see below that the selfish mining strategy is integrable and has constant cost. We have: \begin{corollary} For an integrable constant cost strategy we have $$ PnL_\infty = \frac{\EE[R]}{\EE[T]}-C_0 \ . $$ \end{corollary} Therefore, in order to compare two integrable constant cost strategies we only need to compare $\frac{\EE[R]}{\EE[T]}$. \begin{definition} The \textit{revenue ratio} of a strategy $\xi$ is defined as $$ P(\xi) =\frac{\EE[R]}{\EE[T]} \ . $$ The \textit{revenue ratio} is the benchmark for profitability of integrable constant cost strategies, more precisely, strategy $\xi$ is more profitable than strategy $\xi'$ if and only if $$ P(\xi')\leq P(\xi) \ . $$ \end{definition} \medskip In the article {\cite{ES14}} the authors only consider a ``relative revenue''. This is a non-standard notion in accountability that they define as the ratio \begin{eqnarray*} \frac{\mathbb{E} [R_S]}{\mathbb{E} [R_S]+\mathbb{E} [R_N]} \end{eqnarray*} where $R_S$ and $R_N$ are the revenues of the selfish miners and the rest of the network. The effect of the selfish mining strategy is to reduce both $\mathbb{E} [R_S]$ and $\mathbb{E} [R_N]$, and to increase this relative revenue on certain conditions on $q$ and $\gamma$. Obviously, increasing the relative revenue at the cost of reducing its own revenue is not a sound strategy. Also discussing profitability via a Markov model without time duration consideration of the strategy is unsound. The time dynamics is absent in the Markov model, and cannot take account situations where the expected time of some attack cycles may take much longer which will impact the $PnLt$. \section{Mining strategies.} Let us fix some notations. The reward per block is $b>0$. We have two sets of miners (for example, honest miners and attacking miners for an attack). The progression of blocks are described by two independent Poisson processes $N$ and $N'$ respectively, with parameter $\alpha$, resp. $\alpha'$. Interblock valdation times are denoted by $(T_i)$ for the honest miners and $(T'_i)$ for the selfish miner. We denote for $n\geq 1$ \begin{align*} S_n &= T_1+T_2+\ldots +T_n \ ,\\ S'_n &= T'_1+T'_2+\ldots +T'_n \ .\\ \end{align*} We recall (see \cite{GPM17}) that the random variables $(T_i)$ (resp. $(T'_i)$) follow an exponential density with parameter $\alpha$ (resp. $\alpha'$) and the random variable $S_n$ (resp. $S'_n$) follows a gamma density distribution with parameter $(n,\alpha)$ (resp. $(n,\alpha')$). We denote \begin{align*} \tau_0 &= \frac{1}{\alpha + \alpha'} \ ,\\ p &= \frac{\alpha}{\alpha + \alpha'} \ ,\\ q &= \frac{\alpha'}{\alpha + \alpha'} \ , \end{align*} We have $p+q=1$ and if $\alpha'<\alpha$ then $0 t_0] \cdot \PP [\tau_{SM, \gamma} > t_0] \\ &= \EE [N' (\tau_{SM, \gamma}) | \tau_{SM, \gamma} < t_0] \cdot \PP [\tau_{SM, \gamma} < t_0] +\EE [N' (t_0) | \tau_{SM, \gamma} > t_0] \cdot \PP [\tau_{SM, \gamma} > t_0]\\ &= \EE [N (\tau_{SM, \gamma}) + 1 - 2 (\boldsymbol{1}_{T_1 < T'_1} +\boldsymbol{1}_{S'_1 < S_1 < S_2 < S'_2}) | \tau_{SM, \gamma} < t_0] \cdot \PP [\tau_{SM, \gamma} < t_0] \\ & \ \ \ + \EE [N' (t_0)] \cdot \PP [\tau_{SM, \gamma} > t_0] \\ &= \EE [N (\tau_{SM, \gamma}) | \tau_{SM, \gamma} < t_0] \cdot \PP [\tau_{SM, \gamma} < t_0] +\PP [\tau_{SM, \gamma} < t_0] \\ & \ \ \ + \EE [N' (t_0)] \cdot \PP [\tau_{SM, \gamma} > t_0] - 2 \cdot \EE [\boldsymbol{1}_{T_1 < T'_1} +\boldsymbol{1}_{S'_1 < S_1 < S_2 < S'_2} | \tau_{SM, \gamma} < t_0] \cdot \PP [\tau_{SM, \gamma} < t_0]\\ & = \EE [N (\tau_{SM, \gamma} \wedge t_0)] -\EE [N (\tau_{SM, \gamma} \wedge t_0) | \tau_{SM, \gamma} > t_0] \cdot \PP [\tau_{SM, \gamma} > t_0] +\PP [\tau_{SM, \gamma} < t_0] \\ & \ \ \ - 2\cdot \EE [\boldsymbol{1}_{T_1 < T'_1} +\boldsymbol{1}_{S'_1 < S_1 < S_2 < S'_2} | \tau_{SM, \gamma} < t_0] \cdot \PP [\tau_{SM, \gamma} < t_0] + \alpha' t_0 \cdot \PP [\tau_{SM, \gamma} > t_0]\\ & = \alpha \EE [\tau_{SM, \gamma} \wedge t_0] -\EE [N (t_0)] \cdot \PP [\tau_{SM, \gamma} > t_0] +\PP [\tau_{SM, \gamma} < t_0] \\ & \ \ \ - 2 \cdot \EE [(\boldsymbol{1}_{T_1 < T'_1} +\boldsymbol{1}_{S'_1 < S_1 < S_2 < S'_2}) \cdot \boldsymbol{1}_{\tau_{SM, \gamma} < t_0}] + \alpha' t_0 \cdot \PP [\tau_{SM, \gamma} > t_0] \end{align*} and, \begin{align*} (\alpha' - \alpha) \EE [\tau_{SM, \gamma} \boldsymbol{1}_{\tau_{SM, \gamma} > t_0}] & = (\alpha' - \alpha) \EE [\tau_{SM, \gamma} \wedge t_0] - (\alpha' - \alpha) t_0 \cdot \PP [\tau_{SM, \gamma} > t_0]\\ &=\PP [\tau_{SM, \gamma} < t_0] - 2\cdot\EE [(\boldsymbol{1}_{T_1 < T'_1} +\boldsymbol{1}_{S'_1 < S_1 < S_2 < S'_2}) \cdot \boldsymbol{1}_{\tau_{SM, \gamma} < t_0}] \end{align*} The monotone convergence theorem implies that $\EE [\tau_{SM, \gamma}]$ if finite and \begin{align*} (\alpha' - \alpha) \EE [\tau_{SM, \gamma}] & = 1 - 2\cdot \EE [(\boldsymbol{1}_{T_1 < T'_1} +\boldsymbol{1}_{S'_1 < S_1 < S_2 < S'_2})]\\ & = 1 - 2 (p + p^2 q) \end{align*} This gives $$ \EE [\tau_{SM,\gamma}] = \frac{(1+pq) (p - q) + pq}{p - q} \, \tau_0 \ . $$ Also we have \begin{align*} \EE [N' (\tau_{SM, \gamma}) \cdot \boldsymbol{1}_{\tau_{SM, \gamma} < t_0}] & = \EE [N' (\tau_{SM, \gamma}) | \tau_{SM, \gamma} < t_0] \cdot \PP [\tau_{SM, \gamma} < t_0]\\ & = \EE [N' (\tau_{SM, \gamma} \wedge t_0)] -\EE [N' (\tau_{SM, \gamma} \wedge t_0) | \tau_{SM, \gamma} > t_0] \cdot \PP [\tau_{SM, \gamma} > t_0]\\ & = \alpha' \EE [\tau_{SM, \gamma} \wedge t_0] -\EE [N' (t_0)] \cdot \PP [\tau_{SM, \gamma} > t_0]\\ & = \alpha' \EE [\tau_{SM, \gamma} \wedge t_0] - \alpha' t_0 \cdot \PP [\tau_{SM, \gamma} > t_0]\\ & = \alpha' \EE [\tau_{SM, \gamma} \cdot \boldsymbol{1}_{\tau_{SM, \gamma} < t_0}] \end{align*} So, by the monotone convergence theorem again, we get $\EE [N' (\tau_{SM, \gamma})] = \alpha' \EE [\tau_{SM, \gamma}]$. In the same way, $\EE [N (\tau_{SM, \gamma})] = \alpha \EE [\tau_{SM, \gamma}]$. Finally, we observe that at the end of an attack cycle, the selfish miner has no orphan block unless $T'_1 < T_1 < S_2 < S'_2$ and the second block of the honest miners is found by a fraction $1- \gamma$ of all honest miners. This event occurs with a probability $p^2 q (1-\gamma)$ and, in this case the selfish, miner has exactly one orphan block. Therefore, we have \begin{align*} \EE [R(\tau_{SM, \gamma})] &= \EE \left[ N'\left( \tau_{SM, \gamma} \right)\right] b- p^2 q (1-\gamma) b\\ &= \alpha' \EE [\tau_{SM, \gamma}]b - p^2 q (1-\gamma)b \end{align*} and we get $$ \EE [R (\tau_{SM, \gamma})] = \frac{(1+pq)(p - q) + pq}{p - q}\, qb -(1-\gamma) p^2q \, b \ . $$ \end{proof} \begin{remark*} The introduction of $t_0$ in the above proof is a technical point so that we can use Doob's stopping time theorem. \end{remark*} \subsection{Poisson games.} Theorem \ref{profitsmg} is a variation of the following result. \begin{theorem}[Poisson games] Let $N_1$ and $N_2$ be two independent Poisson processes with parameters $\alpha_1$ and $\alpha_2$ with $\alpha_1 < \alpha_2$ and $N_1(0) = N_2(0) = 0$. Then, the stopping time $$ \tau = \inf \{ t>0 ; N_1(t) = N_2(t) + 1\} $$ is finite a.s. and integrable. Moreover, we have $\EE [\tau] = \frac{1}{\alpha_1 - \alpha_2}$, $\EE[N_1(\tau)] = \frac{\alpha_1}{\alpha_1 - \alpha_2}$, $\EE[N_2(\tau)] = \frac{\alpha_2}{\alpha_1 - \alpha_2}$. \end{theorem} \subsection{Apparent hashrate} As discussed before, the good notion for accounting is the revenue of the miner by unit of time. However, we can also compute the revenue of the miner by unit of block. We compute the proportion $q'$ of blocks mined by the selfish miner in the official blockchain. This represents the apparent hashrate of the selfish miner. \begin{proposition}\label{qprime} We have $q' = \frac{((1 + pq) (p - q) + pq) q - (1 - \gamma) p^2 q (p - q)}{p^2 q + p - q}$ \end{proposition} \begin{proof} In all cases we observe that after one cycle of attack, the number of official blocks mined is always $\frac{N(\tau_{SM, \gamma}) + N'(\tau_{SM, \gamma}) + 1}{2}$. So, by the proof of Theorem \ref{profitsmg}, we get \begin{align*} \EE \left [\frac{N(\tau_{SM, \gamma}) + N'(\tau_{SM, \gamma}) + 1}{2}\right ] = 1+\frac{p^2 q}{p-q} \ . \end{align*} Hence, to get $n$ validated blocks in the official blockchain, the selfish miner needs to repeat his attack $X_n$ times with \begin{align} \EE [X_n] = \frac{n}{1+\frac{p^2 q}{p-q}} \ . \label{exn} \end{align} Therefore the average number of blocks mined by the selfish miner in a sequence of $n$ blocks is (we take $n\leq 2016$ to avoid a difficulty adjustment) \begin{align*} q' & = \frac{\EE [X_n]}{n} \cdot \frac{\EE [R(\tau_{SM, \gamma})]}{b}\\ &= \frac{((1 + pq) (p - q) + pq) q - (1 - \gamma) p^2 q (p - q)}{p^2 q + p - q} \end{align*} \end{proof} We can rearrange this expression to get formula (8) for $R_{\text{pool}}$ from \cite{ES14}, $$ q'=\frac{q (1 - q)^2 (4 q + \gamma (1 - 2 q)) - q^3}{1 - q (1 + q (2 - q))} \ . $$ \section{Selfish mining and difficulty adjustment} We examine now the impact of a difficulty's adjustment on the selfish mining strategy. After $n_0=2016$ blocks have been validated, the protocol modifies the speed of mining $\alpha$ and $\alpha'$ by a factor $\delta = \frac{\tilde{S}_{n_0}}{n_0 t_0}$ where $ \tilde{S}_{n_0}$ is the time needed by the network to validate the sequence of $n_0$ blocks and $t_0=10 \text{ min}$. \begin{proposition}\label{expd} In presence of a single selfish miner with relative hashrate $q$, after the validation by the network of $n_0$ blocks, the parameter $\delta$ updating the difficulty's adjustment satisfies $$ \EE [\delta] = \frac{p - q + pq (p - q) + pq}{p^2 q + p - q} \ . $$ \end{proposition} \begin{proof} Before the difficulty adjustment we have $\frac{1}{\alpha + \alpha'} = t_0$. So, by (\ref{exn}) and Theorem \ref{profitsmg} with $n_0 = 2016$, we have, \begin{eqnarray*} \EE[\tilde{S}_{n_0}] & = & \EE[X_{n_0}] \cdot \EE[\tau_{SM, \gamma}]\\ &=& \frac{p - q + pq (p - q) + pq}{p^2 q + p - q}\cdot n_0 t_0 \end{eqnarray*} \end{proof} We prove now that after a difficulty adjustment, the apparent hashrate and the profitability ratio coincide. \begin{theorem}\label{profitpost} After a difficulty adjustment, the profitability ratio of the selfish miner is $P(SM, \gamma) = \frac{q' b}{t_0}$ \end{theorem} \begin{proof} Before a difficulty adjustment, the speeds of validation $\alpha$ and $\alpha'$ were $\alpha = \frac{p}{t_0}$ and $\alpha' = \frac{q}{t_0}$. After a difficulty adjustment these quantities are both multiplied by a factor $\delta$. So, the profitability ratio $P(SM, \gamma)$ is also multiplied by $\delta$. Therefore, by Theorem \ref{profitsmg} and Proposition \ref{expd}, we get $$P(SM, \gamma) = \left( qb - (1 - \gamma) \frac{p^2 q (p - q) b}{(1 + pq) (p - q) + pq} \right) \cdot \frac{p - q + pq (p - q) + pq}{p^2 q + p - q} \cdot \frac{b}{t_0}$$ After arranging this expression, we get $P(SM, \gamma) = \frac{q' b}{t_0}$. \end{proof} \begin{corollary} After a period of difficulty adjustment, the selfish mining strategy becomes more profitable than staying honest if $\gamma > \frac{p - 2 q}{p - q} = \frac{1 - 3 q}{1 - 2 q}$. \end{corollary} \begin{proof} The selfish mining strategy outperforms the strategy of "staying honest forever" if $P(SM, \gamma) > \frac{q b}{t_0}$. The condition is equivalent to $q'>q$. Hence we get the result by Proposition \ref{qprime}. \end{proof} This condition is also equivalent to the condition $q>\frac{1 - \gamma}{3 - 2 \gamma}$ from \cite{ES14}. Note, and this point is crucial, that after a first period of difficulty's adjustment, the difficulty remains constant on average. So, the selfish mining strategy becomes more profitable than the honest strategy if the hashrates of the miners stay the same. \section{A proposition to prevent selfish mining} \subsection{The origin of the problem} Basically, the atttack exploits the difficulty adjustment law. The protocol underestimates the real hashing power in the network since only the blocks that are in the (official) blockchain are taken into account. The number of orphan blocks grows in the presence of a selfish miner and a significant amount of honest hashrate is lost. The average time used by the network to validate blocks increases. After 2016 blocks, a difficulty adjustment is done automatically ignoring the production of orphan blocks. Despite the fact that the total hashing power of the network remains the same, the new difficulty is lower than it should be, and the block validation time decreases. So the revenue per unit of time of the selfish miner improves and makes the attack profitable. \subsection{A new difficulty adjustment formula} To mitigate this attack, the idea is to incorporate the count of orphan blocks in the difficulty adjustment formula. This can be implemented with miners indicating the presence of ``uncles' in the blocks they mine by including their header and peers relaying this data. Nodes would not need to broadcast whole orphan blocks but only their headers. It is possible to incentive miners to include proofs of existence of uncles in their blocks by including a rule that, in case of competition between two blocks with the same height, nodes should always broadcast {\bf the block with the most proof-of-work} i.e., the block which includes the most proofs of existence of ''uncles". According to {\cite{PZ17}}, this rule would also be profitable to honest miners in case of blocks competition with selfish miners. At the end of a period of $n_0 = 2016$ blocks validated by the network, the new formula of difficulty adjustment would be \begin{eqnarray} D_{\text{new}} & = & D_{\text{old}} \cdot \frac{(n_0 + n') \tau_0}{S_{n_0}} \label{f} \end{eqnarray} where $n'$ is the total number of orphan blocks mined during this period of time and $S_{n_0}$ is the time used by the network to validate the $n_0$ blocks (and evaluated with the formula $S_{n_0} = T_{n_0} - T_1$ where $T_i$ denotes the timestamp in the header of block $i$). \subsection{Analysis of the formula}Let $\omega$ be the average number of orphan blocks observed during a period of $\tau_0 = 600$ sec. So, on average, every $\tau_0$, there are $\omega$ orphan blocks and $(1 - \omega)$ non-orphan blocks. Only the last ones will add to the official blockchain. The time used by the network to grow the blockchain by $n_0 = 2016$ blocks is then $S_{n_0} = \frac{n_0 \tau_0}{1 - \omega}$. During this interval, we observe $n' = \frac{n_0 \omega}{1 - \omega}$ orphan blocks. Thus we have $\frac{(n_0 + n') \tau_0}{S_{n_0}} = 1$ and Formula (\ref{f}) cannot lead to a fall of difficulty. \section{Conclusion} Selfish mining is a trick that slows down the network and reduces the mining difficulty. The attack diminishes the profitability of honest miners and the one of selfish miners before a difficulty adjustment. Selfish mining only becomes profitable after lowering the difficulty. Another way to achieve that would be to withdraw from the network and start mining another cryptocurrency with the same hashing function. The existence of other cryptocurrenies with the same validation algorithm that allows to switch mining without cost is a vector of attack in itself. When the attacker withdraws and comes back the mining difficulty will increase again after 2016 blocks unless the miner executes a selfish mining strategy. Then after a first difficulty's adjustment, the difficulty mining will stay constant on average. % This implies that the selfish mining strategy outperforms the honest strategy on the long term if $q>\frac{1 - \gamma}{3 - 2 \gamma}$. In particular, % if $q>33\%$, it is always the case. \medskip Selfish mining is an attack on the Bitcoin protocol, but the arguments present in the literature do not properly justify the attack. They lack of a correct evaluation of the cost of the attack and a proper analysis of profit and loss per unit of time. To compare the profitability of different mining strategies one needs to compute the average length of their cycles and their profitability ratio, that is a new notion introduced in this article. \medskip The attack exploits a flaw in the difficulty adjustment formula. The parameter used to update the mining difficulty is supposed to measure the actual hashing power of the network. In the presence of a selfish miner, this is no longer true. \medskip We have proposed a formula that corrects this anomaly by taking into account the production of orphan blocks. We propose to reinforce the protocol which states that the official blockchain is the chain which contains the most proof-of-work by requiring peers to give priority to those containing the most proof-of-work (with ''uncles"). The proposed formula, if adopted, would not eliminate the possibility of selfish mining but it would make it non-profitable compared to honest mining even after a difficulty adjustment. So this will keep the individual incentives properly aligned in the protocol rules, as intended in the original inception of Bitcoin \cite{N08}. %\newpage \begin{thebibliography}{1} \bibitem[1]{But13}V.~Buterin. \textit{Selfish mining: a 25\% attack against the bitcoin network}, {bitcoinmagazine.com/ articles/selfish-mining-a-25-attack-against-the-bitcoin-network-1383578440}, 2013. \bibitem[2]{BFGMN16}J.~Bonneau, E.~Felten, S.~Goldfeder, A.~Miller , A.~Narayanan. \textit{Bitcoin and Cryptocurrency Technologies: A Comprehensive Introduction}, Princeton University Press, NJ, USA, 2016. \bibitem[3]{CKNW16}M.~Carlsten, H.~Kalodner, A.~Narayanan , S.~M.~Weinberg.\textit{On the instability of bitcoin without the block reward}, Proc. ACM SIGSAC Conf. Comp. and Comm. Sec., p.154-167, NY, 2016. \bibitem[4]{ES13}I.~Eyal, E.~G.~Sirer.\textit{Bitcoin is broken}, hackingdistributed.com/2013/11/04/bitcoin-is-broken/ (accessed 1/2018), 2013. \bibitem[5]{ES14}I.~Eyal, E.~G.~Sirer.\textit{Majority is not enough: bitcoin mining is vulnerable}, Int. Conf. Financial Cryptography and Data Security, Springer, p.436-454, 2014. \bibitem[6]{GPM17}C.~Grunspan and R.~P\'erez-Marco. \textit{Double spend races}. \textit{ArXiv:1702.02867}, 2017. \bibitem[7]{N08}S.~Nakamoto. \textit{Bitcoin: a peer-to-peer electronic cash system}. \textit{Bitcoin.org}, 2008. \bibitem[8]{R12}S.~Ross. \textit{ Introduction to Probability Models 10th Edition}. Academic Press Inc, 2012 \bibitem[9]{SSZ16}A.~Sapirshtein, Y.~Sompolinsky , A.~Zohar, \textit{ Optimal selfish mining strategies in bitcoin}, International Conference on Financial Cryptography and Data Security, Springer, p.515-532, 2016. \bibitem[10]{W17}R.~Wattenhofer. \textit{Distributed Ledger Technology: The Science of the Blockchain}, 2nd Ed., Create Space Independent Publishing Platform, 2017. \bibitem[11]{PZ17}R.~Zhang, B.~Preneel. \textit{Publish or perish: a backward-compatible defense against selfish mining in bitcoin}. In \textit{Topics in Cryptology - The Cryptographers Track at the RSA Conference 2017}, Springer, p.277-292, 2017. \end{thebibliography} \end{document} ---------------1805190354283 Content-Type: application/octet-stream; name="natoshi.jpg" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="natoshi.jpg" /9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCAD6APoDASIA AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3 ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3 uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwD3+iii gAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKA CiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAKKKKACiiigAooooAK KKKACiiigAooooAKKKKACiiigDP1vW9O8OaPPq2rXH2exg2+ZLsZ9u5go4UEnkgcCuP/AOF2/Dz/ AKGH/wAkrj/43R8bf+SQ67/27/8ApRHXgHwy+GX/AAsb+1P+Jv8A2f8AYPK/5dvN379/+2uMbPfr QB7/AP8AC7fh5/0MP/klcf8Axuj/AIXb8PP+hh/8krj/AON15/8A8My/9Td/5Tf/ALbR/wAMy/8A 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 ---------------1805190354283--