PDF: Praktyczne aspekty stosowania kryptografii w

Transkrypt

PDF: Praktyczne aspekty stosowania kryptografii w
Kod szkolenia:
Tytuł szkolenia:
Dni:
KRYPT/F
Praktyczne aspekty stosowania kryptografii w systemach
komputerowych
5
Opis:
Adresaci Szkolenia:
Szkolenie przeznaczone jest dla programistów, którzy zamierzają wykorzystać w tworzonym
oprogramowaniu techniki kryptograficzne.
Cel szkolenia:
Celem szkolenia jest zaznajomienie się z technikami kryptograficznymi, które wykorzystywane
są przy wprowadzaniu różnego rodzaju zabezpieczeń do systemów informatycznych.
Podczas szkolenia omówione zostaną:
usługi ochrony informacji
algorytmy symetryczne i asymetryczne
funkcje skrótu
różnorodne protokoły kryptograficzne
praktyczne aspekty wykorzystania kryptografii związane z prawidłowym używaniem
poznanych metod oraz technikami ataku na nie
W trakcie warsztatów uczestnicy będą mieli możliwość samodzielnie zastosować wybrane
techniki kryptograficzne i przeprowadzić ataki na nie. Stworzą również podstawowy system
wykorzystujący karty inteligentne poznając wszystkie aspekty związane z cyklem życia kluczy
kryptograficznych oraz ich umiejętnego wykorzystania.
Wymagania:
Od uczestników wymagana jest podstawowa wiedza z zakresu programowania w języku C
oraz Java.
Parametry szkolenia:
5*8 godzin (5*7 godzin netto) wykładów i warsztatów.
Wielkość grupy: maks. 8-10 osób.
Program szkolenia:
1. Ochrona informacji - pojęcia podstawowe
I. Pojęcia podstawowe: bezpieczeństwo, ochrona informacji itp.
II. Pojęcia i relacje w bezpieczeństwie
III. Podstawowe usługi ochrony informacji (wprowadzenie)
i. Integralność
ii. Uwierzytelnienie
iii. Niezaprzeczalność
iv. Poufność
IV. Kryptologia, kryptografia i kryptoanaliza
V. Podstawowe zasady stosowane w kryptografii
2. Algorytmy symetryczne
I. Usługa poufności
II. Szyfry blokowe
III. DES, 3DES
IV. AES
V. Inne szyfry blokowe
VI. Szyfry strumieniowe
VII. Tryby pracy szyfrów blokowych
VIII. Warsztaty: Wykorzystanie szyfrów blokowych, tryby pracy
3. Funkcje skrótu (integralność), MAC i niszczenie informacji
I. Usługa integralności
II. Cechy funkcji skrótu
III. MD5, rodzina SHA, Keccak
IV. Ataki na funkcje skrótu
V. Atak dnia urodzin
VI. Łamanie haseł - tablice tęczowe
VII. Kody uwierzytelniające wiadomość
VIII. Procedury i algorytmy niszczenia informacji
IX. Warsztaty: Generowanie MAC i funkcji skrótów
4. Algorytmy asymetryczne
I. Problem wymiany (uzgadniania) klucza
II. Algorytm Diffiego-Hellmana-Merkla
III. Problem faktoryzacji i logarytmu dyskretnego
IV. RSA i ElGamal
V. Krzywe eliptyczne
VI. Algorytmy podpisu cyfrowego
VII. Warsztaty: Działanie algorytmu RSA i ElGamal
5. Inne algorytmy/protokoły
I. Protokół zobowiązania bitowego
II. Protokół wyzwanie - odpowiedź
III. Współdzielenie sekretów
IV. Dowody wiedzy zerowej
V. Pieniądze cyfrowe
6. Zalecenia, standardy i interfejsy
7.
8.
9.
10.
Powered by TCPDF (www.tcpdf.org)
I. Przegląd zaleceń RFC, norm ISO/IEC, FIPS oraz ANSI dotyczących
kryptografii
II. Notacja ASN.1
III. Przechowywanie materiału kryptograficznego: seria zaleceń PKCS
IV. Dostęp do urządzeń kryptograficznych: PKCS#11
V. Warsztaty: Użycie biblioteki PKCS#11 do szyfrowania/deszyfrowania
Zarządzanie kluczami
I. Metody zarządzania kluczami w systemach kryptograficznych
Ataki na systemy wykorzystujące kryptografię (na przykładach)
I. Podstawowe zasady stosowane przy użyciu metod kryptograficznych
II. Ataki brutalne (przykład: DES, ataki słownikowe)
III. Generatory liczb losowych (przykład: generowanie kluczy)
IV. Przechowywanie kluczy/haseł (przykład: przechowywanie kluczy w
oprogramowaniu)
V. Nieprawidłowe użycie klucza (przykład: algorytm RSA)
VI. Zarządzanie kluczami (przykład: systemy płatnicze)
VII. Błędy protokołów (przykład: protokół SSL)
VIII. Poufność algorytmów (przykład: karty Mifare)
IX. Implementacja algorytmów
X. Metody socjotechniczne
XI. Warsztaty: realizacja przykładowych ataków
Hasła
I. Wymagania wobec haseł
II. Numery PIN
III. Tworzenie kluczy z haseł
IV. Warsztaty: generowanie kluczy z haseł
Karty elektroniczne i sprzętowe moduły bezpieczeństwa
I. Zastosowania i rodzaje kart elektronicznych
II. Działanie kart elektronicznych
III. Programowanie kart inteligentnych Java Card
IV. Zarządzanie kluczami w systemach kart elektronicznych
V. Dywersyfikacja kluczy
VI. Moduły SAM
VII. Urządzenia HSM
VIII. Warsztaty: stworzenie apletu szyfrującego/deszyfrującego oraz
oprogramowania, które go wykorzystuje