🔐 $35 open-source Random Number Generator - USB Hardware 🔐

Do repost and rate:

In cryptography, the holy grail is a true random number. ... most services (linux, etc..) use a function called rand. This is software the generates a random number based on whatever entropy it can find. (temp, mouse movement, time, PID of the shell, etc..) These are never truly random results, but for most use cases they are more than adequate. However over the years there have been MANY successful attacks against the random number generators that were used for many services and protocols.

The key is in the entropy (randomness) used to start with... using temperature for instance has a set of limits. (too hot and the computer would melt, too cold it won't turn on) ... so the entropy is limited and only creates a pseudo-random generator. Elliptic curve digital signature algorithm (ECDSA), which is the core of cryptography in Bitcoin uses this idea of pseudo-random generation.

Every transaction in Bitcoin is required to be signed by the owner who owns the private keys. Apart from the private keys in each signature in ECDSA, the user should generate a random number k, which should really be generated randomly for every single transaction that the user makes. In fact, if the same private key of a user with the same random number k is used twice, anyone can calculate his private key and eventually spend his money. This applies to any wallets in Bitcoin including offline storage...Moreover, any linear relation between the two random number k1 and k2 in two different signatures compromises the user’s private key.

in 2015 coin exchange Bitstamp lost 18,866 BTC due to this problem, and 250 BTC were lost from blockchain.info due to the same errors during an security update. But ECDSA was already known to have flaws. In 2010 Sony acknowledged a hack of it's PS3 platform because they mis-implementated the ECDSA (Sony was using the same random number for all signatures .. a BIG NO-NO). Later in 2011 OpenSSL acknowledged the flaw in their ECDSA implementation that was weak against timing attacks. 

With the importance of true random numbers in all cryptography not only blockchain, there is an exciting project that is fully funded and ready for purchase (no relation or affiliate). It works by measuring the thermal value of resistors in a loop and whitening out the noise cryptographically.

"

Thermal noise of resistors is being amplified in an infinite loop to generate data – which is not totally random yet. By using modular entropy multiplication there is some correlation of adjacent bits in the stream.

Health monitoring of important parameters of the raw datastream is implemented in the devices driver, which then uses the SHA-3 hashing function for cryptographic whitening to produce true random numbers....

There is no way to override the signal without being noticed by the driver. Of course it’s possible to influence it a bit, but because we use modular entropy multiplication, this only makes the output slightly more random.

Since by definition there are no patterns in random data, how can you know the data coming from your entropy source was not spoofed? The Infinite Noise TRNG produces this predictable level of entropy, just because it’s the only way to constantly verify the hardware is working properly. And only then will it apply whitening with the SHA3 hashing function."

more info can be found here : https://player.vimeo.com/video/262119845

Regulation and Society adoption

Events&meetings

Reviews and LongReads

Ждем новостей

Нет новых страниц

Следующая новость