Wykład 4: Podstawy bezpieczeństwa i IT
|
|
- Agata Wójtowicz
- 7 lat temu
- Przeglądów:
Transkrypt
1 Wykład 4: Podstawy bezpieczeństwa i IT dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska, 2011
2 Plan Podstawy IT struktury danych kodowanie danych alfanumerycznych notacja SDL automat skończony EDC i ECC kompresja danych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
3 Plan Podstawy bezpieczeństwa kryptologia funkcje haszujące liczby losowe uwierzytelnianie dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
4 PODSTAWY IT struktury danych, kodowanie, SDL, automaty, EDC i ECC, kompresja danych dr inż. dr Marek inż. Marek Mika, Mika, Instytut Instytut Informatyki, Politechnika Poznańska,
5 Podstawy IT struktury danych kodowanie danych alfanumerycznych notacja SDL automat skończony EDC i ECC kompresja danych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
6 Struktury danych ASN.1 (Abstract Syntax Notation) sposób opisu obiektów danych niezależny od sposobu ich kodowania pierwotnie przeznaczony do transmisji danych pomiędzy różnymi systemami komputerowymi XML (extensible Markup Language) może stanowić alternatywę dla ASN.1 dotychczas niezbyt popularny w obszarze zastosowań KE PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
7 ASN.1 Rodzaj sztucznego języka Odpowiedni do opisu danych i ich struktur (nie nadaje się do programowania) Norma ISO/IEC 8824 składnia Norma ISO/IEC 8825 kodowanie Obydwie normy wywodzą się z CCITT Recommendation X.409 PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
8 ASN.1 typy danych Podstawowe typy proste - BOOLEAN - INTEGER - BIT STRING - OCTET STRING - REAL - ENUMERATED złożone - SEQUENCE struktura uporządkowana - SET struktura nieuporządkowana PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
9 Przykład: definicja typu i obiekt danych PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
10 Kodowanie TLV TLV Tag-Length-Value Norma ISO/IEC znaczniki dla obiektów danych używanych w zastosowaniach ogólnych w sferze przemysłowej Norma ISO/IEC znaczniki dla bezpiecznej komunikacji Standard EMV własne znaczniki stosowane w systemach płatniczych Użytkownik ma możliwości definiowania własnych znaczników oraz zagnieżdżania obiektów danych Obecnie tylko niewielka część dostępnej składni stosowana w KE (głównie przez ograniczony rozmiar pamięci) PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
11 BER BER Basic Encoding Rules for ASN.1 ISO/IEC 8825 Zakodowane obiekty danych BER-TLV - obiekty danych zakodowane wg BER Obiekt BER-TLV składa się ze znacznika, długości, danych aktualnych i opcjonalnego znacznika końca PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
12 Reguła kodowania BER-TLV wg ASN.1 PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
13 Dane zakodowane w ASN.1 BER-TLV PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
14 DER DER Distinguished Encoding Rule Podzbiór BER określający sposób kodowania pola długości Rozmiar pola długości: 1,2,3 lub 4 bajty Dwa najbardziej znaczące bity oznaczają klasę obiektu Klasa oznacza ogólny typ danych obiektu: uniwersalna ogólne obiekty (np. liczby całkowite, łańcuchy danych) aplikacyjna obiekt właściwy dla danych zastosowań lub standardów (np. ISO/IEC ) zależna od kontekstu zastosowania niestandardowe prywatna zastosowania niestandardowe W drugim bajcie najbardziej znaczący bit przeznaczony do przyszłych zastosowań (obecnie nieużywany) PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
15 Kodowanie znaczników w ASN.1 PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
16 Kodowanie TLV - przykład PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
17 Struktura pola długości BER w ASN.1 PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
18 Pozostałe informacje nt. ASN.1 Wzorzec (template) - wg normy jest to obiekt danych działający jak kontener dla innych danych ISO/IEC definiuje znaczniki dla obiektów danych stosowanych w różnych zastosowaniach KE (także inne wychodzące poza ten sektor) ISO znaczniki dla KE stosowanych w sektorze finansowym PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
19 ASN.1 zalety i wady Zalety: bardzo łatwe rozszerzanie struktur danych (wystarczy dodać dodatkowy obiekt zakodowany TLV) zapewniona pełna kompatybilność z wcześniejszą wersją (o ile nie usunięto poprzednich obiektów TLV) pełna kompatybilność z nowymi wersjami struktur (wymagana tylko pewna modyfikacja znaczników) łatwo można przedstawić te same dane różnym kodowaniem Wady: w przypadku małych zbiorów danych użytkownika duże koszty zarządzania kodowanymi danymi (1 bajt danych użytkownika wymaga 3 bajtów kodu) PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
20 Schemat budowy złożonej struktury z typów prostych przy kodowaniu TLV PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
21 Porządek danych w strukturze TLV Porządek danych w strukturze TLV nieistotny procesor najpierw odczytuje znacznik szuka znacznika wśród tych znaczników, które zna jeśli znajdzie to następnie czyta pole długości i odpowiednią liczbę bajtów danych jeśli nie znajdzie to pomija nieznany znacznik i przechodzi do następnego obiektu Rozszerzenie struktury przez dodanie nowego obiektu bezproblemowe można go dodać w dowolnym miejscu (pomiędzy innymi obiektami) jeśli jakiś starszy program nie będzie znał nowego znacznika po prostu go przeskoczy PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
22 Porządek obiektów danych w strukturze TLV - przykład PODSTAWY IT STRUKTURY DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
23 Podstawy IT struktury danych kodowanie danych alfanumerycznych notacja SDL automat skończony EDC i ECC kompresja danych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
24 Kod siedmiobitowy (ASCII) 2 7 =128 znaków ASCII American Standard Code for Information Interchange norma ISO/IEC 646 główna wada za mało znaków dla wielu praktycznych zastosowań stosowany w systemach GSM (standard TS ) PODSTAWY IT KODOWANIE DANYCH ALFANUMERYCZNYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
25 Kod ośmiobitowy (PC-ASCII) 2 8 = 256 znaków pochodzi od ASCII (pierwsze 128 znaków) norma ISO/IEC 8859 dwie 7-bitowe tablice: stała zgodna z ASCII zmienna używana na potrzeby znaków charakterystycznych dla alfabetów narodowych np. Latin 1, Latin 2 (w DOS-ie strona kodowa 850, w Windows ANSI, mainframe EBCDIC /nie stosowany w KE/) PODSTAWY IT KODOWANIE DANYCH ALFANUMERYCZNYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
26 Kod szesnastobitowy (Unicode) do znaków opracowany przez Unicode Consortium pierwsze 256 znaków takie jak w ISO/IEC 8859-Latin 1 da się zakodować większość znaków (nie wszystkie) możliwość łączenia znaków parami (tzw. escape sequence w Unicode 3.0) umożliwia zakodowanie ok. 1 mln znaków PODSTAWY IT KODOWANIE DANYCH ALFANUMERYCZNYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
27 Kod 32-bitowy (UCS) 2 32 = znaków (obecnie używana tylko połowa) Pozwala zakodować wszystkie znaki (litery, cyfry, ideogramy itp.) ze wszystkich żywych i martwych języków świata UCS Universal Character Set Norma ISO/IEC Składa się z 4 bajtów nazywanych (od najbardziej znaczącego): grupa płaszczyzna wiersz komórka PODSTAWY IT KODOWANIE DANYCH ALFANUMERYCZNYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
28 UCS płaszczyzna zerowa i wiersz zerowy Płaszczyzna składa się z znaków Najniższa płaszczyzna (grupa 0, płaszczyzna 0) to tzw. podstawowa płaszczyzna wielojęzyczna - jest identyczna z unikodem Najniższy wiersz (g:0, p:0, w:0) odpowiada ISO/IEC 8859-Latin 1 (a pierwsze 128 znaków kodowi ASCII) PODSTAWY IT KODOWANIE DANYCH ALFANUMERYCZNYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
29 Porównanie systemów kodowania znaków alfanumerycznych PODSTAWY IT KODOWANIE DANYCH ALFANUMERYCZNYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
30 UTS Istnieją trzy powszechnie używane schematy UTS (UCS Transformation Format) UTF-8 koduje bajty UTF-16 koduje znaki 16-bitowe (Unicode) tzw. UCS-2 UTF-32 tzw. UCS-4 PODSTAWY IT KODOWANIE DANYCH ALFANUMERYCZNYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
31 Plan Podstawy IT struktury danych kodowanie danych alfanumerycznych notacja SDL automat skończony EDC i ECC kompresja danych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
32 Notacja SDL SDL Specification and Description Language Szczegółowy opis w CCITT Recommendation Z.100 Notacja w postaci diagramów opisujących stany i przejścia pomiędzy nimi Diagram SDL zawsze jest prowadzony od lewego górnego rogu do prawego dolnego (nie trzeba stosować strzałek) W uproszczeniu notacja służy do opisu systemu składającego się z wielu procesów, gdzie każdy proces to automat skończony, który w stanie stabilnym może otrzymać sygnał zewnętrzny, na skutek którego może przejść do nowego stanu (pomiędzy stanami mogą wystąpić dodatkowe działania np. transmisja danych, obliczenia wartości itp.) PODSTAWY IT NOTACJA SDL dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
33 Podstawowe symbole notacji SDL 1 - Start (początek procesu); 2 Task (czynność opisana tekstem umieszczonym wewnątrz pola); 3 Decision (pytanie z odpowiedzią T/N); 4 Label (odnośnik do innego diagramu); 5 Input oraz 6 Output (interfejsy do świata zewnętrznego parametry wewn. bloku); 7 State (stan); 8 Subroutine (oznacza, że ten fragment diagramu jest opisany gdzie indziej); 9 Suroutine start oraz 10 Subroutine end (ograniczają szczegółowy opis podprogramu) PODSTAWY IT NOTACJA SDL dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
34 Plan Podstawy IT struktury danych kodowanie danych alfanumerycznych notacja SDL automat skończony EDC i ECC kompresja danych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
35 Automaty - podstawy teoretyczne Diagram stanów digraf reprezentujący zbiór stanów (węzły) i związki pomiędzy nimi (łuki) Ścieżka Pętla Norma ISO/IEC definiuje automaty dla KE i opisuje m.in. Access Control Descriptor (ACD) ACD określa komendy dopuszczalne w danym stanie i ich parametry PODSTAWY IT AUTOMAT SKOŃCZONY dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
36 Reprezentacja automatu w postaci diagramu stanów i diagramu SDL diagram stanów diagram SDL PODSTAWY IT AUTOMAT SKOŃCZONY dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
37 Reprezentacja automatu w postaci tabelarycznej PODSTAWY IT AUTOMAT SKOŃCZONY dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
38 Reprezentacja automatu w UML prosty z podstanami PODSTAWY IT AUTOMAT SKOŃCZONY dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
39 Zalety praktycznych zastosowań automatu Zalety: mała zajętość pamięci zwarty kod programu ściśle określona sekwencja stanów jest wystarczającym prostym i skutecznym zabezpieczeniem dostępu do danych PODSTAWY IT AUTOMAT SKOŃCZONY dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
40 Wady praktycznych zastosowań automatu Wady: błąd w diagramie stanów może mieć fatalne skutki dla bezpieczeństwa systemu w przypadku skomplikowanych automatów problemy z wykazaniem poprawności diagramu stanów implementacja rozbudowanego automatu o określonych możliwościach czasochłonna zarówno na etapie projektowania, jak i programowania skomplikowane automaty potrzebują bardzo dużo pamięci (w kontekście pojemności pamięci KE) PODSTAWY IT AUTOMAT SKOŃCZONY dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
41 Prosty dwustanowy automat dla KE PODSTAWY IT AUTOMAT SKOŃCZONY dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
42 Plan Podstawy IT struktury danych kodowanie danych alfanumerycznych notacja SDL automat skończony EDC i ECC kompresja danych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
43 EDC i ECC Układy elektroniczne KE wrażliwe na skoki napięcia zasilającego oraz na wysoką temperaturę Konieczność stosowania mechanizmów wykrywania błędów pamięci EDC Error Detection Code pozwala wykryć błędy pamięci (z prawdopodobieństwem zależnym od zastosowanej metody) ECC Error Correction Code rozszerzenie EDC, które w pewnym stopniu (z prawdopodobieństwem zależnym od zastosowanej metody) potrafi naprawić błędy pamięci Wszystkie metody EDC opierają się na sumach kontrolnych metody są jawne PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
44 Zasada działania EDC PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
45 Bit parzystości Najprostsza technika Parzystość parzysta i nieparzysta Wady: korekcja niemożliwa (nie można okreslić pozycji błędu) nie wykrywa błędów parzystych duże nakłady pamięciowe 1:8 (12,5%) problemy ze stosowaniem w pamięci o organizacji bajtowej (dlatego nie stosowane w KE) PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
46 Bit parzystości przykład PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
47 Suma kontrolna XOR Inna nazwa to LRC (Longitudinal Redundancy Check) Zasada: wylicza sumę XOR kolejnych bajtów (((B1 xor B2) xor B3) xor B4) sprawdzenie polega na ponownym wyznaczeniu sumy XOR i wykonaniu operacji XOR wyniku z zapamiętaną sumą kontrolną (wynik różny od zera oznacza wykrycie błędów) Zastosowania: transmisja danych w niektórych zastosowaniach do weryfikacji spójności zawartości pamięci PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
48 Suma kontrolna XOR przykład PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
49 XOR zalety i wady Zalety: proste i szybkie obliczenia bardzo łatwa implementacja (kod wielkości bajtów) sprawdzony w transmisji danych często z definicji zaimplementowany na karcie (norma ISO wymusza dla protokołu T=1) Wady: nie wykrywają zmiany kolejności bajtów nie wykrywają błędów tego samego bitu w parzystej liczbie bajtów PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
50 Suma kontrolna CRC CRC Cyclic Redundancy Check Metoda EDC powszechnie stosowana w transmisji danych (modemowe protokoły Xmodem, Zmodem, Kermit, sprzętowe implementacje w kontrolerach HDD Norma ISO/IEC i rekomendacja CCITT V.41 Mechanizm: dane są traktowane jak bardzo duża liczba, która następnie jest dzielona przez wielomian generatora Sprawdzenie poprawności danych wymaga znajomości wielomianu generatora i początkowej wartości rejestru przesuwnego i polega na ponownym wyliczeniu CRC i porównaniu z zapisaną wartością PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
51 CRC-16 i CRC-32 CRC-16 jest wyznaczane z zastosowaniem 16- bitowego rejestru przesuwnego CRC-32 jest wyznaczane przy zastosowaniu 32-bitowego rejestru przesuwnego CRC-16 stosowane dla bloków o rozmiarze do 4kB (powyżej spada wydajność) CRC-32 może obsłużyć bloki o rozmiarze do 4GB Początkowa wartość rejestru przesuwnego to 0 (metody zgodne z ISO 3309), w nielicznych przypadkach wszystkie bity rejestru ustawione na 1 (rekomendacja CCITT X.25) PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
52 Powszechnie stosowane wielomiany PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
53 Zasada wyliczania CRC-16 Generator G(x)=x 16 +x 12 +x 5 +1 PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
54 Liczenie CRC przykład wielomian G(x)=x 16 +x 12 +x 5 +1 początkowa wartość rejestru 0000 PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
55 CRC zalety i wady Zalety; solidny sposób wykrywania błędów (nawet wielokrotnych) umożliwia wykrycie zamiany bajtów (kolejność ma znaczenie) łatwy w implementacji mała zajętość pamięci możliwość implementacji sprzętowej niektóre mikrokontrolery wyposażone w elementy wspomagające liczenie CRC Wady: stosunkowo wolne działanie w wersji software owej (ok.200 razy wolniej niż XOR) PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
56 Kodowanie Reeda-Solomona 1960 podstawy opracowane przez matematyków Reeda i Solomona Jest to również kod ECC Mechanizm oparty na arytmetyce ciał skończonych Zastosowania: magazynowanie danych (CD, DVD, dyski Blue- Ray, kody kreskowe) transmisja danych (DSL, WiMAX, komunikacja satelitarna, sondy kosmiczne) PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
57 Kodowanie Reeda-Solomona c.d. Kodowanie cykliczne Metoda zorientowana na bloki danych Wielomian generatora ma wpływ na liczbę wykrywanych i poprawianych błędów Kod RS oparty na ciele skończonym rozmiaru 2 8 wykrywa 2 błędne bajty i poprawia 1 (przy 2 dodatkowych bajtach), 3 i 1 (przy 3), 4 i 2 (przy 3) Powszechnie stosowany od lat w KE do wykrywania błędów danych przechowywanych w pamięciach EEPROM lub Flash PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
58 Kodowanie Reeda-Solomona zalety Program wielkości ok. 100B Dość szybki Możliwa implementacja sprzętowa Powszechnie używany w różnych obszarach zastosowań PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
59 ECC schemat działania PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
60 ECC Metody obliczeniowe pamięciowo- i czasochłonne, zazwyczaj projektowane tylko dla drobnych błędów Rozwiązania alternatywne: umieścić kopie danych w kilku obszarach i zastosować technikę głosowania większościowego (typowe 3 obszary, 2/3 zwycięża) mniej pamięciożerne rozwiązanie to dwa obszary sprawdzanie sumą kontrolną EDC (łatwo wykryć błąd, łatwo wykryć miejsce błędu, stosunkowo łatwo można go naprawić) PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
61 ECC metody alternatywne zalety i wady Zalety: łatwość zaprogramowania prosty mechanizm prosty i zwięzły kod programu Wady: duża zajętość pamięci PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
62 Metoda Reeda-Salomona jako ECC Wymagane około kilkuset bajtów na kod programu Rozmiar zakodowanych danych zależy przede wszystkim od wymaganego prawdopodobieństwa wykrywania i lub poprawnej korekcji PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
63 Korekcja błędnych danych - wady Znacząca ilość potrzebnej pamięci Czasochłonne (metoda kilku kopii, czas zapisu) Wymagane miejsce na przechowywanie EDC Nie zabezpieczają w pełni (tylko do wybranego poziomu) Jeśli korekcja przebiega automatycznie (z poziomu OS-u) to nie ma pewności co do jej poprawności (w niektórych zastosowaniach błędna korekcja niedopuszczalna np. portmonetka elektroniczna) Czynnik ludzki łatwiej uwierzyć w manipulowanie danymi niż w błąd zaimplementowanej metody PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
64 Korekcja błędnych danych w pamięci flash o rozmiarze rzędu MB Podejście zwane FTL (Flash Translation Layer) W przypadku wykrycia błędnych danych w bloku pamięci, blok ten jest izolowany i zabrania się wykonywania na nim jakichkolwiek operacji PODSTAWY IT EDC I ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
65 Plan Podstawy IT struktury danych kodowanie danych alfanumerycznych notacja SDL automat skończony EDC i ECC kompresja danych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
66 Kompresja danych Metody stratne i bezstratne W KE stosowane wyłącznie metody bezstratne Warunki dobrego algorytmu kompresji niewielka zajętość pamięci (przede wszystkim RAM) akceptowalna prędkość kompresji PODSTAWY IT KOMPRESJA DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
67 Podstawowe procesy kompresji i dekompresji danych PODSTAWY IT KOMPRESJA DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
68 Podział metod bezstratnych PODSTAWY IT KOMPRESJA DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
69 RLE i VLE RLE Run-Length Encoding (kodowanie długości serii) powtarzające się znaki zastępuje się parą (liczba wystąpień znak) VLE Variable-Length Encoding (kodowanie znakami o zmiennej długości) analizowana jest częstotliwość wystąpienia poszczególnych znaków, najczęściej występujące znaki są kodowane w pierwszej kolejności krótkimi kodami PODSTAWY IT KOMPRESJA DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
70 Wersje VLE Statyczna do kodowania używana wcześniej zdefiniowana tablica Dynamiczna najpierw analizowana jest częstość wystąpienia poszczególnych znaków i na jej podstawie budowana jest tablica Adaptacyjna tablica jest na bieżąco modyfikowana w czasie kompresji PODSTAWY IT KOMPRESJA DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
71 Kompresja danych w KE Dynamiczna i adaptacyjna wersja VLE: raczej nie stosowane, ze względu na pamięciochłonność (szczególnie RAM) RLE: krótki kod programu zastosowanie wyłącznie do danych z powtarzającą się zawartością Statyczna wersja VLE: dobry gdy znany jest zbiór używanych znaków oraz częstość występowania poszczególnych znaków (np. książka telefoniczna na karcie SIM) Kompresja i dekompresja powinny być transparentne dla użytkownika PODSTAWY IT KOMPRESJA DANYCH dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
72 PODSTAWY ZABEZPIECZEŃ Kryptologia, funkcje haszujące, liczby losowe, uwierzytelnianie dr inż. dr Marek inż. Marek Mika, Mika, Instytut Instytut Informatyki, Politechnika Poznańska,
73 Plan Podstawy bezpieczeństwa kryptologia funkcje haszujące liczby losowe uwierzytelnianie dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
74 Kryptologia Kryptologia dzieli się na kryptografię i kryptoanalizę Kryptografia wiedza o metodach szyfrowania i deszyfrowania danych Kryptoanaliza wiedza o łamaniu metod kryptograficznych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
75 Cele kryptografii Poufność tylko właściwy odbiorca może odczytać dane Autentyczność odbiorca ma pewność, że komunikat pochodzi od właściwego nadawcy Integralność odbiorca jest w stanie zweryfikować czy otrzymany komunikat nie był modyfikowany w trakcie transmisji Niezaprzeczalność siła wiążąca, strona biorąca udział w wymianie nie może się wyprzeć swojego w niej udziału Cele są niezależne i stanowią odrębne wymagania względem systemu dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
76 Symbolika dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
77 Notacja dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
78 Podstawowe informacje o kryptografii W uproszczeniu technologia szyfrowania ma do czynienia z 3 typami danych: tekst jawny szyfrogram klucze Współczesne algorytmy kryptograficzne są zorientowane blokowo (mogą przetwarzać tylko pakiety danych o określonym rozmiarze) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
79 Podstawowe zasady kryptografii Zasada Kerckchoffsa całe bezpieczeństwo systemu powinno zależeć od poufności klucza, a nie od poufności zastosowanej metody szyfrowania Zasada bezpieczeństwa przez niezrozumienie (security through obscurity) polega na ukrywaniu szczegółów dotyczących, algorytmów, implementacji, formatów i protokołów dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
80 Zasady kryptografii w praktyce Wiele algorytmów szyfrujących stosowanych w sektorze cywilnym zostało upublicznionych a część z nich ustandaryzowano Wbrew pozorom nadal wiele systemów stosuje praktykę ukrywania szczegółów stosowanej metody praktyka pokazuje, że systemy takie są szynko łamane Możliwe jest łączenie obydwu zasad, wtedy ukrywanie szczegółów metody pełni rolę dodatkowego zabezpieczenia Błędnym okazuje się przyjęcie założenia, że współczesny sprzęt nie jest w stanie złamać szyfru dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
81 Algorytmy kryptograficzne Dwa typy: symetryczne ten sam klucz używany do szyfrowania i deszyfrowania asymetryczne szyfrowanie i deszyfrowanie odbywają się przy zastosowaniu różnych kluczy Główny parametr to tzw. rozmiar przestrzeni kluczy (im większy tym lepiej) Główne wymaganie wobec algorytmu szyfrującego to niezależność czasu przetwarzania od klucza, tekstu jawnego i szyfrogramu dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
82 Podział algorytmów kryptograficznych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
83 Kryptoanaliza bezpieczeństwo systemu System teoretycznie bezpieczny system, którego nie da się złamać dysponując nawet nieograniczonym czasem i nieograniczonymi środkami System praktycznie bezpieczny system, którego nie da się złamać w określonym czasie przy użyciu ograniczonych środków dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
84 Szkodliwe działania intruza dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
85 Typy ataków kryptoanlitycznych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
86 Ataki kryptoanalityczne ciphertext-only (atak ze znanym szyfrogramem) kryptoanalityk ma do dyspozycji jedynie szyfrogram i na jego podstawie chce odnaleźć klucz (dobre współczesne szyfry są odporne na tego rodzaju ataki). known-plaintext (atak ze znanym tekstem jawnym) kryptoanalityk ma do dyspozycji tekst jawny i odpowiadający mu tekst zaszyfrowany (może to być jedna lub wiele takich par). chosen-plaintext (atak z wybranym tekstem jawnym), kryptoanalityk może wybrać dowolny tekst jawny i poznać (także wielokrotnie) odpowiadający mu szyfrogram klucz można odkryć eksperymentalnie chosen-ciphertext (atak z wybranym szyfrogramem), kryptoanalityk może wybrać szyfrogram i zdobyć odpowiadający mu tekst jawny atak brutalny (brut-force) dla znanej pary tekst jawnyszyfrogram sprawdza się kolejne klucze (statystycznie atak taki wymaga przejrzenie połowy przestrzeni kluczy) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
87 Algorytmy symetryczne DES AES IDEA COMP 128 Milenage TDES dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
88 Podstawowy mechanizm działania symetrycznego algorytmu kryptograficznego dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
89 DES DEA Data Encryption Algorithm Najbardziej znany najpowszechniej stosowany algorytm symetryczny Opracowany przez IBM przy współpracy z US NBS (National Bureau of Standards Opublikowany w 1977 jako FIPS 46 standard Standard opisujący DEA jest powszechnie znany jako Data Encryption Standard (DES) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
90 Zasada działania algorytmu DES dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
91 Confusion i diffusion Dwie reguły: confusion i diffusion Confusion statystyki szyfrogramu powinny wpływać na statystyki tekstu jawnego w taki sposób, że jest to zbyt złożone, by atakujący mógł osiągnąć z tego jakieś korzyści Diffusion każdy bit tekstu jawnego i każdy bit klucza powinny wpływać na tyle bitów szyfrogramu na ile tylko się da dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
92 Cechy algorytmu DES Stosuje zasadę Kerckchoffsa Symetryczny Blokowy Nie poszerza szyfrowanego zbioru danych (rozmiar tekstu jawnego i szyfrogramu identyczne) Rozmiar bloku 64 bity Rozmiar klucza 64 bity (obecnie używane 56) 8 bitów parzystości na blok (od lewej 8,16, 24,,64 bit) Parzystość parzysta Przestrzeń kluczy , za mała jak na możliwości współczesnego sprzętu dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
93 Zastosowanie algorytmu DES Był projektowany z myślą o implementacji sprzętowej Wiele obecnych mikrokontrolerów jest wyposażonych w sprzętowy układ DES Implementacja software owa w assemblerze zajmuje 1-2kB Prędkość działania implementacji software owej raczej niska Klucze mogą być generowane generatorem liczb losowych powinny być porównane z 4 słabymi i 12 prawie słabymi kluczami obliczane są bity parzystości wynik staje się kluczem DES dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
94 Typowe czasy obliczeń dla DES dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
95 Algorytm AES 1997 US NIST (National Institute of Standard and Technology) ogłasza konkurs na następcę DES-a 1998 wybór 15 kandydatów i poddanie ich ocenie przez US NSA (National Security Agency), instytucje badawcze, ekspertów i inne zainteresowane strony 2000 ogłoszenie zwycięzcy algorytm nazwany wcześniej Rijdael opracowany prze belgijskich kryptografów (Daemen i Rijmen) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
96 Cechy algorytmu AES Symetryczny Blokowy Rozmiar bloku 128 bitów Rozmiar klucza: 128 bitów AES bity AES bitów AES-256 Odpowiedni do implementacji sprzętowej Łatwa implementacja software owa Rozmiar programu ok. 4kB Przestrzeń kluczy , Wolna licencja, darmowy standard FIPS 197 Użyteczny czas życia ok.20 lat dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
97 Typowe czasy dla AES-128 dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
98 IDEA IDEA International Data Encryption Algorithm Opracowany przez Lai i Massey a 1990 opublikowany jako PES (Proposed Encryption Standard) 1991 poprawiona wersja IPES (Improved PES) Przemianowany na IDEA W pełni spełniona zasada Kerckchoffsa Patent dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
99 Cechy algorytmu IDEA Blokowy Rozmiar bloku 64 bity Rozmiar klucza128 bitów Przestrzeń kluczy , Strukturalnie kompatybilny z DES i Triple DES (może być używany w ich miejsce, ale nie może odszyfrować szyfrogramu zaszyfrowanego przez któryś z tych algorytmów) Rozmiar kodu programu ok. 1kB Nieliczne implementacje w KE Czas obliczeń trochę mniejszy niż dla DES dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
100 Czasy obliczeń algorytmu IDEA dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
101 COMP 128 Pierwotnie poufny Złamany w 1998 po opublikowaniu szczegółów struktury Działa w 9 rundach i ma w jądrze funkcję haszującą generującą 128 bitową wartość haszującą z 256 bitowej wartości wejściowej COMP i COMP następcy COMP 128 bez słabych stron swego poprzednika COMP (Milenage) następca COMP 128 oparty na AES dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
102 Milenage Symetryczny Przeznaczony dla funkcji kryptograficznych f1 i f5 USIM Jądro używa AES Standard TS Oficjalny algorytm projektu 3GPP używany przez wielu operatorów sieciowych w operacjach czasu rzeczywistego dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
103 Tryby operacyjne algorytmów szyfrowania blokowego Wg ISO 8372 każdy blokowy algorytm szyfrujący może być użyty w jednym z 4 trybów: CFB i OFB odpowiednie dla łańcuchów tekstowych nie mających struktury blokowej (nie stosowane w KE) ECB i CBC oparte na blokach 8 bajtowych (stosowane w KE) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
104 Tryby ECB ECB Electronic CodeBook Podstawowy tryb operacyjny DES-a 8 bajtowe bloki szyfrowane osobno tym samym kluczem dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
105 Tryby CBC CBC Cipher Block Chaining Poszczególne bloki wieloblokowego łańcucha danych łączone podczas szyfrowania operacją XOR Bloki wzajemnie od siebie zależą, możliwa jest więc detekcja manipulacji zawartości dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
106 Wielokrotne szyfrowanie Może być używane dla każdego blokowego algorytmu szyfrującego Algorytm szyfrujący nie może być grupą (nie zwiększa się przestrzeń kluczy dwukrotne szyfrowanie dwoma różnymi kluczami może być osiągnięte jednokrotnym szyfrowaniem trzecim kluczem) Dwukrotne szyfrowanie łatwe do złamania metodą meet-in-the-middle dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
107 Meet-in-the-middle Trzeba znać co najmniej jedną parę tekst jawnyszyfrogram Tekst jawny jest szyfrowany wszystkimi możliwymi wersjami pierwszego klucza, a szyfrogram jest deszyfrowany wszystkimi możliwymi wersjami drugiego klucza Porównywane są wygenerowane zbiory wynikowe, jeśli jest zgodność, to prawdopodobnie znaleziono parę kluczy, ale potrzeba to jeszcze potwierdzić dla innej pary tekstów dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
108 Triple DES TDES, DES-3, 3-DES, 2-DES, TDEA Nie da się go złamać atakami meet-in-the-middle Stosowany w sektorze płatniczym i w standardach dla tego sektora (np. EMV) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
109 Opcje kluczy dla Triple DES 3 możliwości wszystkie 3 klucze niezależne pierwszy i drugi niezależne, trzeci identyczny z pierwszym wszystkie 3 identyczne (wtedy to samo co DES) nie zalecane Druga operacja odwrotna do pierwszej i trzeciej (gwarancja zgodności z DES i wzmocnienie wersji z dwoma kluczami) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
110 Tryby pracy Triple DES TDES w wewnętrznym trybie CBC wszystkie trzy operacje wykonywane bezpośrednio na każdym bloku tekstu jawnego TDES w zewnętrznym trybie CBC operacje wykonywane po kolei na całym pliku dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
111 Podstawowe parametry symetrycznych algorytmów kryptograficznych stosowanych w KE dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
112 Algorytmy asymetryczne 1976 Koncepcja Diffiego i Hellmana by użyć jednego klucza (publicznego) do szyfrowania i drugiego (prywatny) do deszyfrowania Nie ma problemu z poufnym przekazywaniem klucza symetrycznego Możliwość użycia w do tej pory niemożliwych zastosowaniach (np. weryfikacja podpisu elektronicznego) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
113 Mechanizm klucza asymetrycznego dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
114 Algorytmy asymetryczne stosowane w KE RSA DSS EC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
115 Algorytm RSA RSA Rivest, Shamir, Adleman (1978) Najbardziej znany algorytm asymetryczny Prosta reguła oparta na arytmetyce wielkich liczb rzeczywistych Obydwa klucze generowane na podstawie bardzo dużych liczb pierwszych Przed szyfrowaniem tekst jawny należy uzupełnić (padding) do właściwego rozmiaru bloku dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
116 Mechanizm algorytmu RSA szyfrowanie: deszyfrowanie: y = x e mod n x = y d mod n y szyfrogram x tekst jawny e klucz publiczny d klucz prywatny n dzielnik modulo (publiczny) n=p q p, q liczby pierwsze (tajne) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
117 Bezpieczeństwo algorytmu RSA Szyfrogramu nie można zdeszyfrować bez znajomości klucza prywatnego Faktoryzacja dzielnika modulo bardzo trudna dla dużych liczb brak efektywnych algorytmów Udana faktoryzacja umożliwia wyznaczenie całego klucza prywatnego Długość klucza prywatnego ma istotny wpływ na bezpieczeństwo: stosowane są klucze 128 bajtowe i 256 bajtowe (1024 bity i 2048 bitów) Zaleca się stosować klucze równej długości, ale w niektórych zastosowaniach warto używać krótkiego klucza publicznego Złamano już klucz 768-bitowy (2009 klaster komputerów) Potencjalnym zagrożeniem będzie komputer kwantowy dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
118 Typowe wartości klucza publicznego dla algorytmu RSA Wartość dziesiętna Wartość potęgowa Wartość binarna Uwagi Jedyna parzysta liczba pierwsza; Stosowana w algorytmie Rabina Najmniejsza nieparzysta liczba pierwsza Druga liczba Fermata Czwarta liczba Fermata dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
119 Typowe rozmiary klucza RSA i charakterystyczne wartości Rozmiar klucza bity bajty Max liczba cyfr Rozmiar przestrzeni liczb (RP) Liczba liczb pierwszych (LP) LP/RP dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
120 Nakłady obliczeniowe algorytmu RSA Proporcjonalne do długości klucza (zależność wykładnicza) Potęgowanie dużych liczb całkowitych jest czasochłonne i zajmuje dużo pamięci RAM Usprawnienia: algorytm szybkiego potęgowania dla potęgowania modulo chińskie twierdzenie o resztach 8 bitowe procesory KE (bez koprocesora) nie są w stanie efektywnie wykonać algorytmu RSA Rozmiar kodu dla sprzętowo wspomaganego RSA z kluczem 1024 bitowym to ok. 1kB dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
121 Przykładowe czasy obliczeń RSA czasy szyfrowania i deszyfrowania RSA w funkcji długości klucza rzeczywiste czasy mogą znacznie odbiegać od zaprezentowanych w zależności od konfiguracji sprzętowej, struktury klucza, zastosowania Chińskiego twierdzenia o resztach (podpis cyfrowy) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
122 RSA pozostałe informacje Algorytmy RSA są skalowalne - nie są sztywno związane z jednym rozmiarem klucza, wydłużenie klucza nie wymaga zmian w programie Dla obecnie dostępnych algorytmów faktoryzacji obowiązuje zasada, że wydłużenie klucza o 15 bitów podwaja nakłady obliczeniowe algorytmów faktoryzacji RSA mimo dużej skuteczności rzadko używany do szyfrowania ze względu na czas obliczeń, stosowany głównie w podpisach cyfrowych W przypadku zastosowań w obszarze KE główną wadą jest ilość pamięci potrzebna do zapamiętania klucza Złożoność procesu generowania klucza jest problemem w niektórych przypadkach dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
123 Przykład generowania klucza RSA Wybierz dwie liczby pierwsze [np. p=3, q=11] Oblicz publiczny dzielnik modulo n=p q [n=3 11] Oblicz wartość z=(p-1) (q-1) [z=(3-1) (11-1)=2 10=20] Wyznacz klucz publiczny e spełniający warunki: e < z NWD(z,e)=1 [3,7,9,11,13,17,19] jeśli kilka liczb spełnia te warunki, to wybierz dowolną z nich [np. e=7] Wyznacz klucz prywatny spełniający warunek (d e) mod 2=1 [np. d=3] dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
124 RSA generowanie kluczy W praktyce generowanie kluczy jest bardziej skomplikowane: zastosowanie metody Sita Eratostenesa niepraktyczne dla kluczy o rozmiarze 1024 bitów (liczby 309 cyfrowe) aby określić prawdopodobieństwo, że liczba jest liczbą pierwszą stosowane są testy probabilistyczne (np. Millera-Rabina lub Solovaya-Strassena) aby przyspieszyć działanie najpierw sprawdza się podzielność wygenerowanej liczby przez małe liczby pierwsze (2,3,5 i 7), dopiero potem stosuje się testy czas potrzebny na wygenerowanie klucza nie jest stały ale ma rozkład w przybliżeniu normalny dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
125 Algorytm generowania klucza RSA z testem Millera- Rabina dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
126 Rozkład czasów generowania kluczy dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
127 Typowe czasy generowania kluczy Czasy potrzebne do wygenerowania pary kluczy publiczny/prywatny dla asymetrycznego algorytmu RSA 3 typowe czasy: średni, potrzebny do wygenerowania 95% wszystkich par i potrzebny do wygenerowania 99% wszystkich par PC z zegarem 2 GHz jest około 7 razy szybszy dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
128 Algorytm DSS 1991 draft algorytmu kryptograficznego do podpisu komunikatów opracowany przez US National Institute of Standards and Technology (NIST) Obecnie standard FIPS 186 Sam algorytm nosi nazwę DSA (Digital Signature Algorithm) a definiujący go standard DSS (Digital Signature Standard) DSA jest modyfikacją algorytmu El Gamala DSA drugi po RSA pod względem popularności algorytm podpisu cyfrowego dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
129 Bezpieczeństwo algorytmu DSS U podstaw leży problem znajdowania logarytmu dyskretnego: łatwo wyznaczyć y=a x mod p odwrotne działanie, czyli obliczenie x dla znanych y, a oraz p wymaga bardzo dużych nakładów obliczeniowych W przypadku zastosowań do podpisu cyfrowego przed zastosowaniem algorytmu DSS komunikat należy skrócić do wymaganej długości algorytmem haszującym SHA-1, generującym 160 bitową wartość z komunikatu o dowolnej długości W praktyce RSA jest jednak dużo częściej stosowany dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
130 Kryptografia krzywych eliptycznych Trzecie podejście do asymetrycznych algorytmów kryptograficznych 1985 Victor Miller i Neal Koblitz niezależnie proponują zastosowanie krzywych eliptycznych w konstrukcji algorytmów kryptograficznych ECC Elliptic Curve Cryptosystems systemy kryptograficzne, których działanie opiera się na zastosowaniu krzywych eliptycznych Krzywe eliptyczne krzywe planarne określone wzorem y 2 =x 3 +ax+b w skończonej przestrzeni trójwymiarowej Standard IEEE 1363 i norma ISO/IEC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
131 Kryptografia krzywych eliptycznych - cechy Mniejsze wymagania obliczeniowe niż RSA Szacuje się, że system ECC z kluczem 160 bitowym jest tak samo bezpieczny jak RSA z kluczem 1024 (256/2048 i 320/5120) Moc kryptograficzna i względnie krótki klucz zaletą w zastosowaniach KE Koprocesory mikrokontrolerów KE wspierają ECC, ale niskie wymagania umożliwiają zastosowanie również w kartach bez koprocesora Ograniczona liczba wdrożeń wynika z: konieczności modyfikowania istniejących systemów zaprojektowanych do współpracy z RSA większego stopnia trudności od strony obliczeń matematycznych niż RSA dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
132 Przykładowe czasy obliczeń ECC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
133 Rozmiary klucza w asymetrycznych algorytmach kryptograficznych stosowanych w KE dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
134 Padding Proces powiększania zbiorów danych do rozmiaru odpowiadającego całkowitej wielokrotności rozmiaru bloku Stosowany w kryptografii w algorytmach blokowych Problem z deszyfrowaniem (nie wiadomo, gdzie granica pomiędzy tekstem jawnym a paddingiem) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
135 Rozwiązania problemu deszyfrowania danych uzupełnionych paddingiem Na początku pliku dodać informację o długości komunikatu wady: wydłużony komunikat, nadmiarowe w przypadku danych, które nie muszą być szyfrowane Wiele innych podejść Algorytm wg ISO/IEC 9797 pierwszy bajt po danych użytkownika ustawiany na 80 pozostałe na 00 odbiorca czyta od końca zdeszyfrowany komunikat w poszukiwaniu bajta o wartości 80 i następnie odcina część z paddingiem dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
136 Padding wg ISO/IEC 9797 Method 2 Odbiorca musi wiedzieć czy padding jest stosowany zawsze, czy tylko wtedy gdy niezbędny Aby uniknąć nieporozumień często stosowana jest reguła mówiąca, że padding stosowany jest zawsze wadą takiego rozwiązania jest dodawanie w niektórych sytuacjach jednego nadmiarowego bloku dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
137 Różne metody paddingu stosowane w KE i ich charakterystyki ISO/IEC 9797 Method 1: dane n 00 w generowaniu kodu MAC Method 2: dane 80 n 00 w szyfrowaniu danych ISO/IEC n dane BC w podpisie cyfrowym 60 n RND dane BC w podpisie cyfrowym, gdy potrzeba zindywidualizowania danych PKCS#1 Typ 1: n FF 00 dane w podpisie cyfrowym Typ 2: n RND 00 dane w szyfrowaniu i generowaniu kodu MAC PKCS#5 dla DES i TripleDES ISO tylko przy szyfrowaniu dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
138 MAC i kryptograficzne sumy kontrolne MAC Message Authentication Code Autentyczność komunikatu ważniejsza niż jego poufność (autentyczny = niezmieniony, niezmanipulowany) MAC jest obliczany dla danego komunikatu i dodawany na jego końcu; Odbiorca sam oblicza MAC dla odebranego komunikatu i porównuje z MAC-iem otrzymanym od nadawcy; Jeśli są zgodne, to otrzymany komunikat jest poprawnym komunikatem dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
139 Mechanizm wyznaczania MAC MAC Message Authentication Code Autentyczność komunikatu ważniejsza niż jego poufność (autentyczny = niezmieniony, niezmanipulowany) MAC jest obliczany dla danego komunikatu i dodawany na jego końcu; Odbiorca sam oblicza MAC dla odebranego komunikatu i porównuje z MAC-iem otrzymanym od nadawcy; Jeśli są zgodne, to otrzymany komunikat jest poprawnym komunikatem dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
140 Mechanizm wyznaczania MAC dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
141 MAC informacje różne Liczony jest przy użyciu poufnego klucza, który musi być znany obydwu stronom Jest pewnego rodzaju kodem EDC Czasami określany mianem CCS (cryptographic checksum) lub Signature Pojecie MAC stosowane w transmisji danych; CCS w innych zastosowaniach MAC może być wyznaczany symetrycznymi algorytmami kryptograficznymi (Triple DES lub AES) szyfrowanie odbywa się c trybie CBC (bloki zależą od siebie) a ostatni blok (lub jego część) to właśnie MAC (oryginalny tekst komunikatu pozostaje w formie jawnej) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
142 Warunki stosowania DES do generowania MAC Jeśli długość komunikatu nie jest wielokrotnością 8 bajtów należy zastosować padding W większości przypadków padding to wartości 00 zgodnie z ANSI X.99 Konieczne uzgodnienie długości i położenia kodu MAC (najczęściej są to 4 najbardziej znaczące bajty ostatniego bloku po szyfrowaniu CBC) Bajty paddingu nie są transmitowane (tylko oryginalna wiadomość i kod MAC) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
143 Plan Podstawy bezpieczeństwa kryptologia funkcje haszujące liczby losowe uwierzytelnianie dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
144 Funkcje haszujące Motywacja: obliczanie podpisu cyfrowego czasochłonne duże pliki wymagają wielu podpisów Rozwiązanie: dokument jest kompresowany do krótszej wersji (o określonej długości) i dopiero ta skompresowana wersja jest podpisywana kompresja nie musi być odwracalna, ponieważ podpis można wyznaczyć ponownie z oryginalnego dokumentu tzw. jednokierunkowe funkcje haszujące dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
145 Podstawowe funkcje haszujące stosowane w obszarze KE Funkcje haszujące bez klucza: MD5 SHA-1 SHA-256 SHA-512 Funkcje haszujące z kluczem HMAC RIPEMD 160 dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
146 Mechanizm algorytmów haszujących z kluczem i bez klucza dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
147 Zastosowanie funkcji haszujących w KE Jednokierunkowe funkcje haszujące funkcje obliczające wartość o stałej długości z dokumentu o zmiennej długości; wartość ta reprezentuje oryginalną zawartość dokumentu w postaci skompresowanej, ale nie może być użyta do odtworzenia oryginalnego dokumentu W KE stosowane do wyznaczenia wartości wejściowej do wygenerowania podpisu cyfrowego oraz przy generowaniu liczb pseudolosowych Padding niezbędny, gdy rozmiar pliku nie jest całkowitą wielokrotnością rozmiaru bloku Wartość funkcji obliczana w terminalu lub komputerze podłączonym do terminala (wolna transmisja danych z/do karty) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
148 Cechy dobrej funkcji haszującej Wynik powinien mieć stałą długość Duża przepustowość Łatwe wyliczanie wartości, ale bardzo trudne lub wręcz niemożliwe odtworzenie oryginalnego dokumentu Musi być odporna na kolizje (trudno znaleźć dokument, który będzie prowadził do tej samej wartości dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
149 Ataki na algorytmy haszujące Dwie formy ataku: Wykorzystanie kolizji znalezienie pliku o takiej samej wartości i podmiana pliku Przygotowanie dwóch dokumentów o identycznej wartości haszującej, ale różnej zawartości; Ten sam podpis może być użyty w obydwu przypadkach i trudno dowieść, który z dokumentów był podpisany W oparciu o tzw. paradoks urodzin druga metoda jest skuteczniejsza (183:23) Wartość funkcji haszującej musi być na tyle duża, aby zabezpieczyć przed obiema formami ataku (obecnie za bezpieczną uznaje się wartość 160 bitową) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
150 Funkcje haszujące stosowane w KE Istnieje wiele funkcji haszujących, sporo z nich jest sformalizowanych w formie standardów, które są dość często poprawiane Przegląd funkcji haszujących: ISO/IEC funkcja oparta na algorytmie szyfrującym z n-bitowym blokiem (AES), wartość może być w takim przypadku n lub 2n długa 128,160,256,384,512 bitów MD5 (Message Digest 5) 1990/91, Rivest, następca algorytmu MD4, cały czas w użyciu ale nie uznawany za bezpieczny (wykryto kolizyjność) 128 bitów dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
151 Przegląd funkcji haszujących c.d. SHA (Secure Hash Algorithm) 1992, NIST, opracowana dla DSS, po wykryciu pewnych słabości zmodyfikowana, poprawiona wersja od 1995 znana jako SHA-1 (standard FIPS 180-1) 128 bitów Rodzina funkcji haszujących SHA-2 NIST, SHA-224, SHA-256, SHA-384, SHA-512 liczba po nazwie oznacza długość; do tej pory uważane za bezpieczne ponieważ nie stwierdzono żadnej formy udanego ataku HMAC 1996, RFC 2104 funkcja haszująca z kluczem (wartość liczona na podstawie dokumentu wejściowego i klucza); stosowane do obliczeń kodu MAC np. HMAC- MD5 (128 bitów) i HMAC-SHA-1 (160 bitów) RIPEMD bitów dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
152 Plan Podstawy bezpieczeństwa kryptologia funkcje haszujące liczby losowe uwierzytelnianie dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
153 Liczby losowe w KE Zastosowania w KE: w uwierzytelnianiu do zapewnienia unikalności sesji w paddingu przy szyfrowaniu danych jako liczniki ciągów wysyłania Długość liczb losowych w tych zastosowaniach 2 do 8 bajtów Maksymalna długość jest konsekwencją rozmiaru bloku w algorytmach DES lub AES W tych zastosowaniach potrzebne są liczby losowe: których nie da się przewidzieć nie można na nie wpłynąć z zewnątrz Rozwiązanie generator sprzętowy TRNG (True Random Number Generator) w pełni odporny na czynniki zewnętrzne (temperatura, napięcie zasilania, promieniowanie) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
154 Sprzętowy generator liczb losowych W mikrokontrolerach karty stosowane są układy z rejestrem przesuwnym z liniowym sprzężeniem zwrotnym (LSFR) napędzane oscylatorem sterowanym napięciowo Zaprojektowanie i wykonanie sprzętowego TRNG jest bardzo trudnym zadaniem Projektanci stosują więc rozwiązania sprzętowo-software owe, w których wynik wygenerowany przez sprzętowy RNG jest traktowany jako wejście dla software owego generatora liczb pseudolosowych, który spełnia wymagane kryteria jakości; W połączeniu mogą być traktowane jako TRNG Ważne aby wszystkie karty z danej serii produkcyjnej generowały różne sekwencje liczb losowych Rozwiązanie na poziomie systemu operacyjnego karty do pamięci kolejnych kart wpisuje się wygenerowane liczby pseudolosowe, traktowane jako ziarno generatora dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
155 Generowanie liczb losowych Ograniczenia pamięciowe oraz czasowe znacznie ograniczają liczbę możliwych do zastosowania algorytmów Generator powinien spełniać następujące warunki: nie może generować tych samych liczb w każdej nowej sesji nie może działać w nieskończonej pętli kryterium lawinowe zmiana jednego bitu na wejściu powoduje zmianę co najmniej połowy bitów na wyjściu dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
156 Zasada działania silnego generatora liczb pseudolosowych trzy etapy: inicjowanie, sekwencjonowanie stanów, generowanie liczb losowych idealną wartością początkową (ziarnem generatora) jest liczba losowa pochodząca z fizycznego generatora liczb losowych dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
157 Przykładowa architektura generatora liczb pseudolosowych dla KE generator wykorzystuje blokowy symetryczny algorytm kryptograficzny (np. AES) z blokiem o rozmiarze 8 bajtów i sprzężeniem zwrotnym wartość odczytana z bufora cyklicznego jest szyfrowana kluczem karty, wynikowy szyfrogram jest liczbą 8 bajtową, wartość ta jest sumowana XOR z poprzednim tekstem jawnym i podawana na wejście bufora cyklicznego, zapisywana w pamięci trwałej i generator przechodzi do następnej wartości dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
158 Cechy w/w implementacji Klucz karty i zawartość bufora cyklicznego zapisywane w ostatniej fazie produkcji Jeśli w buforze cyklicznym zapisane jest 12 liczb 8 bajtowych, to: wzrasta poziom bezpieczeństwa (większa losowość) wzrasta żywotność generatora (12 krotna wartość maksymalnej liczby zapisów pamięci EEPROM) Czas generowania liczby losowej dla KE z 3,5MHz zegarem: wyczyszczenie i zapisanie pamięci EEPROM ok. 14 ms (2 2 3,5 ms) algorytm DES ok. 17 ms reszta pomijalna razem ok. 31 ms Czas wykonania można skrócić o połowę przy sprzętowej implementacji AES-a dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
159 Inny przykład architektury generatora liczb pseudolosowych szybszy od poprzedniego (tylko jeden cykl zapisu EEPROM w każdej sesji tuż po resecie a dalej używana wyłącznie pamięć RAM) zaleta: szybkość wady: używanie pamięci RAM i niezbyt dobra statystyczna jakość generatora jakość wystarczająca do zastosowań w uwierzytelnianiu typu challenge-response wystarczająco długie cykle i nie możliwe powielanie dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
160 Standardy Między innymi: X 9.17, FIPS 186, Internet RFC 1750 Standard FIPS zaleca sprawdzenie wbudowanych generatorów testami statystycznymi za pośrednictwem modułów bezpieczeństwa wyłącznie pozytywne przejście wszystkich testów pozwala na dalsze używanie generatora Większość obecnych systemów KE nie ma takiej możliwości zakłada się, że generatory liczb pseudolosowych ze względu na swoją deterministyczną naturę są wystarczająco wydajne dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
161 Testowanie liczb losowych Zaimplementowany generator należy przetestować: test matematyczny przy użyciu metod statystycznych dla liczb 8 bajtowych należy wygenerować liczb i poddać je analizie Powinno być spełnione twierdzenie Bernoulliego o niezależności zdarzeń Okresowość generatora powinna być jak najdłuższa (najlepiej jeśli przekracza długość życia generatora) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
162 Przegląd metod testowania liczb losowych Najprostszy test zliczenie liczby wystąpień poszczególnych bajtów Prezentacja na wykresie Każda liczba 1 lub 2 bajtowa powinna wystąpić mniej więcej taką samą liczbę razy Jeśli jakaś liczba występuje częściej niż inne, to jest to potencjalne miejsce ataku Test nie sprawdza porządku (wygenerowanie liczb po kolei daje idealny rozkład, ale jest bardzo łatwe do złamania) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
163 Przegląd metod testowania liczb losowych c.d. Inny prosty test skompresować plik z wygenerowanymi danymi im niższy stopień kompresji, tym lepiej Test 2 liczone są wartość średnia i odchylenie standardowe, lepszy niż dwa poprzednie, ale również nie sprawdza porządku Serial test do określenia interwałów pomiędzy wzorcami występującymi w sekwencji liczb losowych Gap test do określenia interwałów wolnych od wzorców Poker test do określenia rozkładu 2 dla wzorców i/lub ciągów wolnych od wzorców Coupon collector test - do określenia rozkładu 2 dla ciągów wolnych od wzorców dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
164 Przegląd metod testowania liczb losowych c.d. Spectral test rozkład liczb sąsiadujących w ciągu Two-dimensional spectral test wykres na osi poziomej wygenerowana liczba na osi pionowej następna wygenerowana liczba Three-dimensional spectral test dochodzi trzecia oś (następnik następnika) n- dimensional test w podobny sposób jak poprzednie, ale nie da się przedstawić na wykresie dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
165 Two-dimensional spectral test dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
166 Plan Podstawy bezpieczeństwa kryptologia funkcje haszujące liczby losowe uwierzytelnianie dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
167 Uwierzytelnianie Proces, który ma udowodnić, czy osoba lub jednostka są tym, czym twierdzą, że są Uwierzytelnianie może odbyć się na podstawie: czynnika posiadania czynnika wiedzy cech biometrycznych Uwierzytelnianie dwuczynnikowe i trzyczynnikowe oznacza, że sprawdzane będą dwa lub trzy z wymienionych czynników Przykład - Osoba posiada paszport zna klucz poufny cechuje się odciskami palców dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
168 Podział metod uwierzytelniania Ze względu na zastosowania: uwierzytelnianie dotyczy potwierdzenia autentyczności identyfikacja ma na celu rozpoznanie obiektu autoryzacja dotyczy sprawdzenia, czy dana osoba może wykonać odpowiednią operację Ze względu na dane: statyczne zawsze na podstawie tych samych danych dynamiczne każda sesja wymaga innych danych Ze względu na wynik: jednostronne potwierdza autentyczność co najmniej jednej strony dwustronne potwierdza autentyczność obydwu stron dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
169 Uwierzytelnianie w KE Terminal (lub karta) sprawdza autentyczność karty (terminala) Metody oparte na algorytmach kompresji dzielą się na symetryczne i asymetryczne Prawie wyłącznie stosowane są algorytmy symetryczne (asymetryczne są zbyt wolne) Norma ISO/IEC 9798 Metoda challenge-response stosowana w uwierzytelnianiu dynamicznym KE polega na: zadaniu losowo wybranego pytania drugiej ze stron (challenge) obliczeniu odpowiedzi przez drugą stronę i zwrócenie jej stronie zadającej pytanie (response) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
170 Jednostronne uwierzytelnianie symetryczne Terminal generuje liczbę losową i wysyła ją do karty (challenge) Karta szyfruje otrzymaną liczbę przy użyciu klucza (znanego obu stronom) Karta zwraca do terminala wynik szyfrowania (response) Terminal deszyfruje odpowiedź przy pomocy klucza i porównuje z wartością wysłaną do karty Jeśli liczby są zgodne, to znaczy, że karta zna poufny klucz i jest autentyczna dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
171 Bezpieczeństwo uwierzytelniania jednostronnego Poufność zapewniona wspólnym tajnym kluczem Nie da się zastosować zapisu podsłuchanej transmisji (za każdym razem inna liczba losowa) jedynym atakiem, który może być skuteczny, jest systematyczne poszukiwanie tajnego klucza (np. atakiem siłowym) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
172 Jednostkowy klucz karty W przypadku gdy wszystkie karty w danym zastosowaniu mają ten sam klucz, to jego złamanie jest jednoznaczne z dyskredytacją całego systemu Przeciwdziałanie stosowanie jednostkowych kluczy kart Jednostkowy klucz karty zależy od jej unikalnego numeru (cecha jawna np. nr seryjny mikrokontrolera) i klucza głównego znanego tylko terminalowi (w praktyce część numeru seryjnego zaszyfrowana algorytmem TDES lub AES) Klucz główny musi być przechowywany bezpiecznie, ponieważ jego złamanie jest równoznaczne ze złamaniem całego systemu; jeśli to możliwe to powinien on być bezpowrotnie usunięty po wykryciu próby ataku dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
173 Dwustronne uwierzytelnianie symetryczne Podstawowa zasada działania jest równoznaczna dualnemu jednostronnemu uwierzytelnianiu symetrycznemu Dwustronne uwierzytelnianie można zastąpić dwoma jednostronnymi uwierzytelnieniami wykonanymi po jednym przez każdą ze stron Zalety podejścia dwustronnego w stosunku do podejścia jednostronnego: mniej czasu poświęconego na transmisję danych większe bezpieczeństwo (mniej danych do podsłuchania) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
174 Dwustronne uwierzytelnianie symetryczne zasada działania Terminal odczytuje numer karty Terminal wyznacza klucz uwierzytelniający karty Terminal pyta kartę o liczbę losową i jednocześnie generuje własną liczbę losową Terminal łączy obie liczby przez konkatenację i szyfruje otrzymaną liczbę kluczem uwierzytelniającym karty Terminal wysyła szyfrogram do karty Karta deszyfruje otrzymany blok danych Karta sprawdza czy zdeszyfrowana liczba losowa otrzymana od terminala jest identyczna z tą, którą wysłała do terminala Jeśli tak to terminal staje się wiarygodny dla karty Karta zastępuje miejscami liczby losowe i szyfruje poufnym kluczem Karta wysyła do terminala wynik szyfrowania Terminal deszyfruje otrzymany szyfrogram Terminal porównuje zdekodowaną liczbę losową z tą, którą wcześniej wysłał do karty Jeśli liczby są zgodne, to karta jest wiarygodna dla terminala Obie strony są dla siebie wiarygodne dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
175 Statyczne uwierzytelnianie asymetryczne Mniejsze bezpieczeństwo niż w przypadku uwierzytelniania dynamicznego (brak zabezpieczeń przed powtórzeniem podsłuchanej sesji) Stosowane wyłącznie jako uzupełniające sprawdzenie wiarygodności dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
176 Statyczne uwierzytelnianie asymetryczne - wady Motywacja: część mikrokontrolerów KE nie jest wyposażona w NPU do liczenia RSA dodatkowe uwierzytelnianie kluczem asymetrycznym zwiększa bezpieczeństwo (atakujący ma do złamania dwa algorytmy) prostota i ekonomiczność działania (weryfikacja odbywa się w terminalu, a dodatkowy układ nie podnosi znacząco kosztów systemu) dużo szybsze niż dynamiczne uwierzytelnianie asymetryczne (jedno szyfrowanie zamiast dwóch) dr inż. Marek Mika, Instytut Informatyki, Politechnika Poznańska,
PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Wprowadzenie Problemy bezpieczeństwa transmisji Rozwiązania stosowane dla
2 Kryptografia: algorytmy symetryczne
1 Kryptografia: wstęp Wyróżniamy algorytmy: Kodowanie i kompresja Streszczenie Wieczorowe Studia Licencjackie Wykład 14, 12.06.2007 symetryczne: ten sam klucz jest stosowany do szyfrowania i deszyfrowania;
PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska Wprowadzenie Problemy bezpieczeństwa transmisji Rozwiązania stosowane dla
Zarys algorytmów kryptograficznych
Zarys algorytmów kryptograficznych Laboratorium: Algorytmy i struktury danych Spis treści 1 Wstęp 1 2 Szyfry 2 2.1 Algorytmy i szyfry........................ 2 2.2 Prosty algorytm XOR......................
Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi.
Spis treści: Czym jest szyfrowanie Po co nam szyfrowanie Szyfrowanie symetryczne Szyfrowanie asymetryczne Szyfrowanie DES Szyfrowanie 3DES Szyfrowanie IDEA Szyfrowanie RSA Podpis cyfrowy Szyfrowanie MD5
2.1. System kryptograficzny symetryczny (z kluczem tajnym) 2.2. System kryptograficzny asymetryczny (z kluczem publicznym)
Dr inż. Robert Wójcik, p. 313, C-3, tel. 320-27-40 Katedra Informatyki Technicznej (K-9) Wydział Elektroniki (W-4) Politechnika Wrocławska E-mail: Strona internetowa: robert.wojcik@pwr.edu.pl google: Wójcik
WSIZ Copernicus we Wrocławiu
Bezpieczeństwo sieci komputerowych Wykład 4. Robert Wójcik Wyższa Szkoła Informatyki i Zarządzania Copernicus we Wrocławiu Plan wykładu Sylabus - punkty: 4. Usługi ochrony: poufność, integralność, dostępność,
Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 14, Kryptografia: algorytmy asymetryczne (RSA)
Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 14, 7.06.2005 1 Kryptografia: algorytmy asymetryczne (RSA) Niech E K (x) oznacza szyfrowanie wiadomości x kluczem K (E od encrypt, D K (x)
Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA
Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA Grzegorz Bobiński Uniwersytet Mikołaja Kopernika Toruń, 22.05.2010 Kodowanie a szyfrowanie kodowanie sposoby przesyłania danych tak, aby
Podstawy systemów kryptograficznych z kluczem jawnym RSA
Podstawy systemów kryptograficznych z kluczem jawnym RSA RSA nazwa pochodząca od nazwisk twórców systemu (Rivest, Shamir, Adleman) Systemów z kluczem jawnym można używać do szyfrowania operacji przesyłanych
Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, Kryptografia: algorytmy asymetryczne (RSA)
Kodowanie i kompresja Streszczenie Studia Licencjackie Wykład 15, 19.06.2005 1 Kryptografia: algorytmy asymetryczne (RSA) Niech E K (x) oznacza szyfrowanie wiadomości x kluczem K (E od encrypt, D K (x)
Zastosowania informatyki w gospodarce Wykład 5
Instytut Informatyki, Automatyki i Robotyki Zastosowania informatyki w gospodarce Wykład 5 Podstawowe mechanizmy bezpieczeństwa transakcji dr inż. Dariusz Caban dr inż. Jacek Jarnicki dr inż. Tomasz Walkowiak
Ataki na RSA. Andrzej Chmielowiec. Centrum Modelowania Matematycznego Sigma. Ataki na RSA p. 1
Ataki na RSA Andrzej Chmielowiec andrzej.chmielowiec@cmmsigma.eu Centrum Modelowania Matematycznego Sigma Ataki na RSA p. 1 Plan prezentacji Wprowadzenie Ataki algebraiczne Ataki z kanałem pobocznym Podsumowanie
Systemy Mobilne i Bezprzewodowe laboratorium 12. Bezpieczeństwo i prywatność
Systemy Mobilne i Bezprzewodowe laboratorium 12 Bezpieczeństwo i prywatność Plan laboratorium Szyfrowanie, Uwierzytelnianie, Bezpieczeństwo systemów bezprzewodowych. na podstawie : D. P. Agrawal, Q.-A.
Praktyczne aspekty stosowania kryptografii w systemach komputerowych
Kod szkolenia: Tytuł szkolenia: KRYPT/F Praktyczne aspekty stosowania kryptografii w systemach komputerowych Dni: 5 Opis: Adresaci szkolenia Szkolenie adresowane jest do osób pragnących poznać zagadnienia
Bezpieczeństwo systemów komputerowych. Algorytmy kryptograficzne (1) Algorytmy kryptograficzne. Algorytmy kryptograficzne BSK_2003
Bezpieczeństwo systemów komputerowych Algorytmy kryptograficzne (1) mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Algorytmy kryptograficzne Przestawieniowe zmieniają porządek znaków
Szyfrowanie informacji
Szyfrowanie informacji Szyfrowanie jest sposobem ochrony informacji przed zinterpretowaniem ich przez osoby niepowołane, lecz nie chroni przed ich odczytaniem lub skasowaniem. Informacje niezaszyfrowane
Laboratorium nr 1 Szyfrowanie i kontrola integralności
Laboratorium nr 1 Szyfrowanie i kontrola integralności Wprowadzenie Jedną z podstawowych metod bezpieczeństwa stosowaną we współczesnych systemach teleinformatycznych jest poufność danych. Poufność danych
urządzenia: awaria układów ochronnych, spowodowanie awarii oprogramowania
Bezpieczeństwo systemów komputerowych urządzenia: awaria układów ochronnych, spowodowanie awarii oprogramowania Słabe punkty sieci komputerowych zbiory: kradzież, kopiowanie, nieupoważniony dostęp emisja
Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 7
Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 7 Spis treści 11 Algorytm ElGamala 3 11.1 Wybór klucza.................... 3 11.2 Szyfrowanie.....................
Authenticated Encryption
Authenticated Inż. Kamil Zarychta Opiekun: dr Ryszard Kossowski 1 Plan prezentacji Wprowadzenie Wymagania Opis wybranych algorytmów Porównanie mechanizmów Implementacja systemu Plany na przyszłość 2 Plan
Spis treści. Przedmowa... 9
Spis treści Przedmowa... 9 1. Algorytmy podstawowe... 13 1.1. Uwagi wstępne... 13 1.2. Dzielenie liczb całkowitych... 13 1.3. Algorytm Euklidesa... 20 1.4. Najmniejsza wspólna wielokrotność... 23 1.5.
Kryptografia na procesorach wielordzeniowych
Kryptografia na procesorach wielordzeniowych Andrzej Chmielowiec andrzej.chmielowiec@cmmsigma.eu Centrum Modelowania Matematycznego Sigma Kryptografia na procesorach wielordzeniowych p. 1 Plan prezentacji
n = p q, (2.2) przy czym p i q losowe duże liczby pierwsze.
Wykład 2 Temat: Algorytm kryptograficzny RSA: schemat i opis algorytmu, procedura szyfrowania i odszyfrowania, aspekty bezpieczeństwa, stosowanie RSA jest algorytmem z kluczem publicznym i został opracowany
Bezpieczeństwo systemów komputerowych. Metody łamania szyfrów. Kryptoanaliza. Badane własności. Cel. Kryptoanaliza - szyfry przestawieniowe.
Bezpieczeństwo systemów komputerowych Metody łamania szyfrów Łamanie z szyfrogramem Łamanie ze znanym tekstem jawnym Łamanie z wybranym tekstem jawnym Łamanie z adaptacyjnie wybranym tekstem jawnym Łamanie
Bezpieczeństwo systemów komputerowych. Kryptoanaliza. Metody łamania szyfrów. Cel BSK_2003. Copyright by K.Trybicka-Francik 1
Bezpieczeństwo systemów komputerowych mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Metody łamania szyfrów Łamanie z szyfrogramem Łamanie ze znanym tekstem jawnym Łamanie z wybranym
INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR
INŻYNIERIA BEZPIECZEŃSTWA LABORATORIUM NR 2 ALGORYTM XOR ŁAMANIE ALGORYTMU XOR 1. Algorytm XOR Operacja XOR to inaczej alternatywa wykluczająca, oznaczona symbolem ^ w języku C i symbolem w matematyce.
Kryptografia szyfrowanie i zabezpieczanie danych
Akademia Górniczo-Hutnicza Wydział Elektrotechniki, Automatyki, Informatyki i Inżynierii Biomedycznej WSTĘP DO INFORMATYKI Adrian Horzyk Kryptografia szyfrowanie i zabezpieczanie danych www.agh.edu.pl
Bezpieczeństwo kart elektronicznych
Bezpieczeństwo kart elektronicznych Krzysztof Maćkowiak Karty elektroniczne wprowadzane od drugiej połowy lat 70-tych znalazły szerokie zastosowanie w wielu dziedzinach naszego życia: bankowości, telekomunikacji,
Sieci Komputerowe Mechanizmy kontroli błędów w sieciach
Sieci Komputerowe Mechanizmy kontroli błędów w sieciach dr Zbigniew Lipiński Instytut Matematyki i Informatyki ul. Oleska 48 50-204 Opole zlipinski@math.uni.opole.pl Zagadnienia Zasady kontroli błędów
Wprowadzenie do informatyki i użytkowania komputerów. Kodowanie informacji System komputerowy
1 Wprowadzenie do informatyki i użytkowania komputerów Kodowanie informacji System komputerowy Kodowanie informacji 2 Co to jest? bit, bajt, kod ASCII. Jak działa system komputerowy? Co to jest? pamięć
Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna
1. Wstęp Wprowadzenie do PKI Infrastruktura klucza publicznego (ang. PKI - Public Key Infrastructure) to termin dzisiaj powszechnie spotykany. Pod tym pojęciem kryje się standard X.509 opracowany przez
Wykład VII. Kryptografia Kierunek Informatyka - semestr V. dr inż. Janusz Słupik. Gliwice, 2014. Wydział Matematyki Stosowanej Politechniki Śląskiej
Wykład VII Kierunek Informatyka - semestr V Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Problem pakowania plecaka System kryptograficzny Merklego-Hellmana
1.1. Standard szyfrowania DES
1.1. Standard szyrowania DES Powstał w latach siedemdziesiątych i został przyjęty jako standard szyrowania przez Amerykański Narodowy Instytut Standaryzacji (ang. American National Standards Institute
Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska
Instytut Informatyki Politechnika Poznańska Proces transmisji może w prowadzać błędy do przesyłanych wiadomości błędy pojedyncze lub grupowe Detekcja: Wymaga uznania, że niektóre wiadomości są nieważne
Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 8
Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 8 Spis treści 13 Szyfrowanie strumieniowe i generatory ciągów pseudolosowych 3 13.1 Synchroniczne
Sieci komputerowe. Wykład 11: Kodowanie i szyfrowanie. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski
Sieci komputerowe Wykład 11: Kodowanie i szyfrowanie Marcin Bieńkowski Instytut Informatyki Uniwersytet Wrocławski Sieci komputerowe (II UWr) Wykład 11 1 / 32 Kodowanie Sieci komputerowe (II UWr) Wykład
Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas)
Hosting WWW Bezpieczeństwo hostingu WWW Dr Michał Tanaś (http://www.amu.edu.pl/~mtanas) Szyfrowana wersja protokołu HTTP Kiedyś używany do specjalnych zastosowań (np. banki internetowe), obecnie zaczyna
Algorytmy asymetryczne
Algorytmy asymetryczne Klucze występują w parach jeden do szyfrowania, drugi do deszyfrowania (niekiedy klucze mogą pracować zamiennie ) Opublikowanie jednego z kluczy nie zdradza drugiego, nawet gdy można
II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI
II klasa informatyka rozszerzona SZYFROWANIE INFORMACJI STEGANOGRAFIA Steganografia jest nauką o komunikacji w taki sposób by obecność komunikatu nie mogła zostać wykryta. W odróżnieniu od kryptografii
Wykład VI. Programowanie III - semestr III Kierunek Informatyka. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej
Wykład VI - semestr III Kierunek Informatyka Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2013 c Copyright 2013 Janusz Słupik Podstawowe zasady bezpieczeństwa danych Bezpieczeństwo Obszary:
Dane, informacja, programy. Kodowanie danych, kompresja stratna i bezstratna
Dane, informacja, programy Kodowanie danych, kompresja stratna i bezstratna DANE Uporządkowane, zorganizowane fakty. Główne grupy danych: tekstowe (znaki alfanumeryczne, znaki specjalne) graficzne (ilustracje,
Copyright by K. Trybicka-Francik 1
Bezpieczeństwo systemów komputerowych Algorytmy kryptograficzne (2) mgr Katarzyna Trybicka-Francik kasiat@zeus.polsl.gliwice.pl pok. 503 Szyfry wykładnicze Pohlig i Hellman 1978 r. Rivest, Shamir i Adleman
Copyright by K. Trybicka-Francik 1
Bezpieczeństwo systemów komputerowych Algorytmy kryptograficzne (2) Szyfry wykładnicze Pohlig i Hellman 1978 r. Rivest, Shamir i Adleman metoda szyfrowania z kluczem jawnym DSA (Digital Signature Algorithm)
BSK. Copyright by Katarzyna Trybicka-Fancik 1. Bezpieczeństwo systemów komputerowych. Podpis cyfrowy. Podpisy cyfrowe i inne protokoły pośrednie
Bezpieczeństwo systemów komputerowych Podpis cyfrowy Podpisy cyfrowe i inne protokoły pośrednie Polski Komitet Normalizacyjny w grudniu 1997 ustanowił pierwszą polską normę określającą schemat podpisu
PuTTY. Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Inne interesujące programy pakietu PuTTY. Kryptografia symetryczna
PuTTY Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP Marcin Pilarski PuTTY emuluje terminal tekstowy łączący się z serwerem za pomocą protokołu Telnet, Rlogin oraz SSH1 i SSH2. Implementuje
Parametry systemów klucza publicznego
Parametry systemów klucza publicznego Andrzej Chmielowiec Instytut Podstawowych Problemów Techniki Polskiej Akademii Nauk 24 marca 2010 Algorytmy klucza publicznego Zastosowania algorytmów klucza publicznego
Bezpieczeństwo systemów komputerowych
Bezpieczeństwo systemów komputerowych Wprowadzenie do kryptologii Aleksy Schubert (Marcin Peczarski) Instytut Informatyki Uniwersytetu Warszawskiego 16 listopada 2016 Jak ta dziedzina powinna się nazywać?
Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 5
Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 5 Spis treści 9 Algorytmy asymetryczne RSA 3 9.1 Algorytm RSA................... 4 9.2 Szyfrowanie.....................
Szyfry Strumieniowe. Zastosowanie wybranych rozwiąza. zań ECRYPT do zabezpieczenia komunikacji w sieci Ethernet. Opiekun: prof.
Szyfry Strumieniowe Zastosowanie wybranych rozwiąza zań ECRYPT do zabezpieczenia komunikacji w sieci Ethernet Arkadiusz PłoskiP Opiekun: prof. Zbigniew Kotulski Plan prezentacji Inspiracje Krótkie wprowadzenie
Czym jest kryptografia?
Szyfrowanie danych Czym jest kryptografia? Kryptografia to nauka zajmująca się układaniem szyfrów. Nazwa pochodzi z greckiego słowa: kryptos - "ukryty", gráphein "pisać. Wyróżniane są dwa główne nurty
Zadanie 1: Protokół ślepych podpisów cyfrowych w oparciu o algorytm RSA
Informatyka, studia dzienne, inż. I st. semestr VI Podstawy Kryptografii - laboratorium 2010/2011 Prowadzący: prof. dr hab. Włodzimierz Jemec poniedziałek, 08:30 Data oddania: Ocena: Marcin Piekarski 150972
Programowanie Niskopoziomowe
Programowanie Niskopoziomowe Wykład 2: Reprezentacja danych Dr inż. Marek Mika Państwowa Wyższa Szkoła Zawodowa im. Jana Amosa Komeńskiego W Lesznie Plan Kilka ciekawostek Zapisy binarny, oktalny, decymalny
Algorytm. a programowanie -
Algorytm a programowanie - Program komputerowy: Program komputerowy można rozumieć jako: kod źródłowy - program komputerowy zapisany w pewnym języku programowania, zestaw poszczególnych instrukcji, plik
Bezpieczeństwo w sieci I. a raczej: zabezpieczenia wiarygodnosć, uwierzytelnianie itp.
Bezpieczeństwo w sieci I a raczej: zabezpieczenia wiarygodnosć, uwierzytelnianie itp. Kontrola dostępu Sprawdzanie tożsamości Zabezpieczenie danych przed podsłuchem Zabezpieczenie danych przed kradzieżą
Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 9
Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 9 Spis treści 14 Podpis cyfrowy 3 14.1 Przypomnienie................... 3 14.2 Cechy podpisu...................
Ataki kryptograficzne.
Ataki kryptograficzne. Krótka historia kryptografii... Szyfr Cezara A -> C B -> D C -> E... X -> Z Y -> A Z -> B ROT13 - pochodna szyfru Cezara nadal używana ROT13(ROT13("Tekst jawny") = "Tekst jawny".
Bezpieczeństwo danych, zabezpieczanie safety, security
Bezpieczeństwo danych, zabezpieczanie safety, security Kryptologia Kryptologia, jako nauka ścisła, bazuje na zdobyczach matematyki, a w szczególności teorii liczb i matematyki dyskretnej. Kryptologia(zgr.κρυπτός
Bezpieczeństwo w Internecie
Elektroniczne Przetwarzanie Informacji Konsultacje: czw. 14.00-15.30, pokój 3.211 Plan prezentacji Szyfrowanie Cechy bezpiecznej komunikacji Infrastruktura klucza publicznego Plan prezentacji Szyfrowanie
Wykład 7. komputerowych Integralność i uwierzytelnianie danych - główne slajdy. 16 listopada 2011
Wykład 7 Integralność i uwierzytelnianie danych - główne slajdy 16 listopada 2011 Instytut Informatyki Uniwersytet Jagielloński 7.1 Definition Funkcja haszujaca h odwzorowuje łańcuch bitów o dowolnej długości
Marcin Szeliga Dane
Marcin Szeliga marcin@wss.pl Dane Agenda Kryptologia Szyfrowanie symetryczne Tryby szyfrów blokowych Szyfrowanie asymetryczne Systemy hybrydowe Podpis cyfrowy Kontrola dostępu do danych Kryptologia Model
Kryptografia-0. przykład ze starożytności: około 489 r. p.n.e. niewidzialny atrament (pisze o nim Pliniusz Starszy I wiek n.e.)
Kryptografia-0 -zachowanie informacji dla osób wtajemniczonych -mimo że włamujący się ma dostęp do informacji zaszyfrowanej -mimo że włamujący się zna (?) stosowaną metodę szyfrowania -mimo że włamujący
Generowanie ciągów bitów losowych z wykorzystaniem sygnałów pochodzących z komputera
Generowanie ciągów bitów losowych z wykorzystaniem sygnałów pochodzących z komputera Praca dyplomowa magisterska Opiekun: prof. nzw. Zbigniew Kotulski Andrzej Piasecki apiaseck@mion.elka.pw.edu.pl Plan
teoria informacji Kanały komunikacyjne, kody korygujące Mariusz Różycki 25 sierpnia 2015
teoria informacji Kanały komunikacyjne, kody korygujące Mariusz Różycki 25 sierpnia 2015 1 wczoraj Wprowadzenie matematyczne. Entropia i informacja. Kodowanie. Kod ASCII. Stopa kodu. Kody bezprefiksowe.
RSA. R.L.Rivest A. Shamir L. Adleman. Twórcy algorytmu RSA
RSA Symetryczny system szyfrowania to taki, w którym klucz szyfrujący pozwala zarówno szyfrować dane, jak również odszyfrowywać je. Opisane w poprzednich rozdziałach systemy były systemami symetrycznymi.
Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego
Arytmetyka cyfrowa Dla człowieka naturalnym sposobem liczenia jest korzystanie z systemu dziesiętnego, dla komputera natomiast korzystanie z zapisu dwójkowego (binarnego). Zapis binarny - to system liczenia
Wykład VIII. Systemy kryptograficzne Kierunek Matematyka - semestr IV. dr inż. Janusz Słupik. Wydział Matematyki Stosowanej Politechniki Śląskiej
Wykład VIII Kierunek Matematyka - semestr IV Wydział Matematyki Stosowanej Politechniki Śląskiej Gliwice, 2014 c Copyright 2014 Janusz Słupik Egzotyczne algorytmy z kluczem publicznym Przypomnienie Algorytm
W11 Kody nadmiarowe, zastosowania w transmisji danych
W11 Kody nadmiarowe, zastosowania w transmisji danych Henryk Maciejewski Jacek Jarnicki Marek Woda www.zsk.iiar.pwr.edu.pl Plan wykładu 1. Kody nadmiarowe w systemach transmisji cyfrowej 2. Typy kodów,
Szyfrowanie RSA (Podróż do krainy kryptografii)
Szyfrowanie RSA (Podróż do krainy kryptografii) Nie bójmy się programować z wykorzystaniem filmów Academy Khana i innych dostępnych źródeł oprac. Piotr Maciej Jóźwik Wprowadzenie metodyczne Realizacja
Od Wydawcy Krzywe eliptyczne w kryptografii Wykorzystanie pakietu SAGE... 9
Od Wydawcy... 8 1. Krzywe eliptyczne w kryptografii Wykorzystanie pakietu SAGE... 9 1.1.. Krzywe eliptyczne w praktyce... 10 1.2.. Pakiet SAGE... 10 1.3.. Krzywe eliptyczne na płaszczyźnie... 10 1.4..
Spis treści. Od Wydawcy
Spis treści Od Wydawcy 1. Krzywe eliptyczne w kryptografii Wykorzystanie pakietu SAGE 1.1. Krzywe eliptyczne w praktyce 1.2. Pakiet SAGE 1.3. Krzywe eliptyczne na płaszczyźnie 1.4. Ciała skończone proste
Opis efektów kształcenia dla modułu zajęć
Nazwa modułu: Kryptografia Rok akademicki: 2032/2033 Kod: IIN-1-784-s Punkty ECTS: 3 Wydział: Informatyki, Elektroniki i Telekomunikacji Kierunek: Informatyka Specjalność: - Poziom studiów: Studia I stopnia
Wprowadzenie do technologii VPN
Sieci komputerowe są powszechnie wykorzystywane do realizacji transakcji handlowych i prowadzenia działalności gospodarczej. Ich zaletą jest błyskawiczny dostęp do ludzi, którzy potrzebują informacji.
Wybrane zagadnienia teorii liczb
Wybrane zagadnienia teorii liczb Podzielność liczb NWW, NWD, Algorytm Euklidesa Arytmetyka modularna Potęgowanie modularne Małe twierdzenie Fermata Liczby pierwsze Kryptosystem RSA Podzielność liczb Relacja
Wprowadzenie ciag dalszy
Wprowadzenie ciag dalszy Patryk Czarnik Bezpieczeństwo sieci komputerowych MSUI 2009/10 Szyfry asymetryczne Wymyślone w latach 70-tych Używaja dwóch różnych (ale pasujacych do siebie ) kluczy do szyfrowania
Kodowanie informacji. Przygotował: Ryszard Kijanka
Kodowanie informacji Przygotował: Ryszard Kijanka Komputer jest urządzeniem służącym do przetwarzania informacji. Informacją są liczby, ale także inne obiekty, takie jak litery, wartości logiczne, obrazy
Technologie Informacyjne
System binarny Szkoła Główna Służby Pożarniczej Zakład Informatyki i Łączności October 7, 26 Pojęcie bitu 2 Systemy liczbowe 3 Potęgi dwójki 4 System szesnastkowy 5 Kodowanie informacji 6 Liczby ujemne
Przewodnik użytkownika
STOWARZYSZENIE PEMI Przewodnik użytkownika wstęp do podpisu elektronicznego kryptografia asymetryczna Stowarzyszenie PEMI Podpis elektroniczny Mobile Internet 2005 1. Dlaczego podpis elektroniczny? Podpis
Wstęp do Informatyki
Wstęp do Informatyki Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 4 Bożena Woźna-Szcześniak (AJD) Wstęp do Informatyki Wykład 4 1 / 1 DZIELENIE LICZB BINARNYCH Dzielenie
Założenia i obszar zastosowań. JPEG - algorytm kodowania obrazu. Geneza algorytmu KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG
Założenia i obszar zastosowań KOMPRESJA OBRAZÓW STATYCZNYCH - ALGORYTM JPEG Plan wykładu: Geneza algorytmu Założenia i obszar zastosowań JPEG kroki algorytmu kodowania obrazu Założenia: Obraz monochromatyczny
Zastosowanie kompresji w kryptografii Piotr Piotrowski
Zastosowanie kompresji w kryptografii Piotr Piotrowski 1 Plan prezentacji I. Wstęp II. Kryteria oceny algorytmów III. Główne klasy algorytmów IV. Przykłady algorytmów selektywnego szyfrowania V. Podsumowanie
Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Marcin Pilarski
Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP Marcin Pilarski PuTTY PuTTY emuluje terminal tekstowy łączący się z serwerem za pomocą protokołu Telnet, Rlogin oraz SSH1 i SSH2. Implementuje
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Opracował Jan T. Biernat
Programowanie Strukturalne i Obiektowe Słownik podstawowych pojęć 1 z 5 Program, to lista poleceń zapisana w jednym języku programowania zgodnie z obowiązującymi w nim zasadami. Celem programu jest przetwarzanie
Laboratorium nr 5 Podpis elektroniczny i certyfikaty
Laboratorium nr 5 Podpis elektroniczny i certyfikaty Wprowadzenie W roku 2001 Prezydent RP podpisał ustawę o podpisie elektronicznym, w która stanowi że podpis elektroniczny jest równoprawny podpisowi
Wprowadzenie do zagadnień bezpieczeńśtwa i kryptografii
Wprowadzenie do zagadnień bezpieczeńśtwa i kryptografii Patryk Czarnik Bezpieczeństwo sieci komputerowych MSUI 2009/10 Zagadnienia bezpieczeństwa Identyfikacja i uwierzytelnienie Kontrola dostępu Poufność:
Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas. Wykład 11
Kryptografia z elementami kryptografii kwantowej Ryszard Tanaś http://zon8.physd.amu.edu.pl/~tanas Wykład 11 Spis treści 16 Zarządzanie kluczami 3 16.1 Generowanie kluczy................. 3 16.2 Przesyłanie
Pracownia Komputerowa wyk ad VII
Pracownia Komputerowa wyk ad VII dr Magdalena Posiada a-zezula Magdalena.Posiadala@fuw.edu.pl http://www.fuw.edu.pl/~mposiada Magdalena.Posiadala@fuw.edu.pl 1 Notacja szesnastkowa - przypomnienie Szesnastkowy
Luty 2001 Algorytmy (7) 2000/2001 s-rg@siwy.il.pw.edu.pl
System dziesiętny 7 * 10 4 + 3 * 10 3 + 0 * 10 2 + 5 *10 1 + 1 * 10 0 = 73051 Liczba 10 w tym zapisie nazywa się podstawą systemu liczenia. Jeśli liczba 73051 byłaby zapisana w systemie ósemkowym, co powinniśmy
LABORATORIUM PROCESORY SYGNAŁOWE W AUTOMATYCE PRZEMYSŁOWEJ. Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q
LABORAORIUM PROCESORY SYGAŁOWE W AUOMAYCE PRZEMYSŁOWEJ Zasady arytmetyki stałoprzecinkowej oraz operacji arytmetycznych w formatach Q 1. Zasady arytmetyki stałoprzecinkowej. Kody stałopozycyjne mają ustalone
Detekcja i korekcja błędów w transmisji cyfrowej
Detekcja i korekcja błędów w transmisji cyfrowej Błędy w transmisji cyfrowej pojedyncze wielokrotne. całkowita niepewność względem miejsca zakłóconych bitów oraz czy w ogóle występują paczkowe (grupowe)
0 + 0 = 0, = 1, = 1, = 0.
5 Kody liniowe Jak już wiemy, w celu przesłania zakodowanego tekstu dzielimy go na bloki i do każdego z bloków dodajemy tak zwane bity sprawdzające. Bity te są w ścisłej zależności z bitami informacyjnymi,
Wstęp do programowania. Reprezentacje liczb. Liczby naturalne, całkowite i rzeczywiste w układzie binarnym
Wstęp do programowania Reprezentacje liczb Liczby naturalne, całkowite i rzeczywiste w układzie binarnym System dwójkowy W komputerach stosuje się dwójkowy system pozycyjny do reprezentowania zarówno liczb
Teoretyczne Podstawy Informatyki
Teoretyczne Podstawy Informatyki cel zajęć Celem kształcenia jest uzyskanie umiejętności i kompetencji w zakresie budowy schematów blokowych algor ytmów oraz ocenę ich złożoności obliczeniowej w celu optymizacji
Techniki multimedialne
Techniki multimedialne Digitalizacja podstawą rozwoju systemów multimedialnych. Digitalizacja czyli obróbka cyfrowa oznacza przetwarzanie wszystkich typów informacji - słów, dźwięków, ilustracji, wideo
Ataki na algorytm RSA
Ataki na algorytm RSA Andrzej Chmielowiec 29 lipca 2009 Streszczenie Przedmiotem referatu są ataki na mechanizm klucza publicznego RSA. Wieloletnia historia wykorzystywania tego algorytmu naznaczona jest
WEP: przykład statystycznego ataku na źle zaprojektowany algorytm szyfrowania
WEP: przykład statystycznego ataku na źle zaprojektowany algorytm szyfrowania Mateusz Kwaśnicki Politechnika Wrocławska Wykład habilitacyjny Warszawa, 25 października 2012 Plan wykładu: Słabości standardu
Ochrona Systemów Informacyjnych. Elementy Kryptoanalizy
Ochrona Systemów Informacyjnych Elementy Kryptoanalizy Informacje podstawowe Kryptoanaliza dział kryptografii zajmujący się łamaniem szyfrów. W zależności od rodzaju informacji dostępnych w trakcie kryptoanalizy
LICZBY PIERWSZE. 14 marzec 2007. Jeśli matematyka jest królową nauk, to królową matematyki jest teoria liczb. C.F.
Jeśli matematyka jest królową nauk, to królową matematyki jest teoria liczb. C.F. Gauss (1777-1855) 14 marzec 2007 Zasadnicze twierdzenie teorii liczb Zasadnicze twierdzenie teorii liczb Ile jest liczb
Bezpieczeństwo systemów komputerowych
Bezpieczeństwo systemów komputerowych Szyfry asymetryczne Aleksy Schubert (Marcin Peczarski) Instytut Informatyki Uniwersytetu Warszawskiego 10 listopada 2015 Na podstawie wykładu Anny Kosieradzkiej z
Kryptologia. Bezpieczeństwo komunikacji elektronicznej
Kryptologia Bezpieczeństwo komunikacji elektronicznej Kryptologia Kryptografia nauka o o ochronie oraz szyfrowaniu danych Kryptoanaliza sztuka odkodowywania danych bez znajomości odpowiednich kluczy Steganografia