But they can generate 256 bit numbers using their brain and a pencil and paper by writing down a string of 1s and 0s. And that number has never been seen before. They can also think of phrases that do not exist on any book or search engine so no one ever thought of that phrase before. Since you don't know how an individual mind is biased, you can't use that to gain any idea into what passphrase they might have come up with.
Be my guest:
http://www.loper-os.org/bad-at-entropy/manmach.html.
Your different phrases likely already exist in the dictionary and specific permutations of it are likely to be inter-linked with real life events. Your brain works in a way by association, so you are likely to think of something that you've already seen before. It is a natural phenomenon that has been studied and proven.
You don't need to go down to the quantum level or use a computer to get randomness. in practice, when the rubber meets the road and for the purposes of generating bitcoin addresses, dice rolls can suffice. they might be a bit inconvenient but that's neither here nor there...
Yep. Dice rolls are sufficiently random given a large enough number because even with a 256bit entropy, your decrease in entropy can still make it sufficiently difficult.
That's why you have to "upgrade". Someone that doesn't keep up on the current state of security might end up with a nasty surprise oneday no matter what method they used to generate their bitcoin address. For example, people that used Sha256 as a brainwallet. Hopefully they got the memo that this is a very insecure thing and their funds should be moved.
I bet that if you use a sufficiently big random number generated by a CSPRNG and insert it into Brainwallet, it would still be secure. The whole point isn't about which KDF is stronger, because they're all going to become weaker as technological advances progress. The one thing that never really changes is that 2^256 or 2^128 is a very big key space and is likely unable to be exhausted. The same cannot be said about the improvement in speeds of KDFs.
Well ideally in a software, the user could configure the # of iterations or difficulty level. Some people might want their difficulty level to be off the charts so that it takes 30 minutes on a top end computer to just generate the private key and address. Who's to say they are wrong? Bitcoin paper wallets are to be used one time anyway so it's not like someone should be needing to enter their passphrase and go through that intensive process except once to create and once to spend.
Sure. Then you are making this entire process unnecessary difficult, and there is no guarantees of security. Why? How do you know your "iterations" or n values are sufficiently high? Not like I'll publish my most optimized implementation for everyone. It's really quite stupid to have to wait minutes to generate a single address.
The key space is big enough. 2^256 almost. The algorithm is the only reasonable/feasible way an attacker has of determining my little private key out of that whole key space since it's so freaking huge. So the algorithm needs to punish the attacker for even trying. Punish him every time he tries to make a guess. That's kind of the theme behind warpwallet I would imagine.
Nope. Your keyspace is only 65 bits, you mentioned it yourself.
Your keyspace is only that if you use a passphrase that is completely random and sufficiently big. And yes, that is the whole point of warpwallet but if the input entropy is either:
1) Predictable
2) Short
, then I've got a better shot at cracking something as opposed to the costs.
Brainwallet passphrases are supposed to have some type of meaning to their owner. Otherwise it would not be possible to store it in their well, brain! you're confusing secrecy with randomness. A passphrase which is secret would be something that you cant search in google it doesn't show up in any searches. no one ever wrote down the phrase in a book, no one ever will except you. that's doable even though you don't think so.
Precisely why the whole argument revolves around brainwallet. Most people simply cannot make these kinds of passphrase. You underestimate the ability of humans to not think by experiences and association. Unfortunately, the reality is often very different from what you think. Search engines are not comprehensive and they are most definitely not a dictionary.
Again, brainwallet passphrase is not supposed to be some random string of characters because get this: no one can remember that.
So a passphrase with a specific pattern.
Well I disagree with that statement completely, as I've pointed out before that I find mnemonic seeds to be devoid of any meaning thus impossible to memorize. And trying to create meaning out of something that has no meaning is pointless because you will forget it soon enough. Not so with a brainwallet passphrase because in that situation you get to pick and choose your words and stuff so that it has some type of meaning to you.
Also let me throw in the opinion that mnemonic seeds are good for one thing and one thing only - for stamping in steel.
Then you introduce another risk vector; how can you create that is
1) Sufficiently long
2) Sufficiently unique
3) and also prevent yourself from getting into an incident which induces amnesia or a form of it.
It is a risk that I would very much not have to face.
I don't know anyone that ever used that technique and I guarantee you it is more complicated than just trying to memorize 12 words. I saw that article in the past and it struck me as being overly complicated and not going to work.
How could anyone ever remember a story like this word for word? They're in for unwelcome suprise oneday when they forget the words to their convoluted and unintelligible "story".
Sounds like the same problem that would occur with your memory problem. I'm not going to comment further about the memory issue, because things like these are certainly doable and there really isn't a need to memorize in the first place. If you want, you can certainly do it. You definitely don't need a brilliant memory, spaced memorization is surprisingly effectively, for what its worth.
If you trust that you can make a passphrase with sufficient entropy, then go ahead. You won't really know if it is secure until it gets hacked anyways. I, for one am definitely not doing something like this, especially with so much money on the line.