Bitcoin Forum

Bitcoin => Development & Technical Discussion => Topic started by: mgoldfinger on February 08, 2014, 02:37:21 PM



Title: How does an exchange wallet system work?
Post by: mgoldfinger on February 08, 2014, 02:37:21 PM
I have a question on how the wallet system on an exchange worka?

e.g. when I setup a user on a exchange, a wallet address is created for my user. But how does this actually work? Is it something like the Exchange having some sort of a 'master wallet' which holds all the addresses of the users? New addresses are then created in the wallet for new users? Are seperate wallets setup per user, that link directly to the blockchain?

Anybody know how this works?



Title: Re: How does an exchange wallet system work?
Post by: DannyHamilton on February 09, 2014, 07:59:11 PM
I have a question on how the wallet system on an exchange worka?

e.g. when I setup a user on a exchange, a wallet address is created for my user. But how does this actually work? Is it something like the Exchange having some sort of a 'master wallet' which holds all the addresses of the users? New addresses are then created in the wallet for new users? Are seperate wallets setup per user, that link directly to the blockchain?

Anybody know how this works?

Each exchange probably has their own way of doing it, and many of them probably don't publicly share this information.

If I was running an exchange, I probably wouldn't use a "wallet" at all.

Instead, I'd create a database of bitcoin addresses and store the private keys in a separate offline database.

When a new customer signs up or requests a new "deposit" address, I'd choose an unused address from my online database of addresses and supply this address to the user.  Then I'd scan the blockchain regularly for any new transactions that send bitcoins to any address in my database and update the "value" associated with the customer record in my database.  On a regular basis, I'd use an offline system to create a transaction that sweeps balances from all received transactions into a paper wallet stored in a secure location.  I'd then physically transfer this transaction that was created offline to an online wallet. I'd also transfer from these paper wallets to an online hot wallet a small portion of the total bitcoins under my control.  This hot wallet would be used to send requested withdrawals. Transactions sent to the hot wallet would be scanned for "risky" or "suspicious" activity which would require human intervention before sending out the requested withdrawal.

Of course there may be a better way of doing things, and I'd certainly be open to advice, this is just what first comes to mind.




Title: Re: How does an exchange wallet system work?
Post by: justusranvier on February 09, 2014, 09:29:52 PM
Of course there may be a better way of doing things, and I'd certainly be open to advice, this is just what first comes to mind.
http://bitcoinism.blogspot.com/2013/12/voting-pools-how-to-stop-plague-of.html