"Algorytmy kryptograficzne w rozproszonym systemie nazw dla rozległych sieci komputerowych"

  Artur Grzymała

Streszczenie pracy

Praca zawiera opis obecnie stosowanego rozproszonego systemu nazw dla rozległych sieci komputerowych (DNS), jego słabości i związanych z nimi niebezpieczeństw utraty danych. W rozdziale drugim przedstawiono opis ataku na DNS, a w następnym propozycję rozszerzeń kryptograficznych, pozwalających zweryfikować spójność i wiarygodność przesyłanych danych, które zaowocowały powstaniem specyfikacji bezpiecznej wersji protokołu - DNSSEC. Rozdział czwarty zawiera opis wykorzystywanych w DNSSEC protokołów kryptograficznych i funkcji haszujących oraz opisy jak z ich wykorzystaniem samodzielnie sprawdzić prawdziwość danych, gdy mamy dostęp do bezpiecznego serwera, ale stosowane przez nas oprogramowanie nie potrafi się z nim komunikować (w dodatku przedstawiono przykładowe implementacje w języku C funkcji, które umożliwią nam przystosowanie starszego oprogramowania do nowych wymogów). W pracy zwrócono również uwagę na możliwość wykorzystania DNSSEC w dydaktyce związaną z wielością i różnorodnością wykorzystywanych w nim rozwiązań informatycznych obejmujących m.in. techniki kryptograficzne, teorię sieci komputerowych, programowanie w architekturze klient-serwer, czy też informacje z dziedziny baz danych.

Spis treści

Wstęp....6
1. Wprowadzenie do DNS....10
1.1. Przyczyny powstania....10
1.2. Opis funkcjonalny....11
2. Przyczyny wprowadzenia rozszerzeń kryptograficznych do DNS....24
2.1. Problemy z bezpieczeństwem DNS....26
2.1.1. Fałszywe informacje....27
2.1.2. Autentykacja i autoryzacja oparta o nazwę komputera....29
2.1.3. Fałszywe informacje towarzyszące....30
3. Zabezpieczanie DNS....34
3.1. Zabezpieczenia kryptograficzne....34
3.2. Łańcuchy kluczy....41
3.3. Bezpieczeństwo transakcji DNS....42
3.4. Tworzenie infrastruktury klucza publicznego w DNSSEC....44
3.5. Istniejące implementacje DNSSEC....46
4. Algorytmy kryptograficzne wykorzystywane w DNSSEC....47
4.1. Algorytmy kryptograficzne....47
4.2. Zastosowania w DNSSEC....50
4.3. Integralność....51
4.3.1. MD5 i SHA- funkcje skrótu wykorzystywane w DNSSEC....54
4.4. Algorytmy asymetrycne (klucza publicznego)....58
4.4.1. Algorytm RSA....59
4.4.2. Algorytm DSA....63
5. Alternatywne sposoby ochrony informacji DNS....65
5.1 Zadania IPSec....66
5.2 Architektura IPSec....67
5.2.1 Protokół AH (Authentication Header)....67
5.2.2 Protokół ESP (Encapsulation Security Payload)....68
5.2.3 Tryby pracy IPSec....68
5.2.3.1 Tryb transportowy (transport mode)....68
5.2.3.2 Tryb tunelowy (tunnel mode)....69
5.2.4 Bezpieczne tunele....69
5.3 Polityka bezpieczeństwa w IPSec....70
5.4 Przydatność stosowania protokołu IPSec do szyfrowania danych DNS...70
6. Uwagi końcowe....71
Dodatek A. Implementacje w języku C algorytmów MD5 i RSA....72
Spis tabel i rycin....81
Bibliografia....82