S. Dziembowski: Praktyczne protokoły kryptograficzne
 
 
Podstawowe informacje
  • wykład: środa 14:15 - 15:45 sala 5440 (uwaga: zmiana sali)
  • ćwiczenia (grupa S. Dziembowskiego): poniedziałek 17:40 - 19:10 sala 3150
  • ćwiczenia (grupa R. Wojtczuka): wtorek 16:15 - 17:45 sala 3190
 
 
 
    Literatura

  1. Douglas R. Stinson Kryptografia. W teorii i w praktyce   (cena: 58 zł)
    można ją kupić np. w  Księgarnii WNT przy ul. Mazowieckiej 2/4 (gdzie jest na nią zniżka 10%).
    Ksiązka ukazała się w ostatnich tygodniach. 
  2. C. Boyd, A. Mathuria Protocols for Authentication and Key Establishment.
  3. Carlisle Adams, Steve Lloyd Podpis elektroniczny. Infrastruktura klucza publicznego. (tłumaczenie tej książki)
  4. A. J. Menezes, P. C. van Oorschot and S. A. Vanstone Handbook of Applied Cryptography dostępne za darmo on-line.
  5. Bruce Schneier Kryptografia dla praktyków. Protokoły, algorytmy i programy źródłowe w języku C.
  6. S. Goldwasser i M. Bellare Lecture Notes on Cryptography dostępne za darmo on-line.

 

Ćwiczenia

  •  grupa R. Wojczuka [link]
  •  grupa S. Dziembowskiego [link].



Co było na wykładzie


  • Na dwóch pierwszych wykładach (16.02, 23.02) i ćwiczeniach zrobiliśmy wstęp do kryptografii (szyfrowanie, zapewnianie integralności, podpis cyfrowy).  Skrót wykładów:
    • Podstawowy cel: bezpieczna komunikacja, czyli taka w której zapewniona jest:
      • tajność
      • integralność
    • Informacja o tym, że są 2 modele: symetryczny i asymetryczny.
    • Model asymetryczny:
      • Szyfrowanie i podpis RSA + cała potrzebna matematyka.
      • Logarytm dyskretny i protokół Diffiego-Hellmana uzgadniania klucza.
      • Wspomniałem, że są też inne kryptosystemy asymetryczne (ElGamal, Rabin)
    • Model symetryczny: 
      • slajdy są tu.
      • opis AESa jest tu.
    • Omówiliśmy funkcje hashujące i ataki na nie -- atak urodzinowy, oraz najnowsze osiągnięcia w łamaniu MD5 i SHA1 (można o tym poczytać np. tu).
    Poruszane zagadnienia omawiane są w wielu źródłach (w szególności w literaturze powyżej).  Oprócz tego można poczytać moje notatki do wykładu MPE: wykład1 [ps,pdf], wykład 2 [ps,pdf], wykład 3 [ps,pdf].
  • Wykłady 2.03 i 9.03 odbywał się według pierwszego rozdziału książki [2].
    Zrobiliśmy właściwie wszystko za wyjątkiem szczegółów rozdziału 1.4 (bo to już z grubsza omawialśmy wcześniej) z tym, że zrobiliśmy rozdział 1.4.5.
  • Wykład 16.03 składał się z dwóch części:
    • Pierwsza część była omówieniem definicji bezpieczeństwa w protokołach autentykacji i ustalania klucza, głównie na podstawie rozdziałow 2.1 i 2.2 książki [2].  Można też zajrzeć do tych prac (tam jest bardziej formalnie).
    • Potem przeszliśmy do protokołów opartych na dzielonym kluczu.  Zrobiliśmy rozdział 3.1,  3.2.1,  3.2.3,  3.3.1, 3.3.3.,  3.3.4,   3.4.1 z [2] (jeśli mnie pamięć nie myli... Jak coś się nie zgadza, to proszę dać znać).
  • Znaczącą częścią wykładu 23.03 był opis protokołu Kerberos.  Oto garść linków:
  • Poza tym był protokół z rozdziału 3.4.5 [2].
  • 6.04 były protokoły identyfikacji zero-knowledge.  Był to w zasadzie skrót moich dwóch wykładów z poprzedniego roku:
    • Protokoly z wiedza zerowa [ps,pdf].
    • Schematy identyfikacji [ps,pdf].
  • 13.04 był SSL/TLS.  Slajdy są na stronie z materiałami dodatkowymi.
  • 20.04 była Infrastruktura Klucza Publicznego. Oto slajdy:
    [slajdy, slajdy do drukowania] i trochę linków:
  • Na wykładzie mówiłem, że czym innym jest certyfikat, a czym innym rekomendacja, że dany podmiot ma prawo certyfikować klucze.  W X.509 taka rekomendacje odbywa się, przez wpisanie odpowiedniej informacji w polu Basic ConstraintsTu jest informacja o tym, że stare wersje Internet Explorera traktowały każdy certyfikat jak rekomendację, co umożliwiało łatwy atak man-in-the-middle.
    Tu jest instrukcja jak wyprodukować fałszywe certyfikaty USOSa.  Można spróbować wykonać to samemu w ramach ćwiczeń z openssl-a
  • 27.04 była (część) IPseca. 
    [slajdy, slajdy do drukowania]
  • 4.05 były protokoły oparte na haśle (zapamiętanym przez człowieka).  W dużej mierze wykład był oparty na rozdziale 7 [2].
    [slajdy, slajdy do drukowania].
  • 11.05 był dalszy ciąg protokołów opartych na haśle.
    [slady, slajdy do drukowania]
    Tu jest praca do której najwięcej się odwoływałem na wykładzie.
    Errata: na sladach napisałem, że poczta.gazeta.pl przekazuje autentykator w URLu.  Okazuje się, że jednak robi to w cookie (dziękuję za informację od Państwa).  Na wykładzie 18.05 Łukasz Jancewicz przedstawił analizę tego systemu [html].
  • 18.05 był wykład o tym jak zakodować wiadomości przed podpisaniem i zaszyfrowaniem
    [slajdy, slajdy do drukowania]



Materiały dodatkowe


  • Tu jest link do strony z materiałami dodatkowymi.
  • Tu jest krótki poradnik jak szukać prac naukowych z kryptografii.

 

Egzamin

  • Termin: 3 czerwca w godz. 10:00-12:00
  • Miejsce: sale 3220 i 3230
  • Nie wolno korzystać z jakichkolwiek materiałów (notatki, książki, etc.)
  • Egzamin będzie składał się z ok. 10 pytań.  Oto przykłady takich pytań.
  • Wyniki egzaminu są tu. W najbliższych dniach postaram się wpisać wyniki z poszczególnych zadań.
  • W piątek 17.06 o 14:00 i będę wpisywał oceny.

 

Egzamin poprawkowy


  • Wszystkich zainteresowanych udziałem w egzaminie poprawkowym proszę o pilne wysłanie emaila na adres:

    std-ppk(malpa)mimuw.edu.pl 
  • Egzamin obędzie się 9.09.05 o godzinie 16:30 (zbiórka przed pokojem 5730).  Egzamin będzie miał formę pisemną.

  • Nie przewiduję następnego terminu egzaminu poprawkowego (wyjeżdżam niebawem za granicę).


 S. Dziembowski : Dydaktyka: PPK