Wprowadzenie do Kryptografi

Łukasz Dubiel

@bambuchaAdm

github.com/bambuchaAdm

lukasz@hackerspacke-krk.pl

Agenda

  • Co to jest ?
  • Gdzie jest stosowane ?
  • Rodzaje i typy szyfrów
  • Spójność wiadomości

Kryptografia

Kryptologia

Kryptologia (łać. kryptos - ukryte, logos -słow) - dziedzina wiedzy o przekazywaniu informacji w sposób zabezpieczony przed niepowołanym dostępem.[1]

Kryptologia

  • Kryptografia - jak ukrywać
  • Kryotoanaliza - jak czytać ukryte

Zastosowania

  • Wojsko
  • Administracja
  • Przemysł
  • Personalnie

Podział szyfrów

  • Symetryczne
  • Asymetryczne

Szyfry symetryczne

Symetryczne klucze

Klucze

  • Alice generuje klucz
  • Klucz musi pozostać tajny
  • Jest to ten sam klucz dla obu stron

Szyfrownie symetryczne

Szyfry symetryczne

  • Szybkie (wysoka wydajność)
  • Łatwe w implementacji
  • Niebezpieczna wymiana kluczy

Zastosowania

  • Zawartość połączenia
  • Dyski twarde
  • Pamięc przenośna

Szyfry asymetryczne

Szyfry asymetryczne

Klucze asymetryczne

  • Bob generuje parę kluczy
    (publiczny i prywatny)
  • Klucz publiczny rozpowszechnia jawnie
    (przekazuje Alice, umiesza na swojej stronie)
  • Klucz prywatny zachowuje w tajemnicy

Szyfrowanie asymetryczne

Szyfrowanie asymetryczne

  • Prostsze rozpowszechanie kluczy
  • Wolniejsze
    (bardziej skomplikowane obliczenia)
  • Trudniejsze w kompromitacji

Użycia

  • Email
  • Wymiana kluczy SSL i TLS
  • Podpisy cyfrowe

Spóność

Problem

Problem

Nie możemy stwierdzić czy to faktycznie Alice nadała wiadomość

Haszowanie na ratunek

Haszowanie

Haszowanie

jest to czynność, która przyporządkowuje dowolnie dużej liczbie (wiadomości) krótką, zwykle posiadającą stały rozmiar, niespecyficzną, quasi-losową wartość, tzw. skrót nieodwracalny.[2]

Przykład

Haszujemy słowo "HACKER"

H → 7 A → 1 C -> 3 K → 10 E → 4 R → 18

Zalożenie: nasz alfabet na 24 litery

hasz(HACKER) = 7 + 24*1 + 3* 24^2 + 10* 24^3 + 4*24^4 + 18 * 24^5

hasz(HACKER) = 144794335

Realne przykłady

  • SHA1(HACKER)
    a969ee411b34c40b80be304d6c19a67c7a214ab1
  • MD5(HACKER)
    173d5042469065d38de3a3465253658a
  • RMD160(HACKER)
    663f235c769a08bcb5c5a18f5c38c401e65df9f2
  • SHA512(HACKER)
    4f8909af81888705b7f9c31f4868702f1aede1294b8bfd1b5d2
    e63f875216da589e1f6050172be3196c01bae5fa53bc289c98
    e53d587eed60bf6ac45ece0f4fe

Podpis

Klucze

Transmisja

Podpis

  • Naprostszy przykład odwróconego
    kryptosystemu
  • Zapewnia uwierzytelnienie nadawcy
  • Te same algorytmy co przy szyfrowaniu
    użyte w innej kolejności + funkcje haszujące

Źródła

Dziękuję