A physicist’s journey into cracking the bitcoin.

Written by ashifshereef | Published 2018/03/27
Tech Story Tags: bitcoin | blockchain | blockchain-technology | finance | tech

TLDRvia the TL;DR App

From nebulae to neurons, then to the Quantum realm.

Bitcoin has rattled some powerful cages. It is prophesized to be the “ultimate decentralizer”; the “dethroner” of the centralized banking elite. So it is evident that in order to be placed and hyped into such a historic trajectory, it needs to be governed by laws and rules that offer good security- a security that can withstand government level interventions, network attacks and the black hat. For you to understand how this security is implemented, you need to understand what hashing is. This security is the backbone of bitcoin. But, somehow, this doesn’t mean that bitcoin is not Hackable. It is susceptible to social engineering and stupidity-induced attack vectors. No matter how secure your home is, if you leave the gates and the doors wide open, you invite a Robbery.

SHA256 is the name of the hashing algorithm that governs the hashing in Bitcoin networks. SHA 256 is made up of 256 bits.

You already know that your 4 digit ATM PIN is not stored anywhere. Instead, a hash is generated from the 4 digits and that hash is stored in the bank’s database. When you type in your PIN at the time you want to perform some transactions, the ATM machine will produce a hash from the PIN you entered and it will be compared with the hash that is already stored.

Unlike in encryption, here, there is actually no correlation between the source data and the resulting hash. The only way the hash can be reversed is by counting all the possibilities that the hash can produce. Which means, you need to find every combination of numbers that a 256 bit address space can produce.

Further splitting it down, let’s say you are solving a puzzle and at some step, you are required to find a 4 digit number and put it into the lock of a door that leads you to the next level of the game. You can try as many numbers as possible and the door will only open once the correct number is inserted. The password is binary; that means it consists entirely of 1 and 0s. So you need to find a number that is made up of 1s and 0s. Let’s call these numbers as bits.

And you have no clues. You open the door or you die.

All you can possibly do, is to manually try every number starting from 0000 to 1111.

How many numbers will you have to try, in the worst case?

That number is given by the formulae ²⁴=16.

So, in the same way, our computers operate in a binary space. It comprehends every data is receives as binary data.

Our Bitcoin block chain is represented by a 256 bit hash. To reverse that hash, you will need to try every combination of a 256 bit number. That means, any algorithm, wishing to reverse the 256 bit hash, to produce the origin data has to run permutations on the hash of order 2^²⁵⁶. You have to create random data sets, convert them into hash, and then compare the two hashes. You have to do that for 2^²⁵⁶ times in worst case. If you have any idea how much that number is, you wouldn’t have had the security related doubt in the first place.

For beginners, let’s begin by saying that the total number of atoms in the entire universe is 2^²⁶⁶.

Doing little calculations (not so little), we get that if a supercomputer that can perform 15 trillion calculations per second is employed in cracking the hash, it would take almost 0.65 billion billion years to crack the hash of a single Bitcoin address. Yeah, that sentence had two consecutive “billions”.

Now, according to Moore’s law, electronics (and hence computing) power will increase with time, and new advancements in the field of Quantum computers (Computers that works on the principles of quantum mechanics) would be able to beat the problem of reversing the hash.

But even if a Quantum computer is employed, it would still take 10^ ³² years to calculate one hash. The public key is passed through numerous one way hash functions which are essentially quantum-resistant.

That time period is longer than the 14 billion years the universe has existed, but less than the estimated 10^¹⁰⁰ years until the universe crunches during the heat death.

Now, with the current heading, our computational capabilities doubles every year (Moore’s law states two years, but we will err on the side of caution). Even if it is so, only after 59 years, we would reach such computational capabilities by which we can crack and reverse one hash in 1.3 years.

Ah-oh.

Read on. Let’s get to some crazy physics facts about how long we can travel in this direction, tasked with the mathematical mission requiring us to solve a hash (The protector of Bitcoins).

Enter my all time favorite storytelling tool. Physics.

It is evident from the second law of thermodynamics that a certain amount of energy is required to represent information. Shout out your name, write your name in your book, it requires energy transfer of some sort. Let’ say we are typing your name into the computer (or mobile). Certain transistors would need to switch states to represent and store that information. So, to change the system by even one bit, your system requires an energy no less than kT.

T happens to be the absolute temperature of the system and k is called the Boltzmann constant.

The value of k is 1.38×10^(–16) erg/°Kelvin, and the ambient temperature of the universe approximates to 3.2°Kelvin. So our computers are operating at 3.2°Kelvin, given that we are not operating it somewhere outside the realms of classical physics, where laws of physics doesn’t work, like inside the event horizon of a black hole. Let’s imagine that we are still on earth, doing this computation. Our ideal computer would consume 4.4×10^(–16) ergs every time we set or clear a bit. (Do something on your computer and all your activities like, click, drag, and key strokes, translates to transistor activities in the underlying circuits. The software in the midst handles the way humans interact with something as lifeless as a hardware system.)

Now, hold on with me on this ride.

The annual energy of the sun is estimated to be at 1.21×10^ ⁴¹ ergs. This energy is enough to power almost 2.7×10^⁵⁶ single bit switching of our ideal computer. It is enough power to run a 187 bit counter through all its values. Imagine that we build a Dyson sphere around the sun (Dyson sphere is an imaginary construct future civilizations are theorized to use to harvest the full power of sun by enwrapping the star with energy harvesters. These type of future human civilizations are called Type III civilizations. We are Type 1.5). If we capture all of its energy continuously for 32 years without any sort of loss, we obtain enough power to operate a computer to count up to 2^¹⁹². After this upper limit, it won’t have power to calculate further more.

You get the scale of energy we are talking about? Here are more, if you want to know how much it is.

Be known that solar storms, small solar sparks that blows off the surface of the sun known as Coronal Mass ejections (CME), are extinction level events(ELE). A single spark that may be flowing the way of earth one fine morning would cause an extinction level event (We missed one back in 2012, by the breadth of a hair, not ELE though).

And here we are, discussing about harvesting sun’s total output for 32 years, and still it is unable to solve for a single SHA256 hash that protects the Bitcoin.

So we can’t break the hash with sun’s energy. Why don’t we move over to higher order energy sources, such as a supernova explosions, which are the birthplaces of a star? The typical supernova gives off something like 10^⁵¹ ergs. If this energy could be channeled into solving for hashes, we would be able to count up to 219 bits.

Still, our 256 bit is out of reach for such celestial machines such as stellar wombs.

It has nothing to do with the technology. They are the upper limits thermodynamics will allow. If brute force wasn’t the only way to crack well-crafted hashes, then the story would change. But fortunately, our only resort is start a brute force algorithm and hope that it would eventually run into the solution.

But it won’t.

Breaking it would be infeasible until computers are made from things other than matter and occupy things other than space.

The block chain technology was intelligently open-sourced so that when Quantum computers and Quantum algorithms such as Shor’s algorithms arrive, the keepers of the technology will advance the defenses to Quantum cryptography.

But mind you, in case your account is hijacked or your private keys are compromised physically, then you are screwed. If the people suddenly start to abandon Bitcoin for something else, it would fall. Technologically it maybe incorruptible and un-hackable, but it is prone to the laws of economics. All these guarantees of the celestial machines won’t come to your salvation. Maybe government will impose strict rules out of fear, or maybe mass hackings of wallets will happen (because of your carelessness off course!!!). Maybe your private key gets stolen and it can lead to compromising your wallet.

Block chain is the original technological backbone that empower Bitcoins. There are a lot of crypto currencies, like Litecoin, Ripple and Etherium, issued worldwide. All are empowered by block chain.

There is a lot more to write about how block chain will revolutionize science, finance, education, politics and medicine. There are means by which this technology can dethrone world governments and all sorts of centralized authorizes and enforce a more efficient version of democracy. The implications are countless.

But that’s a story for another time.

______________________

At WeHUBS Innovations, we always try to ponder the infinite with technologies like Artificial Intelligence, Augmented Reality and Computer Vision. Connect with us on Facebook. For collaborations and other enquiries , please visit wehubs.com. We would like to work with you on amazing ideas.


Published by HackerNoon on 2018/03/27