Cryptography, Technology

The power of powers

If you take a penny and put it into a jar, and double what you put in the jar every day, at the end of a month you would have more than $5 Million dollars. When numbers grow rapidly, we call this property exponential growth. It is hard to wrap your head around numbers of this type, but here I provide a point of reference for large numbers.

In the world of technology we usually measure things in powers of two. This is a matter of practicality because in a computer, a piece of data, one-bit, has two states. For example, a light is either on or off.

Now if we add a second light to our first example of one bulb and two to the power of one, something interesting happens. We get two bulbs but four states.

OFF OFF

OFF ON

ON OFF

ON ON

When you have one lamp the states are just two.

That is what you can store in two bits, it’s “two to the power of two”, or 2×2=4 states or a simple notation for this is 2^2.

Add another light and now you would have two to the third power.

This would be calculated as 2x2x2=8, or more simply 2^3 how we note two to the third power. Note that each time the power of two goes up the results double.

Enough foundation, now some fun numbers.

Your odds of being hit by lightning are 2^33 or one in nine billion per day  of course then there are the folks like my friend Le Michael Burud who has been hit twice, how lucky 😎.

There are numbers and patterns you start to see over and over if you are around technology. You may have noticed that memory is often only available in certain increments like 8, 16, 32, 64, 128  or 256. It is no coincidence that these values are  2^3, 2^4, 2^5, 2^6, 2^7, and 2^8. This is the underlying reason for these values.

These numbers continue to grow quickly, you can express the age of our planet earth if you have at least 2^33rd power. The universe is 2^34 years old. The total expected lifetime of the universe is 2^37th power in years. 2^170 is the number of atoms on the planet.

There is nice chart I found here that includes a tables of powers of two from one to 222, see it here. It shows the exponential growing powers of two.

Going beyond that chart, 2^265 is the number of atoms in the universe. If you individually numbered each atom in the universe you could count them all inside of 2^265. I know, I counted, one, two, three, just kidding but there are academics that study these things and use number theory and what we know about the universe to estimate values like this.

Now, lets pivot together and talk about another area where we see big numbers. The keys used by modern cryptography are now typically 2^1024th power or 2^2048th power. These are BIG numbers. This is how large the number space is protecting your data, if strong encryption is being used. In fact the number space is so large that values like this are used to assign user IDs in many systems by randomly choosing a number inside a given number space. The space is so vast, that there is zero chance a number would be selected twice.

The way attackers “Break” cryptography involve trying ALL of the numbers in a guven number space. When this happens they call that a “Brute Force Attack“.

If you have four digits you just try all of them between 0000 and 9999 on a cheap four digit bicycle lock. Try them all eventually you open the lock. In fact statistically on a four digit lock half of the locks will open before you get to 4999.

Think about that. If you tried every possible combination of a  number between zero and two to the 2048th power, you would have to keep trying for billions and billions and billions of years, even on the fastest computer.

2048 bit keys
Even with the powerful computing power we have today, no one will live long enough to just try all of the keys to break the crypto protecting the files on your cellphone, unless someone makes a mistake when the cryptography is implemented. Breaking crypto is reliant on the fact that some error must have been made in the system of crypto.

It is way easier for example to just try a different pin on your phone everyday, one per day, until your phone unlocks. Since a pin on your cellphone is indeed like the four digit bike lock, it would only take between zero and 4999 tries to open half of the phones out there. If you tried one per day, it’s over 14 years to open half the phones.

In cases where crypto is cracked it is because an error was made while implementing the cryptography. Trust the crypto. It’s been keeping secrets a long time.

Hopefully you have made it all of the way to the end with me. If you have, you now have new ways to think about big numbers, and also a sense of the large the numbers that protect your data when cryptography is used.

Leave a Reply