Wybór algorytmu

Wybór algorytmu
0 votes, 0.00 avg. rating (0% score)

Wybór algorytmu

W doskonałym świecie można by raz ustalić doskonały algorytm szyfrujący i niepotrzebne by były żadne negocjacje. W prawdziwym świecie jest to niemożliwe. Czasem niektóre klienty i serwery muszą się posługiwać względnie słabym szyfrowaniem (albo z powodu niedostatecznej mocy obliczeniowej, albo z powodu restrykcji prawnych lub licencyjnych). W takiej sytuacji lepiej nie sprowadzać wszystkich połączeń do najniższego wspólnego mianownika, więc konieczna staje się obsługa negocjacji.

Jeśli nawet tego rodzaju negocjacje są niepotrzebne, wiele protokołów obsługuje je, aby przyszłe implementacje mogły zmienić używany algorytm. Ludzie często wymyślają nowe algorytmy i odkrywają problemy w starych. Z pewnością nie chciałbyś być zdany na algorytm, który można łatwo złamać, albo na taki, który działa o połowę wolniej od najnowszego i najlepszego. W takim przypadku również nie obejdzie się bez negocjacji.

Trudno prowadzić negocjacje w bezpieczny sposób. Każda strona połączenia powinna móc określić, jakie algorytmy są do przyjęcia. Jeśli jedna strona może przekonać drugą, aby używać słabych zabezpieczeń, wrogi klient lub serwer może wymusić połączenia, które ujawniają przekazywane informacje. Co ważniejsze, żadna osoba trzecia nie może mieć wpływu na negocjacje. Nie chcesz przecież, aby napastnik mógł wybrać algorytm, który jest najłatwiejszy do złamania!

Bezpieczny protokół posługuje się negocjacjami, które: Pozwalają każdej stronie na określenie uporządkowanej listy algorytmów (od najbardziej do najmniej pożądanego).

Pozostałe artykuły o szkole i edukacji: