slides/slides01.tex
changeset 160 4cbd6ca025e6
parent 159 77cf0362b87a
child 162 5031e7778fdb
equal deleted inserted replaced
159:77cf0362b87a 160:4cbd6ca025e6
     1 \documentclass[dvipsnames,14pt,t, xelatex]{beamer}
     1 \documentclass[dvipsnames,14pt,t, xelatex]{beamer}
     2 \usepackage{beamerthemeplaincu}
     2 \usepackage{../slides}
     3 \usepackage{fontenc,xltxtra,xunicode}
     3 \usepackage{../graphics}
     4 \defaultfontfeatures{Mapping=tex-text}
       
     5 \usepackage{mathpartir}
       
     6 \usepackage[absolute,overlay]{textpos}
       
     7 \usepackage{ifthen}
       
     8 \usepackage{tikz}
       
     9 \usepackage{pgf}
       
    10 \usepackage{calc} 
       
    11 \usepackage{ulem}
       
    12 \usepackage{listings}
       
    13 \renewcommand{\uline}[1]{#1}
       
    14 \usetikzlibrary{arrows}
       
    15 \usetikzlibrary{automata}
       
    16 \usetikzlibrary{shapes}
       
    17 \usetikzlibrary{shadows}
       
    18 \usetikzlibrary{positioning}
       
    19 \usetikzlibrary{calc}
       
    20 \usepackage{upquote}
       
    21 \usetikzlibrary{plotmarks}
       
    22 \usepackage{graphicx} 
       
    23 \usepackage{pgfplots}
       
    24 \usepackage{../langs}
     4 \usepackage{../langs}
    25 
     5 
    26 
     6 \setmonofont[Scale=.88]{Consolas}
    27 \makeatletter
     7 \newfontfamily{\consolas}{Consolas}
    28 \lst@CCPutMacro\lst@ProcessOther {"2D}{\lst@ttfamily{-{}}{-{}}}
     8 
    29 \@empty\z@\@empty
     9 \hfuzz=220pt 
    30 \makeatother
       
    31 
       
    32 
    10 
    33 % beamer stuff 
    11 % beamer stuff 
    34 \renewcommand{\slidecaption}{APP 01, King's College London, 24.~September 2013}
    12 \renewcommand{\slidecaption}{APP 01, King's College London}
    35 
    13 
    36 
    14 
    37 \begin{document}
    15 \begin{document}
    38 
    16 
    39 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    17 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    40 \begin{frame}[t]
    18 \begin{frame}
    41 \frametitle{%
    19 \frametitle{%
    42   \begin{tabular}{@ {}c@ {}}
    20   \begin{tabular}{@ {}c@ {}}
    43   \LARGE Access Control and \\[-3mm] 
    21   \LARGE Access Control and \\[-3mm] 
    44   \LARGE Privacy Policies (1)\\[-6mm] 
    22   \LARGE Privacy Policies (1)\\[-6mm] 
    45   \end{tabular}}
    23   \end{tabular}}
    65 \begin{center}
    43 \begin{center}
    66 \includegraphics[scale=2.1]{pics/barrier.jpg}
    44 \includegraphics[scale=2.1]{pics/barrier.jpg}
    67 \end{center}
    45 \end{center}
    68 
    46 
    69 \end{frame}
    47 \end{frame}
    70  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    48 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    71 
    49 
    72 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    50 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    73 \begin{frame}
    51 \begin{frame}
       
    52 
       
    53 \begin{center}
       
    54 \begin{tikzpicture}[scale=1.3]
       
    55   %\draw[very thick, scale=1] (0, 0) grid (6, -4);
       
    56   \draw (0,0) node (X) {\includegraphics[scale=0.1]{pics/rman.png}};
       
    57   \draw (6,0) node (Y) {\includegraphics[scale=0.1]{pics/gman.png}};
       
    58   \node[below] at (X.south) {Alice};
       
    59   \node[below] at (Y.south) {Bob};
       
    60   
       
    61   \draw[red,<->,line width = 3mm] (X) -- (Y);
       
    62   \node [inner sep=5pt,label=above:{\begin{tabular}{c}
       
    63                                     secure/private\\
       
    64                                     communication
       
    65                                     \end{tabular}}] 
       
    66   at ($ (X)!.5!(Y) $) {};
       
    67 
       
    68   \draw (1.0,-1.5) node {\includegraphics[scale=0.05]{pics/nsa.png}};
       
    69   \draw (2.4,-1.5) node {\includegraphics[scale=0.3]{pics/gchq.jpg}};
       
    70   \draw (1.7,-2.3) node {\huge\ldots};
       
    71   \draw (4.2,-1.5) node {\includegraphics[scale=0.05]{pics/apple.png}};
       
    72   \draw (5.4,-1.7) node {\includegraphics[scale=0.15]{pics/google.png}};
       
    73   \draw (5.0,-2.3) node {\huge\ldots};
       
    74 \end{tikzpicture}
       
    75 \end{center}
    74 
    76 
    75 \begin{center}
    77 \begin{center}
    76 \includegraphics[scale=0.1]{pics/snowden.jpg}
    78 \includegraphics[scale=0.1]{pics/snowden.jpg}
    77 \end{center}
    79 \end{center}
    78 
    80 
    79 \begin{textblock}{1}(3.5,7.5)
       
    80   \begin{tikzpicture}[scale=1.3]
       
    81   \draw[white] (0,0) node (X) {\includegraphics[scale=0.1]{pics/rman.png}};
       
    82   \draw[white] (6,0) node (Y) {\includegraphics[scale=0.1]{pics/gman.png}};
       
    83   \draw[red, ->, line width = 3mm] (X) -- (Y);
       
    84   \node [inner sep=5pt,label=above:\textcolor{black}{communication}] at ($ (X)!.5!(Y) $) {};
       
    85 
       
    86   \draw[white] (1.3, -1) node (NSA) {\includegraphics[scale=0.05]{pics/nsa.png}};
       
    87   \draw[white] (2.7, -1) node (GCHQ) {\includegraphics[scale=0.3]{pics/gchq.jpg}};
       
    88   \draw[black] (2, -2) node (OTHER) {\huge\ldots};
       
    89 
       
    90   \end{tikzpicture}
       
    91 \end{textblock}
       
    92 
       
    93 \end{frame}
    81 \end{frame}
    94 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    82 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    95 
    83 
    96 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    84 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
    97 \mode<presentation>{
       
    98 \begin{frame}
    85 \begin{frame}
    99 
    86 
   100 \begin{center}
    87 \begin{center}
   101 \includegraphics[scale=0.45]{pics/lavabit-email.jpg}
    88 \includegraphics[scale=0.45]{pics/lavabit-email.jpg}
   102 \end{center}
    89 \end{center}
   103 \small{}\mbox{}\hfill{}
    90 \small{}\mbox{}\hfill{}
   104 Lavabit email service closed down on 8 August 2013. \\
    91 Lavabit email service closed down on 8 August 2013. \\
   105 \mbox{}\hfill{}\textcolor{blue}{\url{goo.gl/bgSrVp}}
    92 \mbox{}\hfill{}\url{www.goo.gl/bgSrVp}
   106 
    93 
   107 
    94 \end{frame}
   108 \end{frame}}
    95 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   109  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
    96 
   110 
    97 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   111 
       
   112 
       
   113 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   114 \mode<presentation>{
       
   115 \begin{frame}
    98 \begin{frame}
   116 \frametitle{Also Bad Guys}
    99 \frametitle{Also Bad Guys}
   117 
   100 
   118 \only<1->{
       
   119 \begin{textblock}{1}(4,2.5)
   101 \begin{textblock}{1}(4,2.5)
   120   \begin{tikzpicture}[scale=1.3]
   102   \begin{tikzpicture}[scale=1.3]
   121   \draw[white] (0,0) node (X) {\includegraphics[scale=0.1]{pics/rman.png}};
   103   \draw (0,0) node (X) {\includegraphics[scale=0.1]{pics/rman.png}};
   122   \draw[white] (4,0) node (Y) {\includegraphics[scale=0.1]{pics/gman.png}};
   104   \draw (4,0) node (Y) {\includegraphics[scale=0.1]{pics/gman.png}};
   123   \draw[red, ->, line width = 2mm] (X) -- (Y);
   105   \draw[red, <->, line width = 2mm] (X) -- (Y);
   124   \node [inner sep=5pt,label=above:\textcolor{black}{}] at ($ (X)!.5!(Y) $) {};
   106   \end{tikzpicture}
   125   \end{tikzpicture}
   107 \end{textblock}
   126 \end{textblock}}
   108 
   127 
       
   128 \only<1->{
       
   129 \begin{textblock}{1}(1,6)
   109 \begin{textblock}{1}(1,6)
   130 \begin{tikzpicture}
   110 \begin{bubble}[11cm]
   131 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
   111 \footnotesize
   132 {\normalsize\color{darkgray}
   112 Annonymous Hacker operating a 10k bonnet using the ZeuS
   133 \begin{minipage}{11cm}\raggedright\footnotesize
   113 hacking tool wrote:\medskip\\ ``FYI I do not cash out the bank
   134 Annonymous Hacker operating a 10k bonnet using the ZeuS hacking tool wrote:\medskip\\
   114 accounts or credit cards, I just sell the information (I know,
   135 ``FYI I do not cash out the bank accounts or credit cards, I just sell the information 
   115 its just as bad...), there isn't even a law against
   136 (I know, its just as bad, hur dur...), there isn't even a law against such in most countries, 
   116 such in most countries, dealing with stolen information is
   137 dealing with stolen information is most of the time a legaly greyzone (I was just as surprised 
   117 most of the time a legally greyzone (I was just as surprised
   138 when I looked it up), I'm not talking about 3rd world countries, but about European like Spain 
   118 when I looked it up), I'm not talking about 3rd world
   139 (The Mariposa botnet owner never got charged, because a botnet isn't illegal, only abusing 
   119 countries, but about European like Spain (The Mariposa botnet
   140 CC information is, but that did other guys).''\\
   120 owner never got charged, because a botnet isn't illegal, only
   141 \hfill{}\textcolor{blue}{\url{goo.gl/UWluh0}}
   121 abusing CC information is, but that did other guys).''\\
   142 \end{minipage}};
   122 \hfill{}\url{www.goo.gl/UWluh0}
   143 \end{tikzpicture}
   123 \end{bubble}
   144 \end{textblock}}
   124 \end{textblock}
   145 
   125 
   146 
   126 \end{frame}
   147 \end{frame}}
   127 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   148  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   128 
   149 
   129 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   150 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   151 \mode<presentation>{
       
   152 \begin{frame}
   130 \begin{frame}
   153 \frametitle{\begin{tabular}{@ {}c@ {}}This is a Misconception!\end{tabular}}
   131 \frametitle{\begin{tabular}{@ {}c@ {}}This is a Misconception!\end{tabular}}
   154 
   132 
   155 
       
   156 \begin{center}
   133 \begin{center}
   157 \includegraphics[scale=0.6]{pics/cryptographic-small.png}
   134 \includegraphics[scale=0.55]{pics/cryptographic-small.png}
   158 \end{center}
   135 \end{center}
   159 
   136 
   160 Though, the NSA can probably not brute-force magically better than the ``public''.
   137 There is some consensus that the NSA can probably not
   161 \end{frame}}
   138 brute-force magically better than the ``public''. 
   162  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   139 
   163 
   140 \end{frame}
   164 
   141 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   165 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   142 
   166 \mode<presentation>{
   143 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   167 \begin{frame}[c]
   144 \begin{frame}[c]
   168 \frametitle{\begin{tabular}{@ {}c@ {}}Security Engineers\end{tabular}}
   145 The content of this course is very much inspired by the work of 
   169 
   146 three people:\bigskip
   170 \small\alert{\bf Security engineers} require a particular \alert{\bf mindset}:\bigskip
   147 
   171 
   148 \small
   172 \begin{tikzpicture}
   149 \begin{center}
   173 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
   150 \begin{tabular}{ccc}
   174 {\normalsize\color{darkgray}
   151 \includegraphics[scale=1.4]{pics/schneier.png} &
   175 \begin{minipage}{10cm}\raggedright\small
   152 \includegraphics[scale=0.103]{pics/ross.jpg} &
   176 ``Security engineers --- at least the good ones --- see the world differently. 
   153 \includegraphics[scale=0.2]{pics/halderman.jpg} \\
   177 They can't walk into a store without noticing how they might shoplift. They can't 
   154 Bruce Schneier & Ross Anderson & Alex Halderman\\
   178 use a computer without wondering about the security vulnerabilities. They can't 
   155 \tiny\url{en.wikipedia.org/wiki/Bruce_Schneier} & 
   179 vote without trying to figure out how to vote twice. They just can't help it.''\\
   156 \tiny\url{www.cl.cam.ac.uk/~rja14} & 
       
   157 \tiny\url{jhalderm.com}
       
   158 \end{tabular}
       
   159 \end{center}
       
   160 
       
   161 \end{frame}
       
   162 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
       
   163 
       
   164 
       
   165 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   166 \begin{frame}[c]
       
   167 
       
   168 \alert{\bf Security engineers} require a particular \alert{\bf mindset}:
       
   169 \bigskip\medskip
       
   170 
       
   171 \begin{overlayarea}{\textwidth}{5cm}
       
   172 \small
       
   173 \only<1>{\begin{bubble}[10cm]
       
   174 ``Security engineers --- at least the good ones --- see
       
   175 the world differently. They can't walk into a store without
       
   176 noticing how they might shoplift. They can't use a computer
       
   177 without wondering about the security vulnerabilities. They
       
   178 can't vote without trying to figure out how to vote twice.
       
   179 They just can't help it.''\\
   180 \hfill{}---Bruce Schneier
   180 \hfill{}---Bruce Schneier
   181 \end{minipage}};
   181 \end{bubble}}%
   182 \end{tikzpicture}
   182 \only<2>{\begin{bubble}[10.5cm]
       
   183 ``Security engineering\ldots requires you to think
       
   184 differently. You need to figure out not how something works,
       
   185 but how something can be made to not work. You have to imagine
       
   186 an intelligent and malicious adversary inside your system
       
   187 \ldots, constantly trying new ways to
       
   188 subvert it. You have to consider all the ways your system can
       
   189 fail, most of them having nothing to do with the design
       
   190 itself. You have to look at everything backwards, upside down,
       
   191 and sideways. You have to think like an alien.''\hfill{}---Bruce Schneier
       
   192 \end{bubble}}
       
   193 \end{overlayarea}
   183 
   194 
   184 \begin{flushright}
   195 \begin{flushright}
   185 \includegraphics[scale=0.0087]{pics/schneierbook1.jpg}\;
   196 \includegraphics[scale=0.0087]{pics/schneierbook1.jpg}\;
   186 \includegraphics[scale=0.0087]{pics/schneierbook2.jpg}\;
   197 \includegraphics[scale=0.0087]{pics/schneierbook2.jpg}\;
   187 \includegraphics[scale=0.23]{pics/schneierbook3.jpg}\;
   198 \includegraphics[scale=0.23]{pics/schneierbook3.jpg}\;
   188 \includegraphics[scale=0.85]{pics/schneier.png}
   199 \includegraphics[scale=0.85]{pics/schneier.png}
   189 \end{flushright}
   200 \end{flushright}
   190 
   201 
   191 
   202 \end{frame}
   192 \end{frame}}
       
   193 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   203 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   194 
   204 
   195 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   205 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   196 \mode<presentation>{
   206 \begin{frame}[c]
   197 \begin{frame}[c]
   207 \frametitle{Breaking Things}
   198 \frametitle{\begin{tabular}{@ {}c@ {}}Breaking Things\end{tabular}}
       
   199 
   208 
   200 For example:
   209 For example:
   201 
   210 
   202 \begin{center}
   211 \begin{center}
   203 \begin{tikzpicture}
   212 \begin{bubble}[10cm]\small
   204 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
   213 Prof.~V.~Nasty gives the following final exam question (closed books, 
   205 {\normalsize\color{darkgray}
   214 closed notes):\bigskip
   206 \begin{minipage}{10cm}\raggedright\small
       
   207 Prof.~V.~Nasty gives the following final exam question (closed books, closed notes):\bigskip
       
   208 
   215 
   209 \noindent
   216 \noindent
   210 \begin{tabular}{@ {}l}
   217 \begin{tabular}{@ {}l}
   211 Write the first 100 digits of $\pi$:\\
   218 Write the first 100 digits of $\pi$:\\
   212 3.\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_
   219 3.\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_\,\_
   213 \end{tabular}
   220 \end{tabular}
   214 \end{minipage}};
   221 \end{bubble}
   215 \end{tikzpicture}
       
   216 \end{center}
   222 \end{center}
   217 
   223 
   218 How can you cheat in this exam and how can you defend against such cheating?
   224 How can you cheat in this exam and how can you defend against such cheating?
   219 
   225 
   220 \end{frame}}
   226 \end{frame}
   221 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   227 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   222 
   228 
   223 
   229 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   224 
   230 \begin{frame}
   225 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   231 \frametitle{\textcolor{red}{Warning}}
   226 \mode<presentation>{
   232 \small
   227 \begin{frame}[c]
   233 
   228 \frametitle{\begin{tabular}{@ {}c@ {}}Chip-and-PIN\end{tabular}}
   234 \begin{itemize}
       
   235 \item<1-> I will be teaching techniques that can be used to
       
   236       compromise security and privacy. 
       
   237 \end{itemize}
       
   238 
       
   239 \onslide<2->{
       
   240 \begin{itemize}
       
   241 \item Don’t be evil! 
       
   242 \only<3>{\item Using those techniques in the real world may
       
   243 violate the law or King’s rules, and it may be unethical.}
       
   244 \only<3>{\item Under some circumstances, even probing for weaknesses of a
       
   245 system may result in severe penalties, up to and including
       
   246 expulsion, fines and jail time.} 
       
   247 \only<3>{\item Acting lawfully and ethically is \underline{your} responsibility.} 
       
   248 \only<4>{\item Ethics requires you to
       
   249 refrain from doing harm.} 
       
   250 \only<4>{\item \underline{Always} respect privacy and rights of
       
   251 others.} 
       
   252 \only<4>{\item Do not tamper with any of King's systems.} 
       
   253 \only<5>{\item If you try
       
   254 out a technique, always make doubly sure you are working in a
       
   255 safe environment so that you cannot cause any harm, not even
       
   256 accidentally.} 
       
   257 \only<5>{\item Don't be evil. Be an \underline{ethical} hacker.}
       
   258 \end{itemize}}
       
   259 
       
   260 \end{frame}
       
   261 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
       
   262 
       
   263 
       
   264 
       
   265 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   266 \begin{frame}[c]
       
   267 \frametitle{Chip-and-PIN}
   229 
   268 
   230 \begin{center}
   269 \begin{center}
   231 \includegraphics[scale=0.3]{pics/creditcard1.jpg}\;
   270 \includegraphics[scale=0.3]{pics/creditcard1.jpg}\;
   232 \includegraphics[scale=0.3]{pics/creditcard2.jpg}
   271 \includegraphics[scale=0.3]{pics/creditcard2.jpg}
   233 \end{center}
   272 \end{center}
   234 
   273 
   235 \begin{itemize}
   274 \begin{itemize}
   236 \item Chip-and-PIN was introduced in the UK in 2004
   275 \item Chip-and-PIN was introduced in the UK in 2004
   237 \item before that customers had to sign a receipt\medskip
   276 \item before that customers had to sign a receipt\bigskip
   238 \item Is Chip-and-PIN a more secure system?
   277 \item \bf Is Chip-and-PIN a more secure system?
   239 \end{itemize}
   278 \end{itemize}
   240 
   279 
   241 \begin{flushright}
   280 \begin{flushright}
   242 \small\textcolor{gray}{(Some other countries still use the old method.)}
   281 \small\textcolor{gray}{(some other countries still use the old method)}
   243 \end{flushright}
   282 \end{flushright}
   244 
   283 
   245 
   284 \end{frame}
   246 \end{frame}}
   285 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   247 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   286 
   248 
   287 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   249 
   288 \begin{frame}[c]
   250 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   289 \frametitle{Yes \ldots}
   251 \mode<presentation>{
   290 
   252 \begin{frame}[c]
   291 \begin{bubble}[10cm] 
   253 \frametitle{\begin{tabular}{@ {}c@ {}}Yes \ldots\end{tabular}}
   292 \small ``Chip-and-PIN is so effective in this country [UK]
   254 
   293 that fraudsters are starting to move their activities
   255 \begin{tikzpicture}
   294 overseas,''\smallskip\\ 
   256 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
   295 \hfill{}said some spokesman for Lloyds TSB\\ 
   257 {\normalsize\color{darkgray}
   296 \hfill(in The Guardian, 2006)
   258 \begin{minipage}{10cm}\raggedright\small
   297 \end{bubble}\bigskip
   259 ``Chip-and-PIN is so effective in this country [UK] that fraudsters are starting to move their activities overseas,'' 
       
   260 said Emile Abu-Shakra, spokesman for Lloyds TSB (in the Guardian, 2006).
       
   261 \end{minipage}};
       
   262 \end{tikzpicture}\bigskip
       
   263 
   298 
   264 
   299 
   265 \begin{itemize}
   300 \begin{itemize}
   266 \item mag-stripe cards cannot be cloned anymore
   301 \item mag-stripe cards cannot be cloned anymore
   267 \item stolen or cloned cards need to be used abroad 
   302 \item stolen or cloned cards need to be used abroad 
   268 \item fraud on lost, stolen and counterfeit credit cards was down \pounds{}60m (24\%) on 2004's figure
   303 \item fraud on lost, stolen and counterfeit credit 
   269 \end{itemize}
   304 cards was down \pounds{60m} (24\%) on 2004's figure
   270 
   305 \end{itemize}
   271 
   306 
   272 \end{frame}}
   307 \end{frame}
   273 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   308 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   274 
   309 
   275 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   310 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   276 \mode<presentation>{
   311 \begin{frame}[c]
   277 \begin{frame}[c]
   312 \frametitle{But let's see}
   278 \frametitle{\begin{tabular}{c}But let's see \ldots\end{tabular}}
       
   279 
   313 
   280 
   314 
   281 \begin{textblock}{1}(3,4)
   315 \begin{textblock}{1}(3,4)
   282 \begin{tabular}{c}
   316 \begin{tabular}{c}
   283 \includegraphics[scale=0.3]{pics/bank.png}\\[-2mm]
   317 \includegraphics[scale=0.3]{pics/bank.png}\\[-2mm]
   342   \draw[red, ->, line width = 2mm] (X) -- (Y);
   376   \draw[red, ->, line width = 2mm] (X) -- (Y);
   343   \node [inner sep=5pt,label=above:\textcolor{black}{}] at ($ (X)!.5!(Y) $) {};
   377   \node [inner sep=5pt,label=above:\textcolor{black}{}] at ($ (X)!.5!(Y) $) {};
   344   \end{tikzpicture}
   378   \end{tikzpicture}
   345 \end{textblock}}  
   379 \end{textblock}}  
   346   
   380   
   347 \end{frame}}
   381 \end{frame}
   348 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   382 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   349 
   383 
   350 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   384 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   351 \mode<presentation>{
   385 \begin{frame}[c]
   352 \begin{frame}[c]
   386 \frametitle{Chip-and-PIN}
   353 \frametitle{\begin{tabular}{c}Chip-and-PIN\end{tabular}}
       
   354 
       
   355 
   387 
   356 \begin{itemize}
   388 \begin{itemize}
   357 \item A ``tamperesitant'' terminal playing Tetris on 
   389 \item A ``tamperesitant'' terminal playing Tetris on 
   358 \textcolor{blue}{\href{http://www.youtube.com/watch?v=wWTzkD9M0sU}{youtube}}.\\
   390 \href{http://www.youtube.com/watch?v=wWTzkD9M0sU}{youtube}.\smallskip\\
   359 \textcolor{lightgray}{\footnotesize(\url{http://www.youtube.com/watch?v=wWTzkD9M0sU})}
   391 \footnotesize(\url{http://www.youtube.com/watch?v=wWTzkD9M0sU})
   360 \end{itemize}
   392 \end{itemize}
   361  
   393  
   362   
       
   363 \includegraphics[scale=0.2]{pics/tetris.jpg}
   394 \includegraphics[scale=0.2]{pics/tetris.jpg}
   364   
   395   
   365   
   396 \end{frame}
   366 \end{frame}}
   397 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   367 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   398 
   368 
   399 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   369 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   400 \begin{frame}
   370 \mode<presentation>{
   401 \frametitle{Chip-and-PIN}
   371 \begin{frame}[c]
   402 
   372 \frametitle{\begin{tabular}{c}Chip-and-PIN\end{tabular}}
   403 \begin{itemize}
   373 
   404 \item in 2006, Shell petrol stations stopped accepting Chip-and-PIN after 
   374 
   405   \pounds{1M} had been stolen from customer accounts\smallskip 
   375 \begin{itemize}
   406 \item in 2008, hundreds of card readers for use in Britain, Ireland, 
   376 \item in 2006, Shell petrol stations stopped accepting Chip-and-PIN after \pounds{}1m had been stolen from customer accounts\smallskip 
   407   the Netherlands, Denmark, and Belgium had been expertly tampered with 
   377 \item in 2008, hundreds of card readers for use in Britain, Ireland, the Netherlands, Denmark, and Belgium had been 
   408   shortly after manufacture so that details and PINs of credit cards 
   378 expertly tampered with shortly after manufacture so that details and PINs of credit cards were sent during the 9 months 
   409   were sent during the 9 months before over mobile phone networks 
   379 before over mobile phone networks to criminals in Lahore, Pakistan
   410   to criminals in Lahore, Pakistan
   380 \end{itemize}
   411 \end{itemize}
   381   
   412   
   382 \end{frame}}
   413 \end{frame}
   383 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   414 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   384 
   415 
   385 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   416 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   386 \mode<presentation>{
   417 \begin{frame}[c]
   387 \begin{frame}[c]
   418 \frametitle{Chip-and-PIN is Broken}
   388 \frametitle{\begin{tabular}{c}Chip-and-PIN is Broken\end{tabular}}
       
   389 
   419 
   390 \begin{flushright}
   420 \begin{flushright}
   391 \includegraphics[scale=0.01]{pics/andersonbook1.jpg}\;
   421 \includegraphics[scale=0.01]{pics/andersonbook1.jpg}\;
   392 \includegraphics[scale=1.5]{pics/anderson.jpg}
   422 \includegraphics[scale=1.5]{pics/anderson.jpg}
   393 \end{flushright}
   423 \end{flushright}
   398 
   428 
   399 \begin{center}
   429 \begin{center}
   400 \mbox{}\hspace{-20mm}\includegraphics[scale=0.5]{pics/chip-attack.png}
   430 \mbox{}\hspace{-20mm}\includegraphics[scale=0.5]{pics/chip-attack.png}
   401 \end{center}
   431 \end{center}
   402 
   432 
   403 
       
   404 \begin{textblock}{1}(11.5,13.7)
   433 \begin{textblock}{1}(11.5,13.7)
   405 \begin{tabular}{l}
   434 \begin{tabular}{l}
   406 \footnotesize on BBC Newsnight\\[-2mm] 
   435 \footnotesize on BBC Newsnight\\[-2mm] 
   407 \footnotesize in 2010 or \textcolor{blue}{\href{http://www.youtube.com/watch?v=JPAX32lgkrw}{youtube}}
   436 \footnotesize in 2010 or 
   408 \end{tabular}
   437 \href{http://www.youtube.com/watch?v=JPAX32lgkrw}{youtube}
   409 \end{textblock}
   438 \end{tabular}
   410   
   439 \end{textblock}
   411 \end{frame}}
   440   
   412 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   441 \end{frame}
   413 
   442 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   414 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   443 
   415 \mode<presentation>{
   444 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   416 \begin{frame}[c]
   445 \begin{frame}[c]
   417 \frametitle{\Large\begin{tabular}{@ {}c@ {}}Chip-and-PIN is Really Broken\end{tabular}}
   446 \frametitle{\Large Chip-and-PIN is Really Broken}
   418 
   447 
   419 \begin{flushright}
   448 \begin{flushright}
   420 \includegraphics[scale=0.01]{pics/andersonbook1.jpg}\;
   449 \includegraphics[scale=0.01]{pics/andersonbook1.jpg}\;
   421 \includegraphics[scale=1.5]{pics/anderson.jpg}
   450 \includegraphics[scale=1.5]{pics/anderson.jpg}
   422 \end{flushright}
   451 \end{flushright}
   423 
   452 
   424 \begin{itemize}
   453 \begin{itemize}
   425 \item same group successfully attacked in 2012 card readers and ATM machines
   454 \item same group successfully attacked in 2012 card readers and ATM machines
   426 \item the problem: several types of ATMs generate poor random numbers, which are used as nonces
   455 \item the problem: several types of ATMs generate poor random numbers, 
   427 \end{itemize}
   456   which are used as nonces
   428 
   457 \end{itemize}
   429 \end{frame}}
   458 
   430 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   459 \end{frame}
   431 
   460 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   432 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   461 
   433 \mode<presentation>{
   462 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   434 \begin{frame}[c]
   463 \begin{frame}[c]
   435 \frametitle{\begin{tabular}{c}The Real Problem \ldots\end{tabular}}
   464 \frametitle{The Real Problem \ldots}
   436 
       
   437 
   465 
   438 \begin{textblock}{1}(3,4)
   466 \begin{textblock}{1}(3,4)
   439 \begin{tabular}{c}
   467 \begin{tabular}{c}
   440 \includegraphics[scale=0.3]{pics/bank.png}\\[-2mm]
   468 \includegraphics[scale=0.3]{pics/bank.png}\\[-2mm]
   441 \small Bank
   469 \small Bank
   502 \begin{itemize}
   530 \begin{itemize}
   503 \item the burden of proof for fraud and financial liability was shifted to the costumer (until approx.~2009/10)
   531 \item the burden of proof for fraud and financial liability was shifted to the costumer (until approx.~2009/10)
   504 \end {itemize} 
   532 \end {itemize} 
   505 \end{textblock}
   533 \end{textblock}
   506   
   534   
   507 \end{frame}}
   535 \end{frame}
   508 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   536 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   509 
   537 
   510 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   538 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   511 \mode<presentation>{
   539 \begin{frame}[c]
   512 \begin{frame}
   540 \frametitle{The Bad Guy Again}
   513 \frametitle{\begin{tabular}{@ {}c@ {}}The Bad Guy Again\end{tabular}}
   541 
   514 
   542 \begin{bubble}[10cm]
   515 
   543 \footnotesize
   516 \only<1->{
   544 The anonymous hacker from earlier:\medskip\\ ``Try to use
   517 \begin{textblock}{1}(1,4)
   545 `Verified-By-Visa' and `Mastercard-Securecode' as rarely as
   518 \begin{tikzpicture}
   546 possible. If only your CVV2 code is getting sniffed, you are
   519 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
   547 not liable for any damage, because the code is physically
   520 {\normalsize\color{darkgray}
   548 printed and could have been stolen while you payed with your
   521 \begin{minipage}{11cm}\raggedright\footnotesize
   549 card at a store. Same applies if someone cloned your CC
   522 The Annonymous Hacker from earlier:\medskip\\
   550 reading the magnetic stripe or sniffing RFID. Only losing your
   523 ``Try to use `Verified-By-Visa' and `Mastercard-Securecode' as rarely as possible. If only your CVV2 code is getting sniffed, you are not liable for any damage, because the code is physically printed and could have been stolen while you payed with your card at a store. Same applies if someone cloned your CC reading the magnetic stripe or sniffing RFID. Only losing your VBV or MCSC password can cause serious trouble.''\\
   551 VBV or MCSC password can cause serious trouble.''\\
   524 \hfill{}\textcolor{blue}{\url{goo.gl/UWluh0}}
   552 \hfill{}\url{goo.gl/UWluh0}
   525 \end{minipage}};
   553 \end{bubble}
   526 \end{tikzpicture}
   554 
   527 \end{textblock}}
   555 \end{frame}
   528 
   556 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   529 
   557 
   530 \end{frame}}
   558 
   531  %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%     
   559 
   532 
   560 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   533 
   561 \begin{frame}[c]
   534 
   562 \frametitle{Being Screwed Again}
   535 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
       
   536 \mode<presentation>{
       
   537 \begin{frame}[c]
       
   538 \frametitle{\begin{tabular}{c}Being Screwed Again\end{tabular}}
       
   539 
       
   540 
   563 
   541 \begin{flushright}
   564 \begin{flushright}
   542 \includegraphics[scale=0.3]{pics/rbssecure.jpg}
   565 \includegraphics[scale=0.3]{pics/rbssecure.jpg}
   543 \end{flushright}
   566 \end{flushright}
   544 
   567 
   545 \begin{itemize}
   568 \begin{itemize}
   546 \item {\bf Responsibility}\\
   569 \item {\bf Responsibility}\\
   547 ``You understand that you are financially responsible for all uses of RBS Secure.''\\
   570 ``You understand that you are financially responsible for all uses 
   548 \textcolor{lightgray}{\footnotesize\url{https://www.rbssecure.co.uk/rbs/tdsecure/terms_of_use.jsp}}
   571 of RBS Secure.''\medskip\\
   549 \end{itemize}
   572 \footnotesize\url{https://www.rbssecure.co.uk/rbs/tdsecure/terms_of_use.jsp}
   550   
   573 \end{itemize}
   551 \end{frame}}
   574   
   552 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   575 \end{frame}
   553 
   576 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   554 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   577 
   555 \mode<presentation>{
   578 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   556 \begin{frame}[c]
   579 \begin{frame}[c]
   557 \frametitle{\begin{tabular}{c}Web Applications\end{tabular}}
   580 \frametitle{Web Applications}
   558 
       
   559 
   581 
   560 \begin{textblock}{1}(2,5)
   582 \begin{textblock}{1}(2,5)
   561 \begin{tabular}{c}
   583 \begin{tabular}{c}
   562 \includegraphics[scale=0.15]{pics/servers.png}\\[-2mm]
   584 \includegraphics[scale=0.15]{pics/servers.png}\\[-2mm]
   563 \small Servers from\\[-2mm] 
   585 \small Servers from\\[-2mm] 
   590 \begin{itemize}
   612 \begin{itemize}
   591 \item What are pitfalls and best practices?
   613 \item What are pitfalls and best practices?
   592 \end{itemize}  
   614 \end{itemize}  
   593 \end{textblock}
   615 \end{textblock}
   594   
   616   
   595 \end{frame}}
   617 \end{frame}
   596 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   618 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   597 
   619 
   598 
   620 
   599 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   621 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   600 \mode<presentation>{
   622 \begin{frame}[c]
   601 \begin{frame}[c]
   623 \frametitle{Why Scala?}
   602 \frametitle{\begin{tabular}{c}Why Scala?\end{tabular}}
       
   603 
   624 
   604 \begin{textblock}{6}(1,3)
   625 \begin{textblock}{6}(1,3)
   605 \begin{tabular}{l}
   626 \begin{tabular}{l}
   606 \mbox{}\hspace{-1mm}\includegraphics[scale=0.36]{pics/twitter.png}\\[-1mm]
   627 \mbox{}\hspace{-1mm}\includegraphics[scale=0.36]{pics/twitter.png}\\[-1mm]
   607 \includegraphics[scale=0.30]{pics/linked.png}\\
   628 \includegraphics[scale=0.30]{pics/linked.png}\\
   646 \end{textblock}}
   667 \end{textblock}}
   647 
   668 
   648 
   669 
   649 \only<5->{
   670 \only<5->{
   650 \begin{textblock}{1}(3,6)
   671 \begin{textblock}{1}(3,6)
   651 \begin{tikzpicture}
   672 \begin{bubble}[8.5cm]
   652 \draw (0,0) node[inner sep=2mm,fill=cream, ultra thick, draw=red, rounded corners=2mm] 
   673 \normalsize
   653 {\normalsize\color{darkgray}
   674 Scala is a functional and object-oriented programming
   654 \begin{minipage}{8.5cm}\raggedright\normalsize
   675 language; compiles to the JVM; does not need null-pointer
   655 Scala is a functional and object-oriented programming language; compiles to the JVM; does not 
   676 exceptions; a course on Coursera\\
   656 need null-pointer exceptions; a course on Coursera\\
   677 \mbox{}\hfill\url{http://www.scala-lang.org}
   657 \mbox{}\hfill\textcolor{blue}{\url{http://www.scala-lang.org}}
   678 \end{bubble}
   658 \end{minipage}};
   679 \end{textblock}}
   659 \end{tikzpicture}
   680 
   660 \end{textblock}}
   681   
   661 
   682 \end{frame}
   662   
   683 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   663 \end{frame}}
   684 
   664 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   685 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   665 
   686 \begin{frame}[c]
   666 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   687 \frametitle{Scala + Play}
   667 \mode<presentation>{
   688 
   668 \begin{frame}[c]
   689 A simple response from the server:
   669 \frametitle{\begin{tabular}{c}Scala + Play\end{tabular}}
       
   670 
       
   671 \small a simple response from the server:
       
   672 
       
   673 
       
   674 {\lstset{language=Scala}\fontsize{8}{10}\selectfont
       
   675 \texttt{\lstinputlisting{../progs/app0.scala}}}\bigskip
       
   676 
   690 
   677 \small
   691 \small
   678 alternative response:\\
   692 \lstinputlisting{../progs/app0.scala}
   679 
   693 \medskip
   680 {\lstset{language=Scala}\fontsize{8}{10}\selectfont
   694 
   681 \texttt{\lstinline{Ok("<H1>Hello world!</H1>").as(HTML)}}}
   695 \small
   682 \end{frame}}
   696 alternative response:\smallskip\\
       
   697 
       
   698 
       
   699 \lstinline{Ok("<H1>Hello world!</H1>").as(HTML)}
       
   700 
       
   701 \end{frame}
   683 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   702 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%   
   684 
   703 
   685 
   704 
   686 
   705 
   687 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
   706 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%