Authenticated Encryption

Podobne dokumenty
Wprowadzenie do PKI. 1. Wstęp. 2. Kryptografia symetryczna. 3. Kryptografia asymetryczna

Zamiana porcji informacji w taki sposób, iż jest ona niemożliwa do odczytania dla osoby postronnej. Tak zmienione dane nazywamy zaszyfrowanymi.

Szczegółowy opis przedmiotu zamówienia:

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

Zastosowania informatyki w gospodarce Wykład 5

Laboratorium nr 1 Szyfrowanie i kontrola integralności

WSIZ Copernicus we Wrocławiu

PROBLEMATYKA BEZPIECZEŃSTWA SIECI RADIOWYCH Algorytm szyfrowania AES. Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

2 Kryptografia: algorytmy symetryczne

Przewodnik użytkownika

Bezpieczeństwo w Internecie

Praktyczne aspekty stosowania kryptografii w systemach komputerowych

Wykład 4 Bezpieczeństwo przesyłu informacji; Szyfrowanie

Laboratorium nr 5 Podpis elektroniczny i certyfikaty

Laboratorium nr 3 Podpis elektroniczny i certyfikaty

Szyfrowanie informacji

Poufność (słaba) Integralność (niekryptograficzna) Uwierzytelnienie (słabe) Brak kontroli dostępu Brak zarządzania kluczami

Seminarium Katedry Radiokomunikacji, 8 lutego 2007r.

Program szkolenia: Bezpieczny kod - podstawy

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 11

2.1. System kryptograficzny symetryczny (z kluczem tajnym) 2.2. System kryptograficzny asymetryczny (z kluczem publicznym)

Bezpieczeństwo w sieci I. a raczej: zabezpieczenia wiarygodnosć, uwierzytelnianie itp.

Zarys algorytmów kryptograficznych

VPN Virtual Private Network. Użycie certyfikatów niekwalifikowanych w sieciach VPN. wersja 1.1 UNIZETO TECHNOLOGIES SA

Wykład 3 Bezpieczeństwo przesyłu informacji; Szyfrowanie

Laboratorium nr 2 Szyfrowanie, podpis elektroniczny i certyfikaty

Zadanie 1: Protokół ślepych podpisów cyfrowych w oparciu o algorytm RSA

Hosting WWW Bezpieczeństwo hostingu WWW. Dr Michał Tanaś (

Kryptografia szyfrowanie i zabezpieczanie danych

Podstawy Secure Sockets Layer

Zastosowania PKI dla wirtualnych sieci prywatnych

Wykład 7. komputerowych Integralność i uwierzytelnianie danych - główne slajdy. 16 listopada 2011

Polityka Certyfikacji dla Certyfikatów PEMI

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 7

Bezpieczna poczta i PGP

SSL (Secure Socket Layer)

Wykład 4. Metody uwierzytelniania - Bezpieczeństwo (3) wg The Java EE 5 Tutorial Autor: Zofia Kruczkiewicz

Laboratorium Programowania Kart Elektronicznych

Bezpieczeństwo korespondencji elektronicznej

Bezpieczeństwo systemów komputerowych. Kryptoanaliza. Metody łamania szyfrów. Cel BSK_2003. Copyright by K.Trybicka-Francik 1

Bezpieczeństwo systemów komputerowych. Metody łamania szyfrów. Kryptoanaliza. Badane własności. Cel. Kryptoanaliza - szyfry przestawieniowe.

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 1

BSK. Copyright by Katarzyna Trybicka-Fancik 1. Bezpieczeństwo systemów komputerowych. Podpis cyfrowy. Podpisy cyfrowe i inne protokoły pośrednie

Sieci komputerowe. Wykład 9: Elementy kryptografii. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Infrastruktura klucza publicznego w sieci PIONIER

KAMELEON.CRT OPIS. Funkcjonalność szyfrowanie bazy danych. Wtyczka kryptograficzna do KAMELEON.ERP. Wymagania : KAMELEON.ERP wersja

Szyfry Strumieniowe. Zastosowanie wybranych rozwiąza. zań ECRYPT do zabezpieczenia komunikacji w sieci Ethernet. Opiekun: prof.

Praktyczne aspekty wykorzystania nowoczesnej kryptografii. Wojciech A. Koszek

Certyfikat Certum Basic ID. Instrukcja dla użytkowników Windows Vista. wersja 1.3 UNIZETO TECHNOLOGIES SA

Wasze dane takie jak: numery kart kredytowych, identyfikatory sieciowe. kradzieŝy! Jak się przed nią bronić?

Instrukcja dla użytkowników Windows Vista Certyfikat Certum Basic ID

PGP - Pretty Good Privacy. Użycie certyfikatów niekwalifikowanych w programie PGP

Czym jest kryptografia?

Podpis cyfrowy a bezpieczeñstwo gospodarki elektronicznej

Nowości w kryptografii

Bezpiecze ństwo systemów komputerowych.

n = p q, (2.2) przy czym p i q losowe duże liczby pierwsze.

Instrukcja obsługi certyfikatów w programie pocztowym MS Outlook Express 5.x/6.x

Wprowadzenie do zagadnień bezpieczeńśtwa i kryptografii

Bezpieczeństwo usług oraz informacje o certyfikatach

Szyfry kaskadowe. permutacyjnej (SPP).

Bezpieczeństwo danych, zabezpieczanie safety, security

ZAŁĄCZNIK Nr 3 do CZĘŚCI II SIWZ

Kryptografia. z elementami kryptografii kwantowej. Ryszard Tanaś Wykład 9

Szyfry kaskadowe. Szyfry kaskadowe

Technologie informacyjne - wykład 5 -

Bezpieczeństwo systemów komputerowych. Algorytmy kryptograficzne (1) Algorytmy kryptograficzne. Algorytmy kryptograficzne BSK_2003

Wykład 12. Projektowanie i Realizacja. Sieci Komputerowych. Bezpieczeństwo sieci

Sieci komputerowe Wykład 7. Bezpieczeństwo w sieci. Paweł Niewiadomski Katedra Informatyki Stosowanej Wydział Matematyki UŁ niewiap@math.uni.lodz.

Bringing privacy back

Księgarnia PWN: Kevin Kenan - Kryptografia w bazach danych. Spis treści. Podziękowania O autorze Wprowadzenie... 15

Zdalne logowanie do serwerów

Systemy Mobilne i Bezprzewodowe laboratorium 12. Bezpieczeństwo i prywatność

Protokół IPsec. Patryk Czarnik

SSH - Secure Shell Omówienie protokołu na przykładzie OpenSSH

ZAŁĄCZNIK Nr 1 do CZĘŚCI II SIWZ

KUS - KONFIGURACJA URZĄDZEŃ SIECIOWYCH - E.13 ZABEZPIECZANIE DOSTĘPU DO SYSTEMÓW OPERACYJNYCH KOMPUTERÓW PRACUJĄCYCH W SIECI.

Istnieją trzy kluczowe elementy bezpieczeństwa danych. Poufność, integralność i uwierzytelnianie są znane jako triada CIA

POLITYKA CERTYFIKACJI KIR dla ZAUFANYCH CERTYFIKATÓW NIEKWALIFIKOWANYCH

PuTTY. Systemy Operacyjne zaawansowane uŝytkowanie pakietu PuTTY, WinSCP. Inne interesujące programy pakietu PuTTY. Kryptografia symetryczna

F8WEB CC Polityka Lokalnego Centrum Certyfikacji LCC

Wstęp do systemów wielozadaniowych laboratorium 21 Szyfrowanie

Wprowadzenie do technologii VPN

Szyfrowanie danych w SZBD

WHEEL LYNX SSL/TLS DECRYPTOR. najszybszy deszyfrator ruchu SSL/TLS

Bezpieczeństwo w sieciach bezprzewodowych WiFi. Krystian Baniak Seminarium Doktoranckie Październik 2006

Serwer SSH. Wprowadzenie do serwera SSH Instalacja i konfiguracja Zarządzanie kluczami

Bezpieczeństwo systemów komputerowych. Opis działania PGP. Poczta elektroniczna. System PGP (pretty good privacy) Sygnatura cyfrowa MD5

Outlook Instrukcja podpisywania i szyfrowania wiadomości certyfikatem niekwalifikowanym.

Informacja o zasadach świadczenia usług zaufania w systemie DOCert Wersja 1.0

INTERNET - Wrocław Usługi bezpieczeństwa w rozproszonych strukturach obliczeniowych typu grid

Zastosowanie teorii liczb w kryptografii na przykładzie szyfru RSA

VPN Virtual Private Network. Użycie certyfikatów niekwalifikowanych. w sieciach VPN. wersja 1.1 UNIZETO TECHNOLOGIES SA

Gerard Frankowski, Błażej Miga Zespół Bezpieczeństwa PCSS. Konferencja SECURE 2008 Warszawa,

Kielce, dnia roku. HB Technology Hubert Szczukiewicz. ul. Kujawska 26 / Kielce

Projekt wymagań bezpieczeństwa wobec statycznych bezpośrednich 1-fazowych i 3- fazowych liczników energii elektrycznej:

Bezpieczeństwo informacji w systemach komputerowych

Laboratorium nr 4 Sieci VPN

Kryptografia na procesorach wielordzeniowych

Sieci komputerowe. Wykład 11: Kodowanie i szyfrowanie. Marcin Bieńkowski. Instytut Informatyki Uniwersytet Wrocławski

Transkrypt:

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 prezentacji Wprowadzenie Podstawowe pojęcia Idea Authenticated Wymagania Opis wybranych algorytmów Porównanie mechanizmów Implementacja systemu Plany na przyszłość 3

Podstawowe pojęcia Poufność ochrona przed nieautoryzowanym rozpowszechnianiem danych Uwierzytelnienie usługa umożliwiająca odbiorcy danych weryfikację tożsamości nadawcy Integralność usługa umożliwiająca odbiorcy danych weryfikacje czy nie zostały one zmienione 4

Zabezpieczenie danych (1/2) W trakcie przesyłania przez sieć przed: Podsłuchem autoryzowanym dostępem Składowanych w środowisku 5

Zabezpieczenie danych (2/2) Zapewnienie Poufności szyfrowanie danych Integralności: MAC Podpis cyfrowy W celu zapewnienia obydwu rozwiązaniem jest zastosowanie obu mechanizmów jednocześnie wszystkie kombinacje dają te same gwarancje bezpieczeństwa 6

Authenticated (1/2) Systemy szyfrujące jednocześnie chroniące wspomniane usługi Dostarcza zabezpieczenia przeciwko: Atakom z wybranym tekstem jawnym (CPA, Chosen-planitext attack) atakujący ma możliwość wybrania tekstu jawnego do zaszyfrowania i uzyskania szyfrogramu umożliwia zdobycie informacji o zaszyfrowanej wiadomości oraz poznanie klucza szyfrującego Atakom z wybranym szyfrogramem (CCA, chosen ciphertext attack) atakujący ma możliwość wybrania kryptogramu i uzyskania odpowiadającego mu tekstu jawnego umożliwia zdobycie danych i poznanie klucza 7

Authenticated (2/2) Dokument ISO/IEC CD 19772.2 2006-12-08 Opis pięciu algorytmów zapewniających jednocześnie usługi poufności i uwierzytelnienia: OCB 2.0 (Offset CodeBook ver. 2) AES Key Wrap CCM (Counter with CBC-MAC) EAX Encrypt-then-MAC Zdefiniowane metody mają na celu zapewnienie: wspomnianych usług, wydajności procesu przesyłania danych 8

Plan prezentacji Wprowadzenie Wymagania Opis wybranych algorytmów Porównanie mechanizmów Implementacja systemu Plany na przyszłość 9

Wymagania mechanizmów Odbiorca i nadawca informacji muszą: Ustalić jeden z algorytmów opisanych w standardzie Ustalić wybrany rodzaj szyfru symetrycznego Współdzielić klucz do wybranego szyfru symetrycznego (Key Managment ISO/IEC11770) Ustalić dodatkowe parametry dla konkretnych mechanizmów. 10

Plan prezentacji Wprowadzenie Wymagania Opis wybranych algorytmów: OCB 2.0, Encrypt-then-MAC, Podstawowe symbole, Specyficzne wymagania, Procedury szyfrowania i deszyfrowania. Porównanie mechanizmów Implementacja systemu Plany na przyszłość 11

OCB 2.0 (1/5) Wykorzystane symbole: C 1, C 2,, C m sekwencja bloków bitów (każdy o długości n, z wyjątkiem C m ) uzyskanych jako wyjście procesu D 1, D 2,, D m sekwencja bloków bitów (każdy o długości n, z wyjątkiem D m ) uzyskanych w wyniku podziału danych wejściowych D F, H n-bitowe bloki wykorzystywane przy procesach szyfrowania i deszyfracji m liczba n-bitowych bloków w wiadomości do odszyfrowania, wiadomość zawiera (m-1)n+r bitów M 2 funkcja używana przy operacjach szyfrowania i operacji odwrotnej P n-bitowy blok wykorzystany w definicji funkcji M 2 r liczba (0<r n) bitów ostatniego bloku wiadomości do zaszyfrowania, uzyskana po podziale wiadomości na n-bitowe bloki 12

OCB 2.0 (2/5) Wykorzystane symbole: S zmienna wejściowa o długości n bitów T etykieta (t-bitów) przylegająca do zaszyfrowanej wiadomości w celu zapewnienia integralności danych T` - przeliczona etykieta, generowana podczas procesu deszyfrowania Z - n-bitowy blok używany podczas szyfrowania i deszyfrowania danych # - funkcja przekształcająca liczbę a w blok o długości a-bitów. jeżeli k jest liczbą naturalna (0 k 2 a ) wtedy # a (k) jest blokiem bitów o długości a, uznawanym za reprezentacje binarna liczby a z najbardziej znaczącymi bitami od lewej równymi k X S - lewo stronne obcięcie bloku bitów X jeżeli długość bloku X jest większa lub równa S, wtedy X S jest s- bitowym blokiem zawierającym s najbardziej znaczących bitów X (z lewej strony) 13

OCB 2.0 (3/4) Specyficzne wymagania: Nadawca i odbiorca danych muszą uzgodnić: długość ciągu bitów n (64 lub 128) długość etykiety t w bitach, gdzie 0<t n Definicja funkcji M 2 : Pobiera i zwraca n-bitowe bloki, gdzie n=64, P=0 59 11011 lub n=128, P=0 120 10000111 Jeżeli X jest n-bitowym blokiem: Jeżeli lewy-najbardziej znaczący bit X to zero, M 2 (X)=X«1 Jeżeli lewy-najbardziej znaczący bit X to zero, M 2 (X)=[X«1] XOR P 14

OCB 2.0 (4/5) Procedura szyfrowania: Nadawca, w celu ochrony ciągu danych D, powinien przeprowadzić następujące czynności: Wybrać wartość początkową S odrębną dla każdej wiadomości i udostępnić ją odbiorcy Podzielić D na bloki D 1, D 2,, D m wszystkie n-bitowe oprócz D m (o długości r bitów). D (m-1)n +r F = e k (S) i H=0 n Dla i=1, 2,, m-1 F = M 2 (F) H = H XOR D i C i = F XOR e k (D i XOR F) F = M 2 (F) Z = e k (# n (r) XOR F) C m = D m XOR Z r H = H XOR [D m (Z n-r )] T =[e K (H XOR M 2 (F) XOR F)] t Wyjściem algorytmu jest ciąg C= C 1, C 2 C m T, o długości (m-1)n+r+t bitów Przekazać odbiorcy ciąg C oraz wartość początkową S 15

OCB 2.0 (5/5) Procedura deszyfrowania Odbiorca wiadomości w celu jej zweryfikowania powinien przeprowadzić następujące czynności: Jeżeli długość ciągu C jest krótsza niż t zwróć na wyjście INVALID Podzielić ciąg C na bloki C 1, C 2 C m T (zgodnie z tym, że C zawiera (m-1)n+r+t bitów) F = e k (S) i H=0 n Dla i=1, 2,, m-1 F = M 2 (F) D i = F XOR d k (C i XOR F) H = H XOR D i F = M 2 (F) Z = e k (# n (r) XOR F) D m = C m XOR Z r H = H XOR [D m (Z n-r )] T` =[e K (H XOR M 2 (F) XOR F)] t Jeżeli T=T` wtedy na wyjście podaj D, w przeciwnym wypadku INVALID 16

Encrypt-then-MAC (1/4) Wykorzystane symbole: C` - ciąg bitów uzyskany w wyniku zaszyfrowania ciągu D δ funkcja deszyfrująca δ k (C); jako argumenty pobiera klucz blokowy K i zaszyfrowany ciąg bitów C ε funkcja szyfrująca ε k (D); f funkcja MAC - f k (X); K klucz MAC, X wejściowy ciąg K 1 sekretny klucz do szyfru blokowego K 2 sekretny klucz do funkcji MAC S zmienna startowa o długośći n-bitów T etykieta (n-bitów), dołączona do zaszyfrowanej wiadomości aby zapewnić integralność danych T` - przeliczona wartość etykiety, wygenerowana w trakcie procesu deszyfrowania 17

Encrypt-then-MAC (2/4) Specyficzne wymagania: Nadawca i odbiorca danych muszą uzgodnić: Tryb szyfru blokowego (nie powinno się używać trybu ECB) ISO/IEC 10116 Metodę wyliczania funkcji MAC - ISO/IEC 9797 Metodę opracowywania pary sekretnych kluczy (K 1, K 2 ) z klucza K Długość klucza K musi być co najmniej tak długa jak łączna długość kluczy zarówno szyfru blokowego i funkcji MAC Możliwe metody opracowania pary kluczy (K 1,K 2 ) z klucza K: K = K 1 K 2 Poprzez podzielenie ciągu bitów z funkcji skrótu h(k) o odpowiedniej długości 18

Encrypt-then-MAC (3/4) Procedura szyfrowania: Nadawca, w celu ochrony ciągu danych D, powinien przeprowadzić następujące czynności: wybrać zmienną początkową S odrębną dla każdej wiadomości C` = ε K1 (D) T = f K2 (C`) Wyjściem algorytmu jest ciąg C= C` T 19

Encrypt-then-MAC (4/4) Procedura deszyfrowania Odbiorca wiadomości w celu jej zweryfikowania powinien przeprowadzić następujące czynności: Jeżeli długość ciągu C jest mniejsza niż t, na wyjście INVALID Podzielić ciąg C na dwie części C i T(końcowe t-bitów) T` = f K2 (C`) Jeżeli T jest różne od T`, przerwij i wystaw na wyjście INVALID D = δ K1 (C`) Na wyjście podaj D. 20

Plan prezentacji Wprowadzenie Wymagania Opis wybranych algorytmów Porównanie mechanizmów Implementacja systemu Plany na przyszłość 21

Porównanie mechanizmów (1/3) Wszystkie mechanizmy wymagają: wyboru szyfru blokowego (ISO/IEC 18033-3). Długość bloku n musi być równa co najmniej 64, sugerowaną wartością jest 128 bitów (wymagana w algorytmach 3 i 4). od nadawcy i odbiorcy danych uzgodnienia klucza, znanego tylko im (ewentualnie trzeciej zaufanej stronie) 22

Porównanie mechanizmów (2/3) Mechanizm 1 (OCB 2.0): dobór długości etykiety t (t n). Sugerowaną wartością jest t 64 Mechanizm 2 (AES Key Wrap): Wymagana długość n bloku szyfru to 128 bitów. Mechanizm 3 (CCM): Wymagana długość n bloku szyfru to 128 bitów. Sugerowaną wartością długości etykiety t jest t 8 (w zapisie ósemkowym) Mechanizm 4 (EAX): dobór długości etykiety t (t n). Sugerowaną wartością jest t 64 Mechanizm 5 (Encrypt-then-MAC): Wymaga wyboru trybu operacji szyfrowania i funkcji MAC. Bezpieczeństwo mechanizmu zależy od bezpieczeństwa składowych. 23

Porównanie mechanizmów (3/3) Mechanizm 1 2 3 4 5 Szacowana liczba operacji szyfrowania potrzebna do zaszyfrowania L-bitowej wiadomości L/n 12L/n 2L/n 2L/n 2L/n Czy wymagana licencja? Tak Zależy od użytych metod szyfrowania i MAC Zaprojektowana specjalnie do użycia z krótkimi wiadomościami? Tak Długość wiadomości musi być znana przed szyfrowaniem? Tak Wymagana zmienna początkowa? Tak Tak Tak Standaryzowany wcześniej? Tak Tak 24

Plan prezentacji Wprowadzenie Wymagania Opis wybranych algorytmów Porównanie mechanizmów Implementacja systemu Serwer Klient Plany na przyszłość 25

Implementacja systemu (1/3) Aplikacja pracująca w modelu klient-serwer, która umożliwia bezpieczne przesyłanie danych pomiędzy użytkownikami. W tym celu aplikacja wykorzystuje mechanizmy kryptograficzne, takie jak: Poufność. Infrastruktura klucza publicznego PKI. Cyfrowy podpis. Uwierzytelnianie. 26

Implementacja systemu (2/3) Aplikacja serwera pełni następujące funkcje: Jest jednocześnie ośrodkiem rejestracji RA i certyfikacji CA w jednopoziomowej infrastrukturze PKI stworzonej na potrzeby aplikacji. Umożliwia wystawienie certyfikatu ośrodkowi certyfikacyjnemu CA, tak zwany self-signed certificate. Umożliwia zakładanie kont użytkownikom, którzy będą korzystali z aplikacji klienta. Umożliwia wystawianie cyfrowych certyfikatów użytkownikom, a w razie potrzeby wygenerowanie dla użytkownika kluczy publicznego i prywatnego służących do weryfikacji i podpisu. Umożliwia zarządzanie stworzonymi kontami, takie jak usuwanie konta, odwoływanie certyfikatu użytkownika, wystawienie nowego certyfikatu użytkownikowi. Prowadzi rejestr wystawionych certyfikatów. Prowadzi listę certyfikatów odwołanych CRL. Umożliwia zarządzanie rejestrem wystawionych certyfikatów, takie jak usuwanie certyfikatów, odwoływanie certyfikatów, import, eksport, czyszczenie rejestru. Umożliwia zarządzanie listą certyfikatów odwołanych CRL, takie jak import, eksport, czyszczenie listy. 27

Implementacja systemu (3/3) Aplikacja klienta umożliwia: Przesyłanie zaszyfrowanych danych pomiędzy użytkownikami. Przetrzymywanie listy znajomych użytkowników. Zarządzanie listą znajomych użytkowników, takie jak dodawanie użytkowników do listy, usuwanie użytkowników z listy, importowanie i eksportowanie listy. Wyszukiwanie użytkowników którzy mają stworzone konto na serwerze. Usunięcie konta z serwera. Odwołanie certyfikatu użytkownika. Generowanie par kluczy, publicznego i prywatnego, do szyfrowania lub podpisywania. Zarządzanie wygenerowanymi kluczami, takie jak usuwanie, importowanie, eksportowanie. 28

Plan prezentacji Wprowadzenie Wymagania Opis wybranych algorytmów Porównanie mechanizmów Implementacja systemu Plany na przyszłość 29

Plany na przyszłość Dokończenie implementacji aplikacji, Przeprowadzenie testów, umożliwiających porównanie wydajności wszystkich mechanizmów Authenticated, Napisanie pracy magisterskiej. 30

Dziękuję za uwagę Pytania? 31