• Nie Znaleziono Wyników

II. Karty przedmiotów obieralnych

8. Kryptografia

Nazwa przedmiotu w języku polskim

Kryptografia

53 Nazwa przedmiotu

w języku angielskim

Cryptography A. Usytuowanie przedmiotu w systemie studiów

Poziom kształcenia Studia pierwszego / drugiego stopnia Forma i tryb prowadzenia

studiów

Stacjonarne

Kierunek studiów Informatyka i Systemy Informacyjne, Matematyka, Inżynieria i Analiza Danych (drugi stopień)

Profil studiów Profil ogólnoakademicki

Specjalność -

Jednostka prowadząca Wydział Matematyki i Nauk Informacyjnych Jednostka realizująca Wydział Matematyki i Nauk Informacyjnych Koordynator przedmiotu

dr Robert Dryło Osoby prowadzące zajęcia dr Robert Dryło B. Ogólna charakterystyka przedmiotu Blok przedmiotów Kierunkowe

Poziom przedmiotu Średniozaawansowany Grupa przedmiotów Obieralne

Status przedmiotu Obieralny Język prowadzenia zajęć Polski

Semestr nominalny 2,4 (drugi stopień) Minimalny numer semestru Czwarty

Usytuowanie realizacji w roku akademickim

Semestr letni Wymagania wstępne /

przedmioty poprzedzające Podstawowe wiadomości z algebry liniowej Limit liczby studentów Liczba grup: bez ograniczeń

Laboratoria – 15 osób / grupa C. Efekty kształcenia i sposób prowadzenia zajęć

Cel przedmiotu Przedstawienie metod szyfrowania, protokołów kryptograficznych i ich zastosowań

Przedstawienie metod i podstaw matematycznych stosowanych kryptografii Przedstawienie implementacji w praktyce podstawowych kryptosystemów i metod stosowanych w kryptografii

Omówienie wybranych zagadnień związanych z zastosowaniami kryptografii w praktyce

Rozwiązywanie praktycznych zadań w celu wykorzystania i lepszego zrozumienia metod

Efekty kształcenia Patrz TABELA 1.

Formy zajęć i ich wymiar (semestralny)

Wykład 30

Ćwiczenia 0

Laboratorium 30

Projekt 0

54 Treści kształcenia Wykład:

1. Podstawowe pojęcia kryptografii: szyfry symetryczne strumieniowe i blokowe, funkcje skrótu, kryptografia asymetryczna, wymiana kluczy, szyfrowanie z kluczem publicznym, podpisy cyfrowe, certyfikaty, uwierzytelnienie, przykład zastosowania bitcoin.

2. Kod ASCII, rozwinięcia liczb przy danej podstawie, kodowanie bloku tekstu jawnego jako liczby mod n, arytmetyka mod n, szybkie potęgowanie mod n, rozszerzony algorytm Euklidesa, wyznaczanie elementu odwrotnego mod n, przykłady szyfrów klasycznych Viegenere i Hilla.

3. Podstawowe własności grup, grupy cykliczne, funkcja phi Eulera, małe tw.

Fermata i tw. Eulera, chińskie twierdzenie o resztach, podstawowe własności ciał skończonych, testowanie nierozkładalności wielomianów nad ciałami skończonymi.

4. Twierdzenie o liczbach pierwszych, testy pierwszości Fermata i Millera-Rabina, kryptosystem RSA, podpis RSA.

5. Kryptosystemy oparte na problemie logarytmu dyskretnego w ciałach skończonych, wymiana kluczy Diffiego-Hellmana, szyfrowanie i podpis ElGamala, podpis DSA, sigma protokół, uwierzytelnienie i podpis Schnorra.

6. Krzywe eliptyczne o równaniu Weierstrassa, dodawanie punktów na krzywej, ślad krzywej, twierdzenia Hassego, równanie charakterystyczne endomorfizmu Frobeniusa, obliczanie liczby punktów na krzywej, kodowanie wiadomości na krzywej, schematy na krzywych eliptycznych, wymiana kluczy, szyfrowania ElGamala, podpis ECDSA.

7. Ataki na problem logarytmu dyskretnego Pohliga-Hellmana, rho Pollarda, metoda indeksu w ciałach skończonych, metoda baz rozkładu faktoryzacji liczb.

Porównanie poziomów bezpieczeństwa dla RSA kryptosystemów opartych na problemie logarytmu dyskretnego w ciałach skończonych i na krzywych eliptycznych.

8. Metoda faktoryzacji p-1 Pollarda, metoda faktoryzacji Lenstry na krzywych eliptycznych, wielomianowy kwantowy algorytm Shora rozwiązujący problemy faktoryzacji i logarytmu dyskretnego.

9. Iloczyny dwuliniowe Weila i Tate na krzywych eliptycznych, algorytm Millera obliczania iloczynów dwuliniowych, konstruowanie krzywych dla których można efektywnie obliczyć iloczyny dwuliniowe, wymiana kluczy między trzema osobami w jednej rundzie, krótkie podpisy, kryptografia oparta na tożsamości.

10. Schematy kryptografii postkwantowej oparte na rozwiązywaniu układów równań wielomianowych, kryptosystemy na kratach NTRU i oparte na uczeniu z błędami w pierścieniach, podpisy oparte na funkcji skrótu.

11. Szyfrowanie homomorficzne, schemat Pailliera, fully homomorphic encryption, elektroniczne głosowania.

12. Współdzielenie sekretów, obliczenia wielostronne, szyfrowania i podpisy grupowe.

13. Szyfry blokowe DES, 3DES, AES, tryby szyfrowania ECB, CBC, CFB 14. Funkcje skrótu SHA-1,2,3, kody uwierzytelniające MAC.

Ćwiczenia:

Laboratorium: Implementacja algorytmów i protokołów poznanych na wykładzie w programie Magma lub Sage,

Rozwiązywanie zadań w celu zastosowania i lepszego zrozumienia metod z wykładu

Przedstawienie własnych implementacji (w wybranym języku programowania) lub prezentacji z wybranych zastosowań kryptografii

Projekt:

55

Metody dydaktyczne Wykład z wykorzystaniem metod multimedialnych, laboratorium z przedstawieniem przykładów implementacji w programach Magma lub Sage Metody i kryteria oceniania /

regulamin zaliczenia

Zaliczenie laboratorium i wykładu:

1. Implementacja wybranego algorytmu stosowanego w kryptografii lub przedstawienie prezentacji na laboratorium z wybranych zastosowań kryptografii.

2. Pisemny sprawdzian pod koniec zajęć z podstawowych wiadomości i metod.

Ocena na koniec jest otrzymana z sumy punktów uzyskanych z 1, 2 i aktywności Metody sprawdzania efektów

kształcenia

Patrz TABELA 1.

Egzamin Nie

Literatura i oprogramowanie 1. Programy Magma lub Sage na laboratorium (Sage można ściągnąć za darmo) Literatura

Podstawowa

1. Koblitz, Neal. Wykład z teorii liczb i kryptografii. Wydawnictwa Naukowo-Techniczne, 1995.

2. Koblitz, Neal, et al. Algebraiczne aspekty kryptografii. Wydawnictwa Naukowo-Techniczne, 2000.

3. Stinson, Douglas Robert. Kryptografia: w teorii iw praktyce. Wydawnictwa Naukowo-Techniczne, 2005.

4. Paar, Christof, and Jan Pelzl. Understanding cryptography: a textbook for students and practitioners. Springer Science & Business Media, 2009.

5. J. Hoffstein et al., An introduction to mathematical cryptography Vol. 1, New York, Springer, 2008.

Uzupełniająca

1.H. Cohen, G. Frey, R. Avanzi, C. Doche, T. Lange, K. Nguyen & F.

Vercauteren (Eds.), Handbook of elliptic and hyperelliptic curve cryptography, CRC press (2005).

2. Galbraith, Steven D., Mathematics of public key cryptography. Cambridge University Press, 2012.

3. Katz, Jonathan, and Yehuda Lindell. Introduction to modern cryptography.

CRC press, 2014.

4. Shoup, Victor. A computational introduction to number theory and algebra.

Cambridge university press, 2009.

5. Smart, Nigel P. Cryptography made simple. Vol. 481. Heidelberg: Springer, 2016.

6. D. Stinson, M. Paterson, Cryptography. Theory and Practice, 2019, CRC Press, Taylor & Francis Group.

7. J. Von Zur Gathen and J. Gerhard, Modern computer algebra, Cambridge University Press, 2013.

Witryna www przedmiotu D. Nakład pracy studenta

Liczba punktów ECTS 4 pkt Liczba godzin pracy studenta związanych z osiągnięciem efektów kształcenia

1. godziny kontaktowe – 65 h; w tym a) obecność na wykładach – 30 h

b) obecność na laboratoriach – 30 h c) konsultacje – 5 h

2. praca własna studenta – 40 h; w tym a) zapoznanie się z literaturą – 10 h

b) przygotowanie do zajęć laboratoryjnych – 23 h f) przygotowanie raportu/prezentacji – 7 h Razem 105 h, co odpowiada 4 pkt. ECTS Liczba punktów ECTS na

zajęciach wymagających bezpośredniego udziału

1. obecność na wykładach – 30 h 2. obecność na laboratoriach – 30 h 3. konsultacje – 5 h

56

nauczycieli akademickich Razem 65 h, co odpowiada 2 pkt. ECTS Liczba punktów ECTS, którą

student uzyskuje w ramach zajęć o charakterze praktycznym

1. obecność na laboratoriach – 30 h

2. przygotowanie do zajęć laboratoryjnych – 30 h Razem 60 h, co odpowiada 2 pkt. ECTS

E. Informacje dodatkowe

Uwagi -

TABELA 1. EFEKTY PRZEDMIOTOWE

1. Efekty kształcenia i ich odniesienie do charakterystyk drugiego stopnia Polskiej Ramy Kwalifikacji oraz efektów kształcenia dla kierunków Informatyka i Systemy Informacyjne, Matematyka oraz Inżynieria i Analiza Danych

Efekty kształcenia dla modułu

OPIS EFEKTÓW KSZTAŁCENIA Absolwent studiów I/II stopnia na kierunku

Informatyka i Systemy Informacyjne / Matematyka / Inżynieria i Analiza Danych

Odniesienie do charakterystyk

drugiego stopnia PRK

Odniesienie do efektów kształcenia

dla kierunków WIEDZA

W01 Zna podstawowe pojęcia kryptografii i ich zastosowania M2_W01 P7S_WG W02 Zna standardowe schematy szyfrowania, protokoły

kryptograficzne i ich zastosowania

M2_W01 P7S_WG

W03 Zna podstawowe metody i twierdzenia matematyczne stosowane w kryptografii

M2_W01 P7S_WG

W04 Zna zastosowania kryptografii dla zapewnienia bezpieczeństwa

M2_W01 P7S_WG

W05 Zna metody matematyczne stosowane w kryptografii i w atakach na kryptosystemy

M2_W01 P7S_WG

UMIEJĘTNOŚCI

U01 Potrafi opisać protokoły kryptograficzne oraz matematyczne metody stosowane w ich

implementacji

M2MNI_U02 P7S_UW

U02 Potrafi zaimplementować schematy kryptograficzne i stosowane metody matematyczne w wybranym języku programowania

M2MNI_U02 P7S_UW

U03 Potrafi opisać ataki na kryptosystemy i podać parametry odpowiednie dla danego poziomu bezpieczeństwa.

M2MNI_U02 P7S_UW

U04 Potrafi w praktyce wykorzystać wiedzę M2MNI_U02 P7S_UW

2. Formy prowadzenia zajęć i sposób weryfikacji efektów kształcenia Zamierzone

efekty Forma zajęć Sposób weryfikacji

W01 - W05 Wykład Sprawdzian

U01 - U04 laboratoria Prezentacja implementacji

Opis przedmiotu

9. SEMANTYCZNE PRZETWARZANIE DANYCH

Powiązane dokumenty