Какво е MD5SUM и за какво служи?

Понятието MD5SUM произлиза от съкращението на “Message Digest Version 5” от 1991г, което е алгоритъм за генериране на стринг (символен низ) от типа на “ac30ce5b07b0018d65203fbc680968f5”. Този стринг от своя страна представлява пръстовия отпечатък за даден файл. Чрез генерирането му се удостоверява, че съдържанието на файла е това, което трябва да е. Т.е. когато теглим файл от интернет и авторът му е публикувал неговата MD5 сума можем след изтеглянето му да проверим дали ще има съответствие, като генерираме локално MD5SUM и я сравним. MD5 сумата на файла би се променила напълно дори ако само един бит от файла е различен.

Препоръчително е да се проверяват MD5 сумите на изтегляните файлове, когато това е възможно за да сме сигурни, че получаваме това, което очакваме. Тук е важно да отбележим, че въпросната проверка гарантира основно цялостта на файла, а не толкова това, че не е бил променян и не съдържа злонамерен код. Защото ако някой промени файл към който има публикувана MD5 сума най-вероятно ще си направи труда да промени и MD5 сумата да съответства на новия файл:)

Друго широко приложение MD5, както и други подобни алгоритми като SHA1, SHA256 и т.н. е “хеширането” на данни. Т.е. това изречение или отделна дума могат да бъдат представени във вид подобно на “ac30ce5b07b0018d65203fbc680968f5”, като дължината на символния низ зависи от алгоритъма, който се използва, а не от обема текст, който се хешира. И една буква да е и две изречения резултата ще е с еднаква дължина. Процеса на хеширане е еднопосочен, т.е. може да се генерират уникални низове, съответстващи на данните, но не може да се възтанови съдържанието от генерирания низ. По този начин се съхраняват (или поне би трябвало) чувствителни данни, като пароли например за да се избегне съхранението им в чист вид. Така при въвеждане на парола от нея отново се генерира въпросния низ и се сравнява с вече запаметения такъв. Ако са еднакви voilà:)

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.