handouts/ho08.tex
changeset 339 0e78c809b17f
parent 336 3cb200fa6d6a
child 346 5a6e8b7d20f7
equal deleted inserted replaced
338:f1491e0d7be0 339:0e78c809b17f
    42 \end{center}
    42 \end{center}
    43 
    43 
    44 \noindent is signed by Satoshi Nakamoto, which however is
    44 \noindent is signed by Satoshi Nakamoto, which however is
    45 likely only a pen name. There is a lot of speculation who
    45 likely only a pen name. There is a lot of speculation who
    46 could be the inventor, or inventors, but we simply do not
    46 could be the inventor, or inventors, but we simply do not
    47 know. This part of Bitcoins is definitely anonymous. The paper
    47 know. This part of Bitcoins is definitely anonymous so far. The paper
    48 above is from the end of 2008; the first Bitcoin transaction
    48 above is from the end of 2008; the first Bitcoin transaction
    49 was made in January 2009. The rules in Bitcoin are set up so
    49 was made in January 2009. The rules in Bitcoin are set up so
    50 that there will only ever be 21 Million Bitcoins with the
    50 that there will only ever be 21 Million Bitcoins with the
    51 maximum reached around the year 2140. Currently there are
    51 maximum reached around the year 2140. Currently there are
    52 already 11 Million Bitcoins in `existence'. Contrast this with
    52 already 11 Million Bitcoins in `existence'. Contrast this with
    75 keys. There are $2^{160}$ possible addresses, which is such a
    75 keys. There are $2^{160}$ possible addresses, which is such a
    76 vast amount that there is not even a check for duplicates, or
    76 vast amount that there is not even a check for duplicates, or
    77 already used addresses. If you start with a random number to
    77 already used addresses. If you start with a random number to
    78 generate a public-private key pair it is very unlikely that
    78 generate a public-private key pair it is very unlikely that
    79 you step on somebody else's shoes. Compare this with the
    79 you step on somebody else's shoes. Compare this with the
    80 email-addresses you always wanted to register with, say
    80 email-addresses you wanted to register with, say
    81 Gmail, but which are already taken.
    81 Gmail, but which are always already taken.
    82 
    82 
    83 One major difference between Bitcoins and traditional banking
    83 One major difference between Bitcoins and traditional banking
    84 is that you do not have a place, or places, that record the
    84 is that you do not have a place, or places, that record the
    85 balance on your account. Traditional banking involves a
    85 balance on your account. Traditional banking involves a
    86 central ledger which specifies the current balance in each
    86 central ledger which specifies the current balance in each
   141 \end{itemize}
   141 \end{itemize}
   142 
   142 
   143 \noindent But for this banks would need to be trusted and
   143 \noindent But for this banks would need to be trusted and
   144 would also be an easy target for any government interference,
   144 would also be an easy target for any government interference,
   145 for example. Think of the early days of music sharing where
   145 for example. Think of the early days of music sharing where
   146 the company Napster was the single point of ``failure'' which
   146 the company Napster was the trusted third-party but also the single point of ``failure'' which
   147 was taken offline by law enforcement. Bitcoins is more like a
   147 was taken offline by law enforcement. Bitcoins is more like a
   148 system such as BitTorrent without a single central entity that
   148 system such as BitTorrent without a single central entity that
   149 can be taken offline.\footnote{There is some Bitcoin
   149 can be taken offline.\footnote{There is some Bitcoin
   150 infrastructure that is not so immune from being taken offline:
   150 infrastructure that is not so immune from being taken offline:
   151 for example Bitcoin exchanges, HQs of Bitcoin mining pools,
   151 for example Bitcoin exchanges, HQs of Bitcoin mining pools,
   152 Bitcoin developers and so on.}
   152 Bitcoin developers and so on.}
   153 
   153 
   154 Bitcoin solves the problem of not being able to rely on a bank
   154 Bitcoins solve the problem of not being able to rely on a bank
   155 by making everybody the ``bank''. Everybody who cares can have
   155 by making everybody the ``bank''. Everybody who cares can have
   156 the entire transactions history starting with the first
   156 the entire transaction history starting with the first
   157 transaction made in January 2009. This history of transactions
   157 transaction made in January 2009. This history of transactions
   158 is called the \emph{blockchain}. Bob, for example, can use his
   158 is called the \emph{blockchain}. Bob, for example, can use his
   159 copy of the blockchain for determining whether Alice owned the
   159 copy of the blockchain for determining whether Alice owned the
   160 Bitcoin he received, and if she did, he transmits the message
   160 Bitcoin he received, and if she did, he transmits the message
   161 that he owns it now to every other participant on the Bitcoin
   161 that he owns it now to every other participant on the Bitcoin
   218 transactions, but also to split outgoing transactions to
   218 transactions, but also to split outgoing transactions to
   219 potentially more than one receiver. The latter is needed.
   219 potentially more than one receiver. The latter is needed.
   220 Consider again the rightmost transactions in
   220 Consider again the rightmost transactions in
   221 Figure~\ref{txngraph} and suppose Alice is a coffeeshop owner
   221 Figure~\ref{txngraph} and suppose Alice is a coffeeshop owner
   222 selling coffees for 1 Bitcoin. Charles received a transaction
   222 selling coffees for 1 Bitcoin. Charles received a transaction
   223 from Zack over 5 Bitcoins, say. How does he pay for the
   223 from Zack over 5 Bitcoins, say. How does Charles pay for the
   224 coffee? There is no explicit notion of \emph{change} in the
   224 coffee? There is no explicit notion of \emph{change} in the
   225 Bitcoin system. What Charles has to do instead is to make one
   225 Bitcoin system. What Charles has to do instead is to make one
   226 single transaction with 1 Bitcoin to Alice and with 4 Bitcoins
   226 single transaction with 1 Bitcoin to Alice and with 4 Bitcoins
   227 going back to himself, which then Charles can use to give to
   227 going back to himself, which then Charles can use to give to
   228 Emily, for example.
   228 Emily, for example.
   250 split this amount with 1 Bitcoin going to Alice and 9 Bitcoins
   250 split this amount with 1 Bitcoin going to Alice and 9 Bitcoins
   251 going back to herself. 
   251 going back to herself. 
   252 
   252 
   253 I think this is a good time for you to pause to let this
   253 I think this is a good time for you to pause to let this
   254 concept of transactions to really sink in\ldots{}You should
   254 concept of transactions to really sink in\ldots{}You should
   255 see that there is really no need for a central ledger and no
   255 come to the conclusion that there is really no need for a central ledger and no
   256 need for an account balance as familiar from traditional
   256 need for an account balance as familiar from traditional
   257 banking. The closest what Bitcoin has to offer for the notion
   257 banking. The closest what Bitcoin has to offer for the notion
   258 of a balance in a bank account are the unspend transactions
   258 of a balance in a bank account are the unspend transactions
   259 that a person (more precisely a public-private key address)
   259 that a person (more precisely a public-private key address)
   260 received. That means transactions that can still be forwarded. 
   260 received. That means transactions that can still be forwarded.