equal
deleted
inserted
replaced
175 The problem with such messages in a distributed system is that |
175 The problem with such messages in a distributed system is that |
176 what happens if Bob receives 10, say, of these transactions? |
176 what happens if Bob receives 10, say, of these transactions? |
177 Did Alice intend to send him 10 Bitcoins, or did the message |
177 Did Alice intend to send him 10 Bitcoins, or did the message |
178 get duplicated by for example an attacker re-playing a sniffed |
178 get duplicated by for example an attacker re-playing a sniffed |
179 message? What is needed is a kind of serial number for such |
179 message? What is needed is a kind of serial number for such |
180 transactions. This means transaction messages shoul look more like |
180 transactions. This means transaction messages should look more like |
181 |
181 |
182 \begin{center} |
182 \begin{center} |
183 $\{\text{I, Alice, am giving Bob Bitcoin \#1234567.}\}_{K^{priv}_{Alice}}$ |
183 $\{\text{I, Alice, am giving Bob Bitcoin \#1234567.}\}_{K^{priv}_{Alice}}$ |
184 \end{center} |
184 \end{center} |
185 |
185 |
275 |
275 |
276 In Bitcoins you have the ability to both combine incoming |
276 In Bitcoins you have the ability to both combine incoming |
277 transactions, but also to split outgoing transactions to |
277 transactions, but also to split outgoing transactions to |
278 potentially more than one receiver. The latter is also needed. |
278 potentially more than one receiver. The latter is also needed. |
279 Consider again the rightmost transactions in |
279 Consider again the rightmost transactions in |
280 Figure~\ref{txngraph} and suppose Alice is a coffeeshop owner |
280 Figure~\ref{txngraph} and suppose Alice is a coffee shop owner |
281 selling coffees for 1 Bitcoin. Charles received a transaction |
281 selling coffees for 1 Bitcoin. Charles received a transaction |
282 from Zack over 5 Bitcoins, say. How does Charles pay for the |
282 from Zack over 5 Bitcoins, say. How does Charles pay for the |
283 coffee? There is no explicit notion of \emph{change} in the |
283 coffee? There is no explicit notion of \emph{change} in the |
284 Bitcoin system. What Charles has to do instead is to make one |
284 Bitcoin system. What Charles has to do instead is to make one |
285 single transaction with 1 Bitcoin to Alice and with 4 Bitcoins |
285 single transaction with 1 Bitcoin to Alice and with 4 Bitcoins |
620 |
620 |
621 |
621 |
622 |
622 |
623 \subsubsection*{Bitcoins for Real} |
623 \subsubsection*{Bitcoins for Real} |
624 |
624 |
625 Let us now turn to the nitty gritty details. As a participant |
625 Let us now turn to the nitty-gritty details. As a participant |
626 in the Bitcoin network you need to generate and store a |
626 in the Bitcoin network you need to generate and store a |
627 public-private key pair. The public key you need to advertise |
627 public-private key pair. The public key you need to advertise |
628 in order to receive payments (transactions). The private key |
628 in order to receive payments (transactions). The private key |
629 needs to be securely stored. For this there seem to be three |
629 needs to be securely stored. For this there seem to be three |
630 possibilities |
630 possibilities |
640 the private keys and how much security relies on them (recall |
640 the private keys and how much security relies on them (recall |
641 if somebody gets hold of it, your Bitcoins are quickly lost |
641 if somebody gets hold of it, your Bitcoins are quickly lost |
642 forever) I would opt for the third option for anything except |
642 forever) I would opt for the third option for anything except |
643 for trivial amounts of Bitcoins. As we have seen earlier in |
643 for trivial amounts of Bitcoins. As we have seen earlier in |
644 the course, securing a computer system that it can withstand a |
644 the course, securing a computer system that it can withstand a |
645 targeted breakin is still very much an unsolved problem. |
645 targeted break-in is still very much an unsolved problem. |
646 |
646 |
647 An interesting fact with Bitcoin keys is that there is no |
647 An interesting fact with Bitcoin keys is that there is no |
648 check for duplicate addresses. This means when generating a |
648 check for duplicate addresses. This means when generating a |
649 public-private key, you should really start with a carefully |
649 public-private key, you should really start with a carefully |
650 chosen random number such that there is really no chance to |
650 chosen random number such that there is really no chance to |
751 |
751 |
752 One question one often hears is how anonymous is it actually |
752 One question one often hears is how anonymous is it actually |
753 to pay with Bitcoins? Paying with paper money used to be a |
753 to pay with Bitcoins? Paying with paper money used to be a |
754 quite anonymous act (unlike paying with credit cards, for |
754 quite anonymous act (unlike paying with credit cards, for |
755 example). But this has changed nowadays: You cannot come to a |
755 example). But this has changed nowadays: You cannot come to a |
756 bank anymore with a suitcase full of money and try to open a |
756 bank any longer with a suitcase full of money and try to open a |
757 bank account. Strict money laundering and taxation laws mean |
757 bank account. Strict money laundering and taxation laws mean |
758 that not even Swiss banks are prepared to take such money and |
758 that not even Swiss banks are prepared to take such money and |
759 open a bank account. That is why Bitcoins are touted as |
759 open a bank account. That is why Bitcoins are touted as |
760 filling this niche again of anonymous payments. |
760 filling this niche again of anonymous payments. |
761 |
761 |
828 \item The government could compel ``mayor players'' to blacklist |
828 \item The government could compel ``mayor players'' to blacklist |
829 Bitcoins (for example at Bitcoin exchanges, which are usually |
829 Bitcoins (for example at Bitcoin exchanges, which are usually |
830 located somewhere in the vicinity of the government's reach). This |
830 located somewhere in the vicinity of the government's reach). This |
831 would impinge on what is called \emph{fungibility} of Bitcoins and |
831 would impinge on what is called \emph{fungibility} of Bitcoins and |
832 make them much less attractive to baddies. Suddenly their |
832 make them much less attractive to baddies. Suddenly their |
833 ``hard-earned'' Bitcoin money cannot be spent anymore. The attraction |
833 ``hard-earned'' Bitcoin money cannot be spent any more. The attraction |
834 of this option is that this blacklisting can be easily done |
834 of this option is that this blacklisting can be easily done |
835 ``whole-sale'' and therefore be really be an attractive target for |
835 ``whole-sale'' and therefore be really be an attractive target for |
836 governments \& Co. |
836 governments \& Co. |
837 \item The government could attempt to coerce the developer |
837 \item The government could attempt to coerce the developer |
838 community of the Bitcoin tools. While this might be a |
838 community of the Bitcoin tools. While this might be a |