Author

Topic: Where's your wallet if you're just getting coins from a pool? (Read 1274 times)

hero member
Activity: 535
Merit: 500
Sometimes certain things just don't click.

Thanks again.
donator
Activity: 1218
Merit: 1079
Gerald Davis
I think I get it now, the wallet file was created when I first ran the client and is associated with that bitcoin address. So I have to copy THAT specific wallet file onto a USB or whatever and then I can delete the bitcoin client from my mining rig, correct?

Now I take that file and can load it onto any machine and when I run the client, with my bitcoin address of course, the bitcoin amounts will show up, correct? of course I have to wait for the blockchain to load, etc.

correct. 
correct.
correct.

technically the client creates a pool of 100 addresses (all stored in the wallet.dat).  It does this so backups aren't instantly out of date.  Any backup will be good for the next 100 unique addresses after the backup is created.
hero member
Activity: 535
Merit: 500
I think I get it now, the wallet file was created when I first ran the client and is associated with that bitcoin address. So I have to copy THAT specific wallet file onto a USB or whatever and then I can delete the bitcoin client from my mining rig, correct?

Now I take that file and can load it onto any machine and when I run the client, with my bitcoin address of course, the bitcoin amounts will show up, correct? of course I have to wait for the blockchain to load, etc.
donator
Activity: 1218
Merit: 1079
Gerald Davis
That's my point, how the hell are the private keys getting to my wallet file? Does this happen when the pool transfers the coins to you? If that's the case, my point still stands, since I haven't actually fired up the client yet, couldn't someone just put my bitcoin address into their client and wait for the blockchain to download and voila, they have the keys?

What I can't figure out is how and when are the private keys created? While you're mining? When the transaction occurs, etc.?

None of those things.

YOUR WALLET MAKES THE PRIVATE KEY AND KEEPS IT PRIVATE.

From the private key a public key and address is created.

Private key ---->  Address

You share the address and keep private key safe.  The wallet.dat file contains the private key for every public key/address in the wallet.

Private key ----> Address

you can't go

Address ----> Private Key

Only you have access to the private key thus only you can transfer/spend coins sent to your address(es).  You can't create a private key from an address thus an attacker knowing the address is useless.

Mining doesn't make private keys.
Transactions don't make private keys.
Your mining pool doesn't make a private key for you.

Your wallet makes PAIRS of keys.  
1) public (shared w/ the world)
and
2) private (inside your wallet.dat shared w/ nobody).
hero member
Activity: 535
Merit: 500
That's my point, how the hell are the private keys getting to my wallet file? Does this happen when the pool transfers the coins to you? If that's the case, my point still stands, since I haven't actually fired up the client yet, couldn't someone just put my bitcoin address into their client and wait for the blockchain to download and voila, they have the keys?

What I can't figure out is how and when are the private keys created? While you're mining? When the transaction occurs, etc.?
hero member
Activity: 938
Merit: 1002
I think the misunderstanding is, there are no actual "coin"s, there are only transactions. You transact money from one address to another. All used addresses are public. One who knows the private key to an address can transact the money stored in it. wallet.dat is a convenient way to store your private keys.

When you mine in a pool, the money goes to an address in the pool's wallet. The money that's displayed on the screen is your share, but it's not your concern where the money is located. When you withdraw, they transfer the money to the address you supplied. You have the private key to that address in your wallet file, this way you can access the money.

I think you misunderstood because you thought coins were actually keys. The system doesn't function that way. Coins are just virtual units, values that appear in the database, attached to an address. The database is called the block chain. Block chain is shared, so you don't have to be online to receive money. As long as you have the private keys, you will have access to your money. That's why you keep your wallet file safe. This is also the case for online wallets. They keep the private keys for you.
donator
Activity: 1218
Merit: 1079
Gerald Davis
How do i have a wallet.dat then? How do the files get in the wallet if I'm not running the bitcoin client on any machines?

This is the part I don't get, I'm not trying to be thick here.

Here's my set-up.

mining rig running linuxcoin, connected to a pool through phoenix miner. My pool is set to pay out after a certain amount of coins are mined. The address I used is the one from the bitcoin client on my mining machine, but I have never run the client more than to generate an address. I never let it run to download the entire blockchain, etc.

I have not run the bitcoin client again after generating the address. Did I screw this up?


You just need 1 wallet somewhere.

It can be the wallet on one of your rigs
It can be a wallet on your laptop or desktop (even if those have no miners)
It can be an address at an exchange like Tradehill, Mt. Gox, or CryptoExchange
It can be an ewallet like strongcoin.

Whatever address you put in the mining pool -> your coins go there.  So make sure you have access to that address.

You haven't screwed anything up yet.  If your pool already sent coins to that address then they will be in the client you used.  If you want to send them to another wallet then generate an address and send them there.  I am just saying you don't HAVE to send your coins only to the computer where you are mining.  If you use the mainline client (i.e not an exchange wallet or e-wallet) you will need to let it download the blockchain before you can access your coins.
hero member
Activity: 535
Merit: 500
How do i have a wallet.dat then? How do the files get in the wallet if I'm not running the bitcoin client on any machines?

This is the part I don't get, I'm not trying to be thick here.

Here's my set-up.

mining rig running linuxcoin, connected to a pool through phoenix miner. My pool is set to pay out after a certain amount of coins are mined. The address I used is the one from the bitcoin client on my mining machine, but I have never run the client more than to generate an address. I never let it run to download the entire blockchain, etc.

I have not run the bitcoin client again after generating the address. Did I screw this up?
donator
Activity: 1218
Merit: 1079
Gerald Davis
Okay, thanks again, so basically the keys are transferred to you from the pool. My point is, if you're doing things this way, what if someone finds your bitcoin address and just loads it into their client before you do and you have a payout coming from your pool?

Wouldn't the coins just load to their machine under your address?

No none of that is right.

No keys are transfered from pool to you.  The earned coins from the block GO TO THE POOL.  To their wallet.  They then pay you by making a transfer from their wallet to your wallet.  No keys are transferred.  You don't transfer keys you transfer Bitcoins from one address (the pools reward address) to another (your personal wallet address) via transactions.  Transactions are recorded in the blockchain so every client knows the value of every address.

You can't use coins with only the address.  The address is public and known.  Every address of every payment ever made is in the block chain.  It isn't a secret.  Without the PRIVATE KEY (secret inside the wallet.dat) you can't move the coins.

Here is an address:
http://blockexplorer.com/address/1AAoyFmZuUbVpNUJFCCSJbZQSvSRm8vPad

it is worth 7400  BTC.  If you can figure out the private key they are yours.


hero member
Activity: 535
Merit: 500
Okay, thanks again, so basically the keys are transferred to you from the pool. My point is, if you're doing things this way, what if someone finds your bitcoin address and just loads it into their client before you do and you have a payout coming from your pool?

Wouldn't the coins just load to their machine under your address?
newbie
Activity: 9
Merit: 0
As long as you have a backup of your wallet.dat and your pool is setup to payout to one address generated from that wallet then you own any bitcoins paid out.
legendary
Activity: 1148
Merit: 1008
If you want to walk on water, get out of the boat
Quote
Basically, If I have a dedicated mining rig which is mining at a pool and has no bitcoin client or wallet.dat, then where's the damn wallet.dat? Or how the heck is it created?

I loaded a bitcoin client on a machine which isn't mining and got my address and then entered into the pool I'm mining with and they are sending coins to that address, but who has the private keys?
Easy, your bitcoin are in the pool wallet, owned by the pool manager, until you withdraw them to your wallet.

So if you just mine in a pool well your bitcoins stay in the pool, if you want to withdraw them you need an address to send them to. If you want them to be sent to your wallet you need to create one and use that address.
But if you wish you can for example send directly the bitcoins from the pool to an exchange.
hero member
Activity: 602
Merit: 502
The wallet.dat is located in: C:\users\user name\app data\roaming\bitcoin  on the computer you have your client on.

And this file contains all the private keys for your addresses
legendary
Activity: 2408
Merit: 1009
Legen -wait for it- dary
The client can be on any computer. You just need to enter your address at the pool you use. Your mining rigs need not have the client running. Once the block chain is downloaded, all private keys belonging to your address will show up.

Running the client creates a node for the network. It can run all the time. Your address can't be used to steal your coins

The wallet.dat is located in: C:\users\user name\app data\roaming\bitcoin  on the computer you have your client on.
hero member
Activity: 535
Merit: 500
I still don't get this. I appreciate everyone's help in another thread, but I don't understand where your wallet would be if it's not on your mining rig and you're just receiving coins from a pool to an address. Wouldn't this be easily stolen by someone just getting your address?

It seems to me the only way you get the coins is by running the bitcoin client with your address in it and waiting for the blockchain to load. Now once this happens, do the private keys then get loaded into the wallet.dat on the machine you are running the bitcoin client on?

Basically, If I have a dedicated mining rig which is mining at a pool and has no bitcoin client or wallet.dat, then where's the damn wallet.dat? Or how the heck is it created?

I loaded a bitcoin client on a machine which isn't mining and got my address and then entered into the pool I'm mining with and they are sending coins to that address, but who has the private keys?

Thanks in advance for any help.
Jump to: