Bitcoin Forum
April 25, 2024, 12:16:28 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: What is the guarantee that the SEED given to me is random generated ?  (Read 575 times)
AMOD (OP)
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 07, 2017, 07:28:51 AM
 #1

What is the guarantee that ELECTRUM has not pre-generated some seeds and knows those private keys and when i generate a new wallet, it gives me the same SEED?
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
1714047388
Hero Member
*
Offline Offline

Posts: 1714047388

View Profile Personal Message (Offline)

Ignore
1714047388
Reply with quote  #2

1714047388
Report to moderator
1714047388
Hero Member
*
Offline Offline

Posts: 1714047388

View Profile Personal Message (Offline)

Ignore
1714047388
Reply with quote  #2

1714047388
Report to moderator
1714047388
Hero Member
*
Offline Offline

Posts: 1714047388

View Profile Personal Message (Offline)

Ignore
1714047388
Reply with quote  #2

1714047388
Report to moderator
mocacinno
Legendary
*
Online Online

Activity: 3374
Merit: 4917


https://merel.mobi => buy facemasks with BTC/LTC


View Profile WWW
February 07, 2017, 07:37:56 AM
 #2

What is the guarantee that ELECTRUM has not pre-generated some seeds and knows those private keys and when i generate a new wallet, it gives me the same SEED?

You're free to read the sourcecode yourself, and compile the wallet using the sourcecode you manually verified.

https://github.com/spesmilo/electrum

Personally, i've used electrum for a long time, never had problems with it...

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
AMOD (OP)
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 07, 2017, 08:56:36 AM
 #3

Thanks for reply.

However, i am not conversant with the language so cannot verify on my own.

Is there any other way to know that the SEED is not pre-decided ? Also how to ensure that private keys are built from this SEED only. Theoretically it is possible that the SEED is random but the private key building algorithm is fixed by the programmer. Programmer could have pre-created many Private key-public key-address combinations and the algorithm is generating only those outputs. Thus he can spent from my thus generated addresses.

Am I worrying too much and should go by the reputation of ELECTRUM?
mocacinno
Legendary
*
Online Online

Activity: 3374
Merit: 4917


https://merel.mobi => buy facemasks with BTC/LTC


View Profile WWW
February 07, 2017, 09:32:09 AM
 #4

Thanks for reply.

However, i am not conversant with the language so cannot verify on my own.

Is there any other way to know that the SEED is not pre-decided ? Also how to ensure that private keys are built from this SEED only. Theoretically it is possible that the SEED is random but the private key building algorithm is fixed by the programmer. Programmer could have pre-created many Private key-public key-address combinations and the algorithm is generating only those outputs. Thus he can spent from my thus generated addresses.

Am I worrying too much and should go by the reputation of ELECTRUM?

Yes, you're worrying to much, ThomasV is a standup member of the community, and i seriously doubt he'd even attempt to sneek in a backdoor. Even if he would ever do such a thing (which i seriously doubt!!!), the sourcecode is open source, so i assume the backdoor would have been found by now.

If you're really, really, really, afraid of everything and everyone, you can always generate your own seed and use this in electrum.
You can use the seed to generate the xprv and xpub, and use online or offline tools to verify if the addresses generated by your own seed match the addresses generated by electrum

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
OmegaStarScream
Staff
Legendary
*
Offline Offline

Activity: 3458
Merit: 6099



View Profile
February 07, 2017, 04:51:45 PM
 #5

As mentioned above the Electrum wallet is open source and not trusting the developer cannot be an issue as you could compile and review the source code yourself , think of it logically even If you don't know Python , somebody else would find the backdoor If there was any. The developer of the wallet is also known in real life so doing such a thing will only result into going to jail and I don't see why he would take this risk.

█▀▀▀











█▄▄▄
▀▀▀▀▀▀▀▀▀▀▀
e
▄▄▄▄▄▄▄▄▄▄▄
█████████████
████████████▄███
██▐███████▄█████▀
█████████▄████▀
███▐████▄███▀
████▐██████▀
█████▀█████
███████████▄
████████████▄
██▄█████▀█████▄
▄█████████▀█████▀
███████████▀██▀
████▀█████████
▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀
c.h.
▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄
▀▀▀█











▄▄▄█
▄██████▄▄▄
█████████████▄▄
███████████████
███████████████
███████████████
███████████████
███░░█████████
███▌▐█████████
█████████████
███████████▀
██████████▀
████████▀
▀██▀▀
kolloh
Legendary
*
Offline Offline

Activity: 1736
Merit: 1023


View Profile
February 07, 2017, 05:04:17 PM
 #6

As mentioned above the Electrum wallet is open source and not trusting the developer cannot be an issue as you could compile and review the source code yourself , think of it logically even If you don't know Python , somebody else would find the backdoor If there was any. The developer of the wallet is also known in real life so doing such a thing will only result into going to jail and I don't see why he would take this risk.

Yeah, this is definitely true. The code is open source so you can see the functions that generate the seeds and private keys to verify they are indeed random. You would of course have to have some programming experience to be able to understand the code, but the fact that the code is open source, means that many other people have reviewed the code and any issues would have been brought to light by now.
Coding Enthusiast
Legendary
*
Offline Offline

Activity: 1039
Merit: 2783


Bitcoin and C♯ Enthusiast


View Profile WWW
February 07, 2017, 05:54:47 PM
 #7

Whenever it comes to an open source project, you have only two options:
- Either go through the code yourself and see what is happening in there
- Put your trust in the years which the code/wallet has being around (at least late 2011) and the number of people using that wallet.

If things you are assuming were true, somebody would have already found the shenanigans on the source code or have lost money Smiley

Projects List+Suggestion box
Donate: 1Q9s or bc1q
|
|
|
FinderOuter(0.19.1)Ann-git
Denovo(0.7.0)Ann-git
Bitcoin.Net(0.26.0)Ann-git
|
|
|
BitcoinTransactionTool(0.11.0)Ann-git
WatchOnlyBitcoinWallet(3.2.1)Ann-git
SharpPusher(0.12.0)Ann-git
Lumpi101
Newbie
*
Offline Offline

Activity: 8
Merit: 0


View Profile
February 07, 2017, 06:44:46 PM
 #8

A related question:

What is the seed for the pseudo random number generator which creates the Electrum-seed?
Under normal circumstances I would just use the system time. But this would be a very bad idea here because then any attacker could just brute force over all time stamps (which are in seconds or milliseconds) of some day in the past and check for the generated seeds whether they are used, isn't it?
So from where comes the seed for the seed?

(I haven't looked into the code because I assume this would be too much effort for me to understand.)
kolloh
Legendary
*
Offline Offline

Activity: 1736
Merit: 1023


View Profile
February 07, 2017, 07:57:50 PM
 #9

A related question:

What is the seed for the pseudo random number generator which creates the Electrum-seed?
Under normal circumstances I would just use the system time. But this would be a very bad idea here because then any attacker could just brute force over all time stamps (which are in seconds or milliseconds) of some day in the past and check for the generated seeds whether they are used, isn't it?
So from where comes the seed for the seed?

(I haven't looked into the code because I assume this would be too much effort for me to understand.)

It uses the Operating System's random number generator as shown in the https://bitcointalk.org/index.php?topic=167276.msg1746905#msg1746905 reply.

I looked at the code and it looks like it uses ecdsa.util.randrange which uses os.urandom as the main source of entropy. This function returns random bytes from an OS-specific randomness source. The returned data should be unpredictable enough for cryptographic applications, though its exact quality depends on the OS implementation. On a UNIX-like system this will query /dev/urandom, and on Windows it will use CryptGenRandom()

I don't think there is any reason to fear that someone would be able to generate the same seed.
Coin-Keeper
Hero Member
*****
Offline Offline

Activity: 758
Merit: 606



View Profile
February 07, 2017, 08:48:43 PM
 #10

AMOD (OP),

The largest problem you would likely have with using Electrum would come from downloading a bogus file.  As an example; did you GPG/PGP verify the file you downloaded to use on your computer?  Most don't, and then if they grab a bad/infected file they try and blame Electrum's code.  I have looked through github project's stuff on Electrum and have found nothing.  In candor, I am not an expert level coder, but I have read through many posts there from other coders that are in fact great a working through the Electrum code.  Your confidence in just how well reviewed this code is would be greatly improved if you went and read through how thoroughly its vetted!  The code is vetted line by line with many branches suggested and tried while improvements are being considered.  Great reading there, and you will leave with such a great feeling about Electrum being ROCK SOLID.

If you are using the binary signed by Thomas and verified as good, the file is as solid as his reputation.  If you wanted to go one possible step further you could download the proven and signed source code and then do your own build.  This would eliminate any chance the public binary and source code do not match.  For that to occur Thomas would have to have purposely done something during the build.  Not going to happen, but just saying you could do your own build.  I use hardware wallets so this issue is moot in my case, but believe me when I tell you I used Electrum without hardware wallets for years.  Its never let me down.

BTC: 1PYSBbuKM3kW19xe9TXJQfq64rPhd8XorF
Staked and Verified: https://bitcointalk.org/index.php?topic=996318.msg17102755#msg17102755
AMOD (OP)
Newbie
*
Offline Offline

Activity: 10
Merit: 0


View Profile
February 08, 2017, 03:57:16 AM
 #11

If I generate a seed on my own, how can I use it on ELECTRUM wallet? AS I know it generates it's own seed whenever we create a new wallet and does not allow us to type our own seed.
pooya87
Legendary
*
Offline Offline

Activity: 3430
Merit: 10499



View Profile
February 08, 2017, 05:54:32 AM
 #12

If I generate a seed on my own, how can I use it on ELECTRUM wallet? AS I know it generates it's own seed whenever we create a new wallet and does not allow us to type our own seed.

don't do it. you can not generate a truly random seed on your own, specially if you do it with hand or do it with a broken code that you make yourself.
also you can no longer use an arbitrary seed in electrum, you can read the sticky (https://bitcointalk.org/index.php?topic=153990.0) about it.

.
.BLACKJACK ♠ FUN.
█████████
██████████████
████████████
█████████████████
████████████████▄▄
░█████████████▀░▀▀
██████████████████
░██████████████
████████████████
░██████████████
████████████
███████████████░██
██████████
CRYPTO CASINO &
SPORTS BETTING
▄▄███████▄▄
▄███████████████▄
███████████████████
█████████████████████
███████████████████████
█████████████████████████
█████████████████████████
█████████████████████████
███████████████████████
█████████████████████
███████████████████
▀███████████████▀
█████████
.
Pages: [1]
  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!