Bitcoin Forum
June 14, 2024, 07:00:13 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: How can an exchange claim never to store bitcoins on their servers?  (Read 928 times)
monsterer (OP)
Legendary
*
Offline Offline

Activity: 1008
Merit: 1002


View Profile
May 30, 2013, 06:04:57 PM
 #1

Hi guys

I've seen a number of new exchanges claiming never to store your bitcoins on their servers for security purposes - while that sounds great, how is it possible? Surely the exchange would have no idea how many bitcoins you actually had at any one time?

Cheers, Paul.
drrussellshane
Hero Member
*****
Offline Offline

Activity: 546
Merit: 500


View Profile
May 30, 2013, 06:06:25 PM
 #2

The servers aren't "theirs", they are just rented?

 Grin

Buy a TREZOR! Premier BTC hardware wallet. If you're reading this, you should probably buy one if you don't already have one. You'll thank me later.
TippingPoint
Legendary
*
Offline Offline

Activity: 905
Merit: 1000



View Profile
May 30, 2013, 06:08:13 PM
 #3

They store them off-line.

So hackerz can't reach them ... try as they might.

The server might contain the balance amount only.

kokojie
Legendary
*
Offline Offline

Activity: 1806
Merit: 1003



View Profile
May 30, 2013, 06:10:47 PM
 #4

usually they put something like 90% in cold wallet, and store 10% for daily operation. OR they put 100% in cold wallet, and use their own funds for daily operation, so if anything is stolen, it comes out of the pocket of exchange owners.

btc: 15sFnThw58hiGHYXyUAasgfauifTEB1ZF6
Remember remember the 5th of November
Legendary
*
Offline Offline

Activity: 1862
Merit: 1011

Reverse engineer from time to time


View Profile
May 30, 2013, 06:12:05 PM
 #5

I think OP needs to know how. I am also interested in how the hot/cold wallet system works, and how I can "reproduce" it.

BTC:1AiCRMxgf1ptVQwx6hDuKMu4f7F27QmJC2
rme
Hero Member
*****
Offline Offline

Activity: 756
Merit: 504



View Profile
May 30, 2013, 06:14:13 PM
 #6

The server contains only public key of this addresses.
This way the server know the balance but not the private keys.

The transactions can be generated in a offline server and transfered in LAN to another machine that relays the transactions to the network.
FoBoT
Sr. Member
****
Offline Offline

Activity: 658
Merit: 250



View Profile
May 30, 2013, 06:32:56 PM
 #7

I am also interested in how the hot/cold wallet system works, and how I can "reproduce" it.
bitcoin armory explains it quite well
https://bitcoinarmory.com/using-offline-wallets-in-armory/
monsterer (OP)
Legendary
*
Offline Offline

Activity: 1008
Merit: 1002


View Profile
May 30, 2013, 07:16:04 PM
 #8

The server contains only public key of this addresses.
This way the server know the balance but not the private keys.

The transactions can be generated in a offline server and transfered in LAN to another machine that relays the transactions to the network.


Interesting - and there can be no chance of syncronisation issues say, if the 'offline' wallet spends all its funds but the server is delayed in picking up the change in balance?

Cheers, Paul.
monsterer (OP)
Legendary
*
Offline Offline

Activity: 1008
Merit: 1002


View Profile
May 31, 2013, 06:58:18 AM
 #9

...More to the point, how do these bitcoins ever get withdrawn onto the server after a trade is made?
Blazr
Hero Member
*****
Offline Offline

Activity: 882
Merit: 1005



View Profile
May 31, 2013, 07:11:22 AM
 #10

The exchange's server contains a list of Bitcoin addresses without the private keys, those are stored in cold storage, on paper wallets etc

When somebody wants to make a deposit, the server simply assigns one of these Bitcoin addresses to that persons username.

The person makes a payment to the deposit address, bitcoind running on the server will see the transaction, a script executes which then looks up who is assigned that bitcoin address, and then adds that amount to their account balance in the database.

The person then makes a withdrawal. The system simply records this in the database, at the end of the day the site owner then scans the paper wallets and then makes the withdrawal transactions.

Optionally the site owner may decide to store a small amount of bitcoin on the live server, this is what is called a hot wallet. Its purpose is so that withdrawals can be processed immediately & automatically by the server once the withdrawal request comes in, as long as the hot wallet has funds. If the live server is compromised the hot wallet will most likely be compromised as well hence its a wise move to keep as few BTC as possible in the hot wallet. The owner will occasionally "top-up" the hot wallet with funds from cold storage.

TippingPoint
Legendary
*
Offline Offline

Activity: 905
Merit: 1000



View Profile
May 31, 2013, 07:15:24 AM
 #11

^^ Thank you.  Nice description.

I especially like the scanning part.
xavier
Sr. Member
****
Offline Offline

Activity: 260
Merit: 250


View Profile
May 31, 2013, 08:38:02 AM
 #12

The server just keeps a balance of who owns which coins, but does not store coins themselves.

When user deposits or withdraws coins, an admin can manually send or record the coins on the server, without have the coins actually sent to the server.

This is how we do it at www.bitfication.com
Kazimir
Legendary
*
Offline Offline

Activity: 1176
Merit: 1003



View Profile
May 31, 2013, 08:40:42 AM
 #13

I've seen a number of new exchanges claiming never to store your bitcoins on their servers for security purposes - while that sounds great, how is it possible? Surely the exchange would have no idea how many bitcoins you actually had at any one time?
Bitcoins are not stored anywhere. Never. There's only a list of transactions.

It's all a matter of public addresses (the only thing required to receive coins and check balances) and private keys (the only thing needed to spend coins). And as others explained, most private keys are not stored on the servers.

In theory, there's no difference between theory and practice. In practice, there is.
Insert coin(s): 1KazimirL9MNcnFnoosGrEkmMsbYLxPPob
fellowtraveler
Sr. Member
****
Offline Offline

Activity: 440
Merit: 250


View Profile
May 31, 2013, 09:40:12 AM
 #14

I've seen a number of new exchanges claiming never to store your bitcoins on their servers for security purposes - while that sounds great, how is it possible? Surely the exchange would have no idea how many bitcoins you actually had at any one time?
Bitcoins are not stored anywhere. Never. There's only a list of transactions.

It's all a matter of public addresses (the only thing required to receive coins and check balances) and private keys (the only thing needed to spend coins). And as others explained, most private keys are not stored on the servers.

The above is a very succinct, accurate description of the reality. There are no coins in reality -- only a public ledger of balances. These balances can only be transacted using private keys, and most exchanges keep the majority of their coins stored on an address which has a corresponding private key that is kept offline.

So there is an offline private key which controls (say) 90% of the coins, and an online private key which controls 10% of the coins. This way if the server is hacked, only 10% of the coins can be stolen.

However, let's keep in mind that the server operator himself could still steal 100% of the coins. (You have to trust him.) Remember what happened with MyBitcoin.com ?

This is why I think that a higher solution is to store the coins in a multi-sig voting pool on the blockchain, so that you don't have to trust individual servers.

co-founder, Monetas
creator, Open-Transactions
Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!