Why randomness is truly important for your Seedphrase

Damilola Debel
AirGap

--

Randomness is a fundamental concept in computer science, cryptography, and many other fields. It refers to the concept of unpredictability and lack of pattern in a sequence of values. In the context of cryptography and computer science, randomness is often used to generate entropy, generate random numbers, shuffle data, etc.

When it comes to crypto wallets, which rely heavily on cryptography, the need for randomness is critical. Random number generators (RNGs) are sources commonly used by most crypto wallets to generate entropy (randomness) for the seed phrase. It is crucial that the seed phrases are generated randomly and unpredictably, as attackers could potentially guess them and gain access to the user’s funds.

The sequence most wallets use to generate your secret recovery phrase is to collect entropy from your device’s random number generator (RNG), then turn this entropy into recovery phrases, often represented as 12 or 24 words.

For example: “joke alien raccoon team planet throw frame utility acid rich tobacco setup earth oven solid audit because category play orange slide nut purse ahead”

While this process may seem simple, there is an underlying security concern that must be addressed. The primary issue is that it is difficult to verify how most RNG chips work, making it challenging to determine whether their output is genuinely random or whether it is a predefined sequence that merely appears random but can be reconstructed by the device manufacturer.

This limitation poses a risk to crypto wallet users, as a compromised or predictable RNG can lead to the theft of their funds. Attackers can potentially reverse-engineer the RNG algorithm, learn the sequence of outputs, and then use this information to retrieve the user’s recovery phrase and gain access to their funds.

We’ve been aware of this issue with random number generators since the first release of AirGap. As a result, over the years, we’ve created three methods for creating unpredictable randomness for entropy generation.

Randomness by combining inputs from the camera, microphone, accelerometer, touch, and RNG

AirGap employs a default method for generating randomness by collecting additional entropy from the camera, microphone, accelerometer, and touch input. Instead of relying on the device to give you randomness to generate the secret recovery phrase that you are not sure is truly random, the users have to provide those random numbers through camera, audio, accelerator, and touch plus the RNG.

This approach helps to decrease the attack vector from a potentially compromised RNG. The resulting secret recovery phrase includes both the output of the RNG and the inputs from the user. This added layer of security means that an attacker attempting to compromise and recalculate the secret recovery phrase must know all inputs. Therefore, even if the RNG is compromised, the secret recovery phrase remains secure in AirGap.

Randomness from coin flip and dice role

Alternately AirGap users can generate entropy for their recovery phrase by either rolling a casino-grade dice or tossing a coin. Unlike the RNG, using dice rolls or coin flips to generate entropy ensures that the recovery phrase is deterministic. This means that a different wallet or software can confirm that the same input will always yield the proper output. As a result, users can be confident that the secret they created on an AirGap wallet was generated randomly and has not been tampered with.

This approach solves the problem of not trusting software because it relies on a physical process that is verifiable and transparent. The user has control over the input sequence and can confirm that it was genuinely random. Therefore, the use of dice rolls and coin flips for entropy generation in AirGap wallets is a reliable and secure way to generate entropy for your recovery phrase and ultimately protect your crypto assets.

When using Dice Roll it is recommended to use a Casino-rated dice because every die must be truly random, which requires it to have razor-sharp edges and flush pips so each face has equal weight.

Advantages of Coin Flip and Dice Roll Entropy Collection

Elimination of RNG failure: Since the RNG is no longer involved when creating a secret recovery phrase, the associated risks are no longer an issue.

Verifiable secret recovery phrase: It also solves the challenge of not trusting software because the secret recovery phrase created from the coin flip and dice roll input is deterministic. As a result, a different wallet or software can confirm that the same input will always yield the proper output. The user can be confident that the secret he created on an AirGap was generated randomly and has not been tampered with.

Conclusion

In conclusion, randomness is a critical aspect in the world of cryptography and computer science, and the use of random number generators (RNGs) to generate entropy for crypto wallets carries a significant security risk. AirGap has addressed this issue by providing its users with two alternative methods of generating entropy for their secret recovery phrases: the first involves combining a camera, microphone, accelerometer, touch, and RNG to collect additional entropy, while the second employs a deterministic approach using dice rolls and coin flips. By doing so, AirGap has eliminated the risk associated with a potentially compromised RNG and provided users with a verifiable secret recovery phrase that can be trusted. This ensures that the user’s crypto assets are well-protected and safe from any potential attacks. To learn how to use the dice roll and coin flip visit this guide.

Do you have any questions regarding AirGap?

Reach out to us via Discord, Telegram or visit the AirGap help-center.

Download AirGap

AirGap Wallet

📱 iOS — App Store

📱 Android — Google Play (GitHub APK)

💻 macOS

💻 Windows

💻 Linux

AirGap Vault

📱 iOS — App Store

📱 Android — Google Play (GitHub APK)

Interested in AirGap? Stay in touch.

Discord |Telegram | GitHub | Website | Twitter | Reddit

--

--