Główna » jak » Co to jest suma kontrolna (i dlaczego powinno Cię to obchodzić)?

    Co to jest suma kontrolna (i dlaczego powinno Cię to obchodzić)?

    Suma kontrolna to ciąg cyfr i liter używanych do sprawdzania danych pod kątem błędów. Jeśli znasz sumę kontrolną oryginalnego pliku, możesz użyć narzędzia sumy kontrolnej, aby potwierdzić, że twoja kopia jest identyczna.

    Wyjaśnienie sum kontrolnych

    Aby utworzyć sumę kontrolną, uruchamia się program, który umieszcza ten plik za pomocą algorytmu. Do typowych algorytmów stosowanych w tym celu należą MD5, SHA-1, SHA-256 i SHA-512.

    Algorytm używa kryptograficznej funkcji mieszającej, która pobiera dane wejściowe i tworzy ciąg znaków (ciąg cyfr i liter) o stałej długości. Plik wejściowy może być małym plikiem 1 MB lub ogromnym plikiem 4 GB, ale tak czy siak, otrzymasz sumę kontrolną o tej samej długości. Sumy kontrolne mogą być również nazywane "hashe".

    Małe zmiany w pliku dają bardzo różne sumy kontrolne. Na przykład, stworzyliśmy dwa różne pliki tekstowe, które są prawie takie same, ale jeden ma wykrzyknik, w którym drugi ma kropkę. Po uruchomieniu na nich wbudowanego narzędzia Windows 10 do sprawdzania poprawności, zobaczyliśmy bardzo różne sumy kontrolne. Różnica pojedynczego znaku w pliku bazowym daje bardzo różną sumę kontrolną.

    Gdy sumy kontrolne są przydatne

    Możesz używać sum kontrolnych do sprawdzania plików i innych danych pod kątem błędów, które występują podczas transmisji lub przechowywania. Na przykład plik mógł nie zostać poprawnie pobrany z powodu problemów sieciowych lub problemy z dyskiem twardym mogły spowodować uszkodzenie pliku na dysku.

    Jeśli znasz sumę kontrolną oryginalnego pliku, możesz uruchomić na nim sumę kontrolną lub narzędzie mieszania. Jeśli wynikowa suma kontrolna jest zgodna, wiesz, że plik, który masz, jest identyczny.

    Komputery używają technik w stylu sum kontrolnych do sprawdzania danych pod kątem problemów w tle, ale możesz też zrobić to samemu. Na przykład dystrybucje systemu Linux często udostępniają sumy kontrolne, dzięki czemu można poprawnie sprawdzić poprawność ISO systemu Linux przed wypaleniem go na dysku lub umieszczeniem na dysku USB. Można również użyć sum kontrolnych do sprawdzenia integralności dowolnego innego typu pliku, od aplikacji po dokumenty i nośniki. Musisz tylko znać sumę kontrolną oryginalnego pliku.

    Jaka jest różnica między sumami MD5, SHA-1 i SHA-256?

    Sumy kontrolne są przydatnym sposobem zapewnienia, że ​​plik nie zawiera błędów. Jeśli wystąpi losowy błąd z powodu problemów z pobieraniem lub dysków twardych, wynikowa suma kontrolna będzie inna, nawet jeśli jest to tylko mały błąd.

    Jednak te kryptograficzne funkcje skrótu nie są doskonałe. Badacze bezpieczeństwa znaleźli "kolizje" z funkcjami MD5 i SHA-1. Innymi słowy, znaleźli dwa różne pliki, które dają ten sam skrót MD5 lub SHA-1, ale są różne.

    Jest mało prawdopodobne, aby stało się to przypadkowo, ale osoba atakująca może użyć tej techniki do ukrycia szkodliwego pliku jako prawidłowego pliku. Dlatego nie powinieneś polegać na sumach MD5 lub SHA-1, aby sprawdzić, czy plik jest autentyczny - tylko po to, by sprawdzić, czy nie ma korupcji.

    Nie było jeszcze żadnych raportów o kolizji SHA-256, dlatego aplikacje obecnie tworzą sumy SHA-256 zamiast sum MD5 i sum SHA-1. SHA-256 jest silniejszym, bezpieczniejszym algorytmem.

    Różne algorytmy sum kontrolnych dają różne wyniki. Plik będzie miał różne sumy kontrolne MD5, SHA-1 i SHA-256. Jeśli znasz tylko sumę MD5 oryginalnego pliku, musisz obliczyć sumę MD5 swojej kopii, aby sprawdzić, czy jest zgodna.

    Jak obliczyć sumy kontrolne

    Jeśli znasz sumę kontrolną oryginalnego pliku i chcesz to sprawdzić na swoim komputerze, możesz to łatwo zrobić. Windows, macOS i Linux mają wbudowane narzędzia do generowania sum kontrolnych. Nie potrzebujesz żadnych narzędzi firm trzecich.

    W systemie Windows: PowerShell Get-FileHash Polecenie oblicza sumę kontrolną pliku. Aby z niego skorzystać, najpierw otwórz PowerShell. W systemie Windows 10 kliknij prawym przyciskiem myszy przycisk Start i wybierz polecenie "Windows PowerShell". Możesz także uruchomić go, wyszukując w menu Start "PowerShell" i klikając skrót "Windows PowerShell"..

    Po znaku zachęty wpisz Get-FileHash a następnie naciśnij spację.

    Wpisz ścieżkę do pliku, dla którego chcesz obliczyć sumę kontrolną. Lub, aby było łatwiej, przeciągnij i upuść plik z okna Eksploratora plików do okna PowerShell, aby automatycznie wypełnić jego ścieżkę.

    Naciśnij klawisz Enter, aby uruchomić polecenie, a zobaczysz skrót SHA-256 dla pliku. W zależności od rozmiaru pliku i szybkości przechowywania komputera proces może zająć kilka sekund.

    Jeśli potrzebujesz innego typu sumy kontrolnej, dodaj odpowiednią -Algorytm opcja do końca polecenia, tak jak poniżej:

    Get-FileHash C: \ path \ to \ file.iso -Algorithm MD5
    Get-FileHash C: \ ścieżka \ do \ file.iso -Algorithm SHA1

    Porównaj obliczoną sumę kontrolną z oryginalną. Nie powinieneś szukać zbyt blisko, ponieważ będzie duża różnica w sumy kontrolnej, nawet jeśli istnieje niewielka różnica w pliku bazowym.

    Jeśli suma kontrolna jest zgodna, pliki są identyczne. Jeśli nie, wystąpił problem - może plik jest uszkodzony lub po prostu porównujesz dwa różne pliki. Jeśli pobrałeś kopię pliku, a jego suma kontrolna nie odpowiada oczekiwaniom, spróbuj ponownie pobrać plik.