Suma kontrolna MD5 i SHA1 wykorzystuje do pobierania

8

Zauważam, że podczas pobierania wielu narzędzi typu open source (Eclipse itp.) Znajdują się linki do sum kontrolnych MD5 i SHA1 i nie wiedziałem, co to jest ani jaki jest ich cel.

Wiem, że są to algorytmy haszujące i rozumiem haszowanie, więc zgaduję tylko, że są one używane do haszowania jakiegoś komponentu celów pobierania i do porównania ich z „oficjalnymi” ciągami haszującymi przechowywanymi po stronie serwera. Być może w ten sposób można ustalić, czy cele zostały zmodyfikowane z ich poprawnej wersji (ze względów bezpieczeństwa i innych).

Czy jestem blisko, czy całkowicie się mylę, a jeśli tak, to czym one są?!?!

Dzięki!

Zac
źródło

Odpowiedzi:

11

Masz prawie całkowitą rację. Jedyną poprawką jest to, że są skrótami całego pliku.

Czasami pliki mogą zostać uszkodzone podczas pobierania bez względu na sposób ich przesłania. Istnieją skróty, aby upewnić się, że plik jest nienaruszony. Jest to szczególnie przydatne dla użytkowników ze złym połączeniem internetowym. Kiedy korzystałem z modemu faksu, często miałem problemy z uszkodzonymi plikami do pobrania.

Niektóre menedżery pobierania (np. GetRight, o ile dobrze pamiętam), mogą nawet automatycznie obliczyć skrót pliku i porównać go ze znaną wartością.

Kolejnym interesującym punktem jest bezpieczeństwo. Potencjalnym problemem związanym z narzędziami typu open source jest to, na ile możesz zaufać dystrybutorowi. Często programy, takie jak Eclipse, są głównym narzędziem wykorzystywanym przez firmy produkujące oprogramowanie, dlatego niezwykle ważne jest dla nich przejście od programisty do użytkownika w stanie nienaruszonym. Ponieważ programy są typu open source, możliwe jest na przykład zrobienie zainfekowanej wersji, która wyglądałaby normalnie, ale wyciek kodu źródłowego na jakiś zdalny serwer lub zainfekowanie programów stworzonych przez oprogramowanie wirusem (myślę, że tak się stało z pewną wersją Delphi) lub coś podobnego. Z tego powodu ważne jest, aby mieć oficjalny poprawny skrót, którego można użyć do sprawdzenia, czy rozpowszechniany plik jest tym, co rzekomo ma być.

Kilka przemyśleń na temat kanałów dystrybucji. Często darmowe oprogramowanie można znaleźć na wielu stronach, a najpopularniejsze strony, takie jak SourceForge, na przykład mają dużą liczbę kopii lustrzanych. Załóżmy, że w Barland jest serwer, który odzwierciedla dużą witrynę dystrybucji oprogramowania. FooSoft korzysta z programu rozpowszechnianego przez witrynę i znajdują się w Republice Baz, która znajduje się tuż obok Barland. Jeśli ktoś chciałby infiltrować FooSoft, mógłby zmodyfikować tylko kopię w lustrze Barland i mieć nadzieję, że oprogramowanie geolokalizacyjne upewni się, że FooSoft otrzyma zmodyfikowane wersje. Ponieważ wersje z innych serwerów lustrzanych są w porządku, istnieje mniejsze prawdopodobieństwo wykrycia złośliwego oprogramowania. Możesz również sprawić, że złośliwe oprogramowanie wykryje adres IP komputera i aktywuje się tylko, jeśli pochodzi z określonego zakresu, a tym samym mniejsze szanse na wykrycie i tak dalej.

AndrejaKo
źródło
1
+1 Jest również używany ze względów bezpieczeństwa, tj. Zainfekowanych plików ...
Przepełnienie stosu jest martwe
@BloodPhilia Rzeczywiście. Właśnie pisałem o niektórych względach bezpieczeństwa.
AndrejaKo
Dzięki! Uznałem, że to musiało być coś takiego, ale nie mogłem znaleźć solidnej odpowiedzi nigdzie indziej.
Zac
3
Dobra odpowiedź;)
Przepełnienie stosu nie działa
1

MD5 i SHA1 to nie tylko sumy kontrolne. Są to kryptograficzne sumy kontrolne. Oznacza to, że teoretycznie dwa różne pliki mogą mieć tę samą sumę kontrolną, ale prawdopodobieństwo tego jest bardzo małe, prawie 0. W konsekwencji używasz odwrotności: różne sumy kontrolne oznaczają, że otrzymujesz inną zawartość z prawdopodobieństwem prawie 1. Tak więc kryptograficzne sumy kontrolne służą do wykrywania zmian w plikach. Mogą to być złośliwe zmiany wprowadzone celowo lub po prostu błędy, które wystąpiły podczas pobierania.

vtest
źródło