ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ГСнСрация ΠΊΠ»ΡŽΡ‡Π°. 
ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ, ΠΊΠ°ΠΊ Π’Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ число ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° (0;2k-1). Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ числа (mi) вычисляСтся Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ci=((mi)e)mod n. Π‘Π»ΠΎΠΊΠΈ ci ΠΈ Π΅ΡΡ‚ΡŒ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ сообщСниС, ΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ спокойно ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ опСрация возвСдСния Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ простого числа, являСтся Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠΎΠΉ матСматичСской Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Π° носит Π½Π°Π·Π²Π°Π½ΠΈΠ΅… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

ГСнСрация ΠΊΠ»ΡŽΡ‡Π°. ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ этапом любого асиммСтричного Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° являСтся созданиС ΠΏΠ°Ρ€Ρ‹ ΠΊΠ»ΡŽΡ‡Π΅ΠΉ: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΈ Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π° «ΠΏΠΎ Π²ΡΠ΅ΠΌΡƒ ΠΌΠΈΡ€Ρƒ». Для Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° RSA этап создания ΠΊΠ»ΡŽΡ‡Π΅ΠΉ состоит ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ :

Π’Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ Π΄Π²Π° простых (!) числа p ΠΈ q.

ВычисляСтся ΠΈΡ… ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΠ΅ n (=p*q).

ВыбираСтся ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ число e (e.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ Π•Π²ΠΊΠ»ΠΈΠ΄Π° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ Π² Ρ†Π΅Π»Ρ‹Ρ… числах (!) ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ e*d+(p-1)(q-1)*y=1. Π—Π΄Π΅ΡΡŒ нСизвСстными ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ d ΠΈ y — ΠΌΠ΅Ρ‚ΠΎΠ΄ Π•Π²ΠΊΠ»ΠΈΠ΄Π° ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ мноТСство ΠΏΠ°Ρ€ (d, y), каТдая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… являСтся Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ уравнСния Π² Ρ†Π΅Π»Ρ‹Ρ… числах. Π”Π²Π° числа (e, n) — ΠΏΡƒΠ±Π»ΠΈΠΊΡƒΡŽΡ‚ΡΡ ΠΊΠ°ΠΊ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡.

Число d Ρ…ранится Π² ΡΡ‚Ρ€ΠΎΠΆΠ°ΠΉΡˆΠ΅ΠΌ сСкрСтС — это ΠΈ Π΅ΡΡ‚ΡŒ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС послания, Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ°Ρ€Ρ‹ чисСл (e, n).

Π¨ΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅/Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Π½ΠΈΠ΅

ΠžΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒ Ρ€Π°Π·Π±ΠΈΠ²Π°Π΅Ρ‚ своС сообщСниС Π½Π° Π±Π»ΠΎΠΊΠΈ, Ρ€Π°Π²Π½Ρ‹Π΅ k=[log2(n)] Π±ΠΈΡ‚, Π³Π΄Π΅ ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Π΅ скобки ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ взятиС Ρ†Π΅Π»ΠΎΠΉ части ΠΎΡ‚ Π΄Ρ€ΠΎΠ±Π½ΠΎΠ³ΠΎ числа.

ΠŸΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ, ΠΊΠ°ΠΊ Π’Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ ΠΊΠ°ΠΊ число ΠΈΠ· Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π° (0;2k-1). Для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚Π°ΠΊΠΎΠ³ΠΎ числа (mi) вычисляСтся Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ci=((mi)e)mod n. Π‘Π»ΠΎΠΊΠΈ ci ΠΈ Π΅ΡΡ‚ΡŒ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠ΅ сообщСниС, ΠΈ ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ спокойно ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ опСрация возвСдСния Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ простого числа, являСтся Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΠΎΠΉ матСматичСской Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. ΠžΠ±Ρ€Π°Ρ‚Π½Π°Ρ Π΅ΠΉ Π·Π°Π΄Π°Ρ‡Π° носит Π½Π°Π·Π²Π°Π½ΠΈΠ΅ «Π»ΠΎΠ³Π°Ρ€ΠΈΡ„ΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ ΠΏΠΎΠ»Π΅» ΠΈ ΡΠ²Π»ΡΠ΅Ρ‚ся Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΎ порядков Π±ΠΎΠ»Π΅Π΅ слоТной Π·Π°Π΄Π°Ρ‡Π΅ΠΉ. Π’ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π°ΠΆΠ΅ Ссли Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π·Π½Π°Π΅Ρ‚ числа e ΠΈ n, Ρ‚ΠΎ ΠΏΠΎ ci ΠΏΡ€ΠΎΡ‡Π΅ΡΡ‚ΡŒ исходныС сообщСния mi ΠΎΠ½ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊ, ΠΊΡ€ΠΎΠΌΠ΅ ΠΊΠ°ΠΊ ΠΏΠΎΠ»Π½Ρ‹ΠΌ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ΠΎΠΌ mi.

А Π²ΠΎΡ‚ Π½Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ½ΠΎΠΉ сторонС процСсс Π΄Π΅ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ всС ΠΆΠ΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½, ΠΈ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΌ Π² ΡΡ‚ΠΎΠΌ Ρ…Ρ€Π°Π½ΠΈΠΌΠΎΠ΅ Π² ΡΠ΅ΠΊΡ€Π΅Ρ‚Π΅ число d. Достаточно Π΄Π°Π²Π½ΠΎ Π±Ρ‹Π»Π° Π΄ΠΎΠΊΠ°Π·Π°Π½Π° Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° Π­ΠΉΠ»Π΅Ρ€Π°, частный случай ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли число n ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌΠΎ Π² Π²ΠΈΠ΄Π΅ Π΄Π²ΡƒΡ… простых чисСл p ΠΈ q, Ρ‚ΠΎ Π΄Π»Ρ любого x ΠΈΠΌΠ΅Π΅Ρ‚ мСсто равСнство (x (p-1)(q-1))mod n = 1. Для Π΄Π΅ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΡ RSA-сообщСний Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ этой Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΎΠΉ.

Π’ΠΎΠ·Π²Π΅Π΄Π΅ΠΌ ΠΎΠ±Π΅ Π΅Π΅ Ρ‡Π°ΡΡ‚ΠΈ Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ.

(-y): (x (-y)(p-1)(q-1))mod n = 1(-y) = 1.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ ΡƒΠΌΠ½ΠΎΠΆΠΈΠΌ ΠΎΠ±Π΅ Π΅Π΅ Ρ‡Π°ΡΡ‚ΠΈ Π½Π° x:

(x (-y)(p-1)(q-1)+1)mod n = 1*x = x.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ вспомним ΠΊΠ°ΠΊ создавались ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΈ Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ΠΈ. с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° Π•Π²ΠΊΠ»ΠΈΠ΄Π° ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Π»ΠΎΡΡŒ Ρ‚Π°ΠΊΠΎΠ΅ d, Ρ‡Ρ‚ΠΎ e*d+(p-1)(q-1)*y=1, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ e*d=(-y)(p-1)(q-1)+1. А ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ Π°Π±Π·Π°Ρ†Π° ΠΌΠΎΠΆΠ΅ΠΌ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ стСпСни Π½Π° Ρ‡ΠΈΡΠ»ΠΎ (e*d). ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ (xe*d)mod n = x. Π’ΠΎ Π΅ΡΡ‚ΡŒ для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΡ‡Π΅ΡΡ‚ΡŒ сообщСниС ci=((mi)e)mod n Π΄ΠΎΡΡ‚Π°Ρ‚ΠΎΡ‡Π½ΠΎ возвСсти Π΅Π³ΠΎ Π² ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ d ΠΏΠΎ ΠΌΠΎΠ΄ΡƒΠ»ΡŽ m:

((ci)d)mod n = ((mi)e*d)mod n = mi.

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

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ