Generator skrótów MD5

Tworzy dokładnie tę samą 32-znakową szesnastkową sumę kontrolną MD5 co md5sum, openssl dgst -md5 i certutil -hashfile, przydatne, gdy strona pobierania publikuje MD5, a ty chcesz sprawdzić, czy plik się zgadza, bez instalowania narzędzia CLI. Obsługuje dane tekstowe (traktowane jako bajty UTF-8, zgodnie z narzędziami Unix) i dane plikowe (strumieniowane, więc nawet duże pliki mieszczą się w pamięci).

Jak zweryfikować sumę kontrolną pliku

  1. 1

    Upuść pobrany plik

    Narzędzie strumieniuje go przez funkcję MD5 w fragmentach.

  2. 2

    Poczekaj na skrót

    Kilka MB/s na większości maszyn; ISO 500 MB zajmuje ~30–60 sekund.

  3. 3

    Porównaj z opublikowaną sumą kontrolną

    Skopiuj i wklej oczekiwany skrót. Narzędzie oznacza zgodność/niezgodność kolorem.

  4. 4

    Nie uruchamiaj przy niezgodności

    Inny skrót oznacza, że plik jest uszkodzony lub został zmanipulowany. Pobierz ponownie z zaufanego źródła.

Kanoniczny format wyjścia

MD5 tworzy 128 bitów, umownie zapisywanych jako 32 znaki szesnastkowe małymi literami:

9e107d9d372bb6826bd81d3542a419d6

Uniksowe md5sum wypisuje: <hash> <filename> z dwiema spacjami. GNU coreutils oczekuje tego formatu dla flagi -c (sprawdzanie).

Tryb tekstu kontra plik

  • Dane tekstowe są kodowane jako UTF-8 przed haszowaniem. To zgadza się z echo -n "text" | md5sum na Uniksie. Get-FileHash z PowerShella w Windows domyślnie używa UTF-16, chyba że określisz inaczej, dlatego oba mogą się różnić.
  • Dane plikowe są haszowane bajt po bajcie, cokolwiek zawiera plik, bez transformacji kodowania. Twoja przeglądarka i narzędzie CLI zawsze zgodzą się co do skrótu pliku.

Dopasowanie do opublikowanej sumy kontrolnej

Większość stron pobierania publikuje skrót z nazwą pliku:

md5sum: 9e107d9d372bb6826bd81d3542a419d6  yourfile.iso
  • Upewnij się, że pobrałeś dokładnie ten plik (czasem dostawcy publikują skróty per wariant: x86_64 kontra ARM).
  • Ufaj źródłu sumy kontrolnej. Link MD5 na tej samej skompromitowanej stronie jest bezwartościowy. Kiedy tylko możliwe, porównuj z podpisanym GPG plikiem SHA256SUMS.

Częste powody niezgodności

  • Częściowe pobranie, przeglądarka przerwała, wznowiła niepoprawnie.
  • Inna wersja na serwerze lustrzanym niż obiecuje suma kontrolna.
  • Wybrany zły plik (zhaszowałeś plik .sig zamiast ISO).
  • Kompresja lub przeformatowanie, .tar.gz i ten sam rozpakowany katalog mają zupełnie różne skróty.
  • Faktyczna manipulacja, rzadka, ale to powód, dla którego istnieją sumy kontrolne.

Szybkość

MD5 jest szybkie. Laptop z ostatnich pięciu lat haszuje z prędkością 400+ MB/s. Wąskim gardłem przy haszowaniu pliku w przeglądarce jest zwykle I/O dysku, a nie matematyka.

Kiedy MD5 nie wystarcza

Dla integralności wrażliwej na bezpieczeństwo (weryfikacja, czy pobrany instalator nie został zastąpiony złośliwym oprogramowaniem) preferuj SHA-256, kolizje MD5 są trywialne do obliczenia. Większość nowoczesnych projektów publikuje oba.

Najczęściej zadawane pytania

Get-FileHash z PowerShella domyślnie używa SHA-256, a nie MD5. Użyj Get-FileHash -Algorithm MD5 file.iso, by dopasować do opublikowanego MD5.

Większość nowoczesnych przeglądarek płynnie strumieniuje do ~2 GB. W przypadku większych plików (DVD, obrazy dysków) użyj narzędzia CLI, md5sum file na Linuksie, Get-FileHash -Algorithm MD5 na Windows.

Plik .md5 zwykle zawiera jedną linię: szesnastkowy skrót, po którym następują dwie spacje i nazwa pliku. Narzędzia takie jak md5sum -c checksum.md5 czytają tę linię i weryfikują. Sama część szesnastkowa to surowy skrót.

Tak, kolizje MD5 są trywialne do wytworzenia celowo. W przypadku przypadkowych kolizji między prawdziwymi plikami szanse to około 1 do 2^64, znikomo nieprawdopodobne. Dla odporności na kolizje przeciwnika użyj SHA-256.

Nie. Haszowanie odbywa się w całości w twojej przeglądarce przez API WebCrypto i fragmenty typowanych tablic. Pliki nigdy nie opuszczają twojego urządzenia.

Powiązane narzędzia

Narzędzie jest dostępne w innych językach