Post
Topic
Board Development & Technical Discussion
Re: How are big exchanges designed from a technical POV?
by
Linkeex
on 13/03/2014, 21:38:12 UTC
Brian Armstrong did this awesome interview with Kevin Rose a while back. He goes into some detail about how their system works.
http://techcrunch.com/video/coinbase-founder-brian-armstrong-on-bitcoin-security-foundation/518053205/

- Cool thanks for the tipp. So from my understanding Brian Armstrong said that they are splitting up their private keys into small chunks and then
place them geographically on other places. In case of a hot wallet running out of coins they get notified and are required to physically pick up their part of the private key,
meet up, put the private key together and then send a transaction from the cold wallet to e.g. the hot wallet.

But why are splitkeys considered a good idea?
With multisignature keys you have the advantage of redundancy. Even if one of the people that you trust is refusing to open the cold wallet or lost his private key,
the cold storage can still be accessed by overruling him by the majority.
It seems to me that with splitkeys this is not the case. Once a part of the private key is lost, the wallet is gone. Is this correct or am I missing something?





- Hey, thanks for pointing those articles out Smiley
I will definitely give them a read!




Quote
That's more or less true. You don't have to store the whole blockchain on your "cold wallet" though. The cold wallet is just a place to store private keys. The best approach would be to create a transaction "draft" (with inputs unsigned) on an online computer, then move it on a USB stick to the offline computer with cold storage, and then use a piece of software that lets you sign this transaction with private keys. Then you move out the resulting signed transaction back to online computer and send it to the network.

- You are right of course! This would be a much easier approach, thanks for pointing out Smiley




Quote
You never should send Bitcoins back to the address they came from without owners consent. This is exactly because there are many Bitcoin services which use hot/cold wallets and mixup Bitcoin addresses. So the address you deposit to is different than the address you're sending from while withdrawing. So if a service would send you back Bitcoins you sent from this kind of service, it could end up on other users wallet!

- I think you got me wrong there. Let me describe the idea once again.
You as a user need to enter a trusted address when signing up to the service. You should only enter an address that you have and will have access forever. Like an address that was created by your desktop client or the blockchain.info wallet.
You can now deposit and withdraw money and trade as long as you want, only that when you do NOT trade for, lets say a day, your bitcoins, stored on the exchange, will be then sent automatically to your trusted address.
This means less coins for the exchange to protect and gives back responsibility to the customer.
I hope I did a better job explaining this time.



Quote
Wrong. Multi-sig addresses are implemented in the protocol for a long time. Last year some services started to pop out using this beautiful feature of Bitcoin. One of them is Bitalo.com, which is an exchange that utilizes this technology to make user funds safe even during the trading, but, what's even more important, when they only want to store their coins on us. By "safe", I mean safe even in case of hacker attack on Bitalo servers, or even safe from the administrators themselves.

- Cool, actually I did hear from bitalo once, not knowing they/you are using multisignature addresses. So I definitely have to check out how it works. Thanks Smiley
(I'll be back once I wrapped my head around it Cheesy)



Quote
had experience from the administrator side with both types of exchanges (both hot/cold storage one and a multisig one) so if you have any more questions, feel free to ask Smiley

- Thanks! I will definitely be PM'ing the shit out of your inbox Cheesy



Quote
Yes, it's currently the most (over-)used approach in the industry. Is it recommendable? No. For the afermentioned reasons.
- Just for the sake of completeness. Is there any other approach you know? I mean, a bad one is okay too since I am evaluating all of them in my thesis Cheesy