handouts/ho05.tex
author Christian Urban <christian dot urban at kcl dot ac dot uk>
Wed, 29 Oct 2014 13:08:11 +0000
changeset 263 8a42736cce27
parent 249 31a749eba8c1
child 264 0079db1a1c9d
permissions -rw-r--r--
updated 5th handout
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
245
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     1
\documentclass{article}
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     2
\usepackage{../style}
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     3
\usepackage{../langs}
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     4
\usetikzlibrary{patterns,decorations.pathreplacing}
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     5
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     6
\begin{document}
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     7
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     8
\section*{Handout 5 (Protocols)}
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
     9
263
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    10
Protocols are the computer science equivalent to fractals and
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    11
the Mandelbrot set in mathematics. With the latter you have a
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    12
simple formula which you just iterate and then you test
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    13
whether a point is inside or outside a region, and voila
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    14
something magically
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    15
happened.\footnote{\url{http://en.wikipedia.org/wiki/Fractal},
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    16
\url{http://en.wikipedia.org/wiki/Mandelbrot_set}} Protocols
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    17
are similar: they are simple exchanges of messages, but in the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    18
end something ``magical'' can happen---for example a secret
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    19
channel has been established or two entities have
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    20
authenticated themselves to each other. The problem with magic
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    21
is of course it is poorly understood and even experts often
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    22
got, and get, it wrong with protocols. 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    23
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    24
To have an idea what kind of protocols we are interested, let
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    25
us look at a few examples. One example are (wireless) key 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    26
fobs which operate the central locking system and the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    27
ignition in a car.
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    28
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    29
\begin{center}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    30
\includegraphics[scale=0.075]{../pics/keyfob.jpg}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    31
\quad
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    32
\includegraphics[scale=0.2025]{../pics/startstop.jpg}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    33
\end{center}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    34
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    35
\noindent The point of these key fobs is that everything is
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    36
done over the ``air''---there is no physical connection
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    37
between the key, doors and engine. So we must achieve security
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    38
by exchanging certain messages between the key fob on one side
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    39
and doors and engine on the other. Clearly what we like to
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    40
achieve is that I can get into my car and start it, but that
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    41
thieves are kept out. The problem is that everybody can
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    42
``overhear'' or skim the exchange of messages between the key
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    43
fob and car. In this scenario the simplest attack you need to
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    44
defend against is a person-in-the-middle attack. Imagine you
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    45
park your car in front of a supermarket. One thief follows you
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    46
with a strong transmitter. A second thief ``listens'' to the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    47
signal from the car and wirelessly transmits it to the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    48
``colleague'' who followed you and who silently enquires about
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    49
the answer from the key fob. The answer is then send back to
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    50
the thief at the car, which then dutifully opens and possibly
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    51
starts. No need to steal your key anymore.
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    52
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    53
But there are many more such protocols we like to consider.
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    54
Other examples are wifi---you might sit at a Starbucks and
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    55
talk wirelessly to the free access point there and from there
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    56
talk with your bank, for example. Also even if your have to
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    57
touch your Oyster card at the reader each time you enter and
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    58
exit the Tube, it actually operates wirelessly and with
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    59
appropriate equipment over some quite large distance. But
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    60
there are many many more examples (Bitcoins, mobile
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    61
phones,\ldots). The common characteristics of the protocols we
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    62
are interested in here is that an adversary or attacker is
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    63
assumed to be in complete control over the network or channel
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    64
over which you exchanging messages. An attacker can install a
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    65
packet sniffer on a network, inject packets, modify packets,
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    66
replay old messages, or fake pretty much everything. In this
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    67
hostile environment, the purpose of protocols (that is
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    68
exchange of messages) is to achieve some security goal, for
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    69
example only allow the owner of the car in but everybody else
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    70
should be kept out.
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    71
245
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    72
The protocols we are interested here are generic descriptions
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    73
of how to exchange messages in order to achieve a goal, be it
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
    74
establishing a mutual secure connection or being able to
263
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    75
authenticate to a system. Unlike the distant past where for
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    76
example we had to meet a person in order to authenticate him
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    77
or her (via a passport for example), the problem we are facing
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    78
on the Internet is that we cannot easily be sure who we are
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    79
``talking'' to. The obvious reason is that only some electrons
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    80
arrive at our computer; we do not see the person, or computer,
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    81
behind the incoming electrons (messages). 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    82
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    83
To start, let us look at one of the simplest protocols that
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    84
are part of the TCP protocol (which underlies the Internet).
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    85
This protocol does not do anything security relevant, it just
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    86
establishes a ``hello'' from a client to a server which the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    87
server answers with ``I heard you'' and the client answers 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    88
in turn with something like ``thanks''. This protocol
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    89
is often called a \emph{three-way handshake}. Graphically it
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    90
can be illustrated as follows
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    91
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    92
\begin{center}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    93
\includegraphics[scale=0.5]{../pics/handshake.png}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    94
\end{center}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    95
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    96
\noindent On the left-hand side is a client, say Alice, on the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    97
right-hand side is a server, say. Time is running from top to
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    98
bottom. Alice initial SYN message needs some time to travel to
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
    99
the server. The server answers with SYN-ACK, which will
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   100
require some time to arrive at Alice. Her answer ACK will
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   101
again take some time to arrive at the server. After the 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   102
messages are exchanged Alice and the server simply have 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   103
established a channel to communicate over. Alice does
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   104
not know whether she is really talking to the server (somebody 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   105
else on the network might have intercepted her message
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   106
and replied in place of the server). Similarly, the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   107
server has no idea who it is talking to. That this can be 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   108
established depends on what is exchanged next and is the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   109
point of the protocols we want to study in more detail.
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   110
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   111
Before we start in earnest, we need to fix a more
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   112
convenient notation for protocols. Drawing pictures like
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   113
the one above would be awkward in the long-run. The
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   114
notation already abstracts away from a few details we are
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   115
not interested in: for example the time the messages
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   116
need to travel between endpoints. What we are interested
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   117
in is in which order the messages are sent. For the SYN-ACK
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   118
protocol we will therefore use the notation 
245
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   119
263
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   120
\begin{center}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   121
\begin{tabular}{l@{\hspace{2mm}}l}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   122
$A \to S$: & $SYN$\\
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   123
$S \to A$: & $SYN\_ACK$\\
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   124
$A \to S$: & $ACK$\\
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   125
\end{tabular}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   126
\end{center}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   127
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   128
\noindent The left-hand side specifies who is the sender and
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   129
who is the receiver of the message. On the right of the colon
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   130
is the message that is send. The order from top to down
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   131
specifies in which order the messages are sent. We also
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   132
have the convention that messages like above $SYN$ are send
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   133
in clear-text over the network. If we want that a message is 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   134
encrypted, then we use the notation
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   135
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   136
\[
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   137
\{msg\}_{K_{AB}}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   138
\]  
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   139
  
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   140
  
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   141
\noindent for messages. The curly braces indicate a kind of
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   142
envelope which can only be opened if you know the key $K_{AB}$
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   143
with which the message has been encrypted. We always assume
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   144
that an attacker, say Eve, cannot get the content of the
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   145
message, unless she is also in the possession of the key. We
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   146
explicitly exclude in our study that the encryption can be
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   147
broken.\footnote{\ldots{}which of course is what a good
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   148
protocol designer needs to ensure and more often than not
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   149
protocols are broken. For example Oyster cards contain a very
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   150
weak encryption mechanism which has been attacked.} It is also
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   151
possible that an encrypted message contains several parts. In
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   152
this case we would write something like
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   153
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   154
\[
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   155
\{msg_1, msg_2\}_{K_{AB}}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   156
\] 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   157
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   158
\noindent But again Eve would not be able to know 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   159
this unless she also has the key. We also allow the 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   160
possibility that a message is encrypted twice under 
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   161
different keys. In this case we write
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   162
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   163
\[
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   164
\{\{msg\}_{K_{AB}}\}_{K_{BC}}
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   165
\] 
245
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   166
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   167
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   168
263
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   169
Note, however,
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   170
while an attacker cannot obtain the content of the message
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   171
without the key, this encrypted message can be observed
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   172
and be recorded and then replayed at another time.
8a42736cce27 updated 5th handout
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 249
diff changeset
   173
245
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   174
Keyfobs - protocol
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   175
249
31a749eba8c1 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 245
diff changeset
   176
{\small
31a749eba8c1 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 245
diff changeset
   177
\url{http://www.cs.ru.nl/~rverdult/Gone_in_360_Seconds_Hijacking_with_Hitag2-USENIX_2012.pdf}}
31a749eba8c1 updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents: 245
diff changeset
   178
245
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   179
attack such protocols because they use weak ciphers (Oyster
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   180
card)
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   181
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   182
\end{document}
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   183
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   184
%%% Local Variables: 
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   185
%%% mode: latex
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   186
%%% TeX-master: t
630a3dd1efda updated
Christian Urban <christian dot urban at kcl dot ac dot uk>
parents:
diff changeset
   187
%%% End: