Ти тут

Хеш-функція: що це таке, навіщо потрібна і який буває

Нерідко при скачуванні торрентів або безпосередньо самих файлів в описі варто щось на зразок «ad33e486d0578a892b8vbd8b19e28754» (наприклад, в ex.ua), нерідко з припискою «md5». Це хеш-код - результат, який видає хеш-функція після обробки вхідних даних. У перекладі з англійської хеш позначає плутанину, марихуану, травичку або блюдо з дрібно нарізаного м`яса і овочів. Розшифрувати хеш дуже і дуже складно, можна сказати, що практично неможливо. Тоді виникає питання: «Навіщо взагалі потрібні всі ці хеш-функції, якщо вони видають незрозумілу абракадабру, яка ще й не піддається розшифровці?». Про це і піде мова в даній статті.

Що таке хеш-функція і як вона діє?

хеш функціяЦя функція призначена для перетворення вхідних даних як завгодно великого розміру в результат фіксованої довжини. Сам процес такого перетворення називається хешированием, а результат - хешем або хеш-кодом. Часом ще використовують слова «відбиток» або «дайджест повідомлення», але на практиці вони зустрічаються набагато рідше. Існує маса різних алгоритмів того, як можна перетворити будь-який масив даних в якусь послідовність символів певної довжини. Найбільшого поширення набув алгоритм під назвою md5, який був розроблений ще в 1991 році. Незважаючи на те, що на сьогоднішній день md5 є дещо застарілим і до використання не рекомендується, він до цих пір все ще в ходу і часто замість слова «хеш-код», на сайтах просто пишуть md5 і вказують сам код.

Відео: Бронзер, хайлайтер, шіммер, консилер, коректор, праймер.

Навіщо потрібна хеш-функція?



розшифрувати хешЗнаючи результат, практично неможливо визначити вихідні дані, але одні і ті ж вхідні дані дають однаковий результат. Тому хеш-функція (її ще називають функція згортки) часто використовується для зберігання дуже важливої інформації, такої як пароль, логін, номер посвідчення і інша персональна інформація. Замість порівнювання відомостей, що вводяться користувачем, з тими, які зберігаються в базі даних, відбувається зіставлення їх хешів. Це дає гарантію, що при випадковому витоку інформації ніхто не зможе скористатися важливими даними для своїх цілей. Шляхом порівняння хеш-коду також зручно перевіряти правильність завантаження файлів з інтернету, особливо якщо під час скачування відбувалися перебої зв`язку.

Відео: Нирки людини. Те, що вам слід знати

Хеш-функції: якими вони бувают

хеш функціїЗалежно від свого призначення хеш-функція може бути одного з трьох типів:



1. Функція для перевірки цілісності інформації

коли відбувається передача даних по мережі, відбувається розрахунок хеша пакета, і цей результат також передається разом з файлом. При прийомі знову обчислюється хеш-код і порівнюється з отриманим по мережі значенням. Якщо код не співпадає, то це говорить про помилки, і зіпсований пакет знову буде переданий. У такий функції швидка швидкість розрахунку, але мала кількість хеш значень і погана стабільність. Приклад такого типу: CRC32, у якій всього лише 232 відрізняються між собою значення.

Відео: Що таке BIOS. Призначення і функції BIOS.

2. Криптографічний функція

Цей тип використовується для захисту від несанкціонованого доступу (НД). Вони дозволяють перевірити, чи не відбулося спотворення даних в результаті НД під час передачі файлів по мережі. Істинний хеш в цьому випадку є загальнодоступним, а хеш отриманого файлу можна обчислити за допомогою безлічі різних програм. У таких функцій довгий і стабільний термін роботи, а пошук колізій (можливих збігів результату від різних вихідних даних) дуже ускладнений. Саме такі функції використовують для зберігання в БД паролів (SH1, SH2, MD5) та іншої цінної інформації.

Відео: навіщо міняти термопасту раз на пів року

3. Функція, призначена для створення ефективної структури даних

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

Поділися в соц мережах:

Увага, тільки СЬОГОДНІ!

Схожі повідомлення


Увага, тільки СЬОГОДНІ!