I am trying to understand how Electrum works exactly here ![Roll Eyes](https://bitcointalk.org/Smileys/default/rolleyes.gif) . That's actually a very nice outlook. People like you force us to look deeper and everyone learns something new from that. So yeah ask away ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif)
|
|
|
And for the Scene 2 now, What encryption is used to encrypt the hex in Scene 1... Any devs here to help?
I believe that it uses the password to encrypt using pbkdf2 in the following manner: def mnemonic_to_seed(self, mnemonic, passphrase): PBKDF2_ROUNDS = 2048 mnemonic = normalize_text(mnemonic) passphrase = normalize_text(passphrase) return pbkdf2.PBKDF2(mnemonic, 'electrum' + passphrase, iterations = PBKDF2_ROUNDS, macmodule = hmac, digestmodule = hashlib.sha512).read(64)
Hashing functions are not encryption functions. That's converting the seed words to the master private key. There is no encryption involved there. This function is actually from bip39 although electrum uses a different seed mnemonic format. The passphrase in this instance is the "extend your seed with custom words" thing that electrum introduced recently. To see that option create a new wallet and during the seed display window phase click on options. I see you've figured out how to decrypt the new seed from scene 2 using the console. But the OP could just have opened the wallet file using electrum and then viewed the seed via the GUI menu option wallet > seed. You can open a different wallet file using file > open or with the -w command line switch.
|
|
|
You can also get other tools that convert that Master Private Key into a BIP 39 mnemonic and vice versa so you can use that too.
That isn't possible since the way bip39 works the seed is passed through hashing functions and out comes the master private key. By definition the output of a hashing function cannot be reversed to get the input of the function. So it's a one way process. However it should be possible to take the extended private key and encode it as a mnemonic using some other algorithm i.e. not bip39. Hmm. Right, you can't do that since the mnemonic only goes one way to the seed. I must have been thinking of a different algorithm, but I can't remember what that was. You could convert a number to a mnemonic with the old electrum algorithm. Pre 2.0. See under mnemonic here: https://bitcoinspakistan.com/blog/electrum-seed-explained/However an extended private key is more than just one number. There is a chain code, a key, depth and version number. So lots of stuff in there. Somebody would have to unravel all that.
|
|
|
So, I'm building a website, but I don't want to use full bitcoin core. Is there any SPV wallet with RPC interface, so I can accept payments using it?
if you just want to receive bitcoins then you don't need a wallet on the server. you can install a deterministic wallet like electrum or mycelium on your own device. then on the server you just need a library that will take your wallet's extended public key and generate addresses from that. this way there is no risk of theft since the private keys remain on your own device and not on the server. if you tell us what programming language you are using for your web application we can suggest some libraries.
|
|
|
Thank you. That's exactly what I was looking for. I could show the same addresses when I created a new wallet using seed words. Why does the electrum wallet show 20 addresses? Why slow down the computer to show the number of addresses more than 100. For example, in other wallets we can add individual addresses from the menu. What is the rationale of having an electrum wallet in this shape?
It seems you don't understand what a deterministic wallet is. Put simply each electrum wallet can have nearly unlimited addresses. Each time you use an address by receiving bitcoins to it electrum will generate new ones automatically so that you have at least 20 unused ones. So don't worry address generation is automatic and you don't have to do anything to generate new addresses. Ok?
|
|
|
Thanks for the reply it didn't even cross mind to increase the fee for the transaction since I usually never send that high of an amount. Ill keep that in mind for future transcations.
enable dynamic fees in preferences so that electrum can suggest suitable fees based on market conditions.
|
|
|
You can also get other tools that convert that Master Private Key into a BIP 39 mnemonic and vice versa so you can use that too.
That isn't possible since the way bip39 works the seed is passed through hashing functions and out comes the master private key. By definition the output of a hashing function cannot be reversed to get the input of the function. So it's a one way process. However it should be possible to take the extended private key and encode it as a mnemonic using some other algorithm i.e. not bip39.
|
|
|
I backed up my private keys. Can I use these private keys in other wallets too? Let's just say I've backed up the seed words of your wallet. What if the electrum project is canceled in the future? By looking at Bitcoin's address, can we tell which wallet was created? Every wallet seems to be creating a unique address for itself. But money can be transferred between different wallets. For example, I backed up private keys in the electrum wallet. Can I use the addresses in the electrum in a different wallet using these private keys?
As long as you have a copy of the electrum software you are good. Possessing just the address does not give you the power to spend the bitcoins sent there. If it were designed like that your bitcoins could be spent by anybody! When you spend bitcoins coins may be drawn from various addresses so anyone looking at the blockchain could infer that these addresses belong to the same wallet.
|
|
|
You have a lot of questions and they all stem from a lack of basic knowledge about what you are dealing with. Master private keys (xprvs) are what you need not master public keys (xpubs). It is not possible to derive the master private key from the master public key. It is not possible to derive any private keys from any sort of public key.
Your wallet is a multisig wallet so you need signatures generated by multiple private keys that can only be derived from the master private keys. Without them you can't spend your bitcoins.
ThomasV or anybody else can't help you either. Bitcoin is not a bank.
|
|
|
I'm sorry but without access to a wallet containing at least one of the missing cosigning xprvs there is nothing that can be done to recover your bitcoins.
|
|
|
Hi,
my english is not so good but i hope u understand what the issue is.
i installed electrum the 1st time and got "default wallet" no password entered or something else.. i sweeped some money on that wallet and would send it out to another client.. now he asked me for a password (which i dont have) also for saving the seed.. is there a default password? or what can i do?
thx for ur help
regards
Please answer these questions: where did you download electrum from? what version of electrum are you using? what does it say in the electrum window title bar? when you installed electrum did you go through a wallet creation process? did it ask you to select a wallet type, show you the seed and then ask you to enter a password (which I understand you left blank)? Did all that happen?
|
|
|
Maybe there is a typo or other spelling mistake. Please check it again.
|
|
|
bitcoin_buddy I suggest you take a look at your default_wallet aka wallet A file using a text editor like notepad. See how may xprvs are listed in there. If there are two or more then you don't need any other wallet. An example is given here: http://paste.ubuntu.com/23745557/Do let us know how many xprvs you find. Don't post the xprvs since they are supposed to stay secret. Just let us know how many you find in your wallet. The location of your wallet is given below: http://docs.electrum.org/en/latest/faq.html#where-is-my-wallet-file-locatedAlso post which version of electrum you are using.
|
|
|
kolloh is right. you need the 2fa code or the seed. it seems you have neither of those.
In order to help you I created a 2fa wallet to learn more about the process. I found out that you have to share an email address with trusted coin when creating a wallet. Maybe trusted coin can help you if you contact them using the email address you originally gave them when creating your wallet? It's worth a try.
|
|
|
Okay, so from what I managed to find on forums, if I had my seed I could basically open a new wallet with it and all of my funds would automatically be transferred there thus avoiding the 2FA problem.
However, I can't seem to get the "Seed" button to be clickable in Electrum. I decrypted the account by leaving the field "New Password" blank, but the button is still gray and unclickable.
edit: uninstalling electrum does not delete your wallet. when you reinstalled electrum it picked up your old wallet and showed it to you. then you received money to that wallet but now you can't spend it because its a 2fa wallet and you don't have the 2fa code for it anymore. the reason the seed button is grayed out is probably because 2fa wallets don't store the full seed. what does it say in the window title?
|
|
|
I thought you said wallet A and default_wallet were one and the same? Please correct post #4 in this thread.
What does it say in the window title when you open default_wallet ? For example in a multisig wallet I created it says 2 of 3 multisig.
Also FYI you don't have to use the cosigning pool feature. You can save the unsigned or partially signed transaction as a file on your hard drive and then open it up in the cosigning wallet to sign it. The option to save is there on the sending tab. To open a tx file in a cosigning wallet use tools > load transaction > from file.
But looking at default_wallet I see that it has 2 cosigners neither of which are present in the other wallets. I'm referring to the below to MPKs
(cosigner)1:xpub661MyMwAqRbcF5sxnpi6vHnTnmYi31YrVWdXF3WH8jaTcUb41hhGMmTc8jmTzTXTSawe99D6fLx cwget3J9D9fSXTb7LbSqvtUdPjJrHWzr
(cosigner)2:xpub661MyMwAqRbcF1Ns3Z6ceAaf48ZbxMay1YFQ6cAGY5GRHSC9yvUSkrmdnrdU5KtzdD1eRGUFfuz 8hVSW3RcA5rYqKXQZRZZbqjX3UbMAYq7
You need access to the wallets with the master private keys corresponding to the above master public keys.
|
|
|
How can I create a new address in Electrum wallets? By default, the addresses are defined in the wallet. Can not I create new addresses myself?
Electrum will automatically keep making new addresses as you start using your wallet. So don't worry. Just go with the flow. If you want more than 20 addresses showing in your wallet then open the "console" tab and type the commands below into it. Press your enter key after writing each line. wallet.storage.put('gap_limit', 50) wallet.storage.write() wallet.change_gap_limit(50) The above is better because wallet.storage.put doesn't do input validation. You could put a letter in there and it would set the gap limit to some absurdly high number like 2 billion.
|
|
|
Is this really the case? and how do you "correctly use" Electrum seeds? because you made a "if used correctly" remark.
Coming up with the string on your own rather than having the software do it or storing it only in your memory. I think you mean using the software generated one and not coming up with a string on your own. Just saying that your answer is not clear and might confuse newbies. Besides, since electrum v2.x you* can't make your own seed coz it has to have a checksum in it. You have to rely on the software. * i mean lay people.
|
|
|
How can I create a new address in Electrum wallets? By default, the addresses are defined in the wallet. Can not I create new addresses myself?
Electrum will automatically keep making new addresses as you start using your wallet. So don't worry. Just go with the flow.
|
|
|
|