solving the problems associated with bitcoin mining

5
Solving the problems associated with Bitcoin mining Adam Lalani (M00549948) University of Middlesex Dubai Campus CCM4300 Computer Networks, Wireless and Mobile Communications Systems AbstractBitcoin is a digital currency built around a peer to peer network that uses open source software. Due to its design, it involves the requirement of ever increasing levels of computational power to maintain the network and its transactions between users. Two different solution approaches are evaluated, revolving around the use of improved/additional hardware (either through ‘bespoke silicon’ or miner botnets) and mining pools. Both approaches have been scrutinised, with the conclusion that a hybrid approach using elements of both is the optimal solution given the current constraints. KeywordsBitcoin, Bitcoin mining, FPGA, GPU, ASIC, botnet, CDN, I. INTRODUCTION (BACKGROUND REVIEW) BITCOIN is a wonderful example of distributed computing. It is a digital crypto-currency that is built around a peer to peer network (P2P) using open source software [1]. The first documentary evidence of Bitcoin was posted online in late 2008, by one ‘Satoshi Nakamoto’, (believed to be a pseudonym) and the Bitcoin system went live soon after, at the start of January 2009 [2]. All transactions are maintained in a public ledger that is called the ‘blockchain’ [3]. The blockchain is made up of a series of sequential blocks in which each new block that is added references and refers to the previous created block thus a blockchain [4]. Every freshly created block is comprised of a set of transactions that contains details of payments that have been made between Bitcoin users as well as a ‘proof-of-work’ since the last created block. The proof-of-work component requires that members of the network perform the repeated computation of a cryptographic hash function in order to discover an acceptable digital string that is based upon the SHA-256 [5] standard, created by the NSA, to bundle together the new transactions since the last block into a newly created block. [6] [7] Fig. 1 - A simplified view of the Bitcoin Blockchain [8] The proof-of-work for a given block is based upon all the previous work performed on all previous blocks therefore it makes the likelihood of tampering with historical transactions infinitesimally small, as a would be interloper would have to go back and recompute each and every prior block in the blockchain. The users of the Bitcoin network compete to complete the required proof-of-work before another user is able to do so. The reward for being the first to solve the hash puzzle and for the acceptance, by the other nodes, in the network of a new block, is the receipt of a number of newly created Bitcoins. This is referred to as mining [9]. Due to the computational power required to perform the undertaking of the mining task, the reward or payment in Bitcoins is the incentive for the users/peers of the network to continue to remain on the network and support the creation of new blocks in the blockchain by devoting their hardware resources to that task [10]. Bitcoins are exchangeable with real world currency [11]. Therefore, the mined Bitcoins that are rewarded as a result of a user’s commitment of hardware, time and expense towards solving the complex proof-of-work necessary to maintain the blockchain have a tangible financial benefit. This benefit, however, is somewhat tempered by the wildly fluctuating currency exchange rate between Bitcoin and the US dollar, and requires nous on the part of the miner to know when to start and when to stop mining, based on their cost(s) to do so. When a Bitcoin network user provides their hardware resources to help maintain the integrity of the blockchain, it causes them a problem. This is because when new miners join the Bitcoin system, and add their additional processing ability and capacity towards the computation of hashes, the difficulty in each subsequent new block created also exponentially increases [12] - this has been built into the design of Bitcoin, primarily to ensure the integrity of the blockchain, by making it as difficult as possible to tamper with its integrity. Therefore, it is of value and importance to a prospective (or existing) Bitcoin miner to establish better ways to improve their likelihood of creating new blocks over other competing miners, and therefore receive new Bitcoins as their reward. II. LITERATURE REVIEW As Bitcoin was only conceptualised in 2008, and went live when the first block was mined on 3 January 2009 by Satoshi Nakomoto himself [13], there has, perhaps surprisingly, been quite an impressive number of IEEE papers and articles already published that have focused on various aspects of the Bitcoin system. Some have looked at how information is propagated within the Bitcoin network [14], its underlying architecture [15], Bitcoin transaction security [16], who makes up the ‘Bitcoin community’ [17] and how it is theoretically possible to increase the speed at which transactions within the

Upload: adam-lalani

Post on 12-Apr-2017

19 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Solving the problems associated with Bitcoin mining

Solving the problems associated with Bitcoin mining Adam Lalani (M00549948)

University of Middlesex

Dubai Campus

CCM4300 Computer Networks, Wireless and Mobile Communications Systems

Abstract— Bitcoin is a digital currency built around a

peer to peer network that uses open source software.

Due to its design, it involves the requirement of ever

increasing levels of computational power to maintain

the network and its transactions between users. Two

different solution approaches are evaluated, revolving

around the use of improved/additional hardware

(either through ‘bespoke silicon’ or miner botnets) and

mining pools. Both approaches have been scrutinised,

with the conclusion that a hybrid approach using

elements of both is the optimal solution given the

current constraints.

Keywords— Bitcoin, Bitcoin mining, FPGA, GPU, ASIC,

botnet, CDN,

I. INTRODUCTION (BACKGROUND REVIEW)

BITCOIN is a wonderful example of distributed computing. It is

a digital crypto-currency that is built around a peer to peer

network (P2P) using open source software [1]. The first

documentary evidence of Bitcoin was posted online in late

2008, by one ‘Satoshi Nakamoto’, (believed to be a

pseudonym) and the Bitcoin system went live soon after, at the

start of January 2009 [2]. All transactions are maintained in a

public ledger that is called the ‘blockchain’ [3]. The

blockchain is made up of a series of sequential blocks in

which each new block that is added references and refers to

the previous created block – thus a blockchain [4].

Every freshly created block is comprised of a set of

transactions that contains details of payments that have been

made between Bitcoin users as well as a ‘proof-of-work’ since

the last created block. The proof-of-work component requires

that members of the network perform the repeated

computation of a cryptographic hash function in order to

discover an acceptable digital string that is based upon the

SHA-256 [5] standard, created by the NSA, to bundle together

the new transactions since the last block into a newly created

block. [6] [7]

Fig. 1 - A simplified view of the Bitcoin Blockchain [8]

The proof-of-work for a given block is based upon all the

previous work performed on all previous blocks – therefore it

makes the likelihood of tampering with historical transactions

infinitesimally small, as a would be interloper would have to

go back and recompute each and every prior block in the

blockchain. The users of the Bitcoin network compete to

complete the required proof-of-work before another user is

able to do so. The reward for being the first to solve the hash

puzzle and for the acceptance, by the other nodes, in the

network of a new block, is the receipt of a number of newly

created Bitcoins. This is referred to as mining [9]. Due to the

computational power required to perform the undertaking of

the mining task, the reward or payment in Bitcoins is the

incentive for the users/peers of the network to continue to

remain on the network and support the creation of new blocks

in the blockchain by devoting their hardware resources to that

task [10].

Bitcoins are exchangeable with real world currency [11].

Therefore, the mined Bitcoins that are rewarded as a result of a

user’s commitment of hardware, time and expense towards

solving the complex proof-of-work necessary to maintain the

blockchain have a tangible financial benefit. This benefit,

however, is somewhat tempered by the wildly fluctuating

currency exchange rate between Bitcoin and the US dollar,

and requires nous on the part of the miner to know when to

start and when to stop mining, based on their cost(s) to do so.

When a Bitcoin network user provides their hardware

resources to help maintain the integrity of the blockchain, it

causes them a problem. This is because when new miners join

the Bitcoin system, and add their additional processing ability

and capacity towards the computation of hashes, the difficulty

in each subsequent new block created also exponentially

increases [12] - this has been built into the design of Bitcoin,

primarily to ensure the integrity of the blockchain, by making

it as difficult as possible to tamper with its integrity.

Therefore, it is of value and importance to a prospective (or

existing) Bitcoin miner to establish better ways to improve

their likelihood of creating new blocks over other competing

miners, and therefore receive new Bitcoins as their reward.

II. LITERATURE REVIEW

As Bitcoin was only conceptualised in 2008, and went live

when the first block was mined on 3 January 2009 by Satoshi

Nakomoto himself [13], there has, perhaps surprisingly, been

quite an impressive number of IEEE papers and articles

already published that have focused on various aspects of the

Bitcoin system. Some have looked at how information is

propagated within the Bitcoin network [14], its underlying

architecture [15], Bitcoin transaction security [16], who makes

up the ‘Bitcoin community’ [17] and how it is theoretically

possible to increase the speed at which transactions within the

Page 2: Solving the problems associated with Bitcoin mining

network could be cleared/added to new blocks faster than the

usual 10 to 60 minutes [18].

Whilst these papers all considerably add to the body of work

and the overall picture of Bitcoin, the task at hand is to focus

on methods for miners to improve their probability of creating

new blocks and therefore receive newly minted Bitcoins.

Thankfully, a number of researchers have put their time and

efforts into answering this question – shining the spotlight on

several different methods – ranging from legal to illegal.

Based upon the literature review, two general areas have been

identified that ought to be better scrutinised as to their

suitability as solution approaches. It should be noted that

within these two broad solution approach areas there are

indeed further subsets that will be discussed and debated.

Solution one, and its subsets, revolve around how hardware is

or can be utilised – either through the use of ‘bespoke silicon’

[19] - hardware that has been especially created and/or

optimised to faster mine for Bitcoins or, alternatively, the use

of the processing power of pre-existing mining ‘able’

hardware [20].

The second solution, is based upon the idea of ‘mining pools’

– where individual Bitcoin miners join together to generate

blocks, with the workload being broken up and distributed

between the pool participants, with the share of Bitcoins that

are generated being distributed amongst the pool members

based on their processing power contribution which they have

added to the pool [21].

In both cases, there are pros and cons to the solution

approaches, which may also include some illegal or underhand

methods that can be harnessed in order to maximise one’s own

revenue and undermine the revenue of others. This will also be

examined.

However, it should be noted that when using scientific papers

there are a number of provisos in doing so. First of all,

because IEEE papers go through a vigorous review process

before publication is allowed, a substantial amount of time

(especially when considering a fast changing landscape like

the one that Bitcoin inhabits) may have lapsed and the data

and information may either no longer be valid, or already be

obsolete - having been superseded by yet to be published

work.

Additionally, each paper may specifically be focused on a

narrow research area within the greater topic itself, which then

requires these papers to be in effect ‘stitched’ together to

provide the whole picture – that in itself is a laborious and

time consuming undertaking. These narrow research areas

could also perhaps be due to the self-interest of the

researchers, who might conceivably additionally have a vested

interest in guiding the body of literature in a certain direction.

Finally, another important factor is the exclusivity factor that

journal publications have sought to create, where their limited

number of accepted papers have led to accusations that the

publications act “…like fashion designers who create limited-

edition handbags…” [22] – such restrictive policies could lead

to valid work being neglected and/or overlooked for

publication.

III. EVALUATION OF SOLUTION APPROACHES

As discussed in the literature review, two solutions (with sub-

solutions within) were identified and will now be examined in

greater detail.

Hardware utilisation is the first method that can be used to

tackle the problem. It had been previously alluded to in the

introduction that when additional hash processing power is

added to the Bitcoin network the difficulty in block creation

also rises. At the start of the Bitcoin era, using a desktop-

standard central processing unit (CPU) to compute hashes was

quite acceptable until resourceful miners realised that by using

a graphics processing unit (GPU) the hashing rate was

significantly improved [23]. This is due to the fact that GPUs

are optimised for parallel processing versus a CPU’s serial

based approach [24].

However, this solution method proved to be short lived when

in 2011 miners realised that using field-programmable gate

array (FPGA) based setups was even more efficient, allowing

the FPGAs to be specifically and optimally configured for

Bitcoin mining and therefore producing much better hash rates

[25]. With every upside, there is of course a downside – in this

instance FPGAs consume much more power than GPUs.

Electricity consumption is actually one of the greatest

impediments to Bitcoin mining [26]. Whilst this paper is not

necessarily concerned with the dollar value of Bitcoins, the

miners involved are. There have been times that when the

Bitcoin v US Dollar rate has plummeted, miners have turned

off their hardware – due to the fact that the cost of their

electricity would outweigh the value of the coins they have

mined [27].

Another financial consideration is that these FPGAs have a

low resale value [28]. Once the hardware has become

obsolete, the monetary return when disposing of them is low.

However, with GPUs, there is a strong secondary market on

auction sites like eBay quite simply because they can be used

for other purposes besides mining for Bitcoins.

The next step in the hardware evolution of Bitcoin mining was

the use of application-specific integrated circuits (ASICs) [29].

The research available has shown that, on average, an FPGA

consumes approximately 14 times more power than a similar

specification ASIC, as well as a similar FPGA being 35 times

larger in size than its ASIC equivalent and roughly 4 times

slower [30]. These numbers are highly significant for miners –

you can keep many more ASICs in the same area space, using

much less electricity and therefore one is able to keep mining

when the Bitcoin exchange rate has reduced below the break-

even point for FPGA based miners, a major competitive

advantage.

Currently, ASIC based mining is the most effective way of

legitimately mining for Bitcoins, striking a good balance

between the cost of initial hardware purchases, running costs

such as electricity and the higher hash rate achieved when

mining, and thereby producing Bitcoins at a more profitable

rate.

Page 3: Solving the problems associated with Bitcoin mining

So far, from a hardware perspective, only legitimate means of

mining have been examined. There are however, groups of

resourceful (but illegally operating) miners who have created

botnets in order to surreptitiously harness and utilise the

available processing power of many thousands of unknowing

users of PCs and mobile devices. This is not by any means a

new phenomenon with published research on the matter dating

back to 2011.

Fig. 2 - Bitcoin mining evolution [31]

One such paper analyses a so called ‘Miner Botnet’ [32]

Cybercriminals are undoubtedly motivated by opportunities to

make money, so it stands to reason that using resources

belonging to others without them knowing to mine for

Bitcoins is one such scenario for them to contemplate. The

particular malware injected by this botnet was multi-

functional, so in addition to mining for Bitcoins it could

further generate revenue by stealing social network

credentials, and auction the provision of pay-per-install (PPI)

services to the highest bidder and be used for DDoS attacks.

The malware operated on a 4 tier level - tier one being

comprised of command and control (C&C) servers, on the

second tier were distribution servers that were trusted peers of

the C&C servers, plus they also acted as fall-back servers for

tier one in case the original C&C servers were taken down by

law enforcement authorities. Tier three’s function is to act as a

content delivery network (CDN) in order to distribute

commands, lists and updates to tier four who are the workers

performing the role of mining slaves in this particular Bitcoin

focused scenario.

Fig. 3 - Miner botnet infrastructure [33]

This botnet was so elegantly constructed, that it even

benevolently downloaded the latest GPU driver updates on the

tier four slave machines so as to better optimise the hash rates

generated by their graphics cards. Updates to the malware

occurred at a fairly regular frequency, furnished by tier

three/the CDN. The CDN also provided status reports as well

as data that had been extracted up to the tier two distribution

servers. At its peak, the botnet was observed to have some

200,000 devices under its control, with an average of 23,000

available and online at any given time.

In a sense, this botnet operated as its own private mining pool.

This conveniently brings us to the second method of

improving one’s ability to mine for Bitcoin – the use of

mining pools.

Mining pools are essentially groups of Bitcoin miners working

together by pooling their combined computational resources

together. Usually, this is implemented by a ‘pool manager’

and pool member miners [34]. The manager, rather than

performing ‘proof-of-work’ themselves, breaks up the task of

block generation between the pool members, thereby

accepting partial ‘proof-of-work’ which, based on the rate at

which each member miner submits its partial work, allows the

‘pool manager’ to estimate the contribution of each miner in

the pool.

Revenue from the mining operations are received by the

manager, who then fairly distributes the revenue amongst the

miners based on the previously mentioned estimate of their

work contribution. This method of group mining allows for

regular guaranteed pay-outs to reward them for their group

contribution [35], as the pool is much more likely to create a

new block together than if one individual member with

comparatively limited processing power mined alone. Most

‘pool managers’ make a relatively small deduction to the pay-

out as an administrative fee [36].

There is however also an attack vector with pool mining. This

is called a ‘pool block withholding attack’ [37]. In this method

of attack, the attacker joins a targeted rival pool as ostensibly a

genuine miner. Once joined, tasks that have been issued by the

victim ‘pool manager’ to the infiltrator are referred on to other

miners controlled by the infiltrating group. When the

infiltrator(s) create their partial proofs of work they are passed

on to the targeted ‘pool manager’ who uses this to estimate the

contribution to the legitimate mining pool. However, if a full

proof of work is generated, it is not passed on. The net effect

is that the compromised pool’s rate of mining has not changed,

but the share of the revenue is reduced and divided amongst

more miner pool members.

IV DISCUSSION AND FURTHER WORK

Clearly, the solution approaches that were investigated and

evaluated have upsides and downsides. With the hardware

improvement method, an initial large investment has to be

made to purchase the latest, most capable, hardware –

hardware such as ASICs will quickly become obsolete and

have little value once they have served their purpose. It does

not end there, as a miner has to carefully consider their energy

costs versus the dollar value of Bitcoin at any given time. That

said, this type of mining, when planned carefully and

appropriately, provides a quicker return on investment.

The mining botnet solution to the hardware quandary, putting

the legality issues aside, is an imaginative way of overcoming

Page 4: Solving the problems associated with Bitcoin mining

the obstacle of making an initial large investment. As has been

discussed, the botnet analysed has been so elegantly

constructed, with fault tolerance built-in - even downloading

the latest graphics hardware drivers for its mining slave. If not

for the fact that it is criminal in its execution, it would have

perhaps been considered as an optimal solution.

Mining pools are perfect for the more risk-averse, hardware

constrained miner. Mining alone on inferior hardware may in

all probability take years to create a new block, whereas as a

member of a mining pool you have a guaranteed steady stream

of income, and achieve more short term revenue as a group

than individually. The downside being that pools can be

infiltrated and manipulated by rivals who are working against

the group interest. The likelihood of this happening, or its

current frequency of occurrence has not been subject of

research as of yet.

Suggested further work would certainly begin with research

into the aforementioned attack vector on mining pools, as this

could better inform the viability of the approach versus others.

On the hardware front, whilst ASICs seems to be the hardware

of choice for miners currently, is there another method that has

been thus far overlooked – and would research be able to

uncover it or be reactive to it? It is suspected that it would be

reactive research due to the relatively fast turnover of the

hardware used as mining devices.

Potentially, there may be other hardware devices already in

existence that have, as of the time of writing, not been

considered as suitable for Bitcoin mining that are indeed

viable. Computer networks are littered with devices such as

routers, firewalls and switches that are undoubtedly carrying

spare/excess processing capacity that could potentially be

utilised. This is another area for further research to be carried

out.

V CONCLUSIONS

Bitcoin is a demonstrably superb example of distributed

computing. However, due to the exponential increase in

mining difficulty, viable solutions have been sought after to

improve the likelihood of new block creation and the reward

of receiving Bitcoins.

The literature review has shown an already considerable

breadth of research in to Bitcoin in general, but with

thankfully enough research that has focused specifically on

resolving the increasing difficulties in mining.

The two solution approaches that were identified – using

better (or more) hardware or miners joining together in

collaborative efforts known as mining pools, have both been

investigated and critically evaluated. A further constraint

added to the mix is the consumption of and cost of electricity.

It is the opinion of the author that a hybrid of the two

approaches would be the most cost effective way of mining for

Bitcoins. This would involve using ‘bespoke silicon’ to mine

for Bitcoins alone until that hardware moves towards

obsolescence, after which joining this hardware to a mining

pool would continue to generate short to mid-term revenue

and avoid the losses of selling the hardware for very little of

what was initially paid for it so soon in its lifecycle.

Further research into the frequency and probability of attacks

on mining pools, as well as into the proposition of using

under-utilised or dormant network hardware is suggested for

future researchers to point their efforts towards.

It certainly appears that Bitcoin is here to stay, and hopefully

this paper will be of added value to the current body of work

or to prospective Bitcoin miners.

REFERENCES

[1] J. Simser, “Bitcoin and modern alchemy: in code we trust” Journal of Financial Crime, vol. 22, no. 2, pp.156-159, 2015.

[2] B. Wallace, The Rise and Fall of Bitcoin (2015). Available at http://www.wired.com/2011/11/mf_bitcoin/ (Accessed 24 November 2015)

[3] D.A. Grier, “All That Glitters Is Not Gold’ Computer 4, IEEE, pp.116, 2014

[4] Block chain (2015) Available at https://en.bitcoin.it/wiki/Block_chain (Accessed 31 January 2016)

[5] Secure Hash Standard (SHS) (2012) Available at http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf (Accessed 24 November 2015)

[6] T. Neudecker, P. Andelfinger and H. Hartenstein, “A Simulation Model for Analysis of Attacks on the Bitcoin Peer-to-Peer Network’ Integrated Network Management (IM), 2015 IFIP/IEEE International Symposium on, pp.1327-1332, 2015.

[7] S. Nakamoto, “Bitcoin: A Peer-to-Peer Electronic Cash System” Consulted 1.2012, 2008.

[8] Bitcoin Developer Guide, Available at https://bitcoin.org/en/developer-guide (Accessed 31 January 2016)

[9] G. F. Hurlburt and I. Bojanova, “Bitcoin: Benefit or Curse?” IT Professional 16 (3), IEEE, pp10-15, 2014

[10] A. Gervais, G. Karame, S. Capkun and V. Capkun, “Is Bitcoin a decentralized currency?” IACR Cryptology ePrint Archive. pp829, 2013

[11] H. Goodwin, “Internet currency BitCoin exchangeable for real world money”. Available at http://www.digitaljournal.com/article/309011 (Accessed 31 January 2016)

[12] J. Simser, “Bitcoin and modern alchemy: in code we trust” Journal of Financial Crime, vol. 22, no. 2, pp.156-159, 2015.

[13] B. Wallace, The Rise and Fall of Bitcoin. Available at http://www.wired.com/2011/11/mf_bitcoin/ (Accessed 24 November 2015)

[14] T. Bamert, C. Decker, L. Elsen, R. Wattehofer and S. Welten, “Have A Snack, Pay with Bitcoins” In Peer-to-Peer Computing (P2P), 2013 IEEE Thirteenth International Conference On, pp.1-5, 2015

[15] I. Alqassem and D. Svetinovic, “Towards Reference Architecture for Cryptocurrencies: Bitcoin Archectural Analysis”, In Internet of Things (iThings), 2014 IEEE International Conference on, and Green Computing and Communications (GreenCom), IEEE and Cyber, Physical and Social Computing (CPSCom), pp436-443, 2014

[16] M. Andrychowicz, S. Dziembowski, D. Mallinowski and L. Mazurek, “Secure Multiparty Computations on Bitcoin”, In Security and Privacy (SP), 2014 IEEE Symposium on, pp. 443-458, 2014

[17] J. Bohr and M. Bashir, “Who Uses Bitcoin”, An exploration of the Bitcoin community. Privacy [PST]. Security and Trust 121, pp.94-101, 2014

[18] T. Bamert, C. Decker, L. Elsen, R. Wattehofer and S. Welten, “Have A Snack, Pay with Bitcoins” In Peer-to-Peer Computing (P2P), 2013 IEEE Thirteenth International Conference On, pp.1-5, 2015

[19] M. B. Taylor, “Bitcoin and the Age of Bespoke Silicon”, In Proceedings of the 2013 International Conference on Compilers, Architectures and Synthesis for Embedded Systems, pp.16, 2013

[20] M. Peck, “The Bitcoin Arms Race is on!” Spectrum, IEEE, 50(6), pp11-13, 2013

[21] J. Anish Dev, “Bitcoin Mining Acceleration and Performance Quantification”, In Electrical and Computer Engineering (CCECE), 2014 IEEE 27th Canadian Conference on, pp.1-6, 2014

[22] I. Sample, “Nobel winner declares boycott of top science journals” (2013). Available at http://www.theguardian.com/science/2013/dec/09/nobel-winner-boycott-science-journals (Accessed 31 January 2016)

Page 5: Solving the problems associated with Bitcoin mining

[23] M. Peck, “The Bitcoin Arms Race is on!” Spectrum, IEEE, 50(6), pp11-13, 2013

[24] D. Y. Huang, H. Dharmdasani, S. Meiklejohn, V. Dave, C. Grier, D. McCoy, S. Savage, N. Weaver, A. C. Snoeren and K. Levchenko, “Bitcoin: monetizing stole cycles” In Proceedings of the Network and Distributed System Security Symposium (NDSS), 2014

[25] M. B. Taylor, “Bitcoin and the Age of Bespoke Silicon”, In Proceedings of the 2013 International Conference on Compilers, Architectures and Synthesis for Embedded Systems, pp.16, 2013

[26] C. Decker, R. Wattenhofer, “Information Propagation in the Bitcoin Network” Peer-to-Peer (P2P), 2013 IEEE Thirteenth International Conference on, pp.1-10, 2013

[27] M. Peck, “The Bitcoin Arms Race is on!” Spectrum, IEEE, 50(6), pp11-13, 2013

[28] P. Franco, “Understanding Bitcoin: Cryptography, Engineering and Economics”, John Wiley & Sons, 2014

[29] M. B. Taylor, “Bitcoin and the Age of Bespoke Silicon”, In Proceedings of the 2013 International Conference on Compilers, Architectures and Synthesis for Embedded Systems, pp.16, 2013

[30] I. Kuon and J. Rose, “Measuring the gap between FPGAs and ASICs”. Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on, 26(2), pp.203-215, 2007

[31] How has Bitcoin mining changed?. Available at https://www.cryptocompare.com/mining/guides/how-has-bitcoin-mining-changed/ (Accessed 31 January 2016)

[32] D. Plohmann and E. Gerhards-Padilla, “Case study of the Miner Botner”, In Cyber Conflict (CYCON), 2012 4th International Conference on, pp.1-16, IEEE, 2012

[33] D. Plohmann and E. Gerhards-Padilla, “Case study of the Miner Botner”, In Cyber Conflict (CYCON), 2012 4th International Conference on, pp.1-16, IEEE, 2012

[34] I. Eyal, “The Miner’s Dilemma”, 2015 IEEE Symposium on Security and Privacy, DOI 10.1109/SP.2015.13, 2015

[35] A. Gervais, G. Karame, S. Capkun and V. Capkun, “Is Bitcoin a decentralized currency?” IACR Cryptology ePrint Archive. pp829, 2013

[36] J. Bonneau, A. Miller, J. Clark, A. Narayanan, J. A. Kroll and E. W. Felten, “Research Perspectives and Challenges for Bitcoin and Cryptocurrencies (Extended Version)” Cryptology ePrint Archive, Report 2015/452, 2015

[37] I. Eyal, “The Miner’s Dilemma”, 2015 IEEE Symposium on Security and Privacy, DOI 10.1109/SP.2015.13, 2015