gnupg: Strażnik prywatności 11


Gnupg to program umożliwiający szyfrowanie i podpisywanie wiadomości. Dzięki niemu będziemy mogli bezpiecznie komunikować się przez internet, bez obawy, że ktoś przechwyci nasze dane, bądź będzie chciał je wykraść, podszywając się pod znaną nam osobę. Ten przewodnik jest wprowadzeniem do Gnupg. Ma na celu pokazanie, jak stworzyć dla siebie parę kluczy, jak wymieniać się kluczami z innymi, oraz jak wykonywać podstawowe operacje na plikach (szyfrowanie, deszyfrowanie, podpisywanie). Gnupg umożliwia także przechowywanie zaszyfrowanych plików na dysku, uniemożliwiając odczyt innym.

Z programu można korzystać wyłącznie w środowisku graficznym, wogóle nie otwierając okienka konsoli. Jednak pokażę, jak wykonać podstawowe operacje, z linii komend. Dzięki temu lepiej można zrozumieć działanie systemu.

Generowanie klucza

Do korzystania z gpg będziemy potrzebować pary kluczy – prywatnego i publicznego. Klucz publiczny udostępnimy wszystkim, żeby mogli oni nas identyfikować, natomiast klucza prywatnego będziemy strzec, jak oka w głowie. Cały system opiera się właśnie na tajności klucza prywatnego. Zaczynamy od wydania komendy:

$ gpg --gen-key
gpg (GnuPG) 1.4.6; Copyright (C) 2006 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details.
gpg: directory `/home/kwalo/.gnupg' created
gpg: can't open `/gnupg/options.skel': No such file or directory
gpg: keyring `/home/kwalo/.gnupg/secring.gpg' created
gpg: keyring `/home/kwalo/.gnupg/pubring.gpg' created
Please select what kind of key you want:
(1) DSA and Elgamal (default)
(2) DSA (sign only)
(5) RSA (sign only)
Your selection?

Mamy kilka możliwości do wyboru. Na ogół pierwsza jest dobra. Będziemy mogli dzięki temu szyfrować pliki, jak i je podpisywać. Wybieramy zatem 1 🙂
Kolejnym krokiem, podczas generowania klucza jest określenie rozmiaru klucza:

DSA keypair will have 1024 bits.
ELG-E keys may be between 1024 and 4096 bits long.
What keysize do you want? (2048)

Mamy do wyboru 1024, 2048, bądź 4096 bitów. Jeśli wybierzemy więcej, trudniej będzie złamać nasze podpisy/szyfrogramy. Duże klucze jednak sprawiają, że rozmiar szyfrogramów jest większy, a sam proces szyfrowania, bądź podpisywania wiadomości jest dłuższy. Zalecam zatem pozostawienie wartości domyślnej.

Teraz wybieramy okres ważności klucza. Dobrym wyborem jest okres ważności 2-3 lata. Można się zdecydować na to, aby klucz nigdy nie wygasał. Wówczas wybieramy 0.

Please specify how long the key should be valid.
0 = key does not expire
= key expires in n days
w = key expires in n weeks
m = key expires in n months
y = key expires in n years
Key is valid for? (0) 2y
Key expires at Wed 18 Mar 2009 07:11:05 PM CET
Is this correct? (y/N)

Ostatnia rzecz przy generowaniu klucza – podanie danych osobistych. Oczywiście podajemy prawdziwe dane, bo przecież zależy nam na tym, aby w sieci mogli nas zidentyfikować 🙂

You need a user ID to identify your key; the software constructs the user ID
from the Real Name, Comment and Email Address in this form:
"Heinrich Heine (Der Dichter) <heinrichh@duesseldorf.de>"
Real name: Przebojowy Jelonek
Email address: jelonek@ubuntu.pl
Comment: To jest próbny klucz gpg
You selected this USER-ID:
"Przebojowy Jelonek <jelonek@ubuntu.pl>"
Change (N)ame, (C)omment, (E)mail or (O)kay/(Q)uit?

Po zatwierdzeniu wprowadzonych danych, rozpocznie się generowanie klucza. Gpg będzie musiało wygenerować trochę liczb losowych. Korzysta on przy tym z /dev/urandom. Dlatego powinniśmy programowi pomóc w wygenerowaniu dobrych liczb losowych, poprzez ruszanie myszą, wciskanie klawiszy, bądź… słuchanie muzyki.

Po wygenerowaniu klucza powinniśmy się upewnić, że nikt – poza nami nie ma prawa do odczytu naszego katalogu i wszystkich jego plików. Gnupg powinien nadać odpowiednie uprawnienia. Jeśli jednak jest inaczej, to należy samemu nadać odpowiednie prawa, poleceniem:

chmod -R og-rwx ~/.gnupg/

Została nam jeszcze jedna ważna rzecz do zrobienia. Wygenerowanie certyfikatu unieważnienia. Jest to konieczne, gdy ktoś zdobędzie nasz klucz prywatny. Wówczas należy o tym fakcie poinformować wszystkich za pomocą certyfikatu unieważnienia.

$ gpg --output revoke.asc --gen-revoke B98F0778
sec 1024D/B98F0778 2007-03-19 Przebojowy Jelonek <jelonek@ubuntu.pl>
Create a revocation certificate for this key? (y/N) y
Please select the reason for the revocation:
0 = No reason specified
1 = Key has been compromised
2 = Key is superseded
3 = Key is no longer used
Q = Cancel
(Probably you want to select 1 here)
Your decision?

Wybieramy jedynkę (nasz klucz prywatny został przez kogoś złamany), jak nam program radzi. Możemy sobie również wygenerować 3 (więcej tego klucza nie będziemy używać). Oczywiście nazwy plików, które powinny być różne. Po dokonaniu wyboru, gpg poprosi nas o odblokowanie klucza prywatnego, poprzez podanie hasła, które wpisaliśmy podczas generowania.

Teraz możemy skopiować cały katalog ~/.gnupg, oraz certyfikat unieważnienia na jakiś bezpieczny nośnik i pilnować, jak oka w głowie. Na swoim dysku pozostawiamy jedynie katalog .gnupg. Certyfikat usuwamy. Mając utworzoną parę kluczy, możemy zacząć zarządzać naszym pękiem kluczy.

Zarządzanie bazą kluczy

Gnupg na niewiele by się zdało, gdybyśmy nie mogli się wymieniać kluczami z innymi osobami. To dzięki temu możemy się bezpiecznie komunikować przez internet i mieć pewność, że mamy do czynienia z właściwą osobą. W tym dziale zajmiemy się edycją bazy kluczy. Dowiemy się jak dodawać/usuwać klucze innych osób, oraz jak modyfikować swój klucz.
Przede wszystkim musimy się dowiedzieć, jakie klucze mamy w bazie. Wydajemy w tym celu polecenie:

$ gpg --list-keys
/home/kwalo/.gnupg/pubring.gpg
------------------------------
pub 1024D/B98F0778 2007-03-19 [expires: 2007-03-26]
uid Przebojowy Jelonek <jelonek@ubuntu.pl>
sub 2048g/548EAD4C 2007-03-19 [expires: 2007-03-26]

Polecenie to wyświetla wszystkie klucze publiczne, jakie mamy w bazie. Jak widać na powyższym listingu, jest w niej tylko klucz, który utworzyliśmy. Możemy go nieco zmodyfikować. Na przykład dodamy kolejny adres e-mail do klucza. Nasz jelonek może być rozpoznawany pod dwoma adresami. Prywatnym i służbowym na przykład. Do edycji klucza służy komenda:

$ gpg --edit-key jelonek@ubuntu.pl
gpg (GnuPG) 1.4.6; Copyright (C) 2006 Free Software Foundation, Inc.
This program comes with ABSOLUTELY NO WARRANTY.
This is free software, and you are welcome to redistribute it
under certain conditions. See the file COPYING for details.
Secret key is available.
pub 1024D/B98F0778 created: 2007-03-19 expires: 2007-03-26 usage: SC
trust: ultimate validity: ultimate
sub 2048g/548EAD4C created: 2007-03-19 expires: 2007-03-26 usage: E
[ultimate] (1). Przebojowy Jelonek <jelonek@ubuntu.pl>
Command>

Edycja klucza może składać się z wielu rzeczy, dlatego po wykonaniu powyższej komendy uruchamiana jest specjalna powłoka programu gpg, w której musimy sprecyzować, jaką modyfikację chcemy nanieść. Polecenie help wyświetli wszystkie możliwe opcje, jakie możemy wykonać podczas edycji klucza. Za dodanie adresu e-mail odpowiada opcja adduid. Wpisujemy ją i wciskamy enter. Po wprowadzeniu zmian, zapisujemy je poleceniem save.

Aby udostępnić nasz klucz publiczny innym, należy go w jakiś sposób przekazać. Jedną z możliwości jest wyeksportowanie go do pliku, który inni będą mogli odczytać. Jeśli mamy konto na maszynie, z której korzysta wiele osób, to będą one mogły pobrać nasz klucz z pliku ~/.plan, który jest wyświetlany po wykonaniu polecenia finger. Eksportujemy nasz klucz do tego pliku następującym poleceniem:

$ gpg --armor --output ~/.plan --export jelonek@ubuntu.pl

Teraz po wydaniu komendy finger nazwa_użytkownika każdy będzie mógł zobaczyć nasz klucz publiczny i dodać go do swojej bazy kluczy. Udostępniony w ten sposób klucz będzie widoczny tylko dla osób, które mają dostęp do maszyny, na której mamy konto, ale oczywiście klucz można wyeksportować do innego pliku i umieścić np. na swojej stronie domowej.
Wyeksportowane klucze, można zaimportować, poleceniem:

$ gpg --import nazwa-pliku.asc
Uwaga!

Samo zaimportowanie klucza to jeszcze nie wszystko. Należy zweryfikować, czy klucz faktycznie należy do osoby, z którą chcemy prowadzić bezpieczną korespondencję, czy ktoś się pod nią nie podszywa. Należy w tym celu uruchomić gpg ze znaną nam opcją –edit-key. Jeśli np. zaimportowaliśmy klucz jelonek@ubuntu.pl, to wydajemy następujące polecenie:

gpg --edit-key jelonek@ubuntu.pl

Pojawi nam się powłoka programu. Poleceniem fpr sprawdzamy, jaki jest odcisk klucza. Uzgadniamy z właścicielem klucza – najlepiej telefonicznie, czy odcisk się zgadza. Dopóki nie uzgodnimy, że jesteśmy posiadaczami właściwego klucza, nie wierzymy mailom, ani komunikatorom! Trzeba przy tym zachować szczególną ostrożność! Weryfikowanie klucza jest jedną z najsłabszych części tego systemu. Jeśli klucz się zgadza, to podpisujemy go poleceniem powłoki programu gpg – sign. Zmiany zapisujemy poprzez save. Po takim upewnieniu się, że zaimportowaliśmy właściwy klucz, możemy bezpiecznie komunikować się z jego właścicielem.

Alternatywną metodą dzielenia się kluczami i dużo bardziej wygodną, jest przechowywanie swojego klucza publicznego na serwerze, z którego wszyscy użytkownicy będą mogli nasz klucz pobrać. Do wysyłania klucza służy opcja –send-key, po której podajemy identyfikator klucza. Identyfikatorem może być cokolwiek. Adres e-mail, imię i nazwisko, do którego klucz jest przyporządkowany, bądź skrót podpisu widoczny po wydaniu polecenia gpg –list-keys. Dodatkowo, jeśli nie mamy zapisanego domyślnego klucza w pliku ~/.gnupg/gpg.conf, to musimy podać nazwę serwera po opcji –keyserver. Serwery kluczy co jakiś czas wymieniają się kluczami, dzięki temu nie musimy się martwić, z którego serwera korzystamy. Z reguły będziemy wiedzieć o kluczach, które zostały wysłane na inne serwery. Całe polecenie wygląda tak:

$ gpg --keyserver subkeys.pgp.net --send-key id

Jeśli korzystamy z proxy, to musimy jeszcze dodać opcję –keyserver-option honor-http-proxy.

Dodawanie kluczy z serwera publicznego jest bardzo łatwe. Najpierw oczywiście klucz należy znaleźć. Służy do tego opcja –search-keys. Spróbujmy zatem wyszukać klucza Linusa Torvaldsa.

$ gpg --keyserver subkeys.pgp.net --search-keys Linus
gpg: searching for "Linus" from hkp server subkeys.pgp.net
(1) Linus Kohl <linus_kohl@web.de> 1024 bit DSA key 35C69999, created: 2007-02-25
...
Keys 1-10 of 247 for "Linus". Enter number(s), N)ext, or Q)uit >

Część kodu wyciąłem. Widać jednak, że dostajemy 247 wyników. Dodanie interesującego nas klucza odbywa się poprzez wpisanie odpowiedniego numerka i wciśnięciu Enter. Klawisz n służy od przechodzenia na następną stronę. Q – to oczywiście wyjście. Zapytanie można sprecyzować i wpisać w cudzysłowach imię i nazwisko, albo adres e-mail poszukiwanej przez nas osoby. Wówczas dostaniemy tylko klika, a nie kilkanaście rezultatów. Klucze pobrane z serwera, również wymagają sprawdzenia przez nas. Sprawdza się je dokładnie tak samo, jak w przypadku importu z pliku

Szyfrowanie

Skoro wiemy już, jak wymieniać się kluczami w gpg, to czas najwyższy te klucze wykorzystać! Możemy z nimi robić kilka rzeczy. Przede wszystkim możliwe jest szyfrowanie pojedynczych plików. Do szyfrowania służy opcja –encrypt. Należy oczywiście określić adresata, który będzie mógł odczytać wiadomość. Robimy to w następujący sposób:

$ gpg --output doc.gpg --recipient ktoś@gdzieś --encrypt docPonieważ szyfrowanie odbywa się przy użyciu klucza publicznego, jedyną osobą, która będzie mogła odczytać zaszyfrowaną wiadomość jest jej odbiorca. Nawet my nie będziemy mogli jej „otworzyć” po zaszyfrowaniu. Chyba, że sami jesteśmy odbiorcami wiadomości 🙂

Wiadomości mogą być jednocześnie szyfrowane i przez nas podpisywane. Dzięki temu odbiorca będzie miał pewność, że wiadomość pochodzi od nas. Jeśli wiadomości nie podpiszemy, to będzie tylko wiedział, że wiadomość jest do niego, ale nie będzie miał pewności, kto jest nadawcą. Aby wysłać zaszyfrowaną wiadomość, wraz z podpisem, wydajemy następujące polecenie:

$ gpg --output doc.gpg --recipient ktoś@gdzieś --sign --encrypt doc

Ciekawą cechą szyfrowania z kluczem publicznym jest to, że możemy stworzyć wiadomość zaszyfrowaną do wielu odbiorców, a każdy z nich po odszyfrowaniu jej tylko swoim kluczem, otrzyma oryginalny tekst wiadomości. Po prostu wystarczy podać kilku odbiorców, używając kilkakrotnie opcji –recipient, bądź w skrócie -r.

$ gpg --output doc.gpg -r ktoś@gdzieś -r ktoś.inny@gdzie.indziej --encrypt doc

Nie wierzycie, że to działa? Spróbujcie zaszyfrować wiadomość do siebie i do kogoś jeszcze. Po odszyfrowaniu jej jednym kluczem, zobaczycie oryginalny tekst wiadomości.

Innym sposobem szyfrowania jest szyfrowanie symetryczne. Różni się ono od szyfrowania z kluczem publicznym tym, że zarówno odbiorca, jak i nadawca muszą posiadać ten sam klucz. Zatem nie jest to zalecana metoda przy szyfrowaniu wiadomości e-mail. Nadaje się za to doskonale do szyfrowania pojedynczych plików na dysku, jeśli chcemy ukryć ich treść przed „podglądaczami”. Do szyfrowania kluczem symetrycznym służy opcja –symmetric. Po wywołaniu gpg, program poprosi nas o podanie hasła, z którego będzie wygenerowany klucz. Hasło to należy podać przy odszyfrowywaniu wiadomości.

$ gpg --output doc.gpg --symmetric doc

Gnupg domyślnie używa do szyfrowania symetrycznego algorytmu CAST5. Można to zachowanie zmienić, poprzez podanie nazwy algorytmu po opcji –cipher-algo. W przykładzie użyliśmy algorytmu AES (Rijndael), który jest obecnie jednym z najlepszych symetrycznych algorymów szyfrujących, zalecany przez organizację NIST

$ gpg --cipher-algo aes --output gpg.gpg --symmetric gpg.txt

Aby zobaczyć, jakie mamy możliwości, należy wydać polecenie:$ gpg --version

Poza oczywistą informacją o wersji programu, zobaczymy też wszystkie obsługiwane przez gpg algorytmy. Zarówno symetryczne, jak i niesymetryczne, oraz funkcje skrótów.

Podpisywanie wiadomości

Często podczas komunikacji przez internet chcielibyśmy, żeby nasze informacje były tajne. Wówczas używamy szyfrowania. Często jednak ważniejszą rzeczą jest po prostu posiadanie pewności, że osoba, z którą się komunikujemy jest naprawdę tym, za kogo się podaje. Na przykład system zarządzania pakietami apt używa kluczy gpg do podpisywania paczek. Strach pomyśleć, co by się działo, gdyby tego zabezpieczenia nie było. Ktoś mógłby się podszyć pod repozytorium i dzięki temu z łatwością przejąć kontrolę nad naszym systemem. Na szczęście dzięki wykorzystaniu kluczy publicznych taki scenariusz jest trudny do zrealizowania.
Podpisywanie wiadomości jest mniej-więcej operacją odwrotną do szyfrowania w kryptografii z wykorzystaniem klucza publicznego. W przypadku szyfrowania, klucza publicznego używamy do stworzenia wiadomości-kryptogramu. Wówczas mamy pewność, że tylko właściciel odpowiedniego klucza prywatnego będzie w stanie odczytać wiadomość, bo tylko on jest jego właścicielem. Rola kluczy się zamienia, jeśli podpisujemy wiadomość. Klucza prywatnego używamy do wygenerowania wiadomości-podpisu, a inne osoby, posiadające nasz klucz publiczny będą w stanie zweryfikować tak wygenerowany podpis. Wtedy mają pewność, że autorem podpisu nie mógł być kto inny, jak właściciel odpowiedniego klucza prywatnego. Dlatego tak ważne jest, aby strzec swojego klucza prywatnego. Na tym opiera się cały system gpg.

Podpisy w gpg możemy tworzyć na kilka sposobów.

gpg --sign doc

Tworzy zwykły podpis. Najczęściej jest on używany w parze z opcją –encrpt, bądź –symmetric, bądź z obydwoma. Jeśli chcemy uzyskać podpis w formie tekstowej, to wykonujemy polecenie:

$ gpg --clearsign doc

Stworzony wówczas jest plik doc.asc, który może mieć postać:

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
To jest wiadomość
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
iD8DBQFGDEJRZQVXtttDepARAiQVAJsGy7uCrSBaqmLZZcTbyXvdVwYEMgCeM1Jk
kVOD0bj7nNcIU2BwjgNglpw=
=wuhC
-----END PGP SIGNATURE-----

Mamy też możliwość zachowania podpisu w osobnym pliku. Wówczas nie będzie on ingerował w treść wiadomośc, co może być przydatne przy podpisywaniu plików multimedialnych, bądź paczek .deb. Aby podpis był zachowany w innym pliku, wydajemy polecenie:

$ gpg --detach-sign doc

W rezultacie zostanie utworzony plik doc.sig, który będzie zawierał wyłącznie podpis wiadomości, bez treści.

Jeśli otrzymamy podpisaną wiadomość, warto byłoby ją zweryfikować. Służy do tego opcja –verify. Należy jednak pamiętać, że jeśli otrzymaliśmy podpis w formacie tekstowym, to należy podać jeden argument – plik .asc z podpisem. W przypadku, gdy podpis znajduje się w innym pliku, po opcji podajemy dwa argumenty: plik z podpisem, oraz orzymaną wiadomość. Zatem wywołanie programu dla podpisu w formacie tekstowym wygląda tak:

$ gpg --verify doc.asc
gpg: Signature made pią 30 mar 2007 14:11:58 CEST using DSA key ID DB437A90
gpg: Good signature from "Przebojowy Jelonek<jelonek@ubuntu.pl>"

Gnupg wyświetla komunikat, czy podpis został poprawnie zweryfikowany.
Weryfikacja podpisu znajdującego się w osobnym pliku:

$ gpg --verify doc.sig doc

Gnupg w poczcie

Większość użytkowników będzie używała gpg wyłącznie do podpisywania poczty. Dawniej, kiedy wszystkie programy pocztowe były czysto tekstowe wygodnie było otrzymywać podpisaną wiadomość e-mail w formie zwykłego tekstu. Tak, jak to ma miejsce po wywołaniu gpg z opcją –clearsign. Było to dość wygodne, gdyż podpis można było zobaczyć „gołym okiem”. Wiadomo było, że wiadomość jest podpisana. Kto chciał, to podpis sprawdzał, a kto nie chciał, po prostu ignorował podpis i czytał treść wiadomości. Czasy się jednak zmieniły. Niektóre programy mają możliwość autoformatowania tekstu, oraz obsługi html. To sprawia, że nie współpracują one dobrze z programem gnupg (np. Outlook). Taki sposób podpisywania wiadomości jest również uciążliwy, jeśli mamy do czynienia z formatem innym niż tekstowy. W przypadku np. obrazków, bądź innych multimediów nie byłoby możliwe wyciągnięcie zawartości plików bez wcześniejszego zweryfikowania podpisu. Dlatego opracowano inny sposób na weryfikację popisu. Treść maila jest wysyłana normalnie, natomiast podpis jest wysyłany osobno, jako załącznik MIME. Taka metoda podpisywania jest obecnie zalecana w użyciu w programach pocztowych. Dzięki temu nie trzeba wykonywać dodatkowych operacji w celu wydobycia treści wiadomości.

Praktycznie wszystkie poważniejsze programy pocztowe mają możliwość współpracy z programem gnupg i nie sposób opisywać tu konfiguracje każdego z nich. W zasadzie ogranicza się ona do podania identyfikatora klucza prywatnego (używanego w podpisie) i określenia, czy wiadomości mają być domyślnie podpisywane, szyfrowane, czy jedno i drugie. Zalecam ustawienie programu pocztowego, aby podpisywał on domyślnie wszystkie nasze wiadomości, a podpis zapisywał w załączniku MIME. Wówczas osoby niekorzystające z gpg nie będą miały do czynienia z dziwnymi znakami doklejanymi do wiadomości e-mail. Dodatkowo niektóre nowsze programy pocztowe nie obsługują już przestarzałej formy podpisu cyfrowego. Jest to kolejny powód, aby zapisywać podpis w załączniku.

Szyfrowanie w GNOME i KDE

Oba te środowiska zawierają wygodne nakładki na Gnupg. W GNOME, mamy aplikację o nazwie Seahorse, a w KDE KGpg. Obydwa programy są doskonale dopasowane do swoich środowisk. Umożliwiają zarządzanie kluczami prywatnymi i publicznymi. Praktycznie wszystkie operacje, jakie wykonywaliśmy w poprzedniej części tego artykułu moża spokojnie „wyklikać” w obu środowiskach.

kgpg.jpg
Przeglądanie kluczy w programie KGpg. Kliknij, aby powiększyć

Oba programy współpracują z menadżerami plików. Operacje szyfrowania, podpisywania plików można wykonać poprzez kliknięcie prawym przyciskiem myszy na plik, który chcemy zaszyfować. Poniżej pokazany jest przykład, jak to wygląda w GNOME.

Szyfrowanie w Nautilus
Szyfrowanie w Nautilus. Kliknij, aby powiększyć

Programy te służą w zasadzie do tego samego, jednak każdy ma pewne funkcje, których brak w innym programie. KGpg można uruchomić w tzw. trybie edycji, gdzie możemy wkleić dowolny tekst, a następnie go podpisać, zweryfikować, odszyfrować, zaszyfrować. Dostępna jest także ikona w tacce systemowej (tray), która umożliwia wykonywanie tych czynności, jeśli przeciągniemy na nią jakiś plik.
„Atrakcją” dostępną w Seahorse jest możliwość zachowywanie haseł do kluczy prywatnych w pamięci RAM. Dzięki temu nie musimy ciągle wpisywać hasła odblokowującego nasz klucz. Niestety niektóre programy (spoza GNOME) zdają się lekceważyć tą funkcję i mimo wszystko proszą o podanie hasła. Seahorse umożliwia także zarządzanie kluczami ssh.

Podsumowanie

Gnupg umożliwia bezpieczną komunikację przez sieć z innymi. Jest to narzędzie niezbędne, kiedy chcemy mieć pewność, że osoba znajdująca się „po drugiej stronie kabla” jest tym, za kogo się podaje. Bez gpg nasze Ubuntu nie byłoby tak bezpiecznym i stabilnym systemem. Dzięki podpisom elektronicznym mamy pewność, że pobieramy pakiety z dobrego źródła. Warto się zainteresować tym programem, jeśli zależy Wam na bezpieczeństwie i poufności danych, które wysyłacie.

Niniejszy tekst powstał na bazie poradnika Gnupg w Gentoo. Podziękowania dla MrRobby za pomoc w przygotowaniu części o KGpg, oraz za udostępnienie zrzutów ekranu.


Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

11 komentarzy do “gnupg: Strażnik prywatności

  • kwalo Autor wpisu

    @avatus, zachęcam – zwłaszcza do używania w poczcie. Można też w Jabberze, o czym zapomniałem wspomnieć. Wystarczy tylko dobrze ustawić klienta i wymienić się kluczami (publicznymi) z rozmówcą.

  • grzglo.jogger.pl

    Kiedy postępuję zgodnie z instrukcją na etapie generowania klucza wyskakuje mi następujący błąd:

    [code]gpg: brak zapisywalnego zbioru kluczy publicznych: eof
    Generacja klucza nie powiodła się: eof[/code]

    Jak to poprawić?

  • rafi

    Bardzo dobry artykuł. Ze swej strony proponowałbym coś dodać o ustanowieniu kolejności preferowanych algorytmów.
    Algorytm MD5 najlepiej w ogóle pominąć bo jest uważany za niepewny a SHA1 ustawić na końcu preferencji (całkowicie wywalić się go nie da bo jest wymagany przez standard OpenPGP).

    Preferencje ustawiamy na przykład tak (algorytmy muszą być podane symbolicznie):
    setpref S9 S8 S7 S3 S10 S4 S2 H10 H9 H8 H3 Z2 Z3 Z1

    Aktualną preferencję algorytmów możemy sobie obejrzeć imiennie poleceniem:
    showpref

    a symbolicznie poleceniem:
    pref

  • MRT

    Pod konsolą wszytsko działa ale Seahorse nie widzi wygenerowanych kluczy , to samo Enigmail w Thunderbirdzie, Psi itd. nie wiem jak to obejść ….

  • hojnas

    Pytanie do fachowców: jak za pomocą command line w gpg podpisać jakiś plik za pomoca dwóch kluczy prv, przez dwie różne osoby w różnym czasie. Podpisując drugim kluczem nadpisuję pierwszy podpis, czego chcę uniknąć.
    Pozdrawiam,
    hojnas