Strony

poniedziałek, 10 kwietnia 2017

Generator skrótu MD5 [C#]

Kiedyś bardzo popularny algorytm kryptograficzny. Obecnie nie jest już stosowany, istnieją znacznie bardziej bezpieczniejsze algorytmy.


Choć mimo to można go spotkać w starszych aplikacjach np. do kodowania hasła użytkownika w bazie danych. Powodem dla którego algorytm MD5 nie jest już stosowany do zastosowań komercyjnych jest odkrycie w 2004 roku możliwości kolizji. Inaczej mówiąc może się tak zdarzyć, że jeden użytkownik ma hasło np. 1234 co w kodowaniu MD5 jest równoznaczne w zapisie 81dc9bdb52d04dc20036dbd8313ed055 taka też wartość zostaje zapisana w bazie. Nie jest możliwe odwrócenie tego, co jest zapisane w bazie czyli z tej wartości z bazy w prosty sposób uzyskanie tych 1234. Jednak może tak być że jakaś inna kombinacja znaków po konwersji przez funkcje MD5 da 81dc9bdb52d04dc20036dbd8313ed055 . Morał z tego taki, ktoś podając zupełnie inne hasło od 1234, może się zalogować do naszego systemu. W prawdzie jest to mało prawdopodobne, ale możliwe co czyni ten algorytm zawodnym. Obecnie stosuje, uważa się za bezpieczny algorytm SHA-3. Dla lepszego zobrazowania zagrożenia posłużę się drugim przykładem. Wyobraźmy sobie sytuacje; wysyłamy do znajomego zdjęcie mailem, ramach zabezpieczenia czy dostane to co chcemy, aby dostał generujemy wartość skrótu za pomocą algorytmu MD5. Jednak może się tak okazać, że nasz znajomy dostał całkowicie inne zdjęcie, a pomimo swojej inności wartość skrótu zdjęcia wynikająca z algorytmu jest taka sama jak podana przez nas w mailu. Dwa różne zdjęcia, a według algorytmu umożliwiającego weryfikacje poprawności są to te same zdjęcia. Źródło aplikacji dostępne jest pod tym linkiem.




screenshot, aplikacja, wfa, C#

hash, kryptografia, hasło, apka, aplikacja,

Brak komentarzy:

Prześlij komentarz