PKI Public Key Infrustructure - ghdrako/doc_snipets GitHub Wiki
PKI https://github.com/piona/stacjait-pki
Podstawowe usługi ochrony informacji (security service)
- integralność(integrity) - informacja nie została zmieniona
- uwierzytelnienie(authentication) - wiemy z kim rozmawiamy - dowód osobisty
- niezaprzeczalnosc(non-repudation) - brak mozliwosci wyparcia sie operacji
- poufność(confidentality) - zabezpieczenie danych przed nieuprawnionym odczytem
Inne uslugi powiazane z bezpieczenstwem:autoryzacja(authorization) - sprawdzenie czy ma dostep do zasobow, dostepnosc (avaliability),rozliczalnosc(accoutablility),anonimowosc(anonymity),autentycznosc(autenticity),niezawodnosc(relability)
wiarygodny system (dependable system)
Integralnosc
np uszkodzi sie dysk - trzeba miec backup
Alice Bob, Malory(podsluchuje)
algorytmy funkcji skrotu - funkcje haszujaca kryptograficzna funkcja skrotu odporna na kolizji
Uwierzytelnienie
- Cechy imię,nazwisko,pesel i udowodnienie ze sa takie za które się podaje - proces weryfikacji tożsamości - poprzez proces identyfikacji. Identyfikacja z twarzy lub odciska palca. Potrzebny d
- podpisy cyfrowe
- hasla
- kody uwiezytalniojace
Niezaprzeczalnosc
- Zaufana strona trzecia (notariusz)
- podpis cyfrowy
- znacznik czasowy
- usluga kosztowna bo trzeba zaplacic stronie trzeciej
Poufność
- list pakujemy w kopertę
- algorytmy szyfrujące
A----------------------->B | | | | E M
Bezpieczny kanal do wymiany klucza. Klucz byl krotszy niz informacja.
w symetrycznych wszystkie klucze sa prawidlowe w asymetrycznych nie wszystkie
/dev/random - zbierane dane ze srodowiska - dobra entropia - ja czesto klikamy,
Tryby ECB - kazdy blok
algorytm DH problem logarytmu dyskretnego
Funkcje skrutu
sha1 zlaman, uzywac sha2 sha256 sha3
integralnosc ale brak uwiezytelnienia - nie wiemy kto wygenerowal skrót
kody uwiezytalniajace wiadomos - uzaleznienie skrotu od jakiegos klucza - ktory wymienimy DiffiHellmanem
zlozonosc funkcji skrotu to polowa ikosci bitow np sha256 sila 128
Uwiezytelnienie
uwiezytelnie silne - pod spodem kryptografie uwiezytelnienie wieloskladnikowe - nie oznacza silne haslo i sms, glos + lokalizacja
Atak na kod blik - chca wyciagnac kod blik lokalizacja telefonu w innym miejscu niz bankomat gdzie chemy uzyc kodu blik
MAC - uwiezytelnienie wiadomosaci HMAC
w HMAC klucz moze byc dowolnej dlugosci ale powinien byc co najmniej 128 - klucz trzeba wspolnie ustalic np DH zalecana funkcja skrotu sha2 czyli sha256 sha384
Kazda wiadomosc musi byc zabezpieczona hmac
Nie ma jeszcze niezaprzeczalnosci
mac -kod uwiezytelniajacy wiadomosc
uwiezytelnienie zalezy od klucza semytrecznego
DH tez trzeba uwiezytelnic - potrzebny podpis cyfrowy
Problem z hashem miedzy java a C bo C konczy string zerem
nie uzywac klucza w roznych konekstach - derywacja klucza Czy najpierw szyfrowac a potem liczyc mac-a czy odwrotnie
Uwiezytelnianie i szyfrowanie
sa gotowe tryby szyfrowania z uwiezytelnieniem - jest zrobione dobrze nie trzeba wymyslac
tryby AE albo AEAD (z danymi dodatkowymi)
Tryb GCM w AES - dodatkowa dana 96 bit jest jawna ale dla kazdego klucza musi byc inna - szyfrowanie z uwiezytelnianiem
Podpis cyfrowy dla DH-a
W ECDSA do podpisu jest niuans gdzie uzywana jest liczba losowa RSA podpisywania
ASN.1 metoda kodowania dfanych by aplikacje mogly sparowac dane
ECDSA jak wybiezemy krzywa 384 to sha 384 - dobra praktyka
wersja deterministyczna bez liczby losowej
RSA do podpisu kluczy Klucze DH efemeralne i AES GCS do szyfrowania i uwiezytelniania W tym modelu potrzebne jest tylko uwiezytelniewnie kluczy RSA - kluczami publicznymi
Te kluczy RSA podpiszmy jednym wyzszym poziome - zaufana strona 3 - centrum certyfikacji
Tak dziala SSL/TLS
Kanal zielony bezpieczny jest potrzebny tylko raz - komunikacje z centrum certyfikacji
PKI - daje nam jeden punkt zaufania
Trust store trust anchor - klucze publiczne ktore wiezymy z definicji
Zaufana strona łaczy klucz z tozsamoscia - twozy domene bezpieczenstwa
CRS dokument zadanie podpisania kluczy - udawadnia ze jest wlascicielem pary kluczy - podpisal swoim kluczem prywatnym i klucz publiczny
Dowud ze jestesmy wlascicielem domeny np wystawic plik w tej domenie
PKCS #10 - dokument opisujacy CSR
CN - common name nazwa pospolita podmiotu - nazwa wyrozniajaca
Odciski - wyliczane przez firefox
Na linux popularne PKI EJBCA