Czy otwarte znaczy bezpieczne? czyli o bezpieczeństwie wolnego oprogramowania. dr inż. Bartosz Sawicki Politechnika Warszawska
Otwarte jest bezpieczne Specjaliści na świecie zgadzają się: Tak, otwarte jest bezpieczne! Niektórzy twierdzą nawet, że: tylko otwarte oprogramowanie może być bezpieczne.
Jak to możliwe? Jak to? Przecież: Otwarty samochód nie jest bezpieczny. Nie zostawiamy otwartego mieszkania. Oczywiście, ale: Otwarte używamy w innym znaczeniu.
Jak to możliwe? Co oznacza otwarte? Otwarty odnosi się do algorytmu, urządzenia, oprogramowania. Zamknięty jest dostęp do dokumentów i danych. Jak zamknąć dostęp, jeśli zabezpieczenia są wszystkim znane?
Jak to możliwe? Niezbędny jest klucz Klucz jest tajny, schowany przed obcymi. Klucz jest gwarancją bezpieczeństwa. Przykłady kluczy: klucz do kłódki, PIN do karty płatniczej, hasło do komputera, kod do skrytki bankowej.
Zasada Kerckhoffsa Auguste Kerckhoffs (1835 1903) La Cryptographie Militaire (1883) Il faut qu il n exige pas le secret, et qu il puisse sans inconvénient tomber entre les mains de l ennemi System kryptograficzny nie powinien być utajniany, wtedy bowiem jego przejęcie przez wroga nie przysporzy problemów.
Dodatkowe przyczyny Dlaczego otwarte jest lepsze? 1.Zasada ograniczonego zaufania 2.Bezpieczeństwo, a ekonomia 3.Bezpieczeństwo, a błędy programistów 4.Otwarta baza wiedzy
Ograniczone zaufanie Dlaczego ufać twórcom zamkniętego oprogramowania? Chcemy móc sprawdzić samemu! Łatwiej zaufać tysiącom niezależnych, programistów, niż jednej firmie. Pełny audyt bezpieczeństwa jest bardzo drogi.
Bezpieczeństwo, a ekonomia Stworzenie dobrego systemu byłoby bardzo drogie, bo: kryptografia jest trudna, zabezpieczenia mają krytyczne znaczenie. System wymaga ciągłego udoskonalania, czyli koszty stale rosną.
Błędy programistów Większość problemów bezpieczeństwa wynika z błędów programistów. Popularne, otwarte oprogramowanie jest przeglądane przez tysiące specjalistów. Łatwiej znajdywane są błędy i ich poprawa jest bardzo szybka.
Otwarta baza wiedzy Popularne projekty 'open source' to wielka baza wiedzy. Zgromadzeni wogół nich ludzie gwarantują stabilność rozwoju. Im większy i szerzej używany program, tym większe bezpieczeństwo korzystania z niego.
Przykład: Apache Globalna sieć to niebezpieczne miejsce. Serwer stron WWW, który ma 70% rynku, to właśnia program Apache. Przykład otwartego oprogramowania, które zdominowało Internet.
Przykład: OpenSSL Popularnie wykorzystywany w bezpiecznych połączeniach w Internecie Banki internetowe, płatności on-line Zapewnia: szyfrowanie, kontrola spójności danych potwierdzanie tożsamości.
W administracji W Europie: Komisja Europejska (IDABC), Open Source Observatory: wiele raportów m.in. o bezpieczeństwie Niemcy, Biuro Federalne ds. Bezpieczeństwa Informacji: migracja urzędu w latach 2002-2005 Wielka Brytania, Department Handlu i Przemysłu: finansowanie projektu Secure Open Source Desktop (czerwiec 2005)
W administracji W USA: National Security Agency: Security Enhanced Linux 2000-2005 W Polsce: ABW Departament Bezpieczeństwa Teleinformatycznego:brak wytycznych odnośnie otwartego oprogramowania
Podsumowanie Wolne oprogramowanie ma wiele cech, które powodują, że może ono skutecznie pilnować bezpieczeństwa. W tej chwili otwarte programy chronią ważne dane na całym świecie.
Kontakt: dr inż. Bartosz Sawicki sawickib@iem.pw.edu.pl Politechnika Warszawska