Криптографічні Хеш-Функції

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

Різниці в Алгоритмах

  • MD5: 128-бітний хеш (32 шістнадцяткові символи). Колись широко використовувався, але тепер вважається криптографічно зламаним через вразливість до колізій. Все ще корисний для контрольних сум безпеки.
  • SHA-1: 160-бітний хеш (40 шістнадцяткових символів). Застарілий NIST у 2011 році. Google продемонструвала практичні колізії у 2017 році. Уникайте для цілей безпеки.
  • SHA-256: 256-бітний хеш (64 шістнадцяткові символи). Частина родини SHA-2. Наразі вважається безпечним і широко використовується в блокчейні (Bitcoin), SSL/TLS сертифікатах та перевірці цілісності файлів.
  • SHA-512: 512-бітний хеш (128 шістнадцяткових символів). Ще сильніший за SHA-256, використовується у високобезпечних додатках.

Ключові Властивості

  • Ефект Лавини: Невелика зміна у вході-produces drastially різний хеш-вивід.
  • Стійкість до Колізій: Обчислювально неможливо знайти два різних входи з однаковим хеш-виводом.
  • Детермінованість: Однаковий вхід завжди дає той самий хеш.

Випадки Використання

SHA-256 є золотим стандартом для сучасних додатків: верифікація блокчейну, зберігання паролів (з сіллю), SSL-сертифікати, контрольні суми цілісності файлів та цифрові підписи.