_act_ (OP)
Legendary
Offline
Activity: 1008
Merit: 1271
Lightning network is good with small amount of BTC
|
I have been thinking of the best way of adding a passphrase to a wallet I want to create, but I do not know the passphrase I can use that will be impossible to brute force.
What comes to my mind is by generating a seed phrase which I will use as passphrase. Open electrum wallet, the wallet to create another seed phrase for me, add a passphrase to it which is the first seed phrase another wallet created for me.
The first seed phrase is my passphrase The second seed phrase is my seed phrase The second seed phrase and my passphrase (first seed phrase) create private keys and addresses for me which should be safer than just using a seed phrase without passphrase.
I am think of the way to use the passphrase, which one is difficult to brute? By writing the words together and not give space in between, or by seperating the words?
This should be a secure wallet if I do not have the seed phrase backup together with the passphrase but differently. I am thinking if seed phrase with space is secure enough, it should also secure if used as passphrase?
Is there others ways to have a more secure passphrase in a way the world would have extinct before anyone can brute force it.
|
|
|
|
NeuroticFish
Legendary
Offline
Activity: 3780
Merit: 6486
Looking for campaign manager? Contact icopress!
|
The first thing that came into my mind when reading this is: it's overcomplicated, you may forget it in 5-10 years, if you are in trouble (brain damage, coma, ...) your family will have no chance to recover your coins.
Second, ... I may be wrong, but I don't think that such a long passphrase bring any benefits.
Third - everybody seems afraid of brute forcing, which happens rather seldom, while they forget to take care against 5$ wrench attacks and accidents/illnesses.
|
|
|
|
kaggie
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 04, 2022, 07:39:28 PM |
|
You're overthinking it.
There are things that matter a lot more. Are you connected to the internet while using your passphrase? How clean is your computer and network? Are you advertising on the internet that you have substantial value that can cause you to be target? Do you have backups?
The best passphrase that no one can guess is one that you can't guess. That has issues with you ending up broke through a lost piece. If you are putting substantial money into it, then you want to be able to recover it.
But if you really want to go down the rabbit hole, the best passphrase is one that isn't a passphrase. All bitcoin addresses are derived from 64 byte keys. 64 bytes can be anything, and that ends up being more possibilities than the atoms in the universe. It sounds like a clever person like you can find some very interesting ways to create keys, ways to lose your keys, or maybe even keep them safe in an interesting way.
|
|
|
|
hosseinimr93
Legendary
Offline
Activity: 2520
Merit: 5581
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 04, 2022, 09:52:41 PM Last edit: April 04, 2022, 10:05:58 PM by hosseinimr93 |
|
I am think of the way to use the passphrase, which one is difficult to brute? By writing the words together and not give space in between, or by seperating the words?
There isn't really any difference. A bitcoin private key provides 128 bits of entropy and there is no way to increase the security of your private key to more than 128 bits. Let's say your seed phrase is compromised and the hacker needs to brute-force your passphrase to access your fund. Whether you use space between the words or not, the entropy provided by your passphrase would be more than 128 bits. Even if the hacker knows that you have used a seed phrase generated by electrum as your passphrase, the entropy would be 132 bits which is still bigger than the entropy provided by a private key.
|
|
|
|
BitMaxz
Legendary
Offline
Activity: 3374
Merit: 3094
BTC price road to $80k
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 04, 2022, 11:06:07 PM |
|
That's too much adding a phrase or passphrase in your seed phrase. For me, one phrase is enough to add in your seed phrase as an extra layer of security it takes more than decades I think before they can brute your wallet.
The very important thing is that you always keep your seed phrase and passphrase on the safety device or make an offline wallet(cold wallet) to make sure your wallet is safe from any online attacks.
Never been experienced someone hacking my accounts and wallets because I always protect them and think advanced and I always protect my network from any possible IP attacks.
|
|
|
|
pooya87
Legendary
Offline
Activity: 3570
Merit: 10837
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 05, 2022, 03:29:51 AM |
|
If you want a computer to generate a password for you using its RNG then why not use a password manager software that does that? I haven't seen any that generates words but it could be implemented, maybe suggest it on one of their github repositories. That way you could generate a smaller BIP39 specific words (~5 words ~64 bits) for the encryption which is trivial to implement.
|
|
|
|
witcher_sense
Legendary
Offline
Activity: 2422
Merit: 4397
🔐BitcoinMessage.Tools🔑
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 05, 2022, 10:24:55 AM |
|
I haven't seen any that generates words but it could be implemented, maybe suggest it on one of their github repositories. That way you could generate a smaller BIP39 specific words (~5 words ~64 bits) for the encryption which is trivial to implement.
Bitwarden, which is an open-source password manager, allows you to create passphrases. It uses EFF long wordlist that contains more than 7000 words: https://github.com/bitwarden/jslib/blob/1016bbfb9eb28c220de8d2ab86d1f2757328f254/common/src/misc/wordlist.ts When you generate a passphrase with Bitwarden, you can specify which separator to use (either space or hyphen), whether to add additional symbols or not, etc. The maximum number of words is 20, which is more than enough for something like additional entropy for your keys. Still very unsafe, I believe, since you have to use a browser to run an extension. Personally, I still prefer offline methods of passphrase creation with dice or coin flips, especially when it comes to private keys. I do not know the passphrase I can use that will be impossible to brute force.
It mostly depends on how many words are there in your passphrase, and which method you employed to generate those words. If you take a sentence from the book, it will be relatively easy to brute force. Otherwise, If you use cryptographically secure RNG or true RNGs such as dice, coins, cards, radiation, and noise, it will be difficult to crack for anyone, even for you should you lose your memory.
|
|
|
|
o_e_l_e_o
In memoriam
Legendary
Offline
Activity: 2268
Merit: 18699
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 05, 2022, 10:40:27 AM |
|
Lots of people giving you alternative suggestions, but actually this is a good way of generating a random passphrase and much better than just picking a couple of words or coming up with a single word passphrase yourself. Yes, it is probably overkill to use an entire second seed phrase as a passphrase, but I'd rather have too much security than have too little.
Do take the advice to do all this on a clean airgapped computer, though. And obviously your passphrase will need backed up by being written down on paper just like your seed phrase, and the two should be stored separately so the compromise of one doesn't immediately lead to the compromise of the other.
Spaces or no spaces is irrelevant, both will be impossible to brute force. I would go for spaces just so it is the same as your seed phrase.
Bonus points for putting a little bit of bitcoin on the base wallet of both phrases, giving you plausible deniability and obfuscating the fact that one of the seed phrases is being used as a passphrase.
|
|
|
|
dkbit98
Legendary
Offline
Activity: 2352
Merit: 7427
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 05, 2022, 10:54:17 AM |
|
Is there others ways to have a more secure passphrase in a way the world would have extinct before anyone can brute force it.
I don't understand why would you overcomplicate things doing shenanigans like this... making it very hard to recover in case you forget your order. Plain strong passphrase made of multiple words with numbers and space combinations is very hard if not impossible to break (if done correctly). If you want to be sure you are getting true random order of words, use offline method with casino dices instead of wallets for generating anything. Spaces or no spaces is irrelevant, both will be impossible to brute force. I would go for spaces just so it is the same as your seed phrase.
I don't think spaces are irrelevant. For testing purposes, try generating passphrase in KeePass with and without spaces and check out results you will get ![Wink](https://bitcointalk.org/Smileys/default/wink.gif)
|
|
|
|
Lucius
Legendary
Offline
Activity: 3360
Merit: 6020
Crypto Swap Exchange🈺
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 05, 2022, 11:09:51 AM |
|
As others have concluded, another seed as a passphrase is perhaps too much, because even a much shorter password consisting of random letters and characters is nowadays resistant to all known brute-force methods. I can’t say how accurate the various online password strength meters are, but here for this 10-character password, they claim it would take as much as 1 million years to be cracked. This time will probably decrease when quantum computers start to be used, but still, if you add at least 5 more characters you shouldn't worry too much about the fact that in the foreseeable future someone will be able to brute-force such a password. Source
|
|
|
|
Zensi
Newbie
Offline
Activity: 8
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 05, 2022, 11:52:58 AM |
|
Memorize your bank data. They vary from country to country. But we take an example from Europe, personal IBAN: AZ04UBAZ04003214540060AZN001
Now divide the IBAN into two parts and start creating the password in the middle: 214540060AZN001 Now put a special character in it, like @ or &. After that the rest of the IBAN is used: AZ04UBAZ04003
Next step: assume your name is Antonio Sermucho
Now add the first letter of your last name at the end, but in lower case: s
And now at the beginning of the password add the first letter of your first name: a
Password is ready and cannot be cracked by any bruteforce program: a214540060AZN001@AZ04UBAZ04003s
The only thing you need to keep at home is your bank statement, which everyone has. There you can see your name and bank IBAN. Even an @ sign is also somewhere on it from the contact person of your bank.
This is just an example with the means that you have at home anyway and a hacker would not come to mind to work with it.
And if you lost a bank statement, you could always call your bank and ask for it. In this way, your bank keeps its private key without even knowing it.
|
|
|
|
o_e_l_e_o
In memoriam
Legendary
Offline
Activity: 2268
Merit: 18699
|
I don't understand why would you overcomplicate things doing shenanigans like this... making it very hard to recover in case you forget your order. If the passphrase is written down on paper as it should be, then it will be no more complicated than storing a seed phrase and no more difficult to recover. Plain strong passphrase made of multiple words with numbers and space combinations is very hard if not impossible to break (if done correctly). As is a seed phrase, with the added bonus that a seed phrase is much easier to write down and restore from without making any unrecoverable mistakes. For testing purposes, try generating passphrase in KeePass with and without spaces and check out results you will get ![Wink](https://bitcointalk.org/Smileys/default/wink.gif) It is definitely irrelevant. Let's assume the weakest possible seed phrase of 12 words, with each word having only 3 characters, for 36 characters in total without spaces, and 47 with spaces. An attacker who knows nothing about your seed phrase and brute forces all possible ASCII combinations of the relevant number of characters will be looking at ~237 bits without spaces and ~309 bits with spaces. Both impossible. If they know you are only using lower case letters, then it becomes ~169 bits without spaces and ~223 bits with spaces. Both impossible. If they know you are using a BIP39 seed phrase, then it is 128 bits in both cases, 129 bits if they try both options. Still impossible. I don't use this method, as I prefer complex and random passphrases which could be a password or passphrase to anything rather than obviously being related to cryptocurrency, but it is still an acceptable method and far more secure than the single word or simple human generated password that many people use as their passphrase.
|
|
|
|
_act_ (OP)
Legendary
Offline
Activity: 1008
Merit: 1271
Lightning network is good with small amount of BTC
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 06, 2022, 12:55:42 PM |
|
It is not a complicated process for me, what if I want to use 2-of-2 multisig, I will still need two seed phrase that would be created, the two have to be protected. I am only having two seed phrase, one will not be used for seed phrase but for passphrase. If I use a strong passphrase, I can not remember, if the backup is lost, it is lost forever in a way I can no more access my coins anytime I want wallet recovery. If I can backup the passphrase and seed phrase differently, have three backup, it is good option for me. I do not see difference between a passphrase I created myself that I do not remember but backup and a seed phrase that I use as passphrase that I backup. Thank you all for your suggestions.
|
|
|
|
virasog
Legendary
Offline
Activity: 3094
Merit: 1168
Leading Crypto Sports Betting & Casino Platform
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 06, 2022, 11:43:47 PM |
|
Is there others ways to have a more secure passphrase in a way the world would have extinct before anyone can brute force it.
Even if you use the default passphrase, it should be secure enough and no one can brute force it. I think you are anticipating that in the future quantum computers may be able to brute force our passphrases and seeds but i don't think this will happen in our lifespan. I would suggest you not to make thing complicated, keep the default passphrases and focus on how to keep these passphrases secure.
|
..Stake.com.. | | | ▄████████████████████████████████████▄ ██ ▄▄▄▄▄▄▄▄▄▄ ▄▄▄▄▄▄▄▄▄▄ ██ ▄████▄ ██ ▀▀▀▀▀▀▀▀▀▀ ██████████ ▀▀▀▀▀▀▀▀▀▀ ██ ██████ ██ ██████████ ██ ██ ██████████ ██ ▀██▀ ██ ██ ██ ██████ ██ ██ ██ ██ ██ ██ ██████ ██ █████ ███ ██████ ██ ████▄ ██ ██ █████ ███ ████ ████ █████ ███ ████████ ██ ████ ████ ██████████ ████ ████ ████▀ ██ ██████████ ▄▄▄▄▄▄▄▄▄▄ ██████████ ██ ██ ▀▀▀▀▀▀▀▀▀▀ ██ ▀█████████▀ ▄████████████▄ ▀█████████▀ ▄▄▄▄▄▄▄▄▄▄▄▄███ ██ ██ ███▄▄▄▄▄▄▄▄▄▄▄▄ ██████████████████████████████████████████ | | | | | | ▄▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▄ █ ▄▀▄ █▀▀█▀▄▄ █ █▀█ █ ▐ ▐▌ █ ▄██▄ █ ▌ █ █ ▄██████▄ █ ▌ ▐▌ █ ██████████ █ ▐ █ █ ▐██████████▌ █ ▐ ▐▌ █ ▀▀██████▀▀ █ ▌ █ █ ▄▄▄██▄▄▄ █ ▌▐▌ █ █▐ █ █ █▐▐▌ █ █▐█ ▀▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▀█ | | | | | | ▄▄█████████▄▄ ▄██▀▀▀▀█████▀▀▀▀██▄ ▄█▀ ▐█▌ ▀█▄ ██ ▐█▌ ██ ████▄ ▄█████▄ ▄████ ████████▄███████████▄████████ ███▀ █████████████ ▀███ ██ ███████████ ██ ▀█▄ █████████ ▄█▀ ▀█▄ ▄██▀▀▀▀▀▀▀██▄ ▄▄▄█▀ ▀███████ ███████▀ ▀█████▄ ▄█████▀ ▀▀▀███▄▄▄███▀▀▀ | | | ..PLAY NOW.. |
|
|
|
Welsh
Staff
Legendary
Offline
Activity: 3290
Merit: 4114
|
The biggest issue with security is balance. Balancing convenience, and security is one of the big problems of today. Unfortunately, we take it to the extremes whatever end of the spectrum you might be. If you're security conscious, you probably overcompensate which reduces the convenience or if you are like your average internet user, you likely take convenience over security, and therefore are at risk of being compromised. I can't tell you the right balance, since everyone has a different threat model. However, I can at least give my rationalisation about why balance is important. It is not a complicated process for me
While that might be true, since the information is fairly easy to remember. How convenient is it for you? For example, if this is for a cold wallet then the inconvenience it requires to enter that passphrase might be mitigated enough to not worry about it much. However, if it was a somewhat hot wallet, you needed to access it frequently then entering that long of a passphrase could potentially be annoying. I know you're probably going to be using this for a offline wallet, so I suspect it is mitigated. However, there's a point in which a longer password doesn't necessary bring much of a security benefit. I agree with o_e_l_e_o that a overcomplicated, inconvenient passphrase is much better than a insecure setup. Though, lets say you have 50 characters as an example, that would be plenty enough for most situations, barring that it hasn't been generated from a famous quote etc. If its randomly generated 50 characters, then you're probably good. Whereas, adding an additional 50 to take it up to 100, would technically increase the entropy, right. Although, in reality the attack possibilities of a 50 character pass phrase is already quite small, and adding 50 onto it with current techniques, and technology wouldn't make much of a difference at all. I don't use this method, as I prefer complex and random passphrases which could be a password or passphrase to anything rather than obviously being related to cryptocurrency, but it is still an acceptable method and far more secure than the single word or simple human generated password that many people use as their passphrase.
Underrated remark. If you're backing up your passphrases on paper, where ever you might store that. Don't label it as "BITCOIN PASSWORD TO MY MEGA WALLET", because if a malicious attacker theoretically gained access to that piece of paper they would have a field day. However, if you've written your backup down in such a way that they wouldn't be able to immediately determine its for a Bitcoin wallet, then that's part of the entropy. Again, security, and convenience right? Since, if you forget what that backup phrase is for, you could be potentially in trouble.
|
|
|
|
hugeblack
Legendary
Offline
Activity: 2632
Merit: 3881
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 08, 2022, 12:59:17 PM |
|
On average, trying to brute force a wallet with 12 words (12! = 479,001,600) is a waste of time (a possible combination of 2^128= 340,282,366,920,938,463,463,374,607,431,768,211,456,) so if you want more security, use 24 words.
You can add words, but then you will increase the risk of losing one, which may mean wasting your money if the words become too many. So 24 words is enough to avoid a brute force attack.
|
|
|
|
_act_ (OP)
Legendary
Offline
Activity: 1008
Merit: 1271
Lightning network is good with small amount of BTC
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 08, 2022, 06:30:38 PM |
|
On average, trying to brute force a wallet with 12 words (12! = 479,001,600) is a waste of time (a possible combination of 2^128= 340,282,366,920,938,463,463,374,607,431,768,211,456,) so if you want more security, use 24 words.
You can add words, but then you will increase the risk of losing one, which may mean wasting your money if the words become too many. So 24 words is enough to avoid a brute force attack.
I think 24 words would be longer without much benefit so far 12 words of seed phrase is safe enough, I am not saying the difficulty required to brute force 24 words is not more than 12 words but to brute force 12 words is unlikely. 12 words is also enough to avoid brute force attack too which should be a reason no necessary need of using 24 words.
|
|
|
|
hosseinimr93
Legendary
Offline
Activity: 2520
Merit: 5581
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 08, 2022, 07:01:42 PM |
|
(12! = 479,001,600)
There are 12! combinations if there are 12 known words and there are no duplicate words in the seed phrase. 2^128
In the case the seed phrase has been generated by electrum, it provides 132 bits of entropy, not 128. There is no checksum in the seed phrase generated by electrum. I think 24 words would be longer without much benefit so far 12 words of seed phrase is safe enough,
Right. With increasing number of the words to more than 12, you don't really increase the security of your fund. For example, a 15 word BIP39 seed phrase provides 160 bits of entropy. (165 bits of entropy if it has been generated by electrum) Instead of trying to brute-force your seed phrase, the hacker can try to brute-force your private key which provides 128 bits of entropy.
|
|
|
|
PrimeNumber7
Copper Member
Legendary
Offline
Activity: 1652
Merit: 1899
Amazon Prime Member #7
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
April 08, 2022, 09:07:16 PM |
|
By writing the words together and not give space in between, or by seperating the words?
If you are going to access your passphrase via looking at a written backup, it is probably best to have spaces between the words, even if there are not spaces in your passphrase. The reason being is that it will be much easier to type a series of words than a long string of characters.
I might point out that a passphrase is only ever going to give you incremental additional security. A properly generated, random seed is already ~impossible to brute force with current technology, and it is very unlikely future technology will ever be able to brute force a randomly generated seed. If an adversary is somehow able to discover your seed, it is likely they can also discover your second seed which is your passphrase. Granted, storing small amounts of coin in both seeds may make an adversary believe they have found all the coin there is to find, however, if you have only stored a small amount of coin and have taken elaborate steps to protect your seeds, an adversary may not believe the decoy amounts are all that is stored by the two seeds they find.
|
|
|
|
pooya87
Legendary
Offline
Activity: 3570
Merit: 10837
|
In the case the seed phrase has been generated by electrum, it provides 132 bits of entropy, not 128. There is no checksum in the seed phrase generated by electrum.
The seed is 132 bits but there is also a checksum inside the seed itself, in a way it is hidden. Unlike BIP39 that simply concatenates the hash to the entropy, Electrum brute forces its seeds to find an entropy that would produce a hash that starts with certain bits indicating its version. This acts as a checksum. You can see the loop here: https://github.com/spesmilo/electrum/blob/837fc1606cc83f99f8493c050b384cfcbb6c2835/electrum/mnemonic.py#L206-L220
|
|
|
|
|