Топ питань
Часова шкала
Чат
Перспективи
SHA-2
З Вікіпедії, вільної енциклопедії
Remove ads
SHA-2 (англ. Secure Hash Algorithm Version 2 — безпечний алгоритм хешування, версія 2) — збірна назва односторонніх геш-функцій SHA-224, SHA-256, SHA-384 і SHA-512. Геш-функції призначені для створення «відбитків» або «дайджестів» повідомлень довільної бітової довжини. Застосовуються в різних додатках або компонентах, пов'язаних із захистом інформації.
Remove ads
Історія
Геш-функції SHA-2 розроблені Агентством національної безпеки США і опубліковані Національним інститутом стандартів і технології США у федеральному стандарті обробки інформації FIPS PUB 180-2 в серпні 2002 року.[1] У цей стандарт також увійшла геш-функція SHA-1, розроблена в 1995 році. У лютому 2004 року до FIPS PUB 180-2 була додана SHA-224[2].
У жовтні 2008 року вийшла нова редакція стандарту — FIPS PUB 180-3.[3]
В липні 2006 року з'явився стандарт RFC 4634 «Безпечні геш-алгоритми США (SHA і HMAC-SHA)», що описує SHA-1 і сімейство SHA −2.
Агентство національної безпеки від імені держави випустило патент на SHA-2[4] під ліцензією Royalty Free.[5]
Remove ads
Алгоритм
Узагальнити
Перспектива
Загальний опис

Геш-функції сімейства SHA-2 побудовані на основі структури Меркла-Демґарда.
Початкове повідомлення після доповнення розбивається на блоки, кожен блок — на 16 слів. Алгоритм пропускає кожен блок повідомлення через цикл з 64-ма чи 80-ма ітераціями (раундами). На кожній ітерації 2 слова перетворюються, функцію перетворення задають інші слова. Результати обробки кожного блоку складаються, сума є значенням геш-функції.
Алгоритм використовує такі бітові операції:
- ǁ — Конкатенація,
- + — Додавання,
- And — Побітове «І»,
- Or — Побітове «АБО»,
- Xor — Виключне «АБО»,
- Shr (Shift Right) — Логічний зсув вправо,
- Rotr (Rotate Right) — Циклічний зсув вправо.
У наступній таблиці показані деякі технічні характеристики різних варіантів SHA-2. «Внутрішній стан» означає проміжну геш-суму після обробки чергового блоку даних:
Remove ads
Приклади
Нижче наведені приклади гешів SHA-2. Для всіх повідомлень мається на увазі використання кодування ASCII.
SHA-224 ("The quick brown fox jumps over the lazy dog")
= 730E109B D7A8A32B 1CB9D9A0 9AA2325D 2430587D DBC0C38B AD911525
SHA-256 ("The quick brown fox jumps over the lazy dog")
= D7A8FBB3 07D78094 69CA9ABC B0082E4F 8D5651E4 6D3CDB76 2D02D0BF 37C9E592
SHA-384 ("The quick brown fox jumps over the lazy dog")
= CA737F10 14A48F4C 0B6DD43C B177B0AF D9E51693 67544C49 4011E331
7DBF9A50 9CB1E5DC 1E85A941 BBEE3D7F 2AFBC9B1
SHA-512 ("The quick brown fox jumps over the lazy dog")
= 07E547D9 586F6A73 F73FBAC0 435ED769 51218FB7 D0C8D788 A309D785
436BBB64 2E93A252 A954F239 12547D1E 8A3B5ED6 E1BFD709 7821233F
A0538F3D B854FEE6
Найменша зміна повідомлення в переважній більшості випадків призводить до зовсім іншого гешу внаслідок лавинного ефекту. Наприклад, при зміні dog на cog вийде:
SHA-256 ("The quick brown fox jumps over the lazy cog")
= E4C4D8F3 BF76B692 DE791A17 3E053211 50F7A345 B46484FE 427F6ACC 7ECC81BE
Криптоаналіз
В 2003 році Гілберт і Хандшух досліджували SHA-2, але не знайшли будь-яких вразливостей[6]. Проте в березні 2008 року індійські дослідники Сомітра Кумар Санада і Палаш Саркар опублікували знайдені ними колізії для 22 ітерацій SHA-256 і SHA-512[7]. У вересні того ж року вони представили метод конструювання колізій для усічених варіантів SHA-2 (21 ітерація)[8].
Криптоаналіз геш-функції досліджує стійкість алгоритму, щонайменше, до таких видів атак:
- Знаходження колізій, тобто різних повідомлень з однаковим гешем.
- Знаходження прообразу, тобто невідомого повідомлення за його гешем.
Від стійкості геш-функції до знаходження колізій залежить безпека електронного цифрового підпису з використанням цього геш-алгоритму. Від стійкості до знаходження прообразу залежить безпека зберігання гешів паролів для аутентифікації.
Зважаючи на алгоритмічну схожість SHA-2 зі SHA-1 і наявність в останньої потенційних вразливостей шукаються кращі альтернативи[9][10]. Новий стандарт називатиметься SHA-3, його визначать на конкурсі, який проводитиме Національний інститут стандартів і технологій в 2008—2012 роках[11].
Remove ads
Застосування і сертифікація
Див також Застосування гешування
SHA-224, SHA-256, SHA-384 і SHA-512 допускаються законом США до використання в деяких урядових програмах, включаючи використання в рамках інших криптографічних алгоритмів та протоколів, для захисту інформації, яка не має грифа секретності. Стандарт також допускає використання SHA-2 приватними та комерційними організаціями[12].
Геш-функції SHA-2 використовуються для перевірки цілісності даних і в різних криптографічних схемах. На 2008 рік сімейство геш-функцій SHA-2 не має такого широкого розповсюдження, як MD5 і SHA-1[13], незважаючи на виявлені в останніх недоліки.
Як показали дослідження[14], алгоритми SHA-2 працюють удвічі-втричі повільніше від інших популярних геш-алгоритмів MD5, SHA-1, Tiger та RIPEMD-160.
Remove ads
Примітки
Література
Див. також
Посилання
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads