ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Ρ…ΡΡˆ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ: Π₯Сш-функция, Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅? / Π₯Π°Π±Ρ€

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π₯Сш-функция, Ρ‡Ρ‚ΠΎ это Ρ‚Π°ΠΊΠΎΠ΅? / Π₯Π°Π±Ρ€

ΠŸΡ€ΠΈΠ²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽ ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ читатСля!

БСгодня я Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠ· сСбя прСдставляСт Ρ…Π΅Ρˆ-функция, ΠΊΠΎΡΠ½ΡƒΡ‚ΡŒΡΡ Π΅Ρ‘ основных свойств, привСсти ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования ΠΈ Π² ΠΎΠ±Ρ‰ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚Π°Ρ… Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒ соврСмСнный Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ SHA-3, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹Π» ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½ Π² качСствС Π€Π΅Π΄Π΅Ρ€Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π‘Ρ‚Π°Π½Π΄Π°Ρ€Ρ‚Π° ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ БША Π² 2015 Π³ΠΎΠ΄Ρƒ.

ΠžΠ±Ρ‰ΠΈΠ΅ свСдСния

ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ…Π΅Ρˆ-функция — это матСматичСский Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅Ρ‚ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π² Π±ΠΈΡ‚ΠΎΠ²Ρ‹ΠΉ массив фиксированного Ρ€Π°Π·ΠΌΠ΅Ρ€Π°.

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, называСтся Β«Ρ…Π΅Ρˆ-суммой» ΠΈΠ»ΠΈ ΠΆΠ΅ просто Β«Ρ…Π΅ΡˆΠ΅ΠΌΒ», Π° Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ часто Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ «сообщСниСм».

Для идСальной Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ условия:

Π°) Ρ…Π΅Ρˆ-функция являСтся Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΈΜ†, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ ΠΈ Ρ‚ΠΎ ΠΆΠ΅ сообщСниС ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ
b) Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ быстро вычисляСтся для любого сообщСния
c) Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΈΜ†Ρ‚ΠΈ сообщСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄Π°Π΅Ρ‚ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅
d) Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΈΜ†Ρ‚ΠΈ Π΄Π²Π° Ρ€Π°Π·Π½Ρ‹Ρ… сообщСния с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ
e) нСбольшоС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π² сообщСнии измСняСт Ρ…Π΅Ρˆ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ сильно, Ρ‡Ρ‚ΠΎ Π½ΠΎΠ²ΠΎΠ΅ ΠΈ староС значСния каТутся Π½Π΅ΠΊΠΎΡ€Ρ€Π΅Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ

Π”Π°Π²Π°ΠΉΡ‚Π΅ сразу рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€ воздСйствия Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ SHA3-256.

Число 256 Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ строку фиксированной Π΄Π»ΠΈΠ½Ρ‹ 256 Π±ΠΈΡ‚ нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ поступят Π½Π° Π²Ρ…ΠΎΠ΄.

На рисункС Π½ΠΈΠΆΠ΅ Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ 64 Ρ†ΠΈΡ„Ρ€Ρ‹ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠΉ систСмы счислСния. ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ это Π² Π΄Π²ΠΎΠΈΡ‡Π½ΡƒΡŽ систСму, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΆΠ΅Π»Π°Π½Π½Ρ‹Π΅ 256 Π±ΠΈΡ‚.

Π›ΡŽΠ±ΠΎΠΉ заинтСрСсованный Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ задаст сСбС вопрос: «Π Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚, Ссли Π½Π° Π²Ρ…ΠΎΠ΄ ΠΏΠΎΠ΄Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π±ΠΈΠ½Π°Ρ€Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°Π· прСвосходит 256 Π±ΠΈΡ‚?»

ΠžΡ‚Π²Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠ²: Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ всС Ρ‚Π΅ ΠΆΠ΅ 256 Π±ΠΈΡ‚!
Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ 256 Π±ΠΈΡ‚ — это соотвСтствий, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π²Ρ…ΠΎΠ΄ΠΎΠ² ΠΈΠΌΠ΅ΡŽΡ‚ свой ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ Ρ…Π΅Ρˆ.
Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈΠΊΠΈΠ½ΡƒΡ‚ΡŒ, насколько Π²Π΅Π»ΠΈΠΊΠΎ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, запишСм Π΅Π³ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

НадСюсь, Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅Ρ‚ сомнСний Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ это ΠΎΡ‡Π΅Π½ΡŒ Π²Π½ΡƒΡˆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ число!

ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π½Π°ΠΌ ΡΠΎΠΏΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π΄Π»ΠΈΠ½Π½ΠΎΠΌΡƒ Π²Ρ…ΠΎΠ΄Π½ΠΎΠΌΡƒ массиву Π΄Π°Π½Π½Ρ‹Ρ… массив фиксированной Π΄Π»ΠΈΠ½Ρ‹.

Бвойства

ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ…Π΅Ρˆ-функция Π΄ΠΎΠ»ΠΆΠ½Π° ΡƒΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡΡ‚ΠΎΡΡ‚ΡŒ всСм извСстным Ρ‚ΠΈΠΏΠ°ΠΌ криптоаналитичСских Π°Ρ‚Π°ΠΊ.
Π’ тСорСтичСской ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ опрСдСляСтся с использованиСм ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… свойств:

Pre-image resistance

ИмСя Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ h, Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ слоТно Π½Π°ΠΉΡ‚ΠΈ любоС сообщСниС m Ρ‚Π°ΠΊΠΎΠ΅, Ρ‡Ρ‚ΠΎ

Second pre-image resistance

ИмСя Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ , Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ слоТно Π½Π°ΠΈΜ†Ρ‚ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ΅, Ρ‡Ρ‚ΠΎ

Collision resistance

Π”ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ слоТно Π½Π°ΠΉΡ‚ΠΈ Π΄Π²Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сообщСния ΠΈ Ρ‚Π°ΠΊΠΈΡ…, Ρ‡Ρ‚ΠΎ

Вакая ΠΏΠ°Ρ€Π° сообщСний ΠΈ называСтся ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠ΅ΠΉ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ‡ΡƒΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· пСрСчислСнных свойств.

Collision resistance. Как ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ Ρ€Π°Π½Π΅Π΅, коллизия происходит, ΠΊΠΎΠ³Π΄Π° Ρ€Π°Π·Π½Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ производят ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΈΜ† Ρ…Π΅Ρˆ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ…Π΅Ρˆ-функция считаСтся устойчивой ΠΊ коллизиям Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π° ΠΏΠ°Ρ€Π° сообщСний, Π΄Π°ΡŽΡ‰Π°Ρ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Π²Ρ‹Ρ…ΠΎΠ΄. Π‘Ρ‚ΠΎΠΈΡ‚ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΈ всСгда Π±ΡƒΠ΄ΡƒΡ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ для Π»ΡŽΠ±ΠΎΠΈΜ† Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎ Ρ‚ΠΎΠΈΜ† ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅, Ρ‡Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π²Ρ…ΠΎΠ΄Ρ‹ бСсконСчны, Π° количСство Π²Ρ‹Ρ…ΠΎΠ΄ΠΎΠ² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ. Π₯Сш-функция считаСтся устойчивой ΠΊ коллизиям, ΠΊΠΎΠ³Π΄Π° Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ обнаруТСния ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΌΠ°Π»Π°, Ρ‡Ρ‚ΠΎ для этого ΠΏΠΎΡ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ΡΡ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ Π»Π΅Ρ‚ вычислСний.

НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈΜ† Π±Π΅Π· ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΈΜ† Π½Π΅ сущСствуСт, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… достаточно Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ ΠΈ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ устойчивыми ΠΊ коллизиям.

Pre-image resistance. Π­Ρ‚ΠΎ свойство Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ сопротивлСниСм ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·Ρƒ. Π₯Сш-функция считаСтся Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠΉ ΠΎΡ‚ нахоТдСния ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·Π°, Ссли сущСствуСт ΠΎΡ‡Π΅Π½ΡŒ низкая Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π°ΠΉΠ΄Π΅Ρ‚ сообщСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ сгСнСрировало Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ Ρ…Π΅Ρˆ. Π­Ρ‚ΠΎ свойство являСтся Π²Π°ΠΆΠ½Ρ‹ΠΌ для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ…Π΅Ρˆ сообщСния ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ Π±Π΅Π· нСобходимости раскрытия ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Π”Π°Π»Π΅Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈ Π²Ρ‹ ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅ смысл ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ прСдлоТСния.

Second pre-image resistance. Π­Ρ‚ΠΎ свойство Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ сопротивлСниСм Π²Ρ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·Ρƒ. Для упрощСния ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ это свойство находится Π³Π΄Π΅-Ρ‚ΠΎ посСрСдинС ΠΌΠ΅ΠΆΠ΄Ρƒ двумя ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ. Атака ΠΏΠΎ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·Π° происходит, ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π²Ρ…ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ…Π΅Ρˆ, Ρ‡Ρ‚ΠΎ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Ρ…ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΅ΠΌΡƒ ΡƒΠΆΠ΅ извСстСн. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ, зная, Ρ‡Ρ‚ΠΎ пытаСтся Π½Π°ΠΉΡ‚ΠΈ Ρ‚Π°ΠΊΠΎΠ΅, Ρ‡Ρ‚ΠΎ

ΠžΡ‚ΡΡŽΠ΄Π° становится ясно, Ρ‡Ρ‚ΠΎ Π°Ρ‚Π°ΠΊΠ° ΠΏΠΎ Π½Π°Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·Π° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя поиск ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΈ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ любая Ρ…Π΅Ρˆ-функция, устойчивая ΠΊ коллизиям, Ρ‚Π°ΠΊΠΆΠ΅ устойчива ΠΊ Π°Ρ‚Π°ΠΊΠ°ΠΌ ΠΏΠΎ поиску Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·Π°.

ΠΠ΅Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ всС эти свойства ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ смоТСт Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π½Π΅ мСняя ΠΈΡ… Ρ…Π΅ΡˆΠ°.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ссли Π΄Π²Π° сообщСния ΠΈΠΌΠ΅ΡŽΡ‚ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΉ Ρ…Π΅Ρˆ, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Π΅.

Π’ частности, Ρ…Π΅Ρˆ-функция Π΄ΠΎΠ»ΠΆΠ½Π° вСсти сСбя ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΎΡΡ‚Π°Π²Π°ΡΡΡŒ ΠΏΡ€ΠΈ этом Π΄Π΅Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ ΠΈ эффСктивно вычислимой.

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ

Рассмотрим нСсколько достаточно простых ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² примСнСния Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ:

β€’ ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° цСлостности сообщСний ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²
Бравнивая Ρ…Π΅Ρˆ-значСния сообщСний, вычислСнныС Π΄ΠΎ ΠΈ послС ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ, Π±Ρ‹Π»ΠΈ Π»ΠΈ внСсСны ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ измСнСния Π² сообщСниС ΠΈΠ»ΠΈ Ρ„Π°ΠΈΜ†Π».

β€’ ВСрификация пароля
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° пароля ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ криптографичСскиС Ρ…Π΅ΡˆΠΈ. Π₯Ρ€Π°Π½Π΅Π½ΠΈΠ΅ всСх ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² Π²ΠΈΠ΄Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ тСкста ΠΌΠΎΠΆΠ΅Ρ‚ привСсти ΠΊ массовому Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡŽ бСзопасности, Ссли Ρ„Π°ΠΉΠ» ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ скомпромСтирован. Одним ΠΈΠ· способов ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ этой опасности являСтся Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ самих ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ, Π° ΠΈΡ… Ρ…Π΅ΡˆΠ΅ΠΉ. ΠŸΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ исходныС ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ восстановлСны ΠΈΠ· сохранСнных Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, поэтому Ссли Π²Ρ‹ Π·Π°Π±Ρ‹Π»ΠΈ свой ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π²Π°ΠΌ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ°Ρ‚ ΡΠ±Ρ€ΠΎΡΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ.

β€’ Цифровая подпись
ΠŸΠΎΠ΄ΠΏΠΈΡΡ‹Π²Π°Π΅ΠΌΡ‹Π΅ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΉ объСм, поэтому Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ Π² схСмах ЭП подпись ставится Π½Π΅ Π½Π° сам Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, Π° Π½Π° Π΅Π³ΠΎ Ρ…Π΅Ρˆ. ВычислСниС Ρ…Π΅ΡˆΠ° позволяСт Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ малСйшиС измСнСния Π² Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ подписи. Π₯Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π΅ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² состав Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ЭП, поэтому Π² схСмС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½Π° любая надСТная Ρ…Π΅Ρˆ-функция.

ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ Ρ‚Π°ΠΊΠΆΠ΅ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π±Ρ‹Ρ‚ΠΎΠ²ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Алиса ставит ΠΏΠ΅Ρ€Π΅Π΄ Π‘ΠΎΠ±ΠΎΠΌ ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ ΠΈ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π΅Π΅ Ρ€Π΅ΡˆΠΈΠ»Π°. Π‘ΠΎΠ± Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π·Π°Π΄Π°Ρ‡Ρƒ сам, Π½ΠΎ всС ΠΆΠ΅ Ρ…ΠΎΡ‚Π΅Π» Π±Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΡƒΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌ, Ρ‡Ρ‚ΠΎ Алиса Π½Π΅ Π±Π»Π΅Ρ„ΡƒΠ΅Ρ‚. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Алиса записываСт своС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, вычисляСт Π΅Π³ΠΎ Ρ…Π΅Ρˆ ΠΈ сообщаСт Π‘ΠΎΠ±Ρƒ (сохраняя Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π² сСкрСтС). Π—Π°Ρ‚Π΅ΠΌ, ΠΊΠΎΠ³Π΄Π° Π‘ΠΎΠ± сам ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π΅Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Алиса ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π½ΡŒΡˆΠ΅ Π‘ΠΎΠ±Π°. Для этого Π΅ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π‘ΠΎΠ±Π° Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, соотвСтствуСт Π»ΠΈ ΠΎΠ½ΠΎ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΠ½Π° прСдоставила Π΅ΠΌΡƒ Ρ€Π°Π½ΡŒΡˆΠ΅.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ SHA-3.

SHA-3

ΠΠ°Ρ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ институт стандартов ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ (NIST) Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ 2007β€”2012 ΠΏΡ€ΠΎΠ²Ρ‘Π» конкурс Π½Π° Π½ΠΎΠ²ΡƒΡŽ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΡƒΡŽ для Π·Π°ΠΌΠ΅Π½Ρ‹ SHA-1 ΠΈ SHA-2.

ΠžΡ€Π³Π°Π½ΠΈΠ·Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ Π±Ρ‹Π»ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Ρ‹ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΡ€ΠΈΡ‚Π΅Ρ€ΠΈΠΈ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… основывался Π²Ρ‹Π±ΠΎΡ€ финалистов:

β€’ Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

Π‘ΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡΡ‚ΠΎΡΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠ°ΠΌ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ²

β€’ ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ

Π’Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° ΠΈ трСбования ΠΊ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½ΠΎΠΉ памяти для ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ количСство элСмСнтов для Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ

β€’ Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ ΠΈ простота Π΄ΠΈΠ·Π°ΠΉΠ½Π°

Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ Π² эффСктивной Ρ€Π°Π±ΠΎΡ‚Π΅ Π½Π° самых Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ…, Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ Π² использовании ΠΏΠ°Ρ€Π°Π»Π»Π΅Π»ΠΈΠ·ΠΌΠ° ΠΈΠ»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ ISA для достиТСния Π±ΠΎΠ»Π΅Π΅ высокой ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ

Π’ Ρ„ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ‚ΡƒΡ€ ΠΏΠΎΠΏΠ°Π»ΠΈ всСго 5 Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ²:

β€’ BLAKE

β€’ GrΓΈstl

β€’ JH

β€’ Keccak

β€’ Skein

ΠŸΠΎΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π΅ΠΌ ΠΈ Π½ΠΎΠ²Ρ‹ΠΌ SHA-3 стал Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Keccak.

Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Keccak Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ.

Keccak

Π₯Сш-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ сСмСйства Keccak построСны Π½Π° основС конструкции криптографичСской Π³ΡƒΠ±ΠΊΠΈ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΈΜ† Π΄Π°Π½Π½Ρ‹Π΅ сначала Β«Π²ΠΏΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡΒ» Π² Π³ΡƒΠ±ΠΊΡƒ, Π° Π·Π°Ρ‚Π΅ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Z «отТимаСтся» ΠΈΠ· Π³ΡƒΠ±ΠΊΠΈ.

Π›ΡŽΠ±Π°Ρ губчатая функция Keccak ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΎΠ΄Π½Ρƒ ΠΈΠ· сСми пСрСстановок которая обозначаСтся , Π³Π΄Π΅

пСрСстановки ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΈΡ‚Π΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ конструкции, состоящиС ΠΈΠ· ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΠΎΡ‡Ρ‚ΠΈ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹Ρ… Ρ€Π°ΡƒΠ½Π΄ΠΎΠ². Число Ρ€Π°ΡƒΠ½Π΄ΠΎΠ² зависит ΠΎΡ‚ ΡˆΠΈΡ€ΠΈΠ½Ρ‹ пСрСстановки ΠΈ задаётся ΠΊΠ°ΠΊ Π³Π΄Π΅

Π’ качСствС стандарта SHA-3 Π±Ρ‹Π»Π° Π²Ρ‹Π±Ρ€Π°Π½Π° пСрСстановка Keccak-f[1600], для Π½Π΅Ρ‘ количСство Ρ€Π°ΡƒΠ½Π΄ΠΎΠ²

Π”Π°Π»Π΅Π΅ Π±ΡƒΠ΄Π΅ΠΌ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ

Π”Π°Π²Π°ΠΉΡ‚Π΅ сразу Π²Π²Π΅Π΄Π΅ΠΌ понятиС строки состояния, которая ΠΈΠ³Ρ€Π°Π΅Ρ‚ Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ Π² Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° состояния прСдставляСт собой строку Π΄Π»ΠΈΠ½Ρ‹ 1600 Π±ΠΈΡ‚, которая дСлится Π½Π° ΠΈ части, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ ΠΈ Ρ‘ΠΌΠΊΠΎΡΡ‚ΡŒΡŽ состояния соотвСствСнно.

Π‘ΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ дСлСния зависит ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° сСмСйства, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для SHA3-256

Π’ SHA-3 строка состояния S прСдставлСна Π² Π²ΠΈΠ΄Π΅ массива слов Π΄Π»ΠΈΠ½Ρ‹ Π±ΠΈΡ‚, всСго Π±ΠΈΡ‚. Π’ Keccak Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ слова Π΄Π»ΠΈΠ½Ρ‹ , Ρ€Π°Π²Π½Ρ‹Π΅ мСньшим стСпСням 2.

Алгоритм получСния Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° нСсколько этапов:

β€’ Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ дополнСния исходноС сообщСниС M дополняСтся Π΄ΠΎ строки P Π΄Π»ΠΈΠ½Ρ‹ ΠΊΡ€Π°Ρ‚Π½ΠΎΠΈΜ† r

β€’ Π‘Ρ‚Ρ€ΠΎΠΊΠ° P дСлится Π½Π° n Π±Π»ΠΎΠΊΠΎΠ² Π΄Π»ΠΈΠ½Ρ‹

β€’ Β«Π’ΠΏΠΈΡ‚Ρ‹Π²Π°Π½ΠΈΠ΅Β»: ΠΊΠ°ΠΆΠ΄Ρ‹ΠΈΜ† Π±Π»ΠΎΠΊ дополняСтся нулями Π΄ΠΎ строки Π΄Π»ΠΈΠ½ΠΎΠΉ Π±ΠΈΡ‚ (b = r+c) ΠΈ суммируСтся ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2 со строкой состояния , Π΄Π°Π»Π΅Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ суммирования подаётся Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ пСрСстановки ΠΈ получаСтся новая строка состояния , которая ΠΎΠΏΡΡ‚ΡŒ суммируСтся ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ 2 с Π±Π»ΠΎΠΊΠΎΠΌ ΠΈ дальшС ΠΎΠΏΡΡ‚ΡŒ подаётся Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ пСрСстановки . ΠŸΠ΅Ρ€Π΅Π΄ Π½Π°Ρ‡Π°Π»ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ криптографичСской Π³ΡƒΠ±ΠΊΠΈ всС элСмСнтыравны 0.

β€’ Β«ΠžΡ‚ΠΆΠΈΠΌΠ°Π½ΠΈΠ΅Β»: ΠΏΠΎΠΊΠ° Π΄Π»ΠΈΠ½Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° мСньшС Ρ‡Π΅ΠΌ , Π³Π΄Π΅ — количСство Π±ΠΈΡ‚ Π² Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΌ массивС Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Π±ΠΈΡ‚ строки состояния добавляСтся ΠΊ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ . ПослС ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Ρ‚Π°ΠΊΠΎΠΉ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΊ строкС состояния примСняСтся функция пСрСстановок ΠΈ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡŽΡ‚ Β«ΠΎΡ‚ΠΆΠΈΠΌΠ°Ρ‚ΡŒΡΡΒ» дальшС, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ достигнуто Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΠ½Ρ‹ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… .

ВсС сразу станСт понятно, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ посмотритС Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ Π½ΠΈΠΆΠ΅:

Ѐункция дополнСния

Π’ SHA-3 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ шаблон дополнСния 10…1: ΠΊ ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΡŽ добавляСтся 1, послС Π½Π΅Π³ΠΎ ΠΎΡ‚ 0 Π΄ΠΎ r — 1 Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… Π±ΠΈΡ‚ ΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅ добавляСтся 1.

r — 1 Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… Π±ΠΈΡ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° послСдний Π±Π»ΠΎΠΊ сообщСния ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π»ΠΈΠ½Ρƒ r — 1 Π±ΠΈΡ‚. Π’ этом случаС послСдний Π±Π»ΠΎΠΊ дополняСтся Π΅Π΄ΠΈΠ½ΠΈΡ†Π΅ΠΉ ΠΈ ΠΊ Π½Π΅ΠΌΡƒ добавляСтся Π±Π»ΠΎΠΊ, состоящий ΠΈΠ· r — 1 Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… Π±ΠΈΡ‚ ΠΈ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅.

Если Π΄Π»ΠΈΠ½Π° исходного сообщСния M дСлится Π½Π° r, Ρ‚ΠΎ Π² этом случаС ΠΊ ΡΠΎΠΎΠ±Ρ‰Π΅Π½ΠΈΡŽ добавляСтся Π±Π»ΠΎΠΊ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΈΜ†ΡΡ ΠΈ ΠΎΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΈΜ†ΡΡ Π΅Π΄ΠΈΠ½ΠΈΡ†Π°ΠΌΠΈ, ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ находятся r — 2 Π½ΡƒΠ»Π΅Π²Ρ‹Ρ… Π±ΠΈΡ‚. Π­Ρ‚ΠΎ дСлаСтся для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ для сообщСния, ΠΎΠΊΠ°Π½Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎΡΡ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ Π±ΠΈΡ‚ ΠΊΠ°ΠΊ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ дополнСния, ΠΈ для сообщСния Π±Π΅Π· этих Π±ΠΈΡ‚ значСния Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Ρ‹ΠΉ Π±ΠΈΡ‚ Π² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ дополнСния Π½ΡƒΠΆΠ΅Π½, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ сообщСний, ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ нСсколькими Π½ΡƒΠ»Π΅Π²Ρ‹ΠΌΠΈ Π±ΠΈΡ‚Π°ΠΌΠΈ Π² ΠΊΠΎΠ½Ρ†Π΅, Π±Ρ‹Π»ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹.

Ѐункция пСрСстановок

Базовая функция пСрСстановки состоит ΠΈΠ· Ρ€Π°ΡƒΠ½Π΄ΠΎΠ² ΠΏΠΎ ΠΏΡΡ‚ΡŒ шагов:

  1. Π¨Π°Π³

  2. Π¨Π°Π³

  3. Π¨Π°Π³

  4. Π¨Π°Π³

  5. Π¨Π°Π³

Π’Π΅Ρ‚Π°, Π ΠΎ, Пи, Π₯ΠΈ, Π™ΠΎΡ‚Π°

Π”Π°Π»Π΅Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ обозначСния:

Π’Π°ΠΊ ΠΊΠ°ΠΊ состояниС ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ массива , Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±ΠΈΡ‚ состояния ΠΊΠ°ΠΊ

ΠžΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ прСобразования состояния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ пСрСстановки

Π’Π°ΠΊΠΆΠ΅ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠΌ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, которая выполняСт ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ соотвСтствиС:


— обычная функция трансляции, которая сопоставляСт Π±ΠΈΡ‚Ρƒ Π±ΠΈΡ‚ ,

Π³Π΄Π΅ — Π΄Π»ΠΈΠ½Π° слова (64 Π±ΠΈΡ‚ Π² нашСм случаС)

Π― Ρ…ΠΎΡ‡Ρƒ Π²ΠΊΡ€Π°Ρ‚Ρ†Π΅ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ шаг Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ пСрСстановок, Π½Π΅ вдаваясь Π² матСматичСскиС свойства ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ.

Π¨Π°Π³

Π­Ρ„Ρ„Π΅ΠΊΡ‚ отобраТСния ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: ΠΎΠ½ΠΎ добавляСт ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ Π±ΠΈΡ‚Ρƒ ΠΏΠΎΠ±ΠΈΡ‚ΠΎΠ²ΡƒΡŽ сумму Π΄Π²ΡƒΡ… столбцов ΠΈ

БхСматичСскоС прСдставлСниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

ПсСвдокод шага:

Π¨Π°Π³

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ Π½Π° трансляции Π²Π½ΡƒΡ‚Ρ€ΠΈ слов (вдоль оси z).

ΠŸΡ€ΠΎΡ‰Π΅ всСго Π΅Π³ΠΎ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ псСвдокодом ΠΈ схСматичСским рисунком:

Π¨Π°Π³

Π¨Π°Π³ прСдставляСтся псСвдокодом ΠΈ схСматичСским рисунком:

Π¨Π°Π³

Π¨Π°Π³ являСтся СдинствСнный Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΌ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²

ПсСвдокод ΠΈ схСматичСскоС прСдставлСниС:

Π¨Π°Π³

ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ состоит ΠΈΠ· слоТСния с Ρ€Π°ΡƒΠ½Π΄ΠΎΠ²Ρ‹ΠΌΠΈ константами ΠΈ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΎ Π½Π° Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ симмСтрии. Π‘Π΅Π· Π½Π΅Π³ΠΎ всС Ρ€Π°ΡƒΠ½Π΄Ρ‹ Π±Ρ‹Π»ΠΈ Π±Ρ‹ эквивалСнтными, Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Π»ΠΎ Π±Ρ‹ Π΅Π³ΠΎ ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Π½Ρ‹ΠΌ Π°Ρ‚Π°ΠΊΠ°ΠΌ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌ ΡΠΈΠΌΠΌΠ΅Ρ‚Ρ€ΠΈΡŽ. По ΠΌΠ΅Ρ€Π΅ увСличСния Ρ€Π°ΡƒΠ½Π΄ΠΎΠ²Ρ‹Π΅ константы Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ всС большС ΠΈ большС асиммСтрии.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ€Π°ΡƒΠ½Π΄ΠΎΠ²Ρ‹Ρ… констант для Π±ΠΈΡ‚

ВсС шаги ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ вмСстС ΠΈ Ρ‚ΠΎΠ³Π΄Π° ΠΌΡ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

Π“Π΄Π΅ константы ΡΠ²Π»ΡΡŽΡ‚ΡΡ цикличСскими сдвигами ΠΈ Π·Π°Π΄Π°ΡŽΡ‚ΡΡ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ:

Π˜Ρ‚ΠΎΠ³ΠΈ

Π’ Π΄Π°Π½Π½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅ я постарался ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Ρ…Π΅Ρˆ-функция ΠΈ Π·Π°Ρ‡Π΅ΠΌ ΠΎΠ½Π° Π½ΡƒΠΆΠ½Π°
Π’Π°ΠΊΠΆΠ΅ Π² ΠΎΠ±Ρ‰ΠΈΡ… Ρ‡Π΅Ρ€Ρ‚Π°Ρ… ΠΌΠ½ΠΎΠΉ Π±Ρ‹Π» Ρ€Π°Π·ΠΎΠ±Ρ€Π°Π½ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° SHA-3 Keccak, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся послСдним стандартизированным Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠΌ сСмСйства Secure Hash Algorithm

НадСюсь, всС Π±Ρ‹Π»ΠΎ понятно ΠΈ интСрСсно

ВсСм спасибо Π·Π° Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅!

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ криптографичСская Ρ…Π΅Ρˆ-функция? — SSL.

com

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ криптографичСская Ρ…Π΅Ρˆ-функция?

A криптографичСская Ρ…Π΅Ρˆ-функция являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ подходят для криптографичСских ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ SSL /TLS, Как ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, криптографичСскиС Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ — это односторонниС матСматичСскиС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ для отобраТСния Π΄Π°Π½Π½Ρ‹Ρ… любого Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π² Π±ΠΈΡ‚ΠΎΠ²ΡƒΡŽ строку фиксированного Ρ€Π°Π·ΠΌΠ΅Ρ€Π°. ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π΅ подписи, ΠΊΠΎΠ΄Ρ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ сообщСний ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ„ΠΎΡ€ΠΌΡ‹ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.Β 

ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ свойства (источник: википСдия):

1. Одно ΠΈ Ρ‚ΠΎ ΠΆΠ΅ сообщСниС всСгда ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ (Ρ‚.Π΅. дСтСрминистичСский).
2. Π₯Сш-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ вычисляСтся быстро.
3. НСвозмоТно ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π²Π° сообщСния с ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ «столкновСниС»).

4. НСвозмоТно Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ сообщСниС, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄Π°Π΅Ρ‚ Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.Β 
5. НСбольшиС измСнСния Π² сообщСнии Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ казалось Π½Π΅ связанным с исходным Ρ…Π΅Ρˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ.

НаиболСС часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ криптографичСскиС Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ MD5, SHA-1 ΠΈ SHA-2.
Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ…Π΅ΡˆΠ° ΠΆΠΈΠ·Π½Π΅Π½Π½ΠΎ Π²Π°ΠΆΠ½Π° для цСлостности криптографичСской Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Π­Ρ‚ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡Π°Π΅Ρ‚ криптографичСскиС Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ — ΡƒΠ²Π΅Ρ€Π΅Π½Π½ΠΎΡΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ΅ сообщСниС идСнтифицируСтся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌ ΠΈ нСдопустимо Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΌ способом.Β 

Π‘Ρ…Π΅ΠΌΡ‹ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ подписи (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для подписаниС Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°, подпись ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ S/MIME e-mail) ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ криптографичСский Ρ…Π΅Ρˆ вычислялся для сообщСния ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°Π»ΡΡ Π² подпись. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС получатСля Π·Π°Ρ‚Π΅ΠΌ нСзависимо вычисляСт Ρ…Π΅Ρˆ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ цСлостности сообщСния.Β 

Π’Π΅Π±-сайты Ρ‚Π°ΠΊΠΆΠ΅ часто ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΡŽΡ‚ Ρ…ΡΡˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ². Когда ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ Ρ„Π°ΠΉΠ», ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ своС собствСнноС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС для нСзависимого вычислСния Ρ…Π΅ΡˆΠ°, провСряя Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Π°. Β 

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ пароля Ρ‚Π°ΠΊΠΆΠ΅ зависит ΠΎΡ‚ криптографичСских Ρ…ΡΡˆΠ΅ΠΉ. ΠŸΠ°Ρ€ΠΎΠ»ΠΈ, прСдставлСнныС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ, Ρ…ΡΡˆΠΈΡ€ΡƒΡŽΡ‚ΡΡ, Π° Π·Π°Ρ‚Π΅ΠΌ ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ с сохранСнным Ρ…ΡΡˆΠ΅ΠΌ.Β 

ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°Ρ… бСзопасности, ΠΊΠ°ΠΊ SSL /TLS ΠΈ SSH, ΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… прилоТСниях, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π½Π° Ρ†Π΅Π»ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…. ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ для обновлСния Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π½ΠΎΠ²Ρ‹ΠΌΠΈ Π±Π»ΠΎΠΊΠ°ΠΌΠΈ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Ρ… ΠΈ провСряСмых Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ. (НапримСр, BitCoin ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ SHA-2 для подтвСрТдСния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ.)

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ SHA-1?

SHA-1 (бСзопасный Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ 1) — это криптографичСская Ρ…Π΅Ρˆ-функция, которая ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ Π΄Π»ΠΈΠ½Π½ΡƒΡŽ строку Π΄Π°Π½Π½Ρ‹Ρ… Π² дайдТСст с фиксированным Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 160 Π±ΠΈΡ‚. Π­Ρ‚ΠΎΡ‚ дайдТСст ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ отобраТаСтся Π² Π²ΠΈΠ΄Π΅ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ³ΠΎ числа ΠΈΠ· 40 символов.

Алгоритм SHA-1 Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒΒ ΡΡ‡ΠΈΡ‚Π°Π΅Ρ‚ΡΡ нСбСзопасным, Π‘Π΅Ρ€Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚Ρ‹ SHA-1 большС Π½Π΅ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ трСбованиям Ρ„ΠΎΡ€ΡƒΠΌΠ° CA / B ΠΈΠ»ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΌΠΈ вСрсиями основных Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ².

БСрия Ρ…ΡΡˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° бСзопасного Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ (SHA) состоит ΠΈΠ· Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Π½Π°Π±ΠΎΡ€ΠΎΠ² (SHA-0, SHA-1, SHA-2, SHA-3).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ SHA-2?

SHA-2 (бСзопасный Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ 2) относится ΠΊ сСмСйству криптографичСских Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ Π΄Π»ΠΈΠ½Π½Ρ‹Π΅ строки Π΄Π°Π½Π½Ρ‹Ρ… Π² дайдТСсты фиксированного Ρ€Π°Π·ΠΌΠ΅Ρ€Π° (224, 256, 384 ΠΈΠ»ΠΈ 512 Π±ΠΈΡ‚). 256-Π±ΠΈΡ‚Π½Ρ‹ΠΉ SHA-2, Ρ‚Π°ΠΊΠΆΠ΅ извСстный ΠΊΠ°ΠΊ

SHA-256, являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ вСрсиСй. ДайдТСст ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ отобраТаСтся ΠΊΠ°ΠΊ ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΠΎΠ΅ число с фиксированным Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ. (НапримСр, SHA-256 Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ ΠΈΠ· 64 символов.)

SHA-2 вытСснил SHA-1 Π² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°Ρ… бСзопасности, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ SSL /TLS.

БвязанныС часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы