Programiści bezradni w obliczu wyzwań kryptograficznych

Autorzy niektórych bibliotek kryptograficznych mają świadomość, że powinny one być dużo prostsze w użytkowaniu. Przykładowo, ubiegłoroczny plan działań dla projektu OpenSSL uwzględniał uproszczenie API i poprawę jakości dokumentacji jako cele do osiągnięcia w kolejnych 12 miesiącach.

O ile Carsten Eiram nie kwestionuje przesadnej złożoności bibliotek kryptograficznych, o tyle nie zgadza się z koniecznością przeprowadzania specjalistycznych szkoleń kryptograficznych wśród programistów.

Zobacz również:

Kryptograficzne API bazujące na językach programowania Java i .NET – najczęściej wymienianych w raporcie Veracode – zostały opracowanie specjalnie na potrzeby twórców oprogramowania, dzięki czemu gwarantują im dostęp do wszelkich funkcji kryptograficznych potrzebnych podczas opracowywania aplikacji. Nie ukrywa jednak, że programiści powinni wiedzieć przynajmniej, na jakiej zasadzie funkcjonują biblioteki kryptograficzne.

Wszystko wskazuje na to, że medal ma dwie strony: rozwiązania kryptograficzne powinny być jak najprostsze w użyciu, a programiści muszą jednocześnie zadbać o własną edukację, zamiast oczekiwać, że ktoś wskaże im drogę i poprowadzi za rękę.

Oprócz niedostatecznej wiedzy na temat kryptografii i wysokiego stopnia złożoności niektórych bibliotek kryptograficznych, niektóre błędy wynikają z zapominalstwa programistów – jak się okazuje, część z nich nie pamięta o konieczności aktywowania zabezpieczeń po przetestowaniu produktu.

Jak się okazuje, twórcy oprogramowania często dezaktywują uwierzytelniania protokołu TLS w środowisku testowym, ponieważ na swoich serwerach testowych nie mają zainstalowanego odpowiedniego certyfikatu. Gdy kończy się faza testowania i produkt jest przekazywany do środowiska produkcyjnego, zapominają o ponownym włączeniu tej funkcji.

W ostatnich latach można było zaobserwować duży nacisk na wdrażanie rozwiązań kryptograficznych w aplikacjach przeznaczonych dla konsumentów i programach tworzonych na potrzeby firm. Była to reakcja na doniesienia medialne o masowej inwigilacji w internecie dokonywanej przez agencje wywiadowcze i coraz częstszych naruszeniach danych. Niewiele uwagi poświęcono jednak kwestii właściwego stosowania technik kryptograficznych, chociaż wiadomo, że szyfrowanie ma ogromne znaczenie i jest oczekiwane przez niemal każdego użytkownika.

Jeżeli problem z szyfrowaniem danych w aplikacjach nie zostanie rozwiązany, istnieje prawdopodobieństwo, że nasze poczucie bezpieczeństwa stanie się wręcz absurdalne. Może dojść do tego, że rozwiązania kryptograficzne będą wszędzie, ale nie będą spełniać swojego zadania – dane użytkowników nadal będą łakomym kąskiem dla potencjalnych intruzów.


TOP 200