slides/slides08.tex
author Christian Urban <christian dot urban at kcl dot ac dot uk>
Tue, 18 Nov 2014 03:27:16 +0000
changeset 315 7bd723cb9b32
child 316 edbd731e8bee
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
315
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     1
\documentclass[dvipsnames,14pt,t]{beamer}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     2
\usepackage{../slides}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     3
\usepackage{../graphics}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     4
\usepackage{../langs}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     5
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     6
\usetikzlibrary{shapes}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     7
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     8
% beamer stuff 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     9
\renewcommand{\slidecaption}{APP 08, King's College London}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    10
\newcommand{\bl}[1]{\textcolor{blue}{#1}}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    11
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    12
\newcommand{\DOWNarrow}[3]{%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    13
\begin{textblock}{0}(#2,#3)%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    14
\onslide<#1>{%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    15
\begin{tikzpicture}%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    16
\node at (0,0) [single arrow, shape border rotate=270, fill=red,text=red]{a};%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    17
\end{tikzpicture}}%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    18
\end{textblock}}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    19
\newcommand{\LEFTarrow}[3]{%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    20
\begin{textblock}{0}(#2,#3)%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    21
\onslide<#1>{%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    22
\begin{tikzpicture}%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    23
\node at (0,0) [single arrow, shape border rotate=180, fill=red,text=red]{a};%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    24
\end{tikzpicture}}%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    25
\end{textblock}}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    26
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    27
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    28
\begin{document}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    29
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    30
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    31
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    32
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    33
\frametitle{%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    34
  \begin{tabular}{@ {}c@ {}}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    35
  \\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    36
  \LARGE Access Control and \\[-3mm] 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    37
  \LARGE Privacy Policies (8)\\[-6mm] 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    38
  \end{tabular}}\bigskip\bigskip\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    39
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    40
  \normalsize
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    41
  \begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    42
  \begin{tabular}{ll}Ch
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    43
  Email:  & christian.urban at kcl.ac.uk\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    44
  Office: & S1.27 (1st floor Strand Building)\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    45
  Slides: & KEATS (also homework is there)\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    46
  \end{tabular}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    47
  \end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    48
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    49
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    50
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    51
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    52
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    53
% student prticipation
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    54
\begin{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    55
\frametitle{Bitcoins}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    56
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    57
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    58
\Huge\bf ?
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    59
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    60
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    61
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    62
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    63
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    64
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    65
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    66
\frametitle{Bitcoins from 10,000m}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    67
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    68
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    69
\item a crypto ``currency'' by Satoshi Nakamoto (likely a pen name)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    70
\item a digital resource designed to be scarce 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    71
  (max 21 Mio bitcoins---deflationary currency) 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    72
\item mined by solving special puzzles involving hashes
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    73
\item transaction history (ledger/blockchain) is P2P distributed (12 GB)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    74
\item two ``mining pools'' produce\\ currently more than 50\% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    75
  of bitcoins 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    76
\item can be stolen and also lost
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    77
\item anoynmous?\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    78
\item a ponzi scheme
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    79
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    80
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    81
\begin{textblock}{7}(11.5,10)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    82
\includegraphics[scale=0.21]{../pics/bitcoin_ledgers.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    83
\end{textblock}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    84
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    85
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    86
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    87
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    88
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    89
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    90
\frametitle{Bitcoins}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    91
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    92
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    93
\item you create a public-private key pair
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    94
\item you have a wallet which can be
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    95
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    96
\item electronic (on you computer, passwords)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    97
\item cloud-based (passwords)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    98
\item paper-based
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    99
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   100
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   101
\item Mt.~Gox: hacked $\Rightarrow$ insolvent
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   102
\item no form of dispute resolution
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   103
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   104
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   105
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   106
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   107
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   108
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   109
\begin{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   110
\frametitle{Underlying Ideas}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   111
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   112
Establishing trust in a completely 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   113
untrusted environment\medskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   114
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   115
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   116
\item public-private key encryption\medskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   117
\item digital signatures\medskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   118
\item cryptographic hashing (SHA-256)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   119
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   120
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   121
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   122
If Alice sends you: \bl{$msg, \{msg\}_{K^{priv}_{Alice}}$}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   123
\ldots
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   124
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   125
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   126
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   127
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   128
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   129
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   130
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   131
\frametitle{Lets Start with Infocoins}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   132
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   133
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   134
\bl{$\{\text{I, Alice, am giving Bob one infocoin.}\}_{K^{priv}_{Alice}}$}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   135
\end{center}\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   136
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   137
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   138
\item no-one else could have created that message
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   139
\item Alice cannot deny the ``intend''\pause\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   140
\item forgery possible only after Alice created the string
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   141
\item Q: What is money? --- A: Well string above
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   142
  (or later messages like that)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   143
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   144
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   145
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   146
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   147
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   148
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   149
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   150
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   151
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   152
\frametitle{Double Spend}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   153
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   154
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   155
\bl{$\{\text{I, Alice, am giving Bob one infocoin.}\}_{K^{priv}_{Alice}}$}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   156
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   157
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   158
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   159
\item Alice could keep sending Bob this message over and over
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   160
      again\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   161
\item we need to have a serial number
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   162
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   163
\bl{$\{\text{I, Alice, am giving Bob infocoin \#1234567.}\}_{K^{priv}_{Alice}}$}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   164
\end{center}\pause\medskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   165
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   166
\item but then we need a trusted source of serial numbers (e.g.~bank)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   167
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   168
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   169
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   170
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   171
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   172
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   173
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   174
\frametitle{No Banks Please}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   175
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   176
With banks we could implement:
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   177
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   178
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   179
\item Bob asks the bank whether the infocoin with that serial
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   180
      number belongs to Alice and
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   181
\item Alice hasn’t already spent this infocoin. 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   182
\item If yes, then Bob tells the bank he accept the infocoin
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   183
\item the bank updates the records to show that the infocoin
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   184
      with that serial number is now in Bob’s possession and
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   185
      no longer belongs to Alice\bigskip\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   186
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   187
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   188
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   189
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   190
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   191
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   192
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   193
\frametitle{Blockchain}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   194
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   195
The solution for double spend: 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   196
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   197
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   198
\item make everybody the bank, everybody has the entire
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   199
      transaction history --- will be called
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   200
      \alert{blockchain}\medskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   201
\item Bob checks whether infocoin belongs to Alice and then
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   202
      broadcasts the message to anybody else 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   203
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   204
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   205
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   206
\includegraphics[scale=0.21]{../pics/bitcoin_ledgers.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   207
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   208
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   209
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   210
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   211
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   212
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   213
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   214
\frametitle{Blockchain}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   215
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   216
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   217
\includegraphics[scale=0.5]{../pics/bitcoinblockchain0.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   218
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   219
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   220
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   221
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   222
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   223
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   224
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   225
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   226
\frametitle{Transaction Graph}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   227
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   228
\mbox{}\hspace{3cm}older \hspace{3cm} current
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   229
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   230
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   231
\includegraphics[scale=0.5]{../pics/blockchain.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   232
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   233
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   234
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   235
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   236
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   237
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   238
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   239
\frametitle{Double Spend Again}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   240
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   241
\begin{bubble}[10cm]\addtolength{\leftmargini}{5mm}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   242
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   243
\item I , Alice, am giving Bob one infocoin, with serial
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   244
      number 1234567.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   245
\item I, Alice, am giving \alt<2->{\alert{Alice}}{Charlie} 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   246
      one infocoin.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   247
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   248
\end{bubble}\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   249
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   250
How should other people update their blockchain (public
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   251
register)?\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   252
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   253
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   254
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   255
\includegraphics[scale=0.3]{../pics/bitcoindisagreement.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   256
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   257
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   258
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   259
Once enough people have broadcast that message, everyone
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   260
updates their block chain to show that infocoin 1234567 now
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   261
belongs to Bob, and the transaction is complete.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   262
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   263
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   264
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   265
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   266
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   267
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   268
\frametitle{Creating Agreement}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   269
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   270
\begin{bubble}[10cm]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   271
Once \alert{enough} people have broadcast that message, 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   272
everyone updates their block chain to show that infocoin 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   273
1234567 now belongs to Bob, and the transaction is accepted.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   274
\end{bubble}\bigskip\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   275
\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   276
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   277
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   278
But what if Alice sets up a large number of separate
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   279
identities, let’s say a billion, on the Infocoin network. When
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   280
Bob asks the network to validate the transaction, Alice’s
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   281
puppet identities say ``Yes his transaction is validated'',
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   282
while actually the rest network says Alice's transaction 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   283
is OK?
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   284
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   285
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   286
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   287
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   288
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   289
\frametitle{Proof-Of-Work}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   290
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   291
The idea is counterintuitive and involves a combination of two
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   292
ideas:\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   293
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   294
\begin{bubble}[10cm]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   295
\addtolength{\leftmargini}{5mm}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   296
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   297
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   298
\item to (artificially) make it computationally costly for
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   299
      network users to validate transactions, and
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   300
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   301
\item to reward them for trying to help validate transactions
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   302
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   303
\end{bubble}\pause\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   304
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   305
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   306
this is called mining: whoever validates a transaction will be awarded with
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   307
50 bitcoins --- this halves every 210,000 transactions or
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   308
roughly every 4 years; no new bitcoins after 2140 -- then only 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   309
transaction fees
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   310
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   311
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   312
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   313
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   314
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   315
\frametitle{Solving Puzzles}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   316
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   317
Given a string, say \code{"Hello, world!"}, what is the 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   318
\alert{salt} that the hash starts with a long run of 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   319
zeros?\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   320
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   321
\begin{bubble}[10cm]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   322
\begin{tabular}{l}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   323
\footnotesize\code{h("Hello, world!0") =}\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   324
\;\;\scriptsize\code{1312af178c253f84028d480a6adc1e25e81caa44c749ec81976192e2ec934c64}\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   325
\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   326
\footnotesize\code{h("Hello, world!1") =}\\ 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   327
\;\;\scriptsize\code{e9afc424b79e4f6ab42d99c81156d3a17228d6e1eef4139be78e948a9332a7d8}\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   328
\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   329
\ldots\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   330
\footnotesize\code{h("Hello, world!4250") =}\\ 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   331
\;\;\scriptsize\code{0000c3af42fc31103f1fdc0151fa747ff87349a4714df7cc52ea464e12dcd4e9}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   332
\end{tabular}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   333
\end{bubble}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   334
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   335
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   336
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   337
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   338
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   339
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   340
\frametitle{Hardness}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   341
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   342
If we want the output hash value to begin with 10 zeroes,
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   343
say, then we will need, on average, to try $16^{10} \approx
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   344
10^{12}$ different salts before we find a suitable nonce. 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   345
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   346
Hardness can be controlled by setting a \alert{target} (maximum
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   347
number).
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   348
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   349
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   350
\includegraphics[scale=0.37]{../pics/blockchainsolving.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   351
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   352
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   353
\begin{textblock}{7}(7,10)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   354
10 mins
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   355
\end{textblock}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   356
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   357
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   358
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   359
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   360
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   361
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   362
\frametitle{Order of Transactions}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   363
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   364
If we don’t have such an ordering then at any given moment it
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   365
may not be clear who owns which infocoins.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   366
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   367
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   368
\includegraphics[scale=0.38]{../pics/bitcoin_unconfirmed.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   369
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   370
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   371
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   372
Say, miner David is lucky and finds a suitable salt
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   373
to confirm the transactions. Celebration!\pause \hspace{5mm}??
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   374
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   375
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   376
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   377
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   378
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   379
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   380
\frametitle{Forks}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   381
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   382
Typically the blockchain will look as follows
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   383
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   384
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   385
\includegraphics[scale=0.65]{../pics/block_chain1.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   386
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   387
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   388
\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   389
But every so often there is a fork
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   390
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   391
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   392
\includegraphics[scale=0.65]{../pics/block_chain_fork.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   393
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   394
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   395
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   396
\ldots{}bugger this is exactly what we are trying to avoid
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   397
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   398
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   399
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   400
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   401
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   402
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   403
The tie is broken if another block is solved
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   404
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   405
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   406
\includegraphics[scale=0.4]{../pics/bitcoin_blockchain_branches.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   407
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   408
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   409
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   410
The rule is this: if a fork occurs, people on the network keep
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   411
track of all forks. But at any given time, miners only work
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   412
to extend whichever fork is longest in their copy of the block
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   413
chain.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   414
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   415
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   416
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   417
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   418
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   419
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   420
\frametitle{Double Spending Again}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   421
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   422
So if Alice wants to fake it she needs to produce
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   423
a longer chain:
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   424
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   425
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   426
\includegraphics[scale=0.4]{../pics/bitcoin_blockchain_double_spend.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   427
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   428
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   429
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   430
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   431
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   432
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   433
\begin{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   434
\frametitle{Racing Agianst the World}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   435
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   436
\begin{columns}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   437
\begin{column}{4.5cm}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   438
\includegraphics[scale=0.3]{../pics/bitcoin_doublespend_blockchain_race.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   439
\end{column}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   440
\begin{column}{5.5cm}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   441
\includegraphics[scale=0.3]{../pics/bitcoin_transaction_order_race.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   442
\end{column}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   443
\end{columns}\bigskip\bigskip\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   444
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   445
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   446
A transaction is ``confirmed'' if:\smallskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   447
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   448
(1) it is part of a block in the longest fork, and (2) at
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   449
least 5 blocks follow it in the longest fork. In this case we
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   450
say that the transaction has ``6 confirmations''.\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   451
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   452
\footnotesize (might take 1h+\ldots but for creditcards you have 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   453
6 months chargeback)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   454
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   455
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   456
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   457
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   458
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   459
\frametitle{Mining Pools}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   460
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   461
\begin{bubble}[10cm]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   462
On average, it would take several years for a typical computer
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   463
to solve a block, so an individual’s chance of ever solving
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   464
one before the rest of the network, which typically takes 10
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   465
minutes, is very low.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   466
\end{bubble}\bigskip\pause
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   467
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   468
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   469
Many people join groups called mining pools that collectively
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   470
work to solve blocks, and distribute rewards based on work
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   471
contributed. These act somewhat like lottery pools among
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   472
co-workers, except that some of these pools are quite large,
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   473
and comprise more than 20\% of all the computers in the
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   474
network.\medskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   475
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   476
\footnotesize
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   477
BTC, the largest mining pool, has limited its members to 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   478
not solve more than 6 blocks in a row.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   479
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   480
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   481
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   482
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   483
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   484
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   485
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   486
\frametitle{Bitcoins for Real}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   487
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   488
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   489
\item you need a public-private key (the hash of the 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   490
public key to determines your bitcoin address) 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   491
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   492
\item if you want to receive bitcoins, you publicise 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   493
this address
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   494
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   495
\item there are $2^{160}$ possibilities\\ 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   496
(no check for duplicates)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   497
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   498
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   499
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   500
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   501
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   502
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   503
\begin{frame}[c]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   504
\frametitle{A Transaction Msg}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   505
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   506
\lstinputlisting[language=Scala,
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   507
                 numbersep=3pt, 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   508
                 xleftmargin=-6mm]{msg}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   509
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   510
\DOWNarrow{2}{3.5}{1.6}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   511
\LEFTarrow{3}{3.5}{3}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   512
\LEFTarrow{4}{4.7}{4}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   513
\LEFTarrow{4}{5.4}{4.8}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   514
\LEFTarrow{5}{5.4}{5.6}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   515
\LEFTarrow{6}{5}{6.4}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   516
\DOWNarrow{7}{6}{8.2}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   517
\LEFTarrow{8}{5}{9.7}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   518
\DOWNarrow{9}{7}{9.7}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   519
\DOWNarrow{9}{10}{9.7}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   520
\LEFTarrow{10}{9}{12}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   521
\DOWNarrow{11}{12.5}{12}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   522
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   523
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   524
\begin{textblock}{0}(7,3)%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   525
\small
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   526
\onslide<2,4,7,8,9,10,11,12>{
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   527
\begin{bubble}[6cm]%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   528
\only<2>{the hash of the msg that follows; kind of serial number}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   529
\only<4>{the transaction has one inout and one output (could be more)}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   530
\only<7>{the hash of the incoming transaction (incoming serial number)}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   531
\only<8>{use the 0th output of the incoming transaction}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   532
\only<9>{the public key and signature of the sender}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   533
\only<10>{use $x$ amount of the incoming money}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   534
\only<11>{public key of the receiver}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   535
\only<12>{you do not need a central authority to issue serial numbers\bigskip\\
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   536
there are no ``coins'', just a long series of transactions}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   537
\end{bubble}}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   538
\end{textblock}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   539
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   540
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   541
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   542
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   543
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   544
\begin{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   545
\frametitle{Transaction History}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   546
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   547
you can follow back the transaction history until
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   548
you reach either
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   549
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   550
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   551
\item the genesis block (a transaction without input of
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   552
50 bitcoins)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   553
\item coinbase transaction (this is the reward of the
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   554
miner who validated a block of transactions in the blockchain)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   555
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   556
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   557
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   558
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   559
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   560
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   561
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   562
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   563
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   564
\frametitle{Lost Bitcoins?}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   565
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   566
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   567
\item somebody needs to be able to generate a key-pair
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   568
  for the signature (for this you need the private 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   569
  key)\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   570
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   571
\item somebody spends your bitcoins fraudulently
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   572
  (you cannot charge them back)\ldots{} bad luck
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   573
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   574
\item you can send bitcoins to a ``non-existing'' address
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   575
  (Mt.~Gox)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   576
\end{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   577
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   578
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   579
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   580
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   581
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   582
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   583
\frametitle{Good Points}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   584
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   585
An attacker can't:
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   586
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   587
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   588
\item reverse other people's transactions
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   589
\item change the number of coins generated per block
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   590
\item create coins out of thin air
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   591
\item send coins that never belonged to an attacker
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   592
\end{itemize}\bigskip
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   593
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   594
The system can be scaled to all world transactions. 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   595
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   596
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   597
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   598
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   599
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   600
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   601
\frametitle{But I did not Inhale}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   602
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   603
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   604
\includegraphics[scale=0.04]{../pics/bitcointornetwork.png}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   605
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   606
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   607
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   608
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   609
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   610
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   611
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   612
\frametitle{Anonymity}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   613
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   614
Bitcoins may not be ideal for money laundering because all
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   615
transactions are public.[218] Authorities have expressed
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   616
concerns, however. 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   617
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   618
How anonymous is Bitcoin? Many people claim that Bitcoin can be used
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   619
anonymously. This claim has led to the formation of marketplaces such
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   620
as Silk Road (and various successors), which specialize in illegal
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   621
goods. However, the claim that Bitcoin is anonymous is a myth. The
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   622
block chain is public, meaning that it’s possible for anyone to see
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   623
every Bitcoin transaction ever. Although Bitcoin addresses aren’t
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   624
immediately associated to real-world identities, computer scientists
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   625
have done a great deal of work figuring out how to de-anonymize
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   626
“anonymous” social networks. The block chain is a marvellous target
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   627
for these techniques.
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   628
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   629
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   630
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   631
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   632
\begin{frame}[t]
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   633
\frametitle{Bitcoin vs Gov}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   634
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   635
Purported absence of potential government interference?
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   636
\pause 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   637
Far from it:
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   638
  
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   639
\begin{itemize}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   640
  \item government could compel ``mayor players'' to blacklist
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   641
     bitcoins (exchanges)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   642
  \item coerce developer community (e.g.~Lavabit)
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   643
  \item put pressure on mining pools, or be big a miner 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   644
  itself
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   645
\end{itemize} 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   646
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   647
\begin{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   648
\includegraphics[scale=0.04]{../pics/nsautah1.jpg}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   649
\hspace{3mm}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   650
\includegraphics[scale=0.031]{../pics/nsautah2.jpg}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   651
\end{center}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   652
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   653
\end{frame}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   654
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   655
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   656
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   657
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   658
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   659
\end{document}
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   660
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   661
%%% Local Variables:  
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   662
%%% mode: latex
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   663
%%% TeX-master: t
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   664
%%% End: 
7bd723cb9b32 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   665