SHA-2 (англ. Secure Hash Algorithm Version 2 — безпечний алгоритм хешування, версія 2) — збірна назва односторонніх геш-функцій SHA-224, SHA-256, SHA-384 і SHA-512. Геш-функції призначені для створення «відбитків» або «дайджестів» повідомлень довільної бітової довжини. Застосовуються в різних додатках або компонентах, пов'язаних із захистом інформації.
Клас | сімейство криптографічних хеш-функцій |
---|
Історія
Геш-функції SHA-2 розроблені Агентством національної безпеки США і опубліковані Національним інститутом стандартів і технології США у федеральному стандарті обробки інформації FIPS PUB 180-2 в серпні 2002 року. У цей стандарт також увійшла геш-функція SHA-1, розроблена в 1995 році. У лютому 2004 року до FIPS PUB 180-2 була додана SHA-224.
У жовтні 2008 року вийшла нова редакція стандарту — FIPS PUB 180-3.
В липні 2006 року з'явився стандарт RFC 4634 «Безпечні геш-алгоритми США (SHA і HMAC-SHA)», що описує SHA-1 і сімейство SHA −2.
Агентство національної безпеки від імені держави випустило патент на SHA-2 під ліцензією Royalty Free.
Алгоритм
Загальний опис
Геш-функції сімейства SHA-2 побудовані на основі структури Меркла-Демґарда.
Початкове повідомлення після доповнення розбивається на блоки, кожен блок — на 16 слів. Алгоритм пропускає кожен блок повідомлення через цикл з 64-ма чи 80-ма ітераціями (раундами). На кожній ітерації 2 слова перетворюються, функцію перетворення задають інші слова. Результати обробки кожного блоку складаються, сума є значенням геш-функції.
Алгоритм використовує такі бітові операції:
- ǁ — Конкатенація,
- + — Додавання,
- And — Побітове «І»,
- Or — Побітове «АБО»,
- Xor — Виключне «АБО»,
- Shr (Shift Right) — Логічний зсув вправо,
- Rotr (Rotate Right) — .
У наступній таблиці показані деякі технічні характеристики різних варіантів SHA-2. «Внутрішній стан» означає проміжну геш-суму після обробки чергового блоку даних:
Геш-функція | Довжина дайджесту повідомлення (біт) | Довжина внутрішнього стану (біт) | Довжина блоку (біт) | Максимальна довжина повідомлення (біт) | Довжина слова (біт) | Кількість ітерацій в циклі |
---|---|---|---|---|---|---|
SHA-256/224 | 256/224 | 256 | 512 | 2 64 — 1 | 32 | 64 |
SHA-512/384 | 512/384 | 512 | 1024 | 2 128 — 1 | 64 | 80 |
Приклади
Нижче наведені приклади гешів 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, але не знайшли будь-яких вразливостей. Проте в березні 2008 року індійські дослідники Сомітра Кумар Санада і Палаш Саркар опублікували знайдені ними колізії для 22 ітерацій SHA-256 і SHA-512. У вересні того ж року вони представили метод конструювання колізій для усічених варіантів SHA-2 (21 ітерація).
Криптоаналіз геш-функції досліджує стійкість алгоритму, щонайменше, до таких видів атак:
- Знаходження колізій, тобто різних повідомлень з однаковим гешем.
- Знаходження , тобто невідомого повідомлення за його гешем.
Від стійкості геш-функції до знаходження колізій залежить безпека електронного цифрового підпису з використанням цього геш-алгоритму. Від стійкості до знаходження прообразу залежить безпека зберігання гешів паролів для аутентифікації.
Зважаючи на алгоритмічну схожість SHA-2 зі SHA-1 і наявність в останньої потенційних вразливостей шукаються кращі альтернативи. Новий стандарт називатиметься SHA-3, його визначать на конкурсі, який проводитиме Національний інститут стандартів і технологій в 2008—2012 роках.
Застосування і сертифікація
Див також (Застосування гешування)
SHA-224, SHA-256, SHA-384 і SHA-512 допускаються законом США до використання в деяких урядових програмах, включаючи використання в рамках інших криптографічних алгоритмів та протоколів, для захисту інформації, яка не має грифа секретності. Стандарт також допускає використання SHA-2 приватними та комерційними організаціями.
Геш-функції SHA-2 використовуються для перевірки цілісності даних і в різних криптографічних схемах. На 2008 рік сімейство геш-функцій SHA-2 не має такого широкого розповсюдження, як MD5 і SHA-1, незважаючи на виявлені в останніх недоліки.
Як показали дослідження, алгоритми SHA-2 працюють удвічі-втричі повільніше від інших популярних геш-алгоритмів MD5, SHA-1, Tiger та RIPEMD-160.
Примітки
- http://csrc.nist.gov/publications/fips/fips180-2/fips180-2.pdf [ 2012-04-26 у Wayback Machine.] [[https://web.archive.org/web/20220122042946/https://docs.google.com/viewer?url=http%3A%2F%2Fcsrc.nist.gov%2Fpublications%2Ffips%2Ffips180-2%2Ffips180-2.pdf&embedded=true&chrome=false&dov=1 Архівовано 22 січня 2022 у Wayback Machine.] ] FIPS PUB 180-2
- http://csrc.nist.gov/publications/fips/fips180-2/fips180-2withchangenotice.pdf [ 2012-03-12 у Wayback Machine.] [[https://web.archive.org/web/20220120172104/https://docs.google.com/viewer?url=http%3A%2F%2Fcsrc.nist.gov%2Fpublications%2Ffips%2Ffips180-2%2Ffips180-2withchangenotice.pdf&embedded=true&chrome=false&dov=1 Архівовано 20 січня 2022 у Wayback Machine.] ]
- http://csrc.nist.gov/publications/fips/fips180-3/fips180-3_final.pdf [ 2012-03-12 у Wayback Machine.] [[https://web.archive.org/web/20220123063739/https://docs.google.com/viewer?url=http%3A%2F%2Fcsrc.nist.gov%2Fpublications%2Ffips%2Ffips180-3%2Ffips180-3_final.pdf&embedded=true&chrome=false&dov=1 Архівовано 23 січня 2022 у Wayback Machine.] ]
- U.S. Patent 6,829,355
- . Архів оригіналу за 16 червня 2016. Процитовано 17 лютого 2008. (англ.)
- . Архів оригіналу за 18 жовтня 2011. Процитовано 18 червня 2012.
{{}}
: Обслуговування CS1: Сторінки з текстом «archived copy» як значення параметру title () - Somitra Kumar Sanadhya, Palash Sarkar. 22-Step Collisions for SHA-2 [ 30 березня 2010 у Wayback Machine.] (англ.)
- Somitra Kumar Sanadhya, Palash Sarkar. Deterministic Constructions of 21-Step Collisions for the SHA-2 Hash Family (англ.)
- / nist_hash_works_4.html Schneier on Security: NIST Hash Workshop Liveblogging (5) [ 25 квітня 2022 у Wayback Machine.] (англ.)
- --/features/75686/2 Hash cracked — heise Security (англ.)
- Tentative Timeline of the Development of New Hash Functions [ 4 червня 2009 у Wayback Machine.] (англ.)
- FIPS 180-2: Secure Hash Standard (SHS): 6. Applicability] (англ.)
- SHA-1, SHA-256 в результатах пошукової системи Google
- Speed Comparison of Popular Crypto Algorithms [1] [ 15 жовтня 2008 у Wayback Machine.] (англ.)
Література
- Лапоніна О.Р. Архівована копія. з джерела 24 січня 2012
- Книга: Фергюсон Н., Шнайер Б.: Практична криптографія
Див. також
Посилання
Стандарти
- SHA-3 Standard: Permutation-Based Hash and Extendable-Output Functions [ 27 січня 2018 у Wayback Machine.]
- RFC 3874 A 224-bit One-way Hash Function: SHA-224
- RFC 4634 US Secure Hash Algorithms (SHA and HMAC-SHA)
Криптоаналіз
- Останні досягнення в криптоаналіз SHA-256/224 [ 26 січня 2012 у Wayback Machine.] (англ.)
- Аналіз усіченого варіанту SHA-256[недоступне посилання з лютого 2019] (англ.)
- Колізії усіченого варіанту SHA-256 (англ.)
- Нелінійні атаки на усічені варіанти геш-функцій SHA-2 (англ.)
- Детерміноване конструювання колізій для сімейства гешей SHA-2 з 21 ітерацій (англ.)
Реалізації
- The OpenSSL Project [ 24 квітня 2015 у Wayback Machine.] — широко використовувана бібліотека OpenSSL
crypto
включає вільні реалізації SHA-224, SHA-256, SHA-384 і SHA-512. - Crypto++ Library [ 24 лютого 2021 у Wayback Machine.] — вільна реалізація криптографічних алгоритмів на C++
- Bouncy Castle Library — вільна бібліотека Java і C # класів, яка включає реалізації SHA-224, SHA-256, SHA-384 і SHA-512, а також інших геш-алгоритмів Whirlpool, Tiger, RIPEMD, , MD2, MD4 і MD5
- jsSHA [ 10 січня 2018 у Wayback Machine.] — Онлайн калькулятор та вільна бібліотека Javascript, що включає повне сімейство геш-функцій SHA2, SHA3.
- Febooti fileTweak Hash & CRC [ 3 липня 2012 у Wayback Machine.] — програма для обчислення різних (MD5, SHA-1, SHA-2 та ін) гешів файлів
- ReHash [ 7 січня 2018 у Wayback Machine.] — консольна утиліта обчислення SHA1, SHA-256, SHA-384 і SHA-512.
Ця стаття потребує додаткових для поліпшення її . (лютий 2017) |
Це незавершена стаття з криптографії. Ви можете проєкту, виправивши або дописавши її. |
Це незавершена стаття про алгоритми. Ви можете проєкту, виправивши або дописавши її. |
Це незавершена стаття з інформаційної безпеки. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
SHA 2 angl Secure Hash Algorithm Version 2 bezpechnij algoritm heshuvannya versiya 2 zbirna nazva odnostoronnih gesh funkcij SHA 224 SHA 256 SHA 384 i SHA 512 Gesh funkciyi priznacheni dlya stvorennya vidbitkiv abo dajdzhestiv povidomlen dovilnoyi bitovoyi dovzhini Zastosovuyutsya v riznih dodatkah abo komponentah pov yazanih iz zahistom informaciyi SHA 2 SHA 224 SHA 256 SHA 384 i SHA 512Klas simejstvo kriptografichnih hesh funkcijIstoriyaGesh funkciyi SHA 2 rozrobleni Agentstvom nacionalnoyi bezpeki SShA i opublikovani Nacionalnim institutom standartiv i tehnologiyi SShA u federalnomu standarti obrobki informaciyi FIPS PUB 180 2 v serpni 2002 roku U cej standart takozh uvijshla gesh funkciya SHA 1 rozroblena v 1995 roci U lyutomu 2004 roku do FIPS PUB 180 2 bula dodana SHA 224 U zhovtni 2008 roku vijshla nova redakciya standartu FIPS PUB 180 3 V lipni 2006 roku z yavivsya standart RFC 4634 Bezpechni gesh algoritmi SShA SHA i HMAC SHA sho opisuye SHA 1 i simejstvo SHA 2 Agentstvo nacionalnoyi bezpeki vid imeni derzhavi vipustilo patent na SHA 2 pid licenziyeyu Royalty Free AlgoritmZagalnij opis Shema odniyeyi iteraciyi algoritmiv SHA 2 Gesh funkciyi simejstva SHA 2 pobudovani na osnovi strukturi Merkla Demgarda Pochatkove povidomlennya pislya dopovnennya rozbivayetsya na bloki kozhen blok na 16 sliv Algoritm propuskaye kozhen blok povidomlennya cherez cikl z 64 ma chi 80 ma iteraciyami raundami Na kozhnij iteraciyi 2 slova peretvoryuyutsya funkciyu peretvorennya zadayut inshi slova Rezultati obrobki kozhnogo bloku skladayutsya suma ye znachennyam gesh funkciyi Algoritm vikoristovuye taki bitovi operaciyi ǁ Konkatenaciya Dodavannya And Pobitove I Or Pobitove ABO Xor Viklyuchne ABO Shr Shift Right Logichnij zsuv vpravo Rotr Rotate Right U nastupnij tablici pokazani deyaki tehnichni harakteristiki riznih variantiv SHA 2 Vnutrishnij stan oznachaye promizhnu gesh sumu pislya obrobki chergovogo bloku danih Gesh funkciya Dovzhina dajdzhestu povidomlennya bit Dovzhina vnutrishnogo stanu bit Dovzhina bloku bit Maksimalna dovzhina povidomlennya bit Dovzhina slova bit Kilkist iteracij v cikli SHA 256 224 256 224 256 512 2 64 1 32 64 SHA 512 384 512 384 512 1024 2 128 1 64 80PrikladiNizhche navedeni prikladi geshiv SHA 2 Dlya vsih povidomlen mayetsya na uvazi vikoristannya koduvannya 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 Najmensha zmina povidomlennya v perevazhnij bilshosti vipadkiv prizvodit do zovsim inshogo geshu vnaslidok lavinnogo efektu Napriklad pri zmini dog na cog vijde SHA 256 The quick brown fox jumps over the lazy cog E4C4D8F3 BF76B692 DE791A17 3E053211 50F7A345 B46484FE 427F6ACC 7ECC81BEKriptoanalizV 2003 roci Gilbert i Handshuh doslidzhuvali SHA 2 ale ne znajshli bud yakih vrazlivostej Prote v berezni 2008 roku indijski doslidniki Somitra Kumar Sanada i Palash Sarkar opublikuvali znajdeni nimi koliziyi dlya 22 iteracij SHA 256 i SHA 512 U veresni togo zh roku voni predstavili metod konstruyuvannya kolizij dlya usichenih variantiv SHA 2 21 iteraciya Kriptoanaliz gesh funkciyi doslidzhuye stijkist algoritmu shonajmenshe do takih vidiv atak Znahodzhennya kolizij tobto riznih povidomlen z odnakovim geshem Znahodzhennya tobto nevidomogo povidomlennya za jogo geshem Vid stijkosti gesh funkciyi do znahodzhennya kolizij zalezhit bezpeka elektronnogo cifrovogo pidpisu z vikoristannyam cogo gesh algoritmu Vid stijkosti do znahodzhennya proobrazu zalezhit bezpeka zberigannya geshiv paroliv dlya autentifikaciyi Zvazhayuchi na algoritmichnu shozhist SHA 2 zi SHA 1 i nayavnist v ostannoyi potencijnih vrazlivostej shukayutsya krashi alternativi Novij standart nazivatimetsya SHA 3 jogo viznachat na konkursi yakij provoditime Nacionalnij institut standartiv i tehnologij v 2008 2012 rokah Zastosuvannya i sertifikaciyaDiv takozh Zastosuvannya geshuvannya SHA 224 SHA 256 SHA 384 i SHA 512 dopuskayutsya zakonom SShA do vikoristannya v deyakih uryadovih programah vklyuchayuchi vikoristannya v ramkah inshih kriptografichnih algoritmiv ta protokoliv dlya zahistu informaciyi yaka ne maye grifa sekretnosti Standart takozh dopuskaye vikoristannya SHA 2 privatnimi ta komercijnimi organizaciyami Gesh funkciyi SHA 2 vikoristovuyutsya dlya perevirki cilisnosti danih i v riznih kriptografichnih shemah Na 2008 rik simejstvo gesh funkcij SHA 2 ne maye takogo shirokogo rozpovsyudzhennya yak MD5 i SHA 1 nezvazhayuchi na viyavleni v ostannih nedoliki Yak pokazali doslidzhennya algoritmi SHA 2 pracyuyut udvichi vtrichi povilnishe vid inshih populyarnih gesh algoritmiv MD5 SHA 1 Tiger ta RIPEMD 160 Primitkihttp csrc nist gov publications fips fips180 2 fips180 2 pdf 2012 04 26 u Wayback Machine https web archive org web 20220122042946 https docs google com viewer url http 3A 2F 2Fcsrc nist gov 2Fpublications 2Ffips 2Ffips180 2 2Ffips180 2 pdf amp embedded true amp chrome false amp dov 1 Arhivovano22 sichnya 2022 u Wayback Machine FIPS PUB 180 2 http csrc nist gov publications fips fips180 2 fips180 2withchangenotice pdf 2012 03 12 u Wayback Machine https web archive org web 20220120172104 https docs google com viewer url http 3A 2F 2Fcsrc nist gov 2Fpublications 2Ffips 2Ffips180 2 2Ffips180 2withchangenotice pdf amp embedded true amp chrome false amp dov 1 Arhivovano20 sichnya 2022 u Wayback Machine http csrc nist gov publications fips fips180 3 fips180 3 final pdf 2012 03 12 u Wayback Machine https web archive org web 20220123063739 https docs google com viewer url http 3A 2F 2Fcsrc nist gov 2Fpublications 2Ffips 2Ffips180 3 2Ffips180 3 final pdf amp embedded true amp chrome false amp dov 1 Arhivovano23 sichnya 2022 u Wayback Machine U S Patent 6 829 355 Arhiv originalu za 16 chervnya 2016 Procitovano 17 lyutogo 2008 angl Arhiv originalu za 18 zhovtnya 2011 Procitovano 18 chervnya 2012 a href wiki D0 A8 D0 B0 D0 B1 D0 BB D0 BE D0 BD Cite web title Shablon Cite web cite web a Obslugovuvannya CS1 Storinki z tekstom archived copy yak znachennya parametru title posilannya Somitra Kumar Sanadhya Palash Sarkar 22 Step Collisions for SHA 2 30 bereznya 2010 u Wayback Machine angl Somitra Kumar Sanadhya Palash Sarkar Deterministic Constructions of 21 Step Collisions for the SHA 2 Hash Family angl nist hash works 4 html Schneier on Security NIST Hash Workshop Liveblogging 5 25 kvitnya 2022 u Wayback Machine angl features 75686 2 Hash cracked heise Security angl Tentative Timeline of the Development of New Hash Functions 4 chervnya 2009 u Wayback Machine angl FIPS 180 2 Secure Hash Standard SHS 6 Applicability angl SHA 1 SHA 256 v rezultatah poshukovoyi sistemi Google Speed Comparison of Popular Crypto Algorithms 1 15 zhovtnya 2008 u Wayback Machine angl LiteraturaLaponina O R Arhivovana kopiya z dzherela 24 sichnya 2012 Kniga Fergyuson N Shnajer B Praktichna kriptografiyaDiv takozhMD5 SHA 1 SHA 3 GeshuvannyaPosilannyaStandarti SHA 3 Standard Permutation Based Hash and Extendable Output Functions 27 sichnya 2018 u Wayback Machine RFC 3874 A 224 bit One way Hash Function SHA 224 RFC 4634 US Secure Hash Algorithms SHA and HMAC SHA Kriptoanaliz Ostanni dosyagnennya v kriptoanaliz SHA 256 224 26 sichnya 2012 u Wayback Machine angl Analiz usichenogo variantu SHA 256 nedostupne posilannya z lyutogo 2019 angl Koliziyi usichenogo variantu SHA 256 angl Nelinijni ataki na usicheni varianti gesh funkcij SHA 2 angl Determinovane konstruyuvannya kolizij dlya simejstva geshej SHA 2 z 21 iteracij angl Realizaciyi The OpenSSL Project 24 kvitnya 2015 u Wayback Machine shiroko vikoristovuvana biblioteka OpenSSL crypto vklyuchaye vilni realizaciyi SHA 224 SHA 256 SHA 384 i SHA 512 Crypto Library 24 lyutogo 2021 u Wayback Machine vilna realizaciya kriptografichnih algoritmiv na C Bouncy Castle Library vilna biblioteka Java i C klasiv yaka vklyuchaye realizaciyi SHA 224 SHA 256 SHA 384 i SHA 512 a takozh inshih gesh algoritmiv Whirlpool Tiger RIPEMD MD2 MD4 i MD5 jsSHA 10 sichnya 2018 u Wayback Machine Onlajn kalkulyator ta vilna biblioteka Javascript sho vklyuchaye povne simejstvo gesh funkcij SHA2 SHA3 Febooti fileTweak Hash amp CRC 3 lipnya 2012 u Wayback Machine programa dlya obchislennya riznih MD5 SHA 1 SHA 2 ta in geshiv fajliv ReHash 7 sichnya 2018 u Wayback Machine konsolna utilita obchislennya SHA1 SHA 256 SHA 384 i SHA 512 Cya stattya potrebuye dodatkovih posilan na dzherela dlya polipshennya yiyi perevirnosti Bud laska dopomozhit udoskonaliti cyu stattyu dodavshi posilannya na nadijni avtoritetni dzherela Zvernitsya na storinku obgovorennya za poyasnennyami ta dopomozhit vipraviti nedoliki Material bez dzherel mozhe buti piddano sumnivu ta vilucheno lyutij 2017 Ce nezavershena stattya z kriptografiyi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Ce nezavershena stattya pro algoritmi Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi Ce nezavershena stattya z informacijnoyi bezpeki Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi