Підрахунок MD5. Що таке MD5 | Де застосовуються хеші

Вміст статті:

У деяких ситуаціях, можливо, необхідно порахувати MD5 хеш-суму для файлу, який ви завантажили на свій комп'ютер. Наприклад, щоб бути впевненим, що ви завантажили саме той файл, який хотіли і зловмисник його не модифікував. У цій статті ми розглянемо 2 різні способи зробити це: через розширення для провідника, а також через командний рядок.

Варіант через розширення для провідника

Для провідника Windows є чудова програма Hashtab, яка безкоштовна для некомерційного використання. Завантажити її можна з . Вибираємо безкоштовну (Free) версію та тиснемо на кнопку "Download".

Після встановлення програми, у контекстному меню провідника з'явиться нова вкладка "Хеш-суми файлів", вибравши яку, програма автоматично порахує хеш-суми для вибраного файлу залежно від того, які алгоритми вибрано в її налаштуваннях.

Варіант через командний рядок (із встановленням програми)

У випадку, якщо необхідно порахувати хеш-суму файлу через командний рядок, ми можемо скористатися утилітою від Microsoft, яка підходить саме для таких випадків. Завантажуємо її з і встановлюємо. Для цього потрібно буде створити якусь папку на жорсткому диску та вказати її в процесі встановлення. У нашому прикладі програма була встановлена ​​в папку C: Program Files (x86) FCIV. Для того, щоб порахувати MD5 хеш-суму файлу, нам необхідно запустити командний рядок і в ньому набрати наступну команду:

"C:\Program Files (x86)\FCIV\fciv.exe" -md5 C:\Users\Admin\Downloads\HashTab_v6.0.0.34_Setup.exe

Як бачите, MD5 хеш-сума однакова як першого варіанта, так другого.

"C:\Program Files (x86)\FCIV\fciv.exe" - це шлях до файлу fciv.exe
-md5 - вказівка ​​алгоритму за яким fciv.exe вважатиме хеш-суму
C:\Users\Admin\Downloads\HashTab_v6.0.0.34_Setup.exe - шлях до файлу, для якого ми вважаємо хеш-суму.

Варіант через командний рядок (без встановлення програм)

Якщо вам не хочеться встановлювати будь-які програми, то можна обійтися вбудованими засобами Windows, для цього можна скористатися утилітою CertUtil.

Перевірка правильності скачування файлу з архіву за допомогою програми Total Commander

Програма "Total Commander" є багатофункціональним аналогом "Провідника" в Windows; перевірка md5-сум просто вбудована в неї як додаткова функція. Спеціально для перевірки md5-сум таку велику програму встановлювати, звичайно, нема рації. Але якщо вона вже є, можна скористатися можливістю з її допомогою перевірити правильність скачування файлу.

1. Відкрийте у вікні Total Commander директорію з файлом для перевірки та еталонною md5-сумою до нього та клацніть лівою кнопкою миші потрібний md5-файл (в даному випадку він єдиний):

2. У меню Files виберіть "Verify CRC Checksums":

3. Дочекайтеся закінчення процесу перевірки:

4. Тепер, якщо у вікні звіту ви побачите ліворуч від назви файлу «OK»

Це означає, що все гаразд і файл завантажився правильно. Якщо ж звіт виглядатиме приблизно так:

Значить, файл пошкоджений і вам доведеться завантажувати його знову.

Увага! Total Commander створює контрольні суми у своєму форматі, можуть бути перевірені лише їм самим. Тому намагайтеся не використовувати цю програму для створення контрольних сум, якщо ви не впевнені, що у тих, хто перевірятиме правильність скачування, Total Commander встановлений.

1. Відкрийте у вікні Total Commander директорію з потрібним файлом/файлами:

2. Виділіть потрібні файли:

Корисні поради
Програвачі відео
Кодеки
Download-менеджери
Torrent-клієнти
Налаштування програм
Перевірка цілісності завантажених файлів

При завантаженні мультфільмів (і взагалі файлів з інтернету) часто трапляється, що файл скачується "битим" з тих чи інших причин. Щоб переконатися в ідентичності завантаженого файлу файлу на сервері, необхідно порівняти їх контрольні суми. Для цього цілі можна використовувати алгоритм підрахунку контрольних сум md5. При додаванні мультфільму на сервер у нього обчислюється ця контрольна сума, побачити її можна на сторінці інформації про мультфільм. Щоб обчислити цю контрольну суму вже для завантаженого файлу на вашому комп'ютері, скористайтеся спеціально написаною нами програмою:

  • (Розмір: ~ 87кб)

Програма не потребує встановлення. Для користувачів операційних систем Linux, Unix, MacOS та інших – аналогічні програми дивіться прямо у складі своєї ОС.

Коротка інструкція по роботі з програмою MD5 File Checker:

Запускаємо програму. На сторінці з будь-яким мультфільмом у блоці інформації про мультфільм знаходимо поле з контрольною сумою md5 та копіюємо її у буфер обміну.



Вставляємо у поле для перевірки №2. Вибираємо файл, який хочемо перевірити у полі №1. Натискаємо кнопку "Перевірити". В результаті одержуємо повідомлення з результатом роботи програми. Наприклад, "MD5 сума файлу збігається з контрольною сумою. Файл не пошкоджено" або "MD5 сума файлу не збігається з контрольною сумою. Можливо, файл пошкоджено". Робимо висновки.

Додаткова можливість програми – розрахунок контрольної суми md5 для довільного файлу та її виведення користувачеві.

Всі питання щодо роботи програми та знайдених помилок можна повідомити адміністрації сайту.

Контрольна сума - це цифра чи рядок, яка обчислюється шляхом підсумовування всіх цифр потрібних даних. Її можна використовувати в подальшому для виявлення помилок у даних, що перевіряються при зберіганні або передачі. Тоді контрольна сума перераховується ще раз і отримане значення звіряється з попереднім.

У цій невеликій статті ми розглянемо, що таке контрольна сума Linux, а також як перевіряти цілісність файлів за допомогою контрольних сум md5.

Контрольні суми Linux з MD5 (Message Digest 5), що обчислюються за алгоритмом, можуть бути використані для перевірки цілісності рядків або файлів. MD5 сума - це 128 бітний рядок, який складається з букв і цифр. Суть алгоритму MD5 в тому, що для конкретного файлу або рядка генеруватиметься 128 бітний хеш, і він буде однаковим на всіх машинах, якщо файли ідентичні. Важко знайти два різних файли, які видали б однакові хеші.

У Linux для підрахунку контрольних сум алгоритму md5 використовується утиліта md5sum. Ви можете використовувати її для перевірки цілісності завантажених з інтернету iso образів або інших файлів.

Ця утиліта дозволяє не лише підраховувати контрольні суми linux, а й перевіряти відповідність. Вона постачається як стандартна утиліта з набору GNU, тому вам не потрібно нічого встановлювати.

Перевірка контрольних сум у Linux

Синтаксис команди md5sum дуже простий:

$ md5sum опції файл

Опцій лише кілька і, враховуючи завдання утиліти, їх цілком вистачає:

  • -c- Виконати перевірку по файлу контрольних сум;
  • -b- працювати у двійковому форматі;
  • -t- працювати у текстовому форматі;
  • -w- виводити попередження про неправильно відформатований файл сум;
  • --quiet- не виводити повідомлення про успішні перевірки.

Спочатку скопіюйте файл /etc/group у домашню папку, щоб на ньому трохи поекспериментувати:

cp /etc/group groups

Наприклад, давайте підрахуємо контрольну суму файлу /etc/group:

md5sum groups > groups.md5

Потім якось зміните цей файл, наприклад, видаліть перший рядок і знову підрахуйте контрольні суми:


Як бачите, тепер значення відрізняється, а це означає, що вміст файлу також змінився. Далі поверніть назад перший рядок root:x:0: і скопіюйте цей файл у groups_list та

cp groups groups_list

Потім знову має бути виконано перевірку контрольної суми linux:

md5sum groups_list

Сума відповідає першому варіанту, навіть незважаючи на те, що файл було перейменовано. Зверніть увагу, що md5sum працює тільки з вмістом файлів, її не цікавить його ім'я, ні його атрибути. Ви можете переконатися, що обидва файли мають однакові суми:

md5sum groups groups_list

Ви можете перенаправити виведення цієї команди у файл, щоб потім мати можливість перевірити контрольні суми:

md5sum groups groups_list > groups.md5

Щоб перевірити, чи не було змінено файли з моменту створення контрольної суми, використовуйте опцію -cабо --check. Якщо все добре, то біля кожного імені файлу з'явиться слово OKабо ЦІЛ:

md5sum -c groups.md5

Але тепер ви не можете перейменовувати файли, тому що під час перевірки утиліта намагатиметься відкрити їх на ім'я і, звичайно, ви отримаєте помилку. Так само все працює для рядків:

echo-n "Losst" | md5sum -
$ echo -n "Losst Q&A" | md5sum -

Висновки

З цієї статті ви дізналися як виконується отримання та перевірка контрольної суми linux для файлів та рядків. Хоча в алгоритмі MD5 були виявлені вразливості, він все ще залишається корисним, особливо якщо ви довіряєте інструменту, який створюватиме хеші.

Перевірка цілісності файлів Linux – це дуже важливий аспект використання системи. Контрольна сума файлу Linux використовується не тільки вручну під час перевірки завантажених файлів, але й у багатьох системних програмах, наприклад, у менеджері пакетів. Якщо у вас залишилися питання, запитуйте у коментарях!

На завершення невелике відео

Перевірити MD5 (хеш-суму) в Linux найпростіше саме в терміналі. Через будь-який графічний інтерфейс потрібно буде зробити більше маніпуляцій, ніж просто скомандувати в терміналі Linux наступне:

Md5sum /home/pavel/Дистрибутиви/lubuntu-12.04-desktop-i386.iso

Само собою зрозумілий шлях до необхідного вам файлу, (/home/pavel/Дистрибутиви/lubuntu-12.04-desktop-i386.iso) необхідно прописувати свій, який відповідає потрібному об'єкту для підрахунку MD5суми у Linux.

Щоб не вводити шлях до файлу вручну, його можна скопіювати в такий спосіб. Через файловий менеджер заходимо в каталог, де власне перебуває той потрібний нам файл. Адресний рядок у файловому менеджері необхідно перевести з вигляду «іконок» у текстовий вигляд, клавішами далі можна скопіювати шлях або за допомогою мишки через правий клік, або клавішами . Переходимо в термінал і до написаної команди «md5sum» через пропуск додаємо наш шлях з повною назвою файлу.

$ md5sum /home/pavel/Дистрибутиви/lubuntu-12.04-desktop-i386.iso /home/pavel/Дистрибутиви/lubuntu-12.04-desktop-i386.iso

Команди в Linux є стандартним для всіх і означає, що команда md5sumпідійде для будь-якого дистрибутива Linux, в якому ви не знаходилися. Це і є одна з переваг командного рядка!

Перевірка MD5 (хеш-сум) потрібна після завантаження великих файлів, які не зможуть нормально працювати, якщо файли пошкодилися або якимось чином змінилися. Перевірка сум MD5 в основному застосовується до.iso файлів, найчастіше до дистрибутивів. Якщо файл ISO пошкоджений, то його не варто записувати на USB брелок (флешку), а тим більше на оптичний диск, дистрибутив Linux при установці буде повідомляти про помилку будь-яких файлів.

Після запису дистрибутива Linux на оптичний диск потрібно перевірити цілісність, дізнатися про його MD5 суму

У цій статті ми продовжимо заглиблюватися у світ командного рядка та звіримо MD5 записаного оптичного з MD5 сумою вихідного файлу. ISO за допомогою консольної утиліти isoinfo. Для початку ми вийдемо трохи первинної інформації про записаний диск командою:

Isoinfo -d -i /dev/sr0

Де /dev/sr0 це DVD-ROM, для уточнення імені вашого примонтованого оптичного диска, якщо він у вас не один, можна знайти за висновком цієї команди:

З наявної інформації після введення:

$ isoinfo -d -i /dev/sr0

Буде приблизно таке:

CD-ROM є в ISO 9660 format System id: Volume id: Lubuntu 12.04 i386 Volume set id: Publisher id: Data preparer id: XORRISO-1.0.8 2011.04.14.073001, LIBISOBURN-1.0. -1.0.6 Application id: Copyright File id: Abstract File id: Bibliographic File id: Volume set size is: 1 Volume set sequence is: 1 Logical block size is: 2048 Volume size is: 352406 El Torito VD version boot catalog is in sector 320 Joliet with UCS level 3 found Rock Ridge signatures version 1 found Eltorito validation header: Hid 1 Arch 0 (x86) ID "" Key 55 AA Eltorito defaultboot header: Bootid 88 (bootable) Boot media 0 (No Boot) Load segment 0 Sys type 0 Nsect 4 Bootoff 52A18 338456

Для нас важливі ці рядки:

Logical block size is: 2048 Volume size is: 352406

Dd if=/dev/sr0 bs=2048 count=352406 conv=notrunc,noerror | md5sum -b

Зверніть увагу на три пункти, які ви повинні підставити:

  • /dev/sr0 - шлях до оптичного диска (якщо він у вас один, значить цей пункт без змін)
  • bs = 2048 - у вас своє значення "Logical block size is:"
  • count=352406 - значення «Volume size is:».

Після підрахунку ви отримаєте приблизно таке:

352406+0 записів раховано 352406+0 записів написано скопійовано 721727488 байт (722 MB) *- , 55,3223 c, 13,0 MB/c

- це MD5 сума диска. Якщо вона збігається зі значенням, вказаним на сайті, де ви завантажували файл або з вихідним файлом на комп'ютері, значить диск записався без помилок. На практиці буває, що сума MD5 часто не збігається із сумою MD5, вказаною на сайті, через помилки при читанні диска.

IPad