Co to jest MD5?
MD5 (Message Digest Algorithm 5) to algorytm funkcji haszującej, czyli jednokierunkowej funkcji skrótu. Dla danych wejściowych generuje skrót o długości 128 bitów, zwykle zapisywany jako 32 znaki w systemie szesnastkowym.
Do czego służy MD5?
MD5 może być używany do:
- generowania sum kontrolnych plików,
- porównywania, czy dwa pliki są identyczne,
- wykrywania przypadkowych zmian w danych,
- prostego identyfikowania treści na podstawie skrótu.
Przykład skrótu MD5:
098f6bcd4621d373cade4e832627b4f6
MD5 a bezpieczeństwo
MD5 jest obecnie uznawany za kryptograficznie niebezpieczny. Oznacza to, że nie powinno się go stosować do nowoczesnej ochrony haseł, podpisów cyfrowych ani systemów wymagających wysokiego poziomu bezpieczeństwa.
Problemem są m.in. kolizje, czyli sytuacje, w których różne dane wejściowe dają ten sam skrót.
MD5 na egzaminie
W pytaniach egzaminacyjnych MD5 najczęściej pojawia się jako przykład funkcji haszującej. Należy odróżniać go od algorytmów szyfrowania:
- MD5 - funkcja skrótu,
- DES - szyfrowanie symetryczne,
- AES - szyfrowanie symetryczne,
- RSA - szyfrowanie asymetryczne / podpis cyfrowy.
Dlatego w pytaniu o implementację jednokierunkowej funkcji skrótu poprawną odpowiedzią jest MD5.