J. Anish Dev College of Engineering, Guindy, Anna University Bitcoin mining acceleration and performance quantification.

Slides:



Advertisements
Similar presentations
Optimistic Methods for Concurrency Control By : H.T. Kung & John T. Robinson Presenters: Munawer Saeed.
Advertisements

Scalable Multi-Cache Simulation Using GPUs Michael Moeng Sangyeun Cho Rami Melhem University of Pittsburgh.
Nathan Krussel.  What is a Crypto Currency  Purpose of Crypto Currency  What is Bitcoin  How does Bitcoin work  Mining BTC  How people perceive.
Alternative Simulation Core for Material Reliability Assessments Speculation how to heighten random character of probability calculations (concerning the.
GPU Virtualization Support in Cloud System Ching-Chi Lin Institute of Information Science, Academia Sinica Department of Computer Science and Information.
GPU System Architecture Alan Gray EPCC The University of Edinburgh.
Digital Signatures and Hash Functions. Digital Signatures.
Exploiting Graphics Processors for High- performance IP Lookup in Software Routers Author: Jin Zhao, Xinya Zhang, Xin Wang, Yangdong Deng, Xiaoming Fu.
GPGPU Introduction Alan Gray EPCC The University of Edinburgh.
Case Tools Trisha Cummings. Our Definition of CASE  CASE is the use of computer-based support in the software development process.  A CASE tool is a.
Bitcoin Double Spending Attack Karame, Androulaki & Capkun Presented by Subhro Kar CSCE 715, Fall 2013.
Team Members: Tyler Drake Robert Wrisley Kyle Von Koepping Justin Walsh Faculty Advisors: Computer Science – Prof. Sanjay Rajopadhye Electrical & Computer.
Improving the versatility of D.C.F. models by simple computer applications.
CUDA Programming Lei Zhou, Yafeng Yin, Yanzhi Ren, Hong Man, Yingying Chen.
1 Programming & Programming Languages Overview l Machine operations and machine language. l Example of machine language. l Different types of processor.
BITCOIN An introduction to a decentralised and anonymous currency. By Andy Brodie.
Operating Systems.
[ §4 : 1 ] 4. Requirements Processes II Overview 4.1Fundamentals 4.2Elicitation 4.3Specification 4.4Verification 4.5Validation Software Requirements Specification.
To GPU Synchronize or Not GPU Synchronize? Wu-chun Feng and Shucai Xiao Department of Computer Science, Department of Electrical and Computer Engineering,
GPGPU platforms GP - General Purpose computation using GPU
OpenSSL acceleration using Graphics Processing Units
Sort-Last Parallel Rendering for Viewing Extremely Large Data Sets on Tile Displays Paper by Kenneth Moreland, Brian Wylie, and Constantine Pavlakos Presented.
Accelerating SQL Database Operations on a GPU with CUDA Peter Bakkum & Kevin Skadron The University of Virginia GPGPU-3 Presentation March 14, 2010.
Lecture slides prepared for “Computer Security: Principles and Practice”, 2/e, by William Stallings and Lawrie Brown, Chapter 21 “Public-Key Cryptography.
The world’s first decentralized digital currency Meni Rosenfeld Bitcoil 29/11/2012Written by Meni Rosenfeld1.
On Power Splitting Games in Distributed Computation: The case of Bitcoin Pooled Mining Loi Luu, Ratul Saha, Inian Parameshwaran, Prateek Saxena & Aquinas.
Introduction to Parallel Programming MapReduce Except where otherwise noted all portions of this work are Copyright (c) 2007 Google and are licensed under.
Training Program on GPU Programming with CUDA 31 st July, 7 th Aug, 14 th Aug 2011 CUDA Teaching UoM.
RTS/CTS-Induced Congestion in Ad Hoc Wireless LANs Saikat Ray, Jeffrey B. Carruthers, and David Starobinski Department of Electrical and Computer Engineering.
Bitcoin (what, why and how?)
© 2009 Matthew J. Sottile, Timothy G. Mattson, and Craig E Rasmussen 1 Concurrency in Programming Languages Matthew J. Sottile Timothy G. Mattson Craig.
CuMAPz: A Tool to Analyze Memory Access Patterns in CUDA
MIDeA :A Multi-Parallel Instrusion Detection Architecture Author: Giorgos Vasiliadis, Michalis Polychronakis,Sotiris Ioannidis Publisher: CCS’11, October.
Wen Haofu, Miles Computer Engineering University of Hong Kong.
Java Security Pingping Ma Nov 2 nd, Overview Platform Security Cryptography Authentication and Access Control Public Key Infrastructure (PKI)
Y. Kotani · F. Ino · K. Hagihara Springer Science + Business Media B.V Reporter: 李長霖.
1 Anonymous Trust: Digital Rights Management Using Broadcast Encryption Proceedings of the IEEE, Vol. 92, No. 6, June 2004.
Bitcoins and the Digital Economy Presented By: Matt Blackman.
Bitcoins – Mining and Trading Jonathan Day, Carpe Diem 18 th July 2013.
Chapter 21 Public-Key Cryptography and Message Authentication.
Conclusions and Future Considerations: Parallel processing of raster functions were 3-22 times faster than ArcGIS depending on file size. Also, processing.
Evaluating FERMI features for Data Mining Applications Masters Thesis Presentation Sinduja Muralidharan Advised by: Dr. Gagan Agrawal.
GPU Architecture and Programming
1 Bitcoin A Digital Currency. Functions of Money.
StrideBV: Single chip 400G+ packet classification Author: Thilan Ganegedara, Viktor K. Prasanna Publisher: HPSR 2012 Presenter: Chun-Sheng Hsueh Date:
Compiler and Runtime Support for Enabling Generalized Reduction Computations on Heterogeneous Parallel Configurations Vignesh Ravi, Wenjing Ma, David Chiu.
An Integrated GPU Power and Performance Model (ISCA’10, June 19–23, 2010, Saint-Malo, France. International Symposium on Computer Architecture)
Bitcoins: Decentralized Digital Currency How it Works When Bitcoin was first created, 21 million coins were scattered across the digital realm and hidden.
IT 221: Introduction to Information Security Principles Lecture 5: Message Authentications, Hash Functions and Hash/Mac Algorithms For Educational Purposes.
Bitcoin is a cryptographic currency that has been in continuous operation over the last 3 years. It currently enjoys an exchange rate of $4.80 (as of April.
December 13, G raphical A symmetric P rocessing Prototype Presentation December 13, 2004.
Agenda  Quick Review  Finish Introduction  Java Threads.
Heterogeneous Processing KYLE ADAMSKI. Overview What is heterogeneous processing? Why it is necessary Issues with heterogeneity CPU’s vs. GPU’s Heterogeneous.
A Level Computing – a2 Component 2 1A, 1B, 1C, 1D, 1E.
Kermit Lowry, John Whatley, Wesley Cooper, and Matthew Eith
Distributed Processors
Presented by Munezero Immaculee Joselyne PhD in Software Engineering
Bitcoin - a distributed virtual currency system
Cryptocurrencies By Rui Sakurai and Shane Spears
Creating Crypto Community……!
Easy Tips for Beginners on How to Mine Zcash Cryptocurrency
M onero is an open source, secure, private and non-traceable cryptocurrency. Monero token is known as XMR. Monero is aimed at privacy of transaction and.
So what is Blockchain anyway?

Zcash Mining – A Guide For Beginners. Zcash (also known as ZEC and seventeenth most valued cryptocurrency with market capitalization of $500 million)
Nonce Making Sense of Nonces.
Wokshop SAIS 2018 Dr. Meg Murray Kennesaw state university
Faculty Seminar Series Blockchain Technology
Lecture 18: Coherence and Synchronization
Presentation transcript:

J. Anish Dev College of Engineering, Guindy, Anna University Bitcoin mining acceleration and performance quantification

INTRODUCTION  Cryptocurrency?  Digital medium exchange to ensure integrity and general balance of all ledgers.  Monetary units of cryptocurrency require certain amounts of work, called Proof-Of-Work, expended to be produced and cannot be reproduced to a materialized representation by contemporary fashion  Absence of a central Authority

INTRODUCTION  Comparing Fiat money and Cryptocurrency  Holder’s ownership is completely anonymous  Derives trust from mathematical properties and cryptographic primitives, not from legal tender statues or figures of authority Hash function, a cryptographic primitive extensively used in Bitcoin  Logically immune against counterfeit and other problems like Double Spending

INTRODUCTION  Fundamental Bitcoin transaction overview  Requires basic knowledge of asymmetric cryptography, and cryptographic hashing

Technical run through of a transaction

10 minute outcome New coins Mined

BITCOIN MINING  Fundamental steps in Mining: 1.Reception of the hash of the last block, valid transactions and current Difficulty factor 2. Interpretation of the Difficulty factor to define required success test condition for generated hashes. Essentially, a required number of initial zeros required in the hash to be discovered

BITCOIN MINING  Fundamental steps in Mining: 3. Performance of trial and error of various nonce values until the double SHA256 hash digest of the block header is less than the target hash 4. Submission of the winning nonce value to the Bitcoin network or restart from step I if other miners find a winning nonce first

CURRENT STANDARDS  Mining with non-custom, standard hardware  Mining with custom hardware For example, GPU Mining rigs For example, ASICs, FPGAs

PROPOSED WORK Understanding the Relevance  Solo Mining with standard equipment is no longer relevant  Miners resort to pooled mining to combine processing power and share resources  Significant number of miners and overall hash rates are contributed by GPU rigs

PROPOSED WORK Understanding the Relevance  ASIC and FPGA hardware are capable of a much greater production of hash rates many times the rates produced by top of the range GPUs  They are also more energy efficient in practically all cases of comparison  These products are very much expensive compared to GPUs. Some products cost greater than $5000  Avoiding the obvious fact that greater investment implies greater hash rates and hence greater incentives, this proposed work describes a fairly simple method which contextually boosts hash rates in mining pools, in most cases, with preexisting equipment.

PROPOSED WORK  In a Nutshell, Combined usage of CPU and GPU.  Though seemingly irrelevant to current hash rates, this method when employed by standard hardware miners, can boost overall rates to significant extents.  Key point of understanding the relevance is “Contextual Acceleration”

PROPOSED WORK Implementation Outline  Mining on the CUDA Device Allocation of resources on the device, namely, a single instance of the structure holding block header details required in the hashing, and a copy of the best nonce for each thread executing in the device. Initialization of variables in the kernel function for concurrent SHA256 operations, notably : Performance of double SHA256 computation on the trial block structure filled with static data as received using the Bitcoin protocol and with an incremented trial. Test if hash obtained from step 3 is smaller than the target hash as given by the difficulty 1)2) 3) 4)

PROPOSED WORK Implementation Outline  Mining on the CPU Allocation of resources, as mentioned in GPU mining, instead here, in the RAM.. Initialization of variables to concurrently provide an id for starting values of the nonce to each parallel instance of the SHA256 operation performed by each thread on each core of the CPU Performance of double SHA256 computation of the trial block structure the same way as mentioned in GPU mining Test if hash obtained from step 3 is smaller than the target hash as given by the difficulty 1)2) 3) 4)

RESULTS Testing environment  These machines were chosen to analyze ratio differences in hash rates obtained in a high end computer with an intermediately powerful graphics cards and a normal home computer with a standard graphics card and processor.  The proposed approach was tested on 2 machines dubbed C1 and C2. C1 had CPUs Intel 3.3 GHz, 4 Cores, 8 logical processors and GPUs NVIDIA GTX 550 TI. C2 had CPUs Intel 2.5 GHz, 2 cores, 4 logical processors.  The results were analyzed in terms of increase in hash generation rate upon combined usage of CPU and GPU as opposed to sole usage of the GPU. Hash rates were observed along the first few seconds of mining till the rates stabilized

RESULTS Test Results

RESULTS Test Results

RESULTS Test Results

CONCLUSIONS Implications  The 9.3%, 39.68% and 30.37% hash generation rate boost in machines C1, C2,C1 and C2 considered simultaneously, are numerically substantial figures.  Currently, a large number of pool miners use their GPUs, however powerful, solely for mining without necessarily including their CPUs, which are generally powerful, since high end GPUs are marketed along with high end CPUs for gamers and high end users.  When considering an entire mining pool, for example, a totally of 27,682 miners, online on a public miner in December 2013, constituting a total hash rate of 2,172 Trillion hashes per second, it is inferred that that each miner averages a little more than 4 billion hashes per second. It is unlikely that each and every one of the miners had used an FPGA,

CONCLUSIONS Implications  The pool, therefore, consists of a highly imbalanced and irregular distribution of miners with a minority of them contributing to a large fraction of the total hash rate.  The results established in this paper show how standard hardware miners in large mining pools such as this, could quite significantly add to the overall hash rate. This can be roughly quantified by assuming a mere 1000 of these users to be possessing hardware capable of hash rates between the hash rates of test machines C1 and C2. Taking an average of 35 Million GPU hashes per second and 15 Million CPU hashes per second, 1000 miners can be expected to output an additional 15 Trillion hashes per second, which is a considerably large boost when seen in terms of actual hashes generated per second.

CONCLUSIONS The Botnet implication  This boost could serve to be advantageous for botnet herders attempting to harness compromised machines to perform Bitcoin mining

CONCLUSIONS The Botnet implication  Owing to its comparatively lower value ($30, December 2013) most miners are tempted to contribute to Bitcoin mining instead of Litecoin mining, which uses scrypt hashing instead of Bitcoin’s SHA256  A botnet herder could take advantage of the comparatively smaller number of miners and hence, smaller total hash rates, and go on to be a relatively dominant Litecoin miner, which is very improbable in the case of Bitcoin mining. Furthermore, if a botnet comes to possess enough computing power to attribute to 51% or more of the entire hash rate, an attacker could even modify a past bock, undo and then redo “Proof-of-Works” of blocks and eventually surpass the work of honest miners  This is, however, not very possible in the Bitcoin network as achieving 51% of the entire mining hash rate is extremely impractical on any botnet, even with ones having millions of bots.

QUESTIONS