"рдкреНрд░рд╢рд┐рдХреНрд╖рдг" рдХреНрд░рд┐рдкреНрдЯреЛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдЦрддрд░рд╛

рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдХреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдпреВрдЬреАрдирд╕реБрдЦреЛрд╡ рдХреЗ рдкреЛрд╕реНрдЯ рд╕реЗ рдЗрддрдирд╛ рд╣реА рдирд╣реАрдВ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░реЗрд░рд┐рдд рд╣реБрдЖ , рдЬреИрд╕рд╛ рдХрд┐ @AstralMan рдХреА рдкрд╣рд▓реА рдЯрд┐рдкреНрдкрдгреА рд╣реИред

рджрд░рдЕрд╕рд▓, рдЕрдХреНрд╕рд░ рдПрдХ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рд╡рд░рдг рдпрд╛ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рддреИрдпрд╛рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди (рд╡рд┐рд╡рд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░) рдХреЛ рджреЗрдЦрдХрд░, рдХреБрдЫ рд▓реЛрдЧ рдЗрд╕реЗ рддреБрд░рдВрдд рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдЖрдо рдЬрдирддрд╛ рдХреЗ рд▓рд┐рдП рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ (рдХреГрдкрдпрд╛ рдЗрд╕реЗ рдПрд╕реНрдЯреНрд░рд▓рдореИрди рдЙрджреНрдпрд╛рди рдореЗрдВ рдПрдХ рдкрддреНрдерд░ рдХреЗ рд░реВрдк рдореЗрдВ рдирд╣реАрдВ рд▓реЗрдВ)ред рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд╕рдорд╛рдзрд╛рди рд╕рдмрд╕реЗ рд╕рдлрд▓ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИ! рдХреНрд░рд┐рдкреНрдЯреЛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд░реНрдгрди, рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдЙрдкрдпреЛрдЧ рдореЗрдВ рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдФрд░ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдорд╣рддреНрд╡ рдХреЗ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдВрдЪ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИред рдЗрддрд┐рд╣рд╛рд╕ рдХрдИ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рдЬрд╛рдирддрд╛ рд╣реИ рдЬрдм рдПрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдордЬрдмреВрдд рдФрд░ рд╕рдордп-рдкрд░реАрдХреНрд╖рдгрд┐рдд рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди, рд╣реИрд╢рд┐рдВрдЧ, рдЖрджрд┐ рдкрд░ рдЖрдзрд╛рд░рд┐рдд рд╣реЛрддрд╛ рд╣реИред рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╣реБрдд рддрд░реНрдХ рдХреЗ рдХрд╛рд░рдг, рдФрд░ рдЪреЗрдХ рдФрд░ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рддрд░рд╣ рдХреЗ "trifles" рдХреЗ рдХрд╛рд░рдг рдареАрдХ рд╕реЗ рд╣реИрдХ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдХреНрд░рд┐рдкреНрдЯреЛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд░реНрдгрди, рдЕрдкрдиреЗ рдмрд╣реБрдд рд╡рд┐рдЪрд╛рд░ рдХреЛ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдЗрд╕реЗ рд╢реИрдХреНрд╖рд┐рдХ рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛ред

рддреБрд░рдВрдд, рдореИрдВ рдзреНрдпрд╛рди рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдпреВрдЬреАрдирд╕реБрдЦреЛрд╡ рд▓реЗрдЦ рд╕реЗ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдПрдХ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реИ рдХрд┐ рдХреБрдЫ рд╢рд░реНрддреЛрдВ рдХреЗ рддрд╣рдд рдЙрд╕ рдкрд░ рд╣рдорд▓рд╛ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ, рдЬрд┐рд╕рдХрд╛ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЦрд░рд╛рдм рд╣реИ, рдФрд░ рдЗрд╕рдХрд╛ рд▓реЗрдЦрдХ рдкреЗрд╢реЗрд╡рд░ рдирд╣реАрдВ рд╣реИред рдЗрд╕рдХрд╛ рдХреЗрд╡рд▓ рдпрд╣ рдЕрд░реНрде рд╣реИ рдХрд┐ рд▓реЗрдЦрдХ рдкрд╛рдардХреЛрдВ рдХреЛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдЕрд╡рдзрд╛рд░рдгрд╛ рд╕реЗ рдЕрд╡рдЧрдд рдХрд░рд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рдЯреАрдХ рд╕рд╛рд╡рдзрд╛рдиреАрдкреВрд░реНрд╡рдХ рд╡рд┐рдирд┐рд░реНрджреЗрд╢ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдерд╛, рдЬрд┐рд╕реЗ рдЕрдиреБрдкрдпреБрдХреНрддрддрд╛ рдХреЗ рдХрд╛рд░рдгреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ "рдореБрдХрд╛рдмрд▓рд╛" рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рд╕реМрдВрдк рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП RSA рд▓реЗрдВ рдФрд░ рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╣рдордиреЗ рдЗрд╕ рдХреНрд░рд┐рдкреНрдЯреЛрдХрд░реЗрдВрд╕реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рдЗрдЯ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ рд╣реИред рдПрдХ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрд░рдПрд╕рдП рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╡рд┐рдлрд▓рддрд╛ рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛! рд╕рд┐рдлрд░рдЯреЗрдХреНрд╕реНрдЯ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдорд▓рд╛рд╡рд░ рд╢реВрдиреНрдп рд╕реЗ 255 рддрдХ рдХреА рд╕рдВрдЦреНрдпрд╛рдУрдВ рдХреА рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЧрдгрдирд╛ рдХрд░рдХреЗ рдкреНрд▓реЗрдирдЯреЗрдХреНрд╕реНрдЯ (рдПрдХ рд╣реА рдмрд╛рдЗрдЯ) рдХреЛ рддреБрд░рдВрдд рдмрд╣рд╛рд▓ рдХрд░ рджреЗрдЧрд╛ред "рдореБрдХрд╛рдмрд▓рд╛" рдЖрд░рдПрд╕рдП рдХреЛ рдЗрд╕ рддрд░рд╣ рдХреА рдордирдорд╛рдиреА рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдиреА рдЪрд╛рд╣рд┐рдП, рдЬреЛ рдХрд┐ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдкрд░ рд╣реЛрддреА рд╣реИред

рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рд╣рдо рдпрд╣ рдорд╛рдиреЗрдВрдЧреЗ рдХрд┐ рд╣рдорд▓рд╛рд╡рд░ (рдпрд╛ рд╣рдорд▓рд╛рд╡рд░) рдХреЗ рдкрд╛рд╕ рд╡рд┐рднрд┐рдиреНрди рдШреГрдгрд┐рдд рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рдкреВрд░реНрдг рд╢рд╕реНрддреНрд░рд╛рдЧрд╛рд░ рддрдХ рдкрд╣реБрдВрдЪ рд╣реИ, рдЬреИрд╕реЗ рд╕рдВрдЪрд╛рд░ рдЪреИрдирд▓ рдХреЛ "рд╡рд╛рдпрд░рдЯреИрдкрд┐рдВрдЧ" рдХрд░рдирд╛, рд╕рднреА рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд┐рдП рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рд╕рд╣реЗрдЬрдирд╛, рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдмрд┐рдЧрд╛рдбрд╝рдирд╛, рдкрд╣рд▓реЗ рд╕реЗ рдмрд╛рдзрд┐рдд рд╕рдВрджреЗрд╢ рднреЗрдЬрдирд╛, рдЖрджрд┐ред рд╣рдо рдпрд╣ рднреА рдорд╛рди рд▓реЗрдВрдЧреЗ рдХрд┐ рд╣рдорд▓рд╛рд╡рд░ рд╕рд░реНрд╡рд░ рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдЪреБрд░рд╛ рд╕рдХрддрд╛ рд╣реИред рдореИрдВ рд╕реНрдкрд╖реНрдЯ рдХрд░реВрдБрдЧрд╛ рдХрд┐ рдпреЗ рд╕рднреА рдзрд╛рд░рдгрд╛рдПрдБ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдП рдЧрдП рд╢реИрдХреНрд╖рд┐рдХ рдХреНрд░рд┐рдкреНрдЯреЛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓реЗрдЦрдХ рдХреА рдзрд╛рд░рдгрд╛рдУрдВ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИрдВред

рдЖрдЗрдП рд╣рдо рдЙрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рдкрд╛рд╕ рдХрд░реЗрдВ рдЬреЛ рдЗрд╕рдХреЗ рд▓реЗрдЦрдХ рдиреЗ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рд╣реИред

рдЫрд╡рд┐

рдЪрд▓реЛ рдЧреНрд░рд╛рд╣рдХ рд╕реЗ рд╕рд░реНрд╡рд░ M = рд╣реИрд╢ (RND) рдХреЗ рдирд╡реАрдирддрдо рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ, рд╣реИрд╢рд┐рдВрдЧ рдХреНрдпреЛрдВ? рдЖрдк рдмрд╕ RND рдХреЛ рдЕрдЧреНрд░реЗрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рд╡рд╣реАрдВ рд╕рдорд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдЗрддрдирд╛ рд╕рд░рд▓ рдирд╣реАрдВ рд╣реИред рдкрд╣рд▓реЗ, рдЕрдВрддрд┐рдо рд╣рд╕реНрддрд╛рдВрддрд░рдг рдкрд░ рд╣реИрд╢рд┐рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдПрдХ рдХрдордЬреЛрд░ рд╕рдВрд╕реНрдХрд░рдг рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ, рдФрд░ рдЗрд╕рдХреА рдХрдорд┐рдпреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░реЗрдВред рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдпреЛрдЬрдирд╛ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрд╛рдИ рджреЗрдЧреА:

рдЫрд╡рд┐

рдкрд╣рд▓рд╛ рджреЛрд╖ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдХрдордЬреЛрд░ рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ, рдХреНрд▓рд╛рдЗрдВрдЯ рддрдерд╛рдХрдерд┐рдд "рдбрд┐рдХреНрд░рд┐рдкреНрд╢рди рдУрд░реЗрдХрд▓" рдХреА рднреВрдорд┐рдХрд╛ рдирд┐рднрд╛рддрд╛ рд╣реИред рджрд░рдЕрд╕рд▓, рд╕рд░реНрд╡рд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рд╕рдВрджреЗрд╢ рднреЗрдЬрддрд╛ рд╣реИ (рд╣рдорд╛рд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, RND) рдЧреНрд░рд╛рд╣рдХ рдХреА рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдкрд░ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ред рдХреНрд▓рд╛рдЗрдВрдЯ рдЕрдкрдиреА рдирд┐рдЬреА рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдВрджреЗрд╢ рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╕рдВрджреЗрд╢ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдкрд╛рда рдореЗрдВ рд╡рд╛рдкрд╕ рд╕рд░реНрд╡рд░ рдкрд░ рднреЗрдЬрддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдирд┐рд░реНрдорд╛рдг рдХреА рд░рдгрдиреАрддрд┐ "рдЧреИрд░-рдорд╛рдирдХ" рд╣реИрдВ, рд╕рдВрднрд╛рд╡рд┐рдд рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЛ рдЙрдард╛рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рддрд░рд╣ рд╕реЗ, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд▓реЗрдЦрдХ рдХреЗ рд╢реМрдХрд┐рдпрд╛рдкрди рдХреА рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред

рджреВрд╕рд░рд╛ рджреЛрд╖ рдЕрдзрд┐рдХ рдЧрдВрднреАрд░ рд╣реИ рдФрд░ рдЗрд╕ рддрдереНрдп рдореЗрдВ рдирд┐рд╣рд┐рдд рд╣реИ рдХрд┐ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд▓рдЧрднрдЧ рддреБрд░рдВрдд рдХреБрдЫ рдЖрд░рдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде рдлрдЯрд╛ рд╣реИред рд╣рдо рд╣рдорд▓реЗ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдШреБрд╕рдкреИрдард┐рдП рдиреЗ рдирдВрдмрд░ рдПрди, рдЖрд░рдПрд╕рдП рдХреНрд░рд┐рдкреНрдЯреЛрд╕рд┐рд╕реНрдЯрдо рдореЙрдбреНрдпреВрд▓ рдХреЛ рдорд╛рдиреНрдпрддрд╛ рджреАред рдЪрд╛рд╣реЗ рдЙрд╕рдиреЗ рдкрдВрдЬреАрдХрд░рдг рдЪрд░рдг рдореЗрдВ рдбреЗрдЯрд╛ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рдХреЗ рдХрд┐рдпрд╛ рд╣реЛ, рдпрд╛ рд╕рд░реНрд╡рд░ рд╕реЗ рдбреЗрдЯрд╛рдмреЗрд╕ рдЪреБрд░рд╛рдпрд╛ рд╣реЛ, рдЕрдм рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИред рдореБрдЦреНрдп рдмрд╛рдд рдпрд╣ рд╣реИ рдХрд┐ рд╡рд╣ рдПрди рдЬрд╛рдирддрд╛ рд╣реИред рдпрд╣ рднреА рдорд╛рди рд▓реЗрдВ рдХрд┐ рд╕рд┐рдорд┐рдЯреНрд░рд┐рдХ рдХреБрдВрдЬреА K рдкрд░ рд╕рдВрджреЗрд╢ {d || N} рдХреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрд╛рдЙрдВрдЯрд░ рдореЛрдб рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдПрдХ рдмрд╣реБрдд рд╣реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реНрдерд┐рддрд┐)ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдорд▓рд╛рд╡рд░ рдЖрд╕рд╛рдиреА рд╕реЗ {d || p} _K рд╕рдВрджреЗрд╢ рдЙрддреНрдкрдиреНрди рдХрд░рдХреЗ рд╕рдВрджреЗрд╢ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ {d || N} _K, рдЬрд╣рд╛рдВ p рдПрдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЪреБрдирд╛ рдЧрдпрд╛ рдЕрднрд╛рдЬреНрдп рд╕рдВрдЦреНрдпрд╛ рд╣реИ рдФрд░ рдЧреНрд░рд╛рд╣рдХ рдХреЛ рд╕рдВрджреЗрд╢ рднреЗрдЬрддрд╛ рд╣реИред рдореИрдВ рдкрд╛рдардХ рдХреЗ рдХрдВрдзреЛрдВ рдкрд░ рдЗрд╕ рдХрдерди рдХреА рд╡реИрдзрддрд╛ рд░рдЦрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред рдЕрдЧрд▓рд╛ред рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рд╕рдВрдЦреНрдпрд╛ рдкреА рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЪреБрдирддрд╛ рд╣реИ рдХрд┐ рдкреА -1 рдореЗрдВ рдПрдХ "рдЕрдЪреНрдЫрд╛" (рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдЕрд░реНрде рдореЗрдВ) рдХрд╛рд░рдХ рд╣реИ рдФрд░ рдпрд╣ рдбреА (рдЧреНрд░рд╛рд╣рдХ рдХреА рдирд┐рдЬреА рдХреБрдВрдЬреА) рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдлрд┐рд░, {RND} _e рдХреЗ рдмрдЬрд╛рдп, рдШреБрд╕рдкреИрдард┐рдпрд╛ рдЬреА рдмрдирд╛рдиреЗ рд╡рд╛рд▓рд╛ рд╕рдореВрд╣ Z_p ^ * рднреЗрдЬрддрд╛ рд╣реИред рдПрдХ рдЕрдирд╕рдкреЗрд╕рд┐рдмрд▓ рдХреНрд▓рд╛рдЗрдВрдЯ, рдЖрдЦрд┐рд░реА рдЯреНрд░рд╛рдВрд╕рдлрд░ рдкрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╣рдорд▓рд╛рд╡рд░ рдХреЛ g ^ d (mod p) рднреЗрдЬрддрд╛ рд╣реИред Polyg-Hellman рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рдШреБрд╕рдкреИрдард┐рдП рдЧреНрд░рд╛рд╣рдХ рдХреА рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреЛ рдмрд╣реБрдкрдж рд╕рдордп рдореЗрдВ рдЧрдгрдирд╛ рдХрд░рддрд╛ рд╣реИред рдЙрд╕рдХреЗ рдмрд╛рдж, рдЕрдкрд░рд╛рдзреА рд╣рдореЗрд╢рд╛ рдЧреНрд░рд╛рд╣рдХ рдХреЛ рдкреНрд░рддрд┐рд░реВрдкрдг рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред

рдФрд░ рдЕрдм рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдкрд░ "рдореВрд▓ рдореЗрдВ", рдЬреИрд╕рд╛ рдХрд┐ рдЗрд╕рдХреЗ рд▓реЗрдЦрдХ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ (рдЕрдВрддрд┐рдо рд╣рд╕реНрддрд╛рдВрддрд░рдг рдкрд░ рд╣реИрд╢рд┐рдВрдЧ рдХреЗ рд╕рд╛рде)ред рдореЗрд░рд╛ рддрд░реНрдХ рд╣реИ рдХрд┐ рдпрджрд┐ k рдмрд┐рдЯреНрд╕ рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рдкреНрд░рд╛рдЗрд╡реЗрдЯ рдХреА рд▓рдВрдмрд╛рдИ d рд╣реИ, рддреЛ рд╕рд░реНрд╡рд░ рд╕реЗ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП k рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдХрдо рдореЗрдВ рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреА рдЧрдгрдирд╛ рдХрд░рдирд╛ рдпрдерд╛рд░реНрдерд╡рд╛рджреА рд╣реИред рдореИрдВ рдЧрдгрд┐рддреАрдп рдЧрдгрдирд╛ рдХреЛ рд▓реЗрдЦ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдП рдЧрдП рдХрдерди рдХреЛ рд╕рд╛рдмрд┐рдд рдирд╣реАрдВ рдХрд░реВрдБрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдХрд╛рдлреА рдорд╛рддреНрд░рд╛ рдореЗрдВ рд╣реИрдВ рдФрд░ рдкрд╛рдардХреЛрдВ рдХреА рдПрдХ рд╡рд┐рд╕реНрддреГрдд рдордВрдбрд▓реА рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдирд╣реАрдВ рдХрд┐рдП рдЧрдП рд╣реИрдВред рдлрд┐рд░ рднреА, рдирд┐рд░рд╛рдзрд╛рд░ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рд╡рд░реНрдгрди рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЖрдк рд╕рд░реНрд╡рд░ рдкрд░ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдкреНрд░рдорд╛рдгрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╣реА рдкреНрд░рдпрд╛рд╕ рдХреЗ рд▓рд┐рдП рдбреА рдХреБрдВрдЬреА рдХреЗ рдХреБрдЫ рдХрдо рд╕реЗ рдХрдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯреНрд╕ рдХреА рдЧрдгрдирд╛ рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдЗрд╕ рддрд░рд╣ рдХреА рдЧрдгрдирд╛ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рднреЗрджреНрдпрддрд╛ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рддреА рд╣реИред рдПрдХ рдмрд╛рд░ рдлрд┐рд░, рдореИрдВ рдЗрд╕ рддрдереНрдп рдкрд░ рдкрд╛рдардХ рдХрд╛ рдзреНрдпрд╛рди рдЖрдХрд░реНрд╖рд┐рдд рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдкреНрд░рд╢рд┐рдХреНрд╖рдг рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рднреЗрджреНрдпрддрд╛ рдПрдХ "рдирд┐рдпрдорд┐рдд" рд╕реНрдерд┐рддрд┐ рд╣реИ, рдЬреЛ "рдореБрдХрд╛рдмрд▓рд╛" рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕реНрдерд╛рдпрд┐рддреНрд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рднреА рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реИред рдкрд╣рд▓реЗ рд╕реЗ рдмрдиреА рдзрд╛рд░рдгрд╛рдПрдВ рд╣реИрдВ рдХрд┐ рд╣рдорд▓рд╛рд╡рд░ рд╕рдВрдЦреНрдпрд╛ N рдХреЛ рдЬрд╛рдирддрд╛ рд╣реИ рдФрд░ рд╕рдорд░реВрдк рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХреЗ рд▓рд┐рдП рдХрд╛рдЙрдВрдЯрд░ рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╣рдорд╛рд░реЗ рд╡рд┐рдирдореНрд░ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд▓реЗрдВ рдкреНрд░рд╛рдЗрдо рдирдВрдмрд░ p = 65537 = 2 ^ 16 + 1. Z_p ^ * рдореЗрдВ рд╣рдо рддрддреНрд╡ g рдЬрдирд░реЗрдЯрд┐рдВрдЧ Z_p ^ * рдЪреБрдирддреЗ рд╣реИрдВред рд╣рдо рд╣реИрд╢ (g), рд╣реИрд╢ (g ^ 2), рд╣реИрд╢ (g ^ 3), ..., рд╣реИрд╢ (g ^ {p-1}) рдХреА рдЧрдгрдирд╛ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рдЯреЗрдмрд▓ рдХреЗ рд░реВрдк рдореЗрдВ рд╣рдорд╛рд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕рд╣реЗрдЬрддреЗ рд╣реИрдВред рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдмрд╣реБрдд рдХрдо рд╕рдордп рдФрд░ рд╕реНрдореГрддрд┐ рдорд┐рд▓реЗрдЧреАред рд╣рдо рд╕рд░реНрд╡рд░ рд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ рдбреЗрдЯрд╛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░, рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдПрди рдХреЛ рдкреА, рдЖрд░рдПрдирдбреА рдХреЛ рдЬреА рдХреЗ рд╕рд╛рде рдмрджрд▓реЗрдВред рдирддреАрдЬрддрди, рд╣рдореЗрдВ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕реЗ рдПрдХ рдЕрдЬреНрдЮрд╛рдд рддрддреНрд╡ - рд╣реИрд╢ (g ^ i) рд╕реЗ рдПрдХ рд╣реИрд╢ рдорд┐рд▓рддрд╛ рд╣реИ, рдЗрд╕реЗ рддрд╛рд▓рд┐рдХрд╛ рдореЗрдВ рд╣рдорд╛рд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдвреВрдВрдвреЗрдВ рдФрд░ i рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рд╣рдо рд╕рдореАрдХрд░рдг рдкрд░ рдЖрддреЗ рд╣реИрдВ
g ^ d = g ^ i mod p

рдпрд╣ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рд╣реИ рдХрд┐ d = i + a (p-1), рдЬрд╣рд╛рдБ a рд╣рдорд╛рд░реЗ рд▓рд┐рдП рдХреБрдЫ рдЕрдЬреНрдЮрд╛рдд рд╕рдВрдЦреНрдпрд╛ рд╣реИред рд╣рдо рдЙрд╕ d = i + 2 ^ 16 * aред рдпрджрд┐ рд╣рдо рд╕рдВрдЦреНрдпрд╛ i рдХреЛ рдмрд┐рдЯ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреА рд╕рдВрдЦреНрдпрд╛ 16 рдХреЗ рд░реВрдк рдореЗрдВ рджрд░реНрд╢рд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рдЧреНрд░рд╛рд╣рдХ рдХреА рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреЗ рдЕрдВрддрд┐рдо 16 рдмрд┐рдЯреНрд╕ рд╣реЛрдВрдЧреЗред

рдиреЛрдЯред рдпрджрд┐ рдпрд╣ рддрдереНрдп рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рддреБрд░рдВрдд рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ, рддреЛ рд╣рдо рджрд╢рдорд▓рд╡ рд╕рдВрдЦреНрдпрд╛ рдкреНрд░рдгрд╛рд▓реА рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВрдЧреЗред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, A = B + 10 ^ 3 * Cред рдлрд┐рд░ B, рд╕рдВрдЦреНрдпрд╛ A рдХреЛ 10 ^ 3 = 1000 рд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╢реЗрд╖ рд╣реИред рдФрд░ рдЪреВрдВрдХрд┐ 1000 10 рдХреА рд╢рдХреНрддрд┐ рд╣реИ (рд╣рдо рджрд╢рдорд▓рд╡ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдХрд╛рдо рдХрд░рддреЗ рд╣реИрдВ), рддреЛ B, A рдХреЗ рдЕрдВрддрд┐рдо рддреАрди рдЕрдВрдХ рд╣реИрдВред рдпрджрд┐ A = 12345 рд╣реИ, рддреЛ A = 345 + 12 * 1000 рдФрд░ рдРрд╕рд╛ рдЕрдкрдШрдЯрди рдЧреИрд░-рдирдХрд╛рд░рд╛рддреНрдордХ B <= 1000 рдХреЗ рд▓рд┐рдП рдЕрджреНрд╡рд┐рддреАрдп рд╣реИред

рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ, рд╣рдорд▓реЗ рдХреЗ рджреМрд░рд╛рди, рд╣рдо рдирд┐рдЬреА рдХреБрдВрдЬреА рдХреЗ рдХрдо рд╕реЗ рдХрдо рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд┐рдЯреНрд╕ рдХреА рдПрдХ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдХреА рдЧрдгрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рд░рд╛рд╢рд┐ рд╕реАрдзреЗ рд╣рдорд╛рд░реЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдЙрдкрд▓рдмреНрдз рдореЗрдореЛрд░реА рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рд╣рдо рд╣реИрд╢ рдЯреЗрдмрд▓, рдФрд░ рдкреАрд╕реА рдкреНрд░рджрд░реНрд╢рди рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЖрдлреНрдЯрд░рд╡рд░реНрдб : рдЗрд╕ рд▓реЗрдЦ рдХреЗ рд╕рд╛рде, рдореИрдВ рдЗрд╕ рдмрд╛рдд рдкрд░ рдЬреЛрд░ рджреЗрдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдХрд┐ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдЬреЛ "рд░реЗрдбреАрдореЗрдб" рд╕рдорд╛рдзрд╛рди, рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдФрд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╣реИрдВ, рдЬреЛ рд╕рд╛рд╣рд┐рддреНрдп рдореЗрдВ рдпрд╛ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдЦреБрд▓реА рдкрд╣реБрдВрдЪ рдореЗрдВ рдкрд╛рдП рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд╡реЗ "рд░реЗрдбреА-рдореЗрдб" рдмрд┐рд▓реНрдХреБрд▓ рдирд╣реАрдВ рд╣реИрдВ, рд╡реЗ рд╢реИрдХреНрд╖рд┐рдХ рд╣реИрдВред рдпрджрд┐ рдЖрдк рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░рдХреНрд╖рд╛ рддрдВрддреНрд░ рдХреЛ рдЕрдкрдиреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдЖрдкрдХреА рдЯреАрдо рдХреЗ рдкрд╛рд╕ рд╕реВрдЪрдирд╛ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╢рд┐рдХреНрд╖рд╛ рдФрд░ рдЕрдиреБрднрд╡ рд╡рд╛рд▓рд╛ рд╡реНрдпрдХреНрддрд┐ рд╣реИред рдпрд╣ рдХреНрд╖реЗрддреНрд░ рдмреЗрд╣рдж рд╡рд┐рд╢рд╛рд▓, рдЬрдЯрд┐рд▓ рдФрд░ рд╡рд┐рд╡рд┐рдз рд╣реИ, рдЗрд╕реЗ рдПрдХ рддрд╕реНрд╡реАрд░ рдХреЗ рд╕рд╛рде рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЖрдкрдХреЛ рдЖрд╢реНрд╡рд╛рд╕рди рджреЗрддрд╛ рд╣реВрдВред рдореИрдВ рдЖрдк рд╕рднреА рдХреА рд╕рдлрд▓рддрд╛ рдХреА рдХрд╛рдордирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдЖрдкрдХреЗ рдзреНрдпрд╛рди рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!

Source: https://habr.com/ru/post/In124090/


All Articles