Π Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠΌ ΡΡ
Π΅ΠΌΠ°ΠΌ ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΎΡΠ½ΠΎΡΡΡΡΡ ΡΡ
Π΅ΠΌΡ RSA, Π Π°Π±ΠΈΠ½Π° — Π£ΠΈΠ»ΡΡΠΌΡΠ°, ΠΠ»Ρ-ΠΠ°ΠΌΠ°Π»Ρ, Π¨Π½ΠΎΡΡΠ°, Π€ΠΈΠ°ΡΠ° — Π¨Π°ΠΌΠΈΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΡΡ
Π΅ΠΌΠ° ΡΠ»Π΅ΠΊΡΡΠΎΠ½Π½ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ ΠΎΡΠ΅ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΡΠ°Π½Π΄Π°ΡΡΠ° ΠΠΠ‘Π’ Π 34.10—2012[1].
Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΏΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ ΡΡΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΡΠ΅ ΡΡ
Π΅ΠΌΡ ΡΠΈΡΡΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΠΏΠΈΡΠΈ.
I. ΠΠΎΠ΄ΠΏΠΈΡΡ RSA. ΠΡ
ΠΎΠ΄: Π§ΠΈΡΠ»Π° ΠΏ, Ρ, q, Π³Π΄Π΅ Ρ ΠΈ q — Π±ΠΎΠ»ΡΡΠΈΠ΅ /-ΡΠ°Π·ΡΡΠ΄Π½ΡΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΈΡΠ»Π°, ΠΏ = pq. ΠΡΠΊΡΡΡΡΠΉ ΠΊΠ»ΡΡ Ρ = (Π΅, ΠΏ)Ρ ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ s = d, ΡΠ°ΠΊΠΎΠΉ ΡΡΠΎ ed= 1 (mod (p (/?)) ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»ΡΡΠΈΠΉ ΠΎΠ±ΡΠΈΠΉ Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΠΠΠ (, Ρ (/Π³)) = 1, Π³Π΄Π΅ ΡΡ (Ρ) = (Ρ — l)(q — 1).
ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ: (d, (Π΅, ΠΏ)) = Ak(l, /?).
ΠΠΎΠ΄ΠΏΠΈΡΡ: mrf(modw) = Ρ, Π³Π΄Π΅ Ρ — ΠΏΠΎΠ΄ΠΏΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ. Π΅.
ΠΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ'. ΠΡ: 1) [c*]e(mod ΠΏ) = ΡΠ΅*;
2) Π΅ΡΠ»ΠΈ ΡΠ΅** = Ρ*, ΠΏΠΎΠ΄ΠΏΠΈΡΡ Π²Π΅ΡΠ½Π°.
II. ΠΠΎΠ΄ΠΏΠΈΡΡ ΠΠ»Ρ-ΠΠ°ΠΌΠ°Π»Ρ. ΠΡ
ΠΎΠ΄: Π§ΠΈΡΠ»Π° Ρ ΠΈ g, Π³Π΄Π΅ Ρ — ΠΏΡΠΎΡΡΠΎΠ΅ /-ΡΠ°Π·ΡΡΠ΄Π½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ, a g — ΠΏΠ΅ΡΠ²ΠΎΠΎΠ±ΡΠ°Π·Π½ΡΠΉ ΠΊΠΎΡΠ΅Π½Ρ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ Ρ. Π‘Π΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ s = d, ΠΎΡΠΊΡΡΡΡΠΉ ΠΊΠ»ΡΡ Ρ = Π΅, ΡΠ°ΠΊΠΎΠΉ ΡΡΠΎ Π΅ = grf(mod/?), ΡΠ΅ — ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°Π΅ΠΌΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ: (d, (Π΅, g, Ρ)) = Ak(l, b).
ΠΠΎΠ΄ΠΏΠΈΡΡ: ΠΡ
: 1) Π³ = g* (modΡ), Π³Π΄Π΅ k € R Zp ,;
2) Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ ΡΠ°ΠΊΠΎΠ΅ Ρ, ΡΡΠΎ ΡΠ΅ = [ ΠΊΡ + dr] (mod Ρ — 1), Π³Π΄Π΅ (Ρ, Π³) — ΠΏΠΎΠ΄ΠΏΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ.
ΠΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ: ΠΡ: Π΅ΡΠ»ΠΈ g'" ' = Π΅’Π³'' (modΡ), ΡΠΎ ΠΏΠΎΠ΄ΠΏΠΈΡΡ Π²Π΅ΡΠ½Π°.
III. ΠΠΎΠ΄ΠΏΠΈΡΡ Π€ΠΈΠ°ΡΠ° — Π¨Π°ΠΌΠΈΡΠ°. ΠΡ
ΠΎΠ΄: Π§ΠΈΡΠ»Π° ΠΏ, Ρ, ΠΈ q, Π³Π΄Π΅/? ΠΈ q Π±ΠΎΠ»ΡΡΠΈΠ΅ /-ΡΠ°Π·ΡΡΠ΄Π½ΡΠ΅ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΈΡΠ»Π°, ΠΎΡΠΊΡΡΡΡΠΉ ΠΊΠ»ΡΡ Ρ Π΅ΡΡΡ Π²Π΅ΠΊΡΠΎΡ (??, v2,…, vk), Π³Π΄Π΅ Vj — ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ½ΡΠ΅ Π²ΡΡΠ΅ΡΡ ΠΏΠΎ ΠΌΠΎΠ΄ΡΠ»Ρ n, j = 1,…, ΠΊ, ΡΠ΅ΠΊΡΠ΅ΡΠ½ΡΠΉ ΠΊΠ»ΡΡ Ρ Π΅ΡΡΡ Π²Π΅ΠΊΡΠΎΡ (Π», s2,…, sk), Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ — Π½Π°ΠΈΠΌΠ΅Π½ΡΡΠΈΠΉ ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠΉ ΠΊΠΎΡΠ΅Π½Ρ ΠΈΠ· vj ', Ρ — ΠΏΠΎΠ΄ΠΏΠΈΡΡΠ²Π°Π΅ΠΌΠΎΠ΅ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅/ — ΠΏΡΠ΅Π²Π΄ΠΎΡΠ»ΡΡΠ°ΠΉΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ.
ΠΠ΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ: ((s, s2,…, s*), (vv v2,…, vk)) = Ak(l, b). ΠΠΎΠ΄ΠΏΠΈΡΡ: A; 1) x; = rf (mod n), Π³Π΄Π΅ [rv r2,…, rk] eRZ";
- 2) Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ a = f (m, xv x2,…, xjjy
- 3) Π²ΡΠ±ΠΈΡΠ°ΡΡΡΡ ΠΏΠ΅ΡΠ²ΡΠ΅ kt Π±ΠΈΡΠΎΠ² ΡΠΈΡΠ»Π° a ΠΊΠ°ΠΊ ΠΌΠ°ΡΡΠΈΡΠ° Π΅Ρ (i = 1,…, t, j = 1,…, k);
- 4) Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ Π³/, = ri ΠΠ s (mod n), Π³Π΄Π΅ i =
e-l.
= 1, …, t.
Π’ΠΎΠ³Π΄Π° (ejjt yj) — ΠΏΠΎΠ΄ΠΏΠΈΡΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡ Ρ. Π΅.
ΠΠ΅ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡ: Π : 1)2, = [Ρ*]2 Π f (modΠΏ), Π³Π΄Π΅ i = 1,…, t
e'rx
2) Π΅ΡΠ»ΠΈ ΠΏΠ΅ΡΠ²ΡΠ΅ kt Π±ΠΈΡΠΎΠ² Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΈ /(ΡΠ΅", Π³, z2, …, Π³,) ΡΠ°Π²Π½Ρ Π΅*, ΠΏΠΎΠ΄ΠΏΠΈΡΡ Π²Π΅ΡΠ½Π°.
- [1] ΠΠΏΠΈΡΠ°Π½Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Π.