Bitcoin Forum
September 18, 2026, 04:48:41 AM *
News: Latest Bitcoin Core release: 31.1 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: How secure is the seed? Some noobish questions...  (Read 264 times)
pooya87
Legendary
*
Offline

Activity: 4228
Merit: 12557



View Profile
September 17, 2026, 03:58:38 PM
Merited by hosemary (2)
 #21

Since this wallet has been around long before the latest RNG in Linux kernel version 5.17, is there really any effective difference in the entropy between seeds generated on a 10yr old Linux OS versus the latest version? Wouldn't they both have 132 bits?
The entropy size being 132 bits is not related to the RNG. It is because of how the code is written and how the Electrum mnemonic algorithm works.
Basically with a word-list containing 2048 items, each word represent 11 bits from 000_00000000 to 111_11111111). So 12 words represents 12*11=132 bits. Keep in mind that we only need 128 bits for them to be secure. There are two algorithms:
  • In BIP-39 the purpose of checksum is to ensure integrity of the input and is used as padding. So we produce 128 bits of entropy then compute its hash (checksum) and add 4 bits of that to the end of the entropy to get 132 bits total. Then split those bits into 12x 11-bit limbs, each representing a word.
  • In Electrum the purpose of checksum is to determine the wallet type and is not used for padding. So in order to have 12 words we need to actually produce 132 bits of entropy. Then we convert those bits into the mnemonic (ie. 12 words) and compute hmac (checksum) of it to determine the wallet type.
Quote
Does adding extra words (even up to 24) still result in the same 132 bits as simply using the 12 words?
Your mnemonic will still be 12 words, the extra words you add as "passphrase" is an additional entropy you are adding on top of it.

Quote
Did earlier versions of Electrum create seeds with less than 132 bits?
I'm not quite sure how the "old" algorithm[1] works (I think it used 128 bits) but after the old algorithm in early 1.x version, the "new" algorithm hasn't changed and has been using 132 bits by default.

[1] https://github.com/spesmilo/electrum/blob/master/electrum/old_mnemonic.py

▄▄████████████████████▄▄
▄███████▀▀██████▀▀███████▄
████████████████████████
████████▄▄██████▄▄██████

████████████████████████
██▄▄█████████████▄▄██████
██▀▀██████████████████▄▄██
██████▀▀██████████████▀▀██
██████████████████████████
██████▀▀██████▀▀████████
████████████████████████
▀███████▄▄██████▄▄███████▀
▀▀████████████████████▀▀
 
 DΞX.fo 
▄▄██████
█████████
██████████
█████████
██████████
█████████
▀▀██████

▄███████
▄██████████
████████████
█████████████
█████████████
|
▄▄█
▄████▀
▄███▀
▄██▀▄██
█████▀▀
███████
████████
▀██▄████
▄████▄▄
▄█████▀███
▄█████▀████
█████▀███████
▀██▀█████████
|..BTC......XMR...
..USDT.....LTC...
....Fees  0.8%.....
Pages: « 1 [2]  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!