Bitcoin Forum

Bitcoin => Bitcoin Discussion => Topic started by: manuel on December 06, 2013, 10:50:08 AM



Title: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 06, 2013, 10:50:08 AM
I guess actually I should say I am not really clear on what the difference between deterministic and paper wallets are.. I understand deterministic is a wallet that can be generated from a passphrase only at any time right?   Wouldn't that passphrase written on paper be a paper wallet or no?

I am looking for the best way to go about this for a friend that wants to store some bit coins on paper in a safe box or something like that.  I suppose a "paper wallet" could also be an encrypted digital text file too?

Anyway I'm looking for the most secure most trusted method to do this - main reason being that my friend i not very computer savvy or tech literate so storing and backing up encrypted files using ultra secure passphrases, etc. I think is not good for him.

One concern I have is what if the software I use to create the deterministic or paper wallet becomes unsupported at some point between now and when he wants to use the coins?  Then what?  Or is this not a risk?  If so why?  I'm thinking along the lines of like when you have a 20 year old tape backup but no hardware that can read it anymore.  Is this a risk at all?

Thanks


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: marcotheminer on December 06, 2013, 10:53:17 AM
Save bitaddress.org, go to an offline computer, create a paper wallet, send funds. Wait and use as you wish!


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 06, 2013, 11:07:16 AM
Save bitaddress.org, go to an offline computer, create a paper wallet, send funds. Wait and use as you wish!

How do I actually create the paper wallet?   It looks to me like bitaddress.org is creating a paper wallet already?  What is this other step on an offline computer and how is it done?



I found a tutorial here but I don't have android: http://blockchain.info/wallet/paper-tutorial

On another note: https://www.bitaddress.org/ - I'm sure it's been investigated but how does anybody know this website isn't saving all the private keys it generates? How can I do the same process locally?

Is there any difference between the single wallet and the paper wallet tab other than there are more addresses? 

what is the practical difference between a brain wallet and a deterministic wallet?  How do I regenerate my brain wallet if bitaddress.org isn't there anymore or I don't have access?

Thanks.


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: doof on December 06, 2013, 11:16:38 AM
I guess actually I should say I am not really clear on what the difference between deterministic and paper wallets are.. I understand deterministic is a wallet that can be generated from a passphrase only at any time right?   Wouldn't that passphrase written on paper be a paper wallet or no?

I am looking for the best way to go about this for a friend that wants to store some bit coins on paper in a safe box or something like that.  I suppose a "paper wallet" could also be an encrypted digital text file too?

Anyway I'm looking for the most secure most trusted method to do this - main reason being that my friend i not very computer savvy or tech literate so storing and backing up encrypted files using ultra secure passphrases, etc. I think is not good for him.

One concern I have is what if the software I use to create the deterministic or paper wallet becomes unsupported at some point between now and when he wants to use the coins?  Then what?  Or is this not a risk?  If so why?  I'm thinking along the lines of like when you have a 20 year old tape backup but no hardware that can read it anymore.  Is this a risk at all?

Thanks

deterministic means that given the same key, you will always get the same public key (btc address).  so given the key

18E14A7B6A307F426A94F8114701E7C8E774E7F9A47E2C2035DB29A206321725 and apply the correct steps to generate (link below), you will always and only get 16UwLL9Risc3QfPqBUvKofHmBQ7wMtjvM

i have my private key etched in stainless steal.

https://en.bitcoin.it/wiki/Technical_background_of_version_1_Bitcoin_addresses


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: doof on December 06, 2013, 11:21:34 AM
Quote
what is the practical difference between a brain wallet and a deterministic wallet?
a brain wallet is just the seed to create the key.  i assume they just hash those words.

the quick brown fox jumps over the lazy old dog hashed with sha256 gives aa25b7779b6e03d8a7e4461b0246b4c29161f4d4672d0f1ed7e510b4f7e2ee8e

change one letter, say upper case T and sha256 yields a very different hash

The quick brown fox jumps over the lazy old dog

148e9b6760ce3d35193f0d01d0211f71b6164e25956ae6dd57de2e5f4231f097

Any implementation of SHA256 (c# java etc) will always produce the same hash.

http://www.tools4noobs.com/online_tools/hash/


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: doof on December 06, 2013, 11:23:28 AM
Quote
On another note: https://www.bitaddress.org/ - I'm sure it's been investigated but how does anybody know this website isn't saving all the private keys it generates? How can I do the same process locally?
If you look at the code, its just html and javascript.  Javascript runs client side, so no information is posted back to the site.  You can prove this by running a proxy like fiddler or wireshark.


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: Barek on December 06, 2013, 12:03:12 PM
https://en.bitcoin.it/wiki/Deterministic_wallet

In short, a deterministic wallet is a is an infinite number of Bitcoin addresses derived from a single key. You can print that key, of course.

When people say paper wallet, they typically mean a printout of the private key of a single Bitcoin address.


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 06, 2013, 05:12:57 PM
https://en.bitcoin.it/wiki/Deterministic_wallet

In short, a deterministic wallet is a is an infinite number of Bitcoin addresses derived from a single key. You can print that key, of course.

When people say paper wallet, they typically mean a printout of the private key of a single Bitcoin address.

So is the difference between a "brain wallet" and a deterministic wallet that with a brain wallet the passphrase only generates one address and with a deterministic wallet the passphrase will let you recreate the wallet and any possible address that could ever be associated with it?

If I just want to put some coins on one address and throw it in a safe do I even need a "wallet"?  Can I just create the public and private keys for one address and store those away and only add them to a wallet when i want to spend them?

Or am I missing something here?

Since armory doesn't run on Mac OS X 10.9 right now what's my best bet?


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: maxuser on December 06, 2013, 06:08:14 PM
I just made an online deterministic brainwallet. you can download it locally for offline use to make your paper wallet... plus the passphrase is generated randomly for you... take a look: http://jsbitcoin.com (http://jsbitcoin.com)... It generate 10 addresses from one passephase. I made it as a small tool to manage securely some bitcoins on any devices quickly...


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: virtualmaster on December 06, 2013, 06:41:40 PM
I guess actually I should say I am not really clear on what the difference between deterministic and paper wallets are.. I understand deterministic is a wallet that can be generated from a passphrase only at any time right?   Wouldn't that passphrase written on paper be a paper wallet or no?

I am looking for the best way to go about this for a friend that wants to store some bit coins on paper in a safe box or something like that.  I suppose a "paper wallet" could also be an encrypted digital text file too?

Anyway I'm looking for the most secure most trusted method to do this - main reason being that my friend i not very computer savvy or tech literate so storing and backing up encrypted files using ultra secure passphrases, etc. I think is not good for him.

One concern I have is what if the software I use to create the deterministic or paper wallet becomes unsupported at some point between now and when he wants to use the coins?  Then what?  Or is this not a risk?  If so why?  I'm thinking along the lines of like when you have a 20 year old tape backup but no hardware that can read it anymore.  Is this a risk at all?

Thanks

You can store the private keys in a digital wallet or written on an external medium paper wallet(printed on paper), steel wallet, brass wallet or whatever material.
Deterministic wallets in a specific sense are the opposite of random wallets.
You you can combine them as you wish than you can have random paper wallet, deterministic steel wallet or deterministic digital wallet.

- You have a random wallet if its values are unpredictable by humans.
The problem is that is difficult to generate a really random wallet and it is also subject to manipulations.

So we arrived by deterministic wallets.
- If a human or organization manipulated(not you), determined the keys of your wallet which you think are random then they are deterministic wallets.
They are bad deterministic wallets.
- If you have yourself decided on the key generation of your wallet then they are good deterministic wallets.
This creates confusion and some people are saying deterministic wallets are bad. Other people are saying they are good.
But they are thinking on different kind of  deterministic wallets.

So what can you do that your presumably random keys get not compromised by somebody ? You can create good deterministic wallets where you decide on the seed.
The problem is again that some people doesn't understand the principle and create easy to guess seed, pass-phrase. Then it is again contra-productive.

What is the best ?
Create a random pass-phrase with a random number generator and change about half of the characters, then you have a deterministic seed created randomly.
From this seed create a private key or a wallet.
This will be not memorable - not brain wallet, but it will be hard to guess and with high entropy.


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 06, 2013, 07:03:50 PM
so what is the difference between a deterministic wallet and a brain wallet if in both cases you are using a passphrase that is singificantly complex but you can remember it (like a long password)?


Another question - if somebody knows your private key but not your public key can they derive your public from your private key?


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: Barek on December 06, 2013, 07:15:02 PM
so what is the difference between a deterministic wallet and a brain wallet if in both cases you are using a passphrase that is singificantly complex but you can remember it (like a long password)?

Brain wallet means you memorize the secret. Paper wallet means you print it.

Deterministic describes the method how addresses are generated in a wallet. Given an initial random seed, the bitcoin addresses are generated deterministically. You know the seed, you know all future addresses. As opposed to the reference client (bitcoin-qt), which does not keep track of the seed, you only have to backup the initial seed and not each and every address.


Another question - if somebody knows your private key but not your public key can they derive your public from your private key?

Yes


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: justusranvier on December 06, 2013, 07:51:44 PM
Use Armory - it has offline transaction signing.

Paper wallets are only secure until it's time to spend them.


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 06, 2013, 11:44:58 PM


Brain wallet means you memorize the secret. Paper wallet means you print it.

Still not quite getting it.  Doesn't it mean you memorize a passphrase that it is used (maybe as a seed) to generate a public private key par?  That certainly seems to be the case here on hte "Brain Wallet" tab: https://www.bitaddress.org/


Quote
Deterministic describes the method how addresses are generated in a wallet. Given an initial random seed, the bitcoin addresses are generated deterministically. You know the seed, you know all future addresses. As opposed to the reference client (bitcoin-qt), which does not keep track of the seed, you only have to backup the initial seed and not each and every address.



So it means that with a deterministic wallet if you remember the passphrase (which works as a seed) to create the wallet you don't need any backups every time you create a new address?  This wallet automatically "knows" every single possible address that could be created in it without backups?



Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 06, 2013, 11:49:42 PM
Use Armory - it has offline transaction signing.

Paper wallets are only secure until it's time to spend them.

Can't, doesn't run on OS X 10.9 currently...


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: takagari on December 07, 2013, 03:58:47 AM
www.bitcoinpaperwallet.com < do the offline version. boom


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: Dabs on December 07, 2013, 04:03:35 AM
One way to do this:

1. Use a computer offline. Use any software that can make private keys (bitaddress, bitcoin-qt, dice2key, nobrainer, vanitygen, etc.)
2. Make a bunch, or make just one. Print that one. In WIF and with a QR code.
3. Put that piece of paper in an envelope. Seal it. Give to friend.

There are other minor details, but I'm sure you'll pick it up and know what to do.


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: Dr Bloggood on December 07, 2013, 04:11:46 AM
This is exactly the thread you need:

https://bitcointalk.org/index.php?topic=342691.0


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 07, 2013, 08:50:03 AM
One way to do this:

1. Use a computer offline. Use any software that can make private keys (bitaddress, bitcoin-qt, dice2key, nobrainer, vanitygen, etc.)
2. Make a bunch, or make just one. Print that one. In WIF and with a QR code.
3. Put that piece of paper in an envelope. Seal it. Give to friend.

There are other minor details, but I'm sure you'll pick it up and know what to do.

How do I get the relevant info to print out of bitcoin-qt.  The public address is easy but where do I get the private key?


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: Dabs on December 07, 2013, 02:21:06 PM
Dumpprivkey, or you can use pywallet.


Title: Re: What is the best way to make a deterministic and/or paper wallet?
Post by: manuel on December 07, 2013, 02:28:17 PM
And also one other question.  If I make a paper wallet how do I test it before dumping a large amount of coins into it without comprising the whole point of making the offline paper wallet in the first place?