• Nie Znaleziono Wyników

2014-01-23 JarosławPiersa Wstępdosystemówwielozadaniowychlaboratorium21—Szyfrowanie

N/A
N/A
Protected

Academic year: 2021

Share "2014-01-23 JarosławPiersa Wstępdosystemówwielozadaniowychlaboratorium21—Szyfrowanie"

Copied!
17
0
0

Pełen tekst

(1)

Wstęp do systemów wielozadaniowych laboratorium 21 — Szyfrowanie

Jarosław Piersa

Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika

2014-01-23

(2)

Cel zajęć

szyfrowanie danych

wymiana zaszyfrowanych wiadomości

uwierzytelnienie (czy wiadomość faktycznie pochodzi od danego użytkownika)

(3)

Narzędzia

Linux / UNIX: GnuPG http://www.gnupg.org/

Windows: gpg4win http://gpg4win.org/

Manual:

http://www.gnupg.org/gph/en/manual.html

(4)

Tworzenie kluczy

Klucze są przechowywane na katalogu $HOME/.gnupg

Na czas ćwiczeń proszę wykonać jego kopię (jeżeli istnieje)!

l s − l a ˜/.gnupg gpg − −list −keys

(5)

Tworzenie kluczy

Generowanie pary kluczy $HOME/.gnupg

gpg −−gen−key

Listujemy ponownie:

gpg − −list −keys

(6)

Klucze publiczne

Klucz prywatny (sec) służy do odszyfrowywania wiadomości i nikt poza właścicielem nie powinien mieć do niego dostępu Klucz publiczny (pub) służy do szyfrowania wiadomości, które może odszyfrować właściciel klucza prywatnego

Jeżeli chcemy wysłać wiadomość zaszyfrowaną do innego użytkownika X, to najpierw musimy od X otrzymać jego klucz publiczny

(7)

Eksportowanie klucza publicznego

Eksportowanie klucza publicznego

gpg −−armor −−output n a z w a p l i k u . a s c \

−−export I d e n t y f i k a t o r K l u c z a

plik nazwa pliku.asc należy przekazać osobie X która chce wysłać do nas wiadomość

można udostępnić na stronie www lub dopisać do .plan (w trakcie zajęć również wysłać pocztą)

(8)

Importowanie klucza

X uzyskał plik z kluczem publicznym osoby Y:

plik z kluczem Y.asc X importuje klucz:

gpg −−armor −−import p l i k z k l u c z e m Y . a s c

X sprawdza listę kluczy

gpg − −list −keys

(9)

Podpisanie klucza

X po upewnieniu się, że klucz faktycznie pochodzi od Y, X podpisuje zaimportowany klucz

gpg −−edit−key i d e n t y f i k a t o r Y gpg −−edit−key y @ a d r e s . y

X podpisuje klucz poleceniem sign

UWAGA! X podpisuje klucz, tylko gdy ma absolutną pewność, że należy on do Y.

UWAGA! Stwierdzenie czy “klucz od Y” faktycznie pochodzi od Y jest najsłabszym punktem systemu

(10)

Scenariusz A: Szyfrowanie na własne potrzeby

X chce zaszyfrować własne dane, aby chronić je przed niepowołanym dostępem

X szyfruje plik i usuwa oryginał

gpg −−output z a s z y f r o w a n y P l i k \

−−symmetric o r y g i n a l n y P l i k

gdy plik jest potrzebny, X go odszyfrowuje:

gpg −−output o r y g i n a l n y P l i k \

−−decrypt z a s z y f r o w a n y P l i k

(11)

Scenariusz B: Szyfrowanie korespondencji

X chce wysłać zaszyfrowaną wiadomość do Y

X redaguje wiadomość w postaci pliku wiadomoscDoY.txt X szyfruje plik kluczem publicznym Y-a

gpg −−output zaszyfrowanaWiadomoscDoY −−encrypt \

− −recipient Y wiadomoscDoY.txt

X wysyła zaszyfrowany plik jako załącznik

(12)

Scenariusz B: Szyfrowanie korespondencji c.d.

Y otrzymał plik zaszyfrowanaWiadomoscOdX

Y odszyfrowuje wiadomość własnym kluczem prywatnym

gpg −−output wiadomoscOdX \

− −decript zaszyfrowanaWiadomoscOdX

Y czyta wiadomość

(13)

Uwierzytelnienie / autentyzacja

X chce potwierdzić, że to właśnie on jest nadawcą i wiadomość nie została po drodze zmodyfikowana

X redaguje wiadomoscDoY i podpisuje ją własnym kluczem prywatnym

gpg −−output podpisanaWiadomoscDoY \

−−sign wiadomoscDoY

lub

gpg −−output podpisanaWiadomoscDoY \

− −clearsign wiadomoscDoY

X wysyła wiadomość

(14)

Uwierzytelnienie / autentyzacja

Y otrzymał podpisaną wiadomość wiadomoscOdX Y sprawdza podpis kluczem publicznym X

gpg − −verify podpisanaWiadomoscDoY

Y czyta wiadomość

(15)

Uwierzytelnienie / autentyzacja

uży-szkodnik Z przechwycił podpisaną wiadomość wiadomoscOdX i zmodyfikował jej treść i / lub sygnaturę Z-owi wydaje się, że bez ciężkiej aparatury jest w stanie sfałszować wiadomość tak aby Y nie zauważył

Y sprawdza podpis zmodyfikowanej wiadomości

gpg − −verify podpisanaWiadomoscDoY

otrzymuje:

gpg : S i g n a t u r e made pon , 21 s t y 2 0 1 3 , 1 2 : 5 6 : 0 2 CET u s i n g RSA k e y ID A16C0C47 gpg : BAD s i g n a t u r e f r o m ” I k s I k s i n s k i ( X , X) <x@x . domena . p l>”

Y usuwa wiadomość bez czytania i podejmuje środki

zwiększające bezpieczeństwo (zmiana haseł, generowanie nowych

(16)

Zadanie domowe

Wygeneruj parę kluczy, eksportuj klucz publiczny i umieść na własnej stronie www / pliku .plan lub na forum na moodle Z moodle pobierz i zaimportuj klucz publiczny prowadzącego Wyślij do prowadzącego zaszyfrowaną wiadomość / z

zaszyfrowanym załącznikiem

Wyślij do prowadzącego podpisaną wiadomość / z podpisanym załącznikiem

treścią wiadomości może być na plik z rozwiązaniem któregoś z wcześniejszych zadań domowych

(17)

Dalsze stosowanie:

Projekt implementujący bezpieczeństwo w warstwie sieci (ssl) na licencji gnu

http://www.openssl.org/

Dokumentacja do interfejsu tworzenia certyfikatów http://www.openssl.org/docs/apps/CA.pl.html Plugin szyfrujący/autoryzujący do Thunderbirda

https://addons.mozilla.org/pl/thunderbird/addon/enigmail/

Cytaty

Powiązane dokumenty

Napisz skrypt bashowy, który będzie inteligentnym ls / less-em jeżeli zostanie wywołany bez dodatkowych argumentów, to wylistuje bieżący katalog. jeżeli zawiera dodatkowe argumenty

TEST B: a/ anchor; b/ insurance; c/ cleanness; d/rusty; e/ unveil; f/ growl; g/ undersize/d/; h/ salaried TEST C: a/ beyond; b/everlasting; c/ deserve; d/ mastery;

Słownictwo adekwatne do treści i formy pracy, ale mniejsze niż wyżej wymienione bogactwo i swoboda w operowaniu słowem (np. synonimami, wyrazami. bliskoznacznymi,

Za każdą poprawnie zaznaczoną odpowiedź otrzymasz jeden punkt.. Jaki jest wyraz przeciwny

[r]

[r]

[r]

NTNN NTNN