MultiversX Tracker is Live!

Enhancing Bitcoin Security: A BIP39-Compatible Vernam Encryption Approach for Safeguarding Recovery Phrases

Bitcoin Reddit

More / Bitcoin Reddit 63 Views

Hello Bitcoin Community!

I'd like to introduce a method aimed at enhancing the security of crypto wallet recovery phrases, based on the BIP-39 protocol and Vernam encryption. Your feedback is important, so please feel free to share your thoughts. The method, detailed below, comes with significant advantages such as offline functionality and independence from electronic devices, thereby reducing the risk of hacking. Moreover, it contributes to minimizing the risk of theft and loss

Step 1: Converting Recovery Phrase Words

In a recovery phrase adhering to the BIP39 protocol, each word represents an 11-bit segment. To simplify and secure this representation, each word can be associated with a unique code A-B-C-D, where:

  • A represents the decimal conversion of the first 2 bits.
  • B represents the decimal conversion of the next 3 bits.
  • C represents the decimal conversion of the next 3 bits.
  • D represents the decimal conversion of the next 3 bits.

For example, take the word "satoshi":

  • Binary: 10 111 111 011
  • A-B-C-D Format: 2-7-7-3

Similarly, for the word "dream":

  • Binary: 01 000 010 100
  • A-B-C-D Format: 1-0-2-4

The public release of the word list, with equivalents in A-B-C-D format, offers transparency and trust. It aids user conversion, reducing the risk of manual errors.

Step 2: Random Key Creation

Vernam encryption relies on a random key for security. The key must:

  • Match the message length.
  • Originate from a perfectly random draw.
  • Be non-reusable for each word.

For each word, a random draw (E-F-G-H) is done, where:

  • E is a random number between 0 and 3.
  • F, G, and H are random numbers between 0 and 7.

This physical random draw enhances security against hacking, as it relies on a set of balanced dice, including a tetrahedral 4-sided die and three octahedral 8-sided dice, ensuring a reliable source of randomness.

Step 3: Encryption of Each Word

Each word (A-B-C-D) is manually encrypted with the corresponding key (E-F-G-H). The result is an encrypted word I-J-K-L, where each component is calculated by the following rules:

  • I = A + E (subtract 4 if I is greater than or equal to 4).
  • J = B + F (subtract 8 if J is greater than or equal to 8).
  • K = C + G (subtract 8 if K is greater than or equal to 8).
  • L = D + H (subtract 8 if L is greater than or equal to 8).

The simplicity and manual execution of the calculations reduce the risk of errors, ensuring independence from electronic devices and providing protection against potential hacking risks.

Practical Examples:

Encryption of "satoshi" (A-B-C-D = 2-7-7-3) with the result of the dice roll (E-F-G-H = 2-4-1-6):

  • I = 2 + 2 - 4 = 0
  • J = 7 + 4 - 8 = 3
  • K = 7 + 1 - 8 = 0
  • L = 3 + 6 - 8 = 1

The encrypted word is thus "0-3-0-1".

Encryption of "dream" (A-B-C-D = 1-0-2-4) with another dice result (E-F-G-H = 2-5-6-7):

  • I = 1 + 2 = 3
  • J = 0 + 5 = 5
  • K = 2 + 6 - 8 = 0
  • L = 4 + 7 – 8 = 3

Step 4: Decryption

If the user wants to retrieve their original words (A-B-C-D) from the encryption key and the encrypted words, they can follow a simple procedure:

  • A = I - E (add 4 if I < E).
  • B = J - F (add 8 if J < F).
  • C = K - G (add 8 if K < G).
  • D = L - H (add 8 if L < H).

This procedure allows for easy retrieval of the original words, ensuring accessibility for the user.

Concretely, the user has two options:

  • If they have easy access to the list of words in A-B-C-D format, they can easily retrieve each word.
  • If users don't have direct access to the list of words in A-B-C-D format, they can retrieve the index of each word by applying the formula (A * 512 + B * 64 + C * 8 + 1) and then find the word corresponding to the index on GitHub by printing the official BIP39 word list.

Practical Examples:

Decryption of 0-3-0-1 based on dice roll 2-4-1-6:

  • A = 4 + 0 - 2 = 2
  • B = 8 + 3 – 4 = 7
  • C = 8 + 0 – 1 = 7
  • D = 8 + 1 – 6 = 3

The decrypted word is 2-7-7-3 ("satoshi").

Decryption of 3-5-0-3 based on dice roll 2-5-6-7:

  • A = 3 – 2 = 1
  • B = 5 – 5 = 0
  • C = 8 + 0 – 6 = 2
  • D = 8 + 3 – 7 = 4

The decrypted word is 1-0-2-4 ("dream").

Method Summary:

The method for securing crypto wallet recovery phrases is based on Vernam encryption (One-Time Pad) with an innovative approach. After converting words into a specific format (A-B-C-D) and creating random encryption keys using physical dice (E-F-G-H), each word is encrypted, generating a list of encrypted words (I-J-K-L). The method ensures security, independence from electronics, and offers significant advantages.

Advantages:

  1. Enhanced Security: Vernam encryption, coupled with randomly generated keys, provides robust security. It is mathematically impossible to retrieve the original words from the encryption key or the encrypted words taken separately. This encryption method was demonstrated to be inviolable as early as 1949.
  2. Independence from Electronic Devices: By using physical dice, the method eliminates risks associated with electronic devices, adopting an offline approach.
  3. No Collusion: Unlike Shamir's secret sharing method, if the user entrusts encryption keys to trusted individuals, they cannot deduce the original recovery phrase.
  4. Reduced Risks of Theft or Loss: Separation of encryption keys and encrypted words, combined with several copies distribution to distinct locations, minimizes the risks of theft or loss.
  5. Manual Calculations for Security: Manual calculations, while not inherently complex, require user diligence in the encryption process. This approach actively involves the user, minimizing the hacking risk.
  6. Compatibility with a Passphrase: The method is perfectly compatible with adding a passphrase, offering an additional layer of security against physical threats and enabling plausible deniability.
  7. Ease of Retrieving Original Words: The user can keep the decryption method where they store their encrypted words, avoiding the challenge of forgetting the decryption method when needed.
  8. Flexibility in Key Management: Allows the user to choose the number of copies of encryption keys to distribute, providing flexibility in security management based on specific needs.
  9. Enhanced Auditability: The prior public release of the exhaustive list of words in A-B-C-D format, along with details on the conversion method, makes the process more transparent and auditable by the community, reinforcing user trust.

Limitations:

  1. Complexity for Non-Experts: The method may seem intricate for users unfamiliar with Vernam cryptography concepts and manual calculations, potentially limiting its accessibility for a less technically savvy audience.
  2. Passphrase Challenge: Adding a passphrase to the recovery phrase can establish a shared secret. However, this introduces the requirement for the passphrase to match the cryptographic robustness of a recovery phrase. This challenge can be substantial for an average user, given the need for both robustness and the potential psychological complexity associated with dividing the global secret into two.
  3. Sensitivity to Human Errors: The manual nature of the process introduces a sensitivity to human errors during conversion or calculation, potentially impacting the overall security. Users are strongly encouraged to verify and re-verify that the encryption is correctly executed by practicing both the encryption and decryption of their recovery phrase.

Note: It is crucial to emphasize that incorporating a passphrase remains pertinent for denying plausibility in the face of a physical attack, thereby enhancing overall security.

In Conclusion:

We are actively engaged in developing a device based on this innovative method, including the ongoing creation of a specific set of dice dedicated to this purpose. The construction of a dedicated website is underway, where the method and practical tools will be comprehensively presented. Our goal is to provide users with a diverse set of tools to effectively safeguard their recovery phrases, allowing each individual to choose the approach that best suits them without compromising on security.

How You Can Contribute:

  • Share your insights on the method. What aspects resonate with you, and are there areas that need further clarification?
  • Offer constructive suggestions. Your unique perspectives can contribute to the ongoing refinement of this security approach.

Intellectual property procedures, including a patent, and an external audit are also in progress to ensure the legitimacy and security of the ongoing device. The device is expected to be available in the near future.

Our primary aim is to make a meaningful contribution to enhancing the security of cryptocurrency wallets. Your feedback and constructive suggestions are invaluable in refining and improving this method. Together, we can fortify the security of the crypto community and contribute to a more robust and reliable environment.

Thank you for your engagement!

submitted by /u/Edocym
[link] [comments]
Get BONUS $200 for FREE!

You can get bonuses upto $100 FREE BONUS when you:
💰 Install these recommended apps:
💲 SocialGood - 100% Crypto Back on Everyday Shopping
💲 xPortal - The DeFi For The Next Billion
💲 CryptoTab Browser - Lightweight, fast, and ready to mine!
💰 Register on these recommended exchanges:
🟡 Binance🟡 Bitfinex🟡 Bitmart🟡 Bittrex🟡 Bitget
🟡 CoinEx🟡 Crypto.com🟡 Gate.io🟡 Huobi🟡 Kucoin.



Comments