ISAWHIM (OP)
|
|
July 02, 2014, 02:40:46 PM |
|
Wow, that looks like a pile of 100% easy money to steal if anyone uses that. xD
No, but thank-you for the post. That is not what I am looking for... but, it is similar to what I want to do. Just not with all that huge security risk.
I believe the javascrypt I am using, actually uses that HD crap, which is why it is overly complex, and why I am struggling trying to follow all the cryptic bloat it has. The code is the same that the online wallet generator uses, and that states it uses HD crap. Just not sure if it uses it for all the code, or just for the special bulk-wallet generator things.
I like reading the part about, "Don't share your public or private keys, as there is a risk..." Um, wait... sharing the public key is a risk, then you are screwed, because you public key is in the block-chain, your public key is the address that you give to people, so they can add funds to the address.
This, I realize is just some poor wording, but the risk is real. Those are talking about the internal "generation keys", which the system uses, not the "wallet key pairs", which it did not elaborate on. However... the intention was to use multiple wallets across multiple systems, that can be recreated as one giant wallet, by those keys and extensions.
Let me elaborate my thinking on what I just said above... You have one giant wallet with millions of potential addresses. However, gaining access to one key, or the other, opens you to risk of another person being able to recreate all the addresses of all the wallets. (These, you have to share, to the systems, so they can create the addresses they need from the wallets. Thus, you have to share what you should not share, across multiple systems, with multiple potential leaking exposure.)
What I wanted to do was record something like this...
"Freddy goes to mars"
Then that creates all my addresses and keys, from that data. That text actually tells my program to create 100,000 addresses, starting from logical sequential position 8349994, but skipping 45, then 28, then 840, then 98532. Using the pass-phrase "seagull" then "soda", then "glue", then "snickers"... All just from the text, "Freddy goes to mars". To anyone without the program, those words are useless. To me, with the program locked away, I can recreate all the data I need.
Thus, no out of box program will suffice my needs there. However, I do need it to NOT be randomly generated, which all these stupid things do, and do horribly with pseudo-random predictability. That is the part I need stripped away, so I can insert my sequential data. However, they use some crazy ass javascrypt to do this, and seem to only allow some specific size and range of 58-bit data. But they do not tell you what it is, or how long it has to be, or what format. (I found one key that was valid to use, it was a 58-bit conversion of some long number, but 0 would not work, or any other number that was equally as long, so I am at a loss as to what they were looking for.)
That is not a good sign if it has a limited number of input for anything. That translates into a lot less variations then they portray. That is like saying, well there are a trillion times a trillion possibilities if you use A-Z ^45 ^200... But then say, but the letters have to all form words, and the words have to all be only latin, and the latin words have to all start with S and the s words have to all be under 5 letters. Well, then that leaves you with like 10,000 possible solutions, not a trillion by a trillion. That is essentially what they are doing there.
Just like sha256(sha256()), it does not create more variation, the output is still the same finite results, but now there is more potential collisions, not less. Exponentially more collisions than one can even imagine. (More, since there are invalid possibilities between the outputs that never get created, thus, not part of the output of finite results that they calculate.) But I digress, that is the reason Satoshi/everyone abandoned it, and warned everyone heavily that they have to split all stored coins into multiple addresses, for security, so they don't all get stolen when someone finds one of these many-more collisions, randomly. Thus, causing the network to grow exponentially full of dust in the future, to unmanageable size. (This too, a topic of one of my whitepapers, is what I am working on having fixed.)
|