Лого на страниците (малко).

Заглавна страница > Четива > Когато нещата не вървят… > Какво е това MD5?

 

Александър Иванов

Когато нещата не вървят

Какво е това MD5?

Контролна сума (англ. checksum или hash sum).

Съществуват редица алгоритми, които прилагат аритметични, логически и побитови операции върху поток от данни, за да изведат уникална числова стойност (контролна сума). Идеята е, ако се промени нещо в потока от данни и контролната сума да бъде друга.

Така контролната сума представлява много голямо цяло число. Ама информатиците го записват в шестнадесетичен запис на числа, тоест като поредица от арабски цифри и латинските букви от A до F. Хич не се опитвай да го разчетеш като число, гледай на него като на поредица от символи.

Така, ако изтеглиш файл по интернет и контролната сума не съвпада с тази, която е обявена за този файл, най-вероятно е станала грешка при изтеглянето на файла. Интернет осигурява много стабилна комуникация, ама грешки стават.

Ако пък файлът, който изтегляш, е изпълним (в Windows това са файловете с разширение .EXE), и контролната сума не ти излиза, опитай да го изтеглиш още веднъж, за да изключиш грешка при трансфера. Ако контролната сума ти е същата (значи изтеглянето е било правилно и в двата случая), ама пак не ти съвпада с обявената на страницата, най-вероятно в този файл е „вписан“ някакъв зловреден софтуер — вирус, червей, троянски кон и пр. (общото наименование на английски е malware, съкращение от malicious software). Такива неща стават.

Ако си много любознателен, можеш да тестваш този файл с антивирусния си софтуер с надежда да получиш повече информация. Ама това, което НЕ БИВА да правиш, е да го стартираш. Вместо това тук и на място го изтрий физически (с Shift+Del).

За такава проверка най-често се използва алгоритъмът MD5 (англ. Message Digest 5). Доказано е, че той не е сигурен за „чувствителна информация“, но за проверка на целостта на изтеглените файлове става. Когато се налага криптирана връзка — с електронен магазин, с банка, пък дори и с gmail, използват се по-сигурни алгоритми от семейството Secure Hash Algorithm (SHA-2, например).

Как се проверяват контролните суми?

В линукс си има конзолни програмки за това. Ако изтеглиш архивите във формат ZIP от glotta, изтегли и файла gtools.md5 — това е обикновен текстов файл, разгледай го. След това изпълни в конзолата:

$ md5sum -c gtools.md5

Ключето -c (от check) инструктира програмата да чете данните от файла gtools.md5 и да ги сверява с изчислената контролна сума.

Ако пък си изтеглил само общия архив gtools.zip, може да провериш само него:

$ md5sum gtools.zip

И свери резултата с вписания в gtools.md5.

Ако изтеглиш файл, за който контролната сума е изчислена по друг алгоритъм, например, SHA256, в линукс си има програмка sha256sum, която работи по същия начин. За всеки алгоритъм си има аналогична програмка.

В Windows май не са предвидени подобни програмки, ама има програми от типа freeware, които може да си изтеглиш. Ето първото, което ми показа google: CHK Checksum Utility. Изглежда добре, ама аз не съм го пробвал.

Страница: А. И.
Електронна поща
Дата на публикуване: 29.VI.2014
Последна редакция: 28.IV.2023
Съобразено с
html5/css3