284 \item reflection attacks |
284 \item reflection attacks |
285 \item man-in-the-middle attacks |
285 \item man-in-the-middle attacks |
286 \item timing attacks |
286 \item timing attacks |
287 \item parallel session attacks |
287 \item parallel session attacks |
288 \item binding attacks (public key protocols) |
288 \item binding attacks (public key protocols) |
289 \item changing environment / changing assumptions |
289 \item changing environment / changing assumptions\bigskip |
|
290 |
|
291 \item (social engineering attacks) |
290 \end{itemize} |
292 \end{itemize} |
291 \end{frame}} |
293 \end{frame}} |
292 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
294 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
293 |
295 |
294 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
296 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
393 \bl{$A \rightarrow B :$} \bl{$\{N_B+1\}_{K_{AB}}$}\\ |
395 \bl{$A \rightarrow B :$} \bl{$\{N_B+1\}_{K_{AB}}$}\\ |
394 \bl{$B \rightarrow A :$} \bl{$\{K^{new}_{AB}, N^{new}_B\}_{K_{AB}}$}\\ |
396 \bl{$B \rightarrow A :$} \bl{$\{K^{new}_{AB}, N^{new}_B\}_{K_{AB}}$}\\ |
395 \end{tabular} |
397 \end{tabular} |
396 \end{center}\bigskip\pause |
398 \end{center}\bigskip\pause |
397 |
399 |
398 Assume nonces are represented as bit-sequences of the same length |
400 Assume nonces are represented as bit-sequences of the same length as keys |
399 \begin{center} |
401 \begin{center} |
400 \begin{tabular}{@{}l@{}} |
402 \begin{tabular}{@{}l@{}} |
401 \bl{$A \rightarrow B :$} \bl{$A, \{N_A\}_{K_{AB}}$}\\ |
403 \bl{$A \rightarrow B :$} \bl{$A, \{N_A\}_{K_{AB}}$}\\ |
402 \bl{$B \rightarrow A :$} \bl{$\{N_A+1, N_B\}_{K_{AB}}$}\\ |
404 \bl{$B \rightarrow A :$} \bl{$\{N_A+1, N_B\}_{K_{AB}}$}\\ |
403 \bl{$A \rightarrow I(B) :$} \bl{$\{N_B+1\}_{K_{AB}}$}\hspace{0.5mm}intercepts\\ |
405 \bl{$A \rightarrow I(B) :$} \bl{$\{N_B+1\}_{K_{AB}}$}\hspace{0.5mm}intercepts\\ |
422 \bl{$B \rightarrow A :$} & \bl{$\{N_B\}_{K_{AB}}$}\\ |
424 \bl{$B \rightarrow A :$} & \bl{$\{N_B\}_{K_{AB}}$}\\ |
423 \bl{$A \rightarrow B :$} & \bl{$\{N_B-1\}_{K_{AB}}$}\\ |
425 \bl{$A \rightarrow B :$} & \bl{$\{N_B-1\}_{K_{AB}}$}\\ |
424 \end{tabular} |
426 \end{tabular} |
425 \end{center}\bigskip\pause |
427 \end{center}\bigskip\pause |
426 |
428 |
427 but nothing is for free: then you need to synchronise time and possibly become victim to |
429 but nothing is for free: then you need to synchronise time and possibly become a victim to |
428 timing attacks |
430 timing attacks |
429 |
431 |
430 \end{frame}} |
432 \end{frame}} |
431 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
433 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
432 |
434 |
468 \bl{$A \rightarrow CA :$} \bl{$A, B, N_A$}\\ |
470 \bl{$A \rightarrow CA :$} \bl{$A, B, N_A$}\\ |
469 \bl{$CA \rightarrow A :$} \bl{$CA, \{CA, A, N_A, K^{pub}_{B}\}_{K^{pub}_{A}}$}\\ |
471 \bl{$CA \rightarrow A :$} \bl{$CA, \{CA, A, N_A, K^{pub}_{B}\}_{K^{pub}_{A}}$}\\ |
470 \end{tabular} |
472 \end{tabular} |
471 \end{center}\bigskip |
473 \end{center}\bigskip |
472 |
474 |
473 \bl{$A$} knows \bl{$K^{prig}_A$} and can verify the message came from \bl{$CA$} |
475 \bl{$A$} knows \bl{$K^{priv}_A$} and can verify the message came from \bl{$CA$} |
474 in response to \bl{$A$}'s message and trusts \bl{$K^{pub}_{B}$} is \bl{$B$}'s public key |
476 in response to \bl{$A$}'s message and trusts \bl{$K^{pub}_{B}$} is \bl{$B$}'s public key |
475 |
477 |
476 |
478 |
477 \end{frame}} |
479 \end{frame}} |
478 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
480 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
504 \mode<presentation>{ |
506 \mode<presentation>{ |
505 \begin{frame}[c] |
507 \begin{frame}[c] |
506 |
508 |
507 There are plenty of other protocols and attacks. This could go on ``forever''.\pause\bigskip |
509 There are plenty of other protocols and attacks. This could go on ``forever''.\pause\bigskip |
508 |
510 |
509 attacks because of changing environment |
511 We look here on one more kind of attacks that are because of a changing environment. |
510 |
512 |
511 \end{frame}} |
513 \end{frame}} |
512 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
514 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
513 |
515 |
514 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
516 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
534 \item a large investment later all barriers were automatic and tickets could record state |
536 \item a large investment later all barriers were automatic and tickets could record state |
535 \end{itemize}} |
537 \end{itemize}} |
536 |
538 |
537 \only<4>{ |
539 \only<4>{ |
538 \begin{itemize} |
540 \begin{itemize} |
539 \item But suddenly the environment changed: rail transport got privatised creating many companies |
541 \item but suddenly the environment changed: rail transport got privatised creating many |
540 cheating each other |
542 competing companies |
541 \item revenue from monthly tickets was distributed according to a formula where the ticket was bought |
543 potentially cheating each other |
|
544 \item revenue from monthly tickets was distributed according to a formula involving where the ticket was bought\ldots |
542 \end{itemize}} |
545 \end{itemize}} |
543 |
546 |
544 \only<5>{ |
547 \only<5>{ |
545 \begin{itemize} |
548 \begin{itemize} |
546 \item apart from bad outsiders (passengers) you also had bad insiders (rail companies) |
549 \item apart from bad outsiders (passengers), you also had bad insiders (rail companies) |
547 \item chaos and litigation ensued |
550 \item chaos and litigation ensued |
548 \end{itemize}} |
551 \end{itemize}} |
549 |
552 |
550 \end{frame}} |
553 \end{frame}} |
551 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
554 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
588 \end{itemize} |
591 \end{itemize} |
589 |
592 |
590 \end{frame}} |
593 \end{frame}} |
591 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
594 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
592 |
595 |
593 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
596 |
594 \mode<presentation>{ |
597 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
595 \begin{frame}[c] |
598 \mode<presentation>{ |
596 \frametitle{Good Practices} |
599 \begin{frame}[c] |
597 |
600 \frametitle{Problems with WEP (Wifi)} |
598 \begin{itemize} |
601 |
599 \item explicit principles (you authenticate all data you might rely on) |
602 \begin{itemize} |
600 \item the one who can fix a system should also be liable for the losses |
603 \item a standard ratified in 1999 |
601 \end{itemize} |
604 \item the protocol was designed by a committee not including cryptographers |
|
605 \item it used the RC4 encryption algorithm which is a stream cipher requiring a unique nonce |
|
606 \item WEP did not allocate enough bits for the nonce |
|
607 \item for authenticating packets it used CRC checksum which can be easily broken |
|
608 \item the network password was used to directly encrypt packages (instead of a key negotiation protocol)\bigskip |
|
609 \item encryption was turned of by default |
|
610 \end{itemize} |
|
611 |
|
612 \end{frame}} |
|
613 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
614 |
|
615 |
|
616 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
|
617 \mode<presentation>{ |
|
618 \begin{frame}[c] |
|
619 \frametitle{Protocols are Difficult} |
|
620 |
|
621 \begin{itemize} |
|
622 \item even the systems designed by experts regularly fail\medskip |
|
623 \item try to make everything explicit (you need to authenticate all data you might rely on)\medskip |
|
624 \item the one who can fix a system should also be liable for the losses\medskip |
|
625 \item cryptography is not {\bf the} answer\bigskip\bigskip |
|
626 \end{itemize} |
|
627 |
|
628 Logic is one way protocols are studied in academia |
602 |
629 |
603 \end{frame}} |
630 \end{frame}} |
604 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
631 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
605 |
632 |
606 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |
633 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% |