Historia PGP

Poniżej
opisane są tylko ważniejsze wersje PGP oraz zmiany, które miały
duże znaczenie dla końcowego użytkownika. Pełną historię PGP można
znaleźć na stronie, której autorem jest Adam
Back
.

Pierwsze wersje

Pierwszą powszechnie znaną i stosowaną na świecie wersją PGP było PGP
2.3a, wypuszczona w 1993 roku. W wersji tej, podobnie jak we
wszystkich następnych aż do PGP 5.0, do zarządzania kluczami używany
był algorytm RSA, jako szyfr symetryczny - IDEA, a jako
funkcja jednokierunkowa - MD5. Wersja 2.3a potrafiła obsługiwać
klucze RSA o wielkości 1024 bitów.

Problemy patentowe

Opublikowanie wersji 2.3a oraz jej szerokie rozpowszechnienie spowodowało,
że firma RSA DSI Inc., będąca
właścicielem patentu na algorytm RSA, wytoczyła Zimmermanowi proces
o naruszenie praw autorskich. Proces ten zakończył się ostatecznie
ugodą i był bezpośrednią przyczyną wypuszczenia wersji 2.5,
w której implementacja RSA napisana przez Zimmermana zastąpiona
została funkcjonalnie identyczną lecz wolniejszą implementacją RSAREF,
mającą jednak błogosławieństwo RSA DSI. Dodatkowo, by zachęcić użytkowników
PGP 2.3a do zainstalowania nowszej - legalnej - wersji, PGP 2.5 zawierało
szereg ograniczeń mających zmniejszyć kompatybilność ze starszymi
wersjami.

Dodatkowo, licencja użytkowania RSAREF zezwalała na bezpłatne korzystanie
z niej wyłącznie do celów niekomercyjych, stworzona została więc
równolegle rozwijana wersja 2.4, zwana ViaCrypt PGP,
od nazwy firmy która ją sprzedawała. Nie było to jednak
jedyną nowością od PGP 2.3a, wersja 2.5 posiadała wiele nowych funkcji,
poprawione błędy oraz usprawnienia. Między innymi, pozwalała na generowanie
kluczy RSA o długości 2048 bitów.

Wkrótce potem ukazały się kolejno wersje od 2.6 do 2.6.3,
w których poprawiono liczne błędy oraz uwzględniono sugestie użytkowników.
Od wersji 2.6 zmieniła się także licencja użytkowania PGP - program pod
swoje skrzydła wziął Massachusetts
Institute of Technology
, zapewniając mu dystrybucję oraz ochronę
prawną.

Wersja międzynarodowa

Wersja 2.6 była także przełomowa pod innym względem -
Norweg Staale Schumacher, rozpoczął równoległe rozwijanie wersji
międzynarodowej PGP, pozbawionej ograniczeń nakładanych na amerykańską
wersję PGP 2.5 o których wspomniano powyżej. Wersja międzynarodowa
korzystała - ponownie - z szybszej wersji algorytmu RSA oraz była
kompatybilna z wersjami PGP 2.2 oraz 2.3.

W pierwszej połowie 1995 roku autor tej strony przetłumaczył i udostępnił
publicznie tłumaczenie pierwszej części dokumentacji oraz komunikatów
PGP 2.6. Sądząc z odzewu, było ono potrzebne i zdobyło sobie pewną
popularność.

PGP.com

Od czasu wypuszczenia PGP 2.6.3, które stało się praktycznym
standardem światowym jeśli chodzi o darmowe oprogramowanie szyfrujące,
Philip Zimmerman założył firmę PGP
Inc.
. Jej sztandarowym produktem była oczywiście nowa wersja
PGP 5.0. Wprowadzono w niej nowy algorytm kluczy publicznych
DSS/Diffie-Hellman, nowe szyfry - 3DES i CAST, oraz
algorytmy generowania funkcji skrótu - SHA-1 i RIPEMD-160.
Algorytm Diffie-Hellman (patent wygasł w 1997 roku) został dodany ze
względu na ograniczenia patentowe algorytmu RSA, będące przyczyną kłopotów
z PGP 2.3. SHA-1 miało w zamierzeniu zastąpić dotychczas używane MD5,
które posiada pewne słabości kryptograficzne.

Ze względu na przepisy eksportowe USA (ITAR), zaliczające zaawansowane
algorytmy szyfrujące do technik militarnych nie jest możliwe legalne
wyeksportowanie kodu źródłowego PGP ze Stanów Zjednoczonych. Co ciekawe,
przepisy te ograniczają wyłącznie eksport elektronicznej formy kodu
źródłowego. Eksport źródeł wydrukowanych na papierze nie podlega pod
ITAR. Logicznym następstwem takiej niekonsekwencji było wypuszczenie
przez PGP Inc. pełnego kodu źródłowego PGP w postaci 14-to tomej
księgi, która została następnie legalnie wywieziona poza granice USA
i zeskanowana przez Staale Schumachera, dotychczasowego koordynatora
wersji międzynarodowej PGP. Zajęło to w sumie około 1000 godzin, przy
współpracy ponad 70-ciu osób z całej Europy. Taka kłopotliwa procedura
została przeprowadzona po to, by uniknąć wszelkich zarzutów jakie wysuwano
wobec Philipa Zimmermana odnośnie wersji PGP 2.6.3i, która została
napisana w USA i ,,jakimś sposobem'' znalazła się w Europie.

NAI PGP

Warto zaznaczyć, że pod koniec roku 1998 PGP Inc. zostało kupione przez
firmę Network Associates Inc.,
co jednak nie wpłynęło na zmianę polityki wobec wersji freeware.
Od tej pory PGP poszerzyło znacznie swoje możliwości. Z programu szyfrującego
stosowanego głównie do poczty elektronicznej PGP ewoluowało w kompleksowy
produkt, umożliwiający tworzenie szyfrowanych wirtualnych sieci
prywatnych (PGPnet, implementacja IPSec), obsługę systemu X.509 oraz
szyfrowanie dysków logicznych (PGPdisk).

W sierpniu 1998 roku światło dzienne ujrzał dokument RFC 1991 podpisany przez Zimmermana oraz dwie inne osoby związane blisko z
rozwojem PGP. Nosił on tytuł ,,PGP Message Exchange Formats'' i
zawierał formalną specyfikację formatu używanego przez PGP w wersji
2. W trzy miesiące później inni ludzie, związani z NAI, opublikowali RFC 2440 zawierające opis nowego standardu nazwanego ,,OpenPGP'', kompatybilnego
z PGP 5.0 oraz umożliwiającego kompatybilność ze starszymi wersjami PGP.

PGP 5.0 pojawiło się w dwóch wersjach - komercyjnej (PGP for
Privacy
) oraz darmowej (PGP Freeware). Był to znak, że
polityka firmy wobec programu uległa - jeśli nie formalnej to przynajmniej
praktycznej - zmianie.

Wersja PGP 2.6.3, ciesząca się do dziś największą popularnością na
całym świecie, była dostępna pod 7 systemów operacyjnych dla komputerów
osobistych (Amiga, Atari, BeOS, Macintosh, MSDOS, OS/2 Windows) oraz
kilkadziesiąt systemów unixowych. Pierwsza wersja PGP 5.0 była dostępna
pod Windows, Macintosha oraz systemy unixowe.

Wszystkie kolejne wersje PGP były dostępne wyłącznie dla Windows i
Macintosha. Są one kompatybilne z wersją 5.0, jednak moje osobiste
wrażenia odnośnie tej ostatniej nie są zbyt pozytywne. Wersja 5.0,
dostępna pod systemy unixowe była pełna błędów i używanie jej było
dość uciążliwe. Nadzieje na nową, lepszą wersję pozbawioną tych
niedogodności zostały rozwiane wraz z wersją PGP 5.5, która
nie została już przeniesiona na unixy i większość użytkowników
była przekonana że NAI nie zamierza wypuszczać wersji na tę platformę.

Tymczasem w wakacje 1999 ogłoszono wersję PGP 6.5.1 dla Linuxa.
Co ciekawe, w przeciwieństwie do PGP 5.0 w nowej wersji autorzy powrócili
do koncepcji pojedynczego, monolitycznego programu pgp, ze składnią
linii poleceń podobną jak w PGP 2.6.3i. Nie testowałem jej jednak dokładnie,
więc nie wiem nic więcej na temat funkcjonalności tej wersji.

W latach 1998-2001 PGP produkowane przez NAI stało się zdecydowanie produktem
nastawionym na klientów biznesowych i spełniających szereg innych funkcji
poza szyfrowaniem poczty. Kolejne wersje PGP zawierają oprogramowanie
do tworzenia VPN (protokół IPSEC), zabezpieczania systemu Windows itd.
W 4-tym kwartale 2000 dostępne było już PGP 7.0, kontynuujące tę linię
rozwoju.

OpenPGP.org

W maju 2001 Phil Zimmerman opuścił NAI, tłumacząc swoją decyzję
różnicami w wizji przyszłości PGP. Równocześnie z podjęciem pracy
w fimie Hush Communications, oferującej bezpieczne konta pocztowe,
stworzył OpenPGP Alliance,
czyli niedochodowe stowarzyszenie firm i innych grup, rozwijających
oprogramowanie kompatybilne z PGP.

Koniec PGP komercyjnego?

W marcu 2002 roku NAI
ogłosiło koniec
komercyjnego wsparcia dla projektu PGP Desktop, czyli właściwego
PGP jako programu szyfrującego.

W sierpniu 2002 linia produktów PGP została ostatecznie sprzedana przez NAI nowo powstałej firmie PGP Corporation, która zapowiedziała
kontynuację rozwoju popularnego programu. Firma ogłosiła, że w tej
chwili pracuje nad nową wersją PGP 8.0, która między innymi będzie
posiadała pełne wsparcie dla Windows XP i MacOS X (chodzi głównie o
PGPdisk). Zasady dystrybucji nowego PGP mają być bliższe dawnym wersjom
niż korporacyjnej linii NAI - program ma być darmowy do zastosowań
niekomercyjnych i dostarczany w całości z kodem źródłowym. Oświadczenie
PGP Corporation ostatecznie zakończyło wątpliwości, jakie powstały wokół
programu po ogłoszeniu zakończenia jego rozwoju przez NAI.

Alternatywy

Od grudnia 1997 roku rozwijany jest program nazywany roboczo
G10, i mający stanowić powszechnie dostępną alternatywę dla
skomercjalizowanego PGP. W międzyczasie nazwa G10 została zmieniona na GNU Privacy Guard, a sam program został
oficjalnie objęty ochroną prawną przez Free
Software Foundation
. Napisany zgodnie ze wysokimi standardami
tworzenia oprogramowania nakładanymi przez GNU, Privacy Guard wydaje się
być w tej chwili najlepszą alternatywą dla PGP dla użytkowników systemów
unixowych. Istnieją również wersje pod Windows i pluginy dla programów
pocztowych, ale autor tej strony osobiście ich nie używał.

Linki

http://www.gnupg.org/
Strona projektu GNU Privacy Guard.
http://www.pgpi.com/
PGP International, główna składnica międzynarodowych wersji PGP.
"Podręcznik PGP 2.6",
Wersja HTML polskiego tłumaczenia ,,Podręcznika PGP 2.6'', przetłumaczonego około 1994 roku przez Pawła Krawczyka z pomocą kilku osób, i przerobionego na HTML przez Krzysztof Marka Matyskiela i Grzegorza Wójcika (oryginalny link na PW).