рддреАрди рдкрд╛рд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓

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

рдкрд┐рдЫрд▓реЗ рд╡рд┐рд╖рдп:


рдпрджрд┐ рдРрд▓рд┐рд╕ рдФрд░ рдмреЙрдм рдХреЗ рдмреАрдЪ рдПрдХ рд╕рдВрдЪрд╛рд░ рдЪреИрдирд▓ рд╣реИ рдЬреЛ рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕рдВрд╢реЛрдзрди рдХреЗ рд▓рд┐рдП рд╕реБрд▓рдн рдирд╣реАрдВ рд╣реИ (рдЬреЛ рдХрд┐, рдЬрдм рдХреЗрд╡рд▓ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХреНрд░рд┐рдкреНрдЯреЛрдХрд░реЗрдВрд╕реА рдореЙрдбрд▓ рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ), рддреЛ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рдпрд╛ рдЕрдиреНрдп рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╡рд┐рдирд┐рдордп рдХреЗ рдмрд┐рдирд╛ рднреА, рдЖрдк рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлреА рдореЗрдВ рдкрд╣рд▓реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рд╡рд┐рдЪрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред 1980 рдореЗрдВ RSA рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, 1980 рдореЗрдВ, рдЖрджрд┐ рд╢рдореАрд░ рдиреЗ рдЧреБрдкреНрдд рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд┐рдП рдмрд┐рдирд╛ рд╕реВрдЪрдирд╛ рдкреНрд░рд╕рд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдореНрдпреВрдЯреЗрдЯрд┐рд╡ рдСрдкрд░реЗрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдХреНрд░рд┐рдкреНрдЯреЛрдХрд░рдВрд╕реА рдХреЗ рдЙрдкрдпреЛрдЧ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд░рдЦрд╛ред рдпрджрд┐ рд╣рдо рдорд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░реЗрд╖рд┐рдд рд╕реВрдЪрдирд╛ рдПрдХ рдЧреБрдкреНрдд рд╕рддреНрд░ рдХреБрдВрдЬреА рд╣реИ рдЬреЛ рдХрд┐рд╕реА рдПрдХ рдкрдХреНрд╖ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рддреЛ рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░ рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддреАрди рдкрд╛рд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдорд┐рд▓рддреЗ рд╣реИрдВред

рдкреВрд░реНрд╡:

  • рдРрд▓рд┐рд╕ рдФрд░ рдмреЙрдм рдПрдХ тАЛтАЛрдЕрд╕реБрд░рдХреНрд╖рд┐рдд рд╕рдВрдЪрд╛рд░ рдЪреИрдирд▓ рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реИрдВ, рдПрдХ рд╣рдорд▓рд╛рд╡рд░ рджреНрд╡рд╛рд░рд╛ рд╕реБрдирдиреЗ (рд▓реЗрдХрд┐рди рд╕рдВрд╢реЛрдзрди рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ) рдХреЗ рд▓рд┐рдП рдЦреБрд▓рд╛ рд╣реИред
  • рдкреНрд░рддреНрдпреЗрдХ рдкрдХреНрд╖ рдореЗрдВ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдФрд░ рдирд┐рдЬреА рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреА рдПрдХ рдЬреЛрдбрд╝реА рд╣реИ KA ред kA ред KB ред kB рдХреНрд░рдорд╢рдГред
  • рдкрд╛рд░реНрдЯрд┐рдпреЛрдВ рдиреЗ рдХрдореНрдпреВрдЯреЗрдЯрд┐рд╡ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЪрдпрди рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ:

    \ start {array} {lll} D_ {A} \ left (E_ {A} \ left (X \ right) \ right) = X & \ forall X, \ left \ {K_A, k_a \ right \}; \\ E_ {A} \ рдмрд╛рдПрдБ (E_ {B} \ рдмрд╛рдПрдБ (X \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ) = E_B \ рдмрд╛рдПрдБ (E_A \ рдмрд╛рдПрдБ (X \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ) рдФрд░ \ forall ~ K_A, K_B, X \ _ рдЕрдВрдд {рд╕рд░рдгреА}

    \ start {array} {lll} D_ {A} \ left (E_ {A} \ left (X \ right) \ right) = X & \ forall X, \ left \ {K_A, k_a \ right \}; \\ E_ {A} \ рдмрд╛рдПрдБ (E_ {B} \ рдмрд╛рдПрдБ (X \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ) = E_B \ рдмрд╛рдПрдБ (E_A \ рдмрд╛рдПрдБ (X \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ) рдФрд░ \ forall ~ K_A, K_B, X \ _ рдЕрдВрдд {рд╕рд░рдгреА}

рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рдкреНрд░рд╕рд╛рд░рдг (рдЗрд╕рд▓рд┐рдП рдирд╛рдо) рдФрд░ рдПрдХ рдЕрдВрддрд┐рдо рдПрдХ рдХреЗ рд╕рд╛рде рддреАрди рдкрд╛рд╕ рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рд╕ рдкрд░ рдмреЙрдм рдХреБрдВрдЬреА рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИред

  1. рдРрд▓рд┐рд╕ рдПрдХ рдирдпрд╛ рд╕рддреНрд░ рдХреБрдВрдЬреА рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ K

    рдРрд▓рд┐рд╕ \ _ рд╕реЗ рдмрд╛рдпрд╛рдБ \ _ E_A \ рдмрд╛рдПрдБ (K \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ \} \ рдмреЙрдм рд╕реЗрдРрд▓рд┐рд╕ \ _ рд╕реЗ рдмрд╛рдпрд╛рдБ \ _ E_A \ рдмрд╛рдПрдБ (K \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ \} \ рдмреЙрдм рд╕реЗ
  2. Bob \ to \ left \ {E_B \ left (E_A \ left (K \ right) \ right) \ right \} рдХреЛ AliceBob \ to \ left \ {E_B \ left (E_A \ left (K \ right) \ right) \ right \} рдХреЛ Alice
  3. рдРрд▓рд┐рд╕, рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдХрдореНрдпреВрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП,

    DA рдмрд╛рдПрдБ(EB рдмрд╛рдПрдБ(EA рдмрд╛рдПрдБ(K рджрд╛рдПрдБ) рджрд╛рдПрдБ) рджрд╛рдПрдБ)=DA рдмрд╛рдПрдБ(EA рдмрд╛рдПрдБ(EB рдмрд╛рдПрдБ(K рджрд╛рдПрдБ) рджрд╛рдПрдБ) рджрд╛рдПрдБ)EB рдмрд╛рдПрдБ(K )

    рдмрд╛рдПрдБрдмрд╛рдПрдБрдмрд╛рдПрдБрджрд╛рдПрдБрджрд╛рдПрдБрджрд╛рдПрдБрдмрд╛рдПрдБрдмрд╛рдПрдБрдмрд╛рдПрдБрджрд╛рдПрдБрджрд╛рдПрдБрджрд╛рдПрдБрдмрд╛рдПрдБ

    рдРрд▓рд┐рд╕ \ _ рдХреЛ \ _ \ _ рдИ_ \ рд▓реЗрдлреНрдЯ (рдХреЗ \ рд░рд╛рдЗрдЯ) рдХреЛ \ _ \ _ \ _ рдХреЛ рдмреЙрдмрдРрд▓рд┐рд╕ \ _ рдХреЛ \ _ \ _ рдИ_ \ рд▓реЗрдлреНрдЯ (рдХреЗ \ рд░рд╛рдЗрдЯ) рдХреЛ \ _ \ _ \ _ рдХреЛ рдмреЙрдм
  4. рдмреЙрдм рдбрд┐рдХреНрд░рд┐рдкреНрдЯ DB рдмрд╛рдПрдБ(EB рдмрд╛рдПрдБ(K рджрд╛рдПрдБ) рджрд╛рдПрдБ)=Kрдмрд╛рдПрдБрдмрд╛рдПрдБрджрд╛рдПрдБрджрд╛рдПрдБ

рдирддреАрдЬрддрди, рдкрд╛рд░реНрдЯрд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╕рд╛рдЭрд╛ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИред K ред

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

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

рддреБрдЪреНрдЫ рд╡рд┐рдХрд▓реНрдк


рдЖрдЗрдП рд╣рдо XOR рдлрд╝рдВрдХреНрд╢рди (рдмрд┐рдЯрд╡рд╛рдЗрдб рдЬреЛрдбрд╝ рдореЛрдбреБрд▓реЛ 2) рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджреЗрддреЗ рд╣реИрдВред рдпрджреНрдпрдкрд┐ рдЗрд╕ рдлрд╝рдВрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рддреАрди рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд╝рд┐рдХ рд╢рдХреНрддрд┐ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рдиреАрдВрд╡ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдмреБрд░рд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИред

рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рджреЛрдиреЛрдВ рдкрдХреНрд╖реЛрдВ рдХреЗ рдкрд╛рд╕ рдЕрдкрдиреА рдЧреБрдкреНрдд рдЪрд╛рдмрд┐рдпрд╛рдБ рд╣реИрдВред KA рдФрд░ KB рд╡рд░реНрдгреЛрдВ рдХреЗ рдПрдХ рд╕рдорд╛рди рд╡рд┐рддрд░рдг рдХреЗ рд╕рд╛рде рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдмрд╛рдЗрдирд░реА рджреГрд╢реНрдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдирд╛ред рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ Ei(X)=X oplusKi рдЬрд╣рд╛рдБ X рдпрд╣ рд╕рдВрджреЗрд╢ рднреА Ki - рдЧреБрдкреНрдд рдХреБрдВрдЬреАред рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕реНрдкрд╖реНрдЯ рд╣реИ:

 $

  1. рдРрд▓рд┐рд╕ рдПрдХ рдирдпрд╛ рд╕рддреНрд░ рдХреБрдВрдЬреА рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ K

    рдРрд▓рд┐рд╕ \ to \ рдмрд╛рдпрд╛рдВ \ {рдИ_рдП \ рдмрд╛рдпрд╛рдВ (рдХреЗ \ рджрд╛рдпрд╛) = рдХреЗрдмреА рдУрдкреНрд▓рд╕ рдХреЗ_рдП \ _ \ _ \ _ рдмреЙрдмрдРрд▓рд┐рд╕ \ to \ рдмрд╛рдпрд╛рдВ \ {рдИ_рдП \ рдмрд╛рдпрд╛рдВ (рдХреЗ \ рджрд╛рдпрд╛) = рдХреЗрдмреА рдУрдкреНрд▓рд╕ рдХреЗ_рдП \ _ \ _ \ _ рдмреЙрдм
  2. рдмреЙрдм \ _ рд╕реЗ \ _ \ _ E_B \ рдмрд╛рдПрдБ (E_A \ рдмрд╛рдПрдБ (K \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ) = K \ oplus K_A \ oplus K_B \ right \} \ рдХреЗ рд▓рд┐рдП рдРрд▓рд┐рд╕рдмреЙрдм \ _ рд╕реЗ \ _ \ _ E_B \ рдмрд╛рдПрдБ (E_A \ рдмрд╛рдПрдБ (K \ рджрд╛рдПрдБ) \ рджрд╛рдПрдБ) = K \ oplus K_A \ oplus K_B \ right \} \ рдХреЗ рд▓рд┐рдП рдРрд▓рд┐рд╕
  3. рдРрд▓рд┐рд╕, рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдХрдореНрдпреВрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП,

    D_A \ left (E_B \ left (E_A \ left (K \ right) \ right) \ right) = K \ oplus K_A \ oplus K_B \ oplus K_A = K \ oplus K_B = \ _ \ _ рдмрд╛рдПрдВ (K \ right)ред

    D_A \ left (E_B \ left (E_A \ left (K \ right) \ right) \ right) = K \ oplus K_A \ oplus K_B \ oplus K_A = K \ oplus K_B = \ _ \ _ рдмрд╛рдПрдВ (K \ right)ред

    рдРрд▓рд┐рд╕ \ _ рд╕реЗ \ _ \ _ E_B \ рдмрд╛рдПрдБ (K \ рджрд╛рдПрдБ) = K \ oplus K_B \ рджрд╛рдПрдБ \ "рдмреЙрдм $рдРрд▓рд┐рд╕ \ _ рд╕реЗ \ _ \ _ E_B \ рдмрд╛рдПрдБ (K \ рджрд╛рдПрдБ) = K \ oplus K_B \ рджрд╛рдПрдБ \ "рдмреЙрдм $
  4. рдмреЙрдм рдбрд┐рдХреНрд░рд┐рдкреНрдЯ DB рдмрд╛рдПрдБ(EB рдмрд╛рдПрдБ(K рджрд╛рдПрдБ) рджрд╛рдПрдБ)=K oplusKB oplusK==рдмрд╛рдПрдБрдмрд╛рдПрдБрджрд╛рдПрдБрджрд╛рдПрдБ

рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рддреНрд░ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдРрд▓рд┐рд╕ рдФрд░ рдмреЙрдм рдЖрдо рд╕рддреНрд░ рдХреБрдВрдЬреА рдЬрд╛рдирддреЗ рд╣реИрдВ K ред

рдкрд░рдлреЗрдХреНрдЯ рд╕реАрдХреНрд░реЗрд╕реА рдХреЗ рдХрдореНрдпреВрдЯреЗрдЯрд┐рд╡ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдлрдВрдХреНрд╢рди рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╡рд┐рдХрд▓реНрдк рдЕрд╕рдлрд▓ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдРрд╕реА рд╕реНрдерд┐рддрд┐рдпрд╛рдБ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдПрдХ рдХреНрд░рд┐рдкреНрдЯреЛрдХрд░рдВрд╕реА рдХреБрдВрдЬреА рдХреЛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░ рд╕рдХрддреА рд╣реИред K ред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдПрдХ рдХреНрд░рд┐рдкреНрдЯреЛрдХрд░рдВрд╕реА рдиреЗ рддреАрдиреЛрдВ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯ рдХрд┐рдпрд╛:

K oplusKA,  K oplusKA oplusKB,  K oplusKBред

ред


рддреАрдиреЛрдВ рд╕рдВрджреЗрд╢реЛрдВ рдореЗрдВ рдореЛрдбреБрд▓реЛ 2 рдЬреЛрдбрд╝ рдХреБрдВрдЬреА рджреЗрддрд╛ рд╣реИ K ред рдЗрд╕рд▓рд┐рдП, рдРрд╕реЗ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рд╕рд┐рд╕реНрдЯрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрдм рд╣рдо рдШрд╛рддреАрдп (рдХрдореНрдпреВрдЯреЗрдЯрд┐рд╡) рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЧреБрдкреНрдд рдХреБрдВрдЬреА рдХреЗ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣рд╕реНрддрд╛рдВрддрд░рдг рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкреНрд░рд╕реНрддреБрдд рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдЕрд╕рддрдд рд▓рдШреБрдЧрдгрдХ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреЗ рдХрд╛рд░реНрдп рдХреА рдХрдард┐рдирд╛рдИ рд╕реЗ рдЬреБрдбрд╝реА рд╣реИ: рдЬреНрдЮрд╛рдд рдореВрд▓реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП y,рдЬреА,рдкреАрдЬреАрдкреА рдЦреЛрдЬ x рд╕рдореАрдХрд░рдг рд╕реЗ y=gx bmodp ред

рд╢рдореАрд░ рдХрд╛ рдХреАрд▓реЗрд╕ рдкреНрд░реЛрдЯреЛрдХреЙрд▓


рдкрд╛рд░реНрдЯрд┐рдпрд╛рдВ рдПрдХ рдмрдбрд╝реЗ рдкреНрд░рд╛рдЗрдо рдкрд░ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╕рд╣рдордд рд╣реИрдВ p sim21024 ред рдкреНрд░рддреНрдпреЗрдХ рдкрдХреНрд╖ рдПрдХ рдЧреБрдкреНрдд рдХреБрдВрдЬреА рдЪреБрдирддрд╛ рд╣реИред рдПрдХрдПрдХ рдФрд░ рдмрдм ред рдпреЗ рдХреБрдВрдЬрд┐рдпрд╛рдБ рдЫреЛрдЯреА рдФрд░ рдкрд░рд╕реНрдкрд░ рд╕рд░рд▓ рд╣реЛрддреА рд╣реИрдВред pтИТ1 ред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд╛рд░реНрдЯрд┐рдпреЛрдВ рдХреЛ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ тА▓ рдФрд░ рдмтА▓ рдЙрдиреНрд╣реЗрдВ рдЕрдкрдиреА рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд┐рдП рдЧрдП рд╕рдВрджреЗрд╢ рдХреЛ рдбрд┐рдХреНрд░рд┐рдкреНрдЯ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ:

 startarrayla=aтИТ1 mod(pтИТ1),a рдЯрд╛рдЗрдореНрд╕aтА▓=1 mod(pтИТ1), forallX:(X)a)aтА▓=X. endрд╕рд░рдгреА



рдЕрдВрддрд┐рдо рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ Fermat рдХреЗ рдЫреЛрдЯреЗ рдкреНрд░рдореЗрдп \ рд╕реВрдЪрдХрд╛рдВрдХ {рдкреНрд░рдореЗрдп рдХреЗ рдХреЛрд░реЛрд▓рд░реА рджреНрд╡рд╛рд░рд╛ рд╕рдЪ рд╣реИ! рдЦреЗрдд рдЫреЛрдЯрд╛ рд╣реИ}ред рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдФрд░ рдбрд┐рдХреНрд░рд┐рдкреНрд╢рди рдСрдкрд░реЗрд╢рди рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдП рдЧрдП рд╣реИрдВ:

\ start {array} {lll} \ forall M <p: & C = E (M) = M ^ {a} & \ mod p, \\ & D (C) = C ^ {a '} & \ mod p, \\ & D_A (E_A (M)) = M ^ {рдЖ '} = M & \ mod pред \\ \ рдЕрдВрдд {рд╕рд░рдгреА}


  1. рдРрд▓рд┐рд╕ рдПрдХ рдирдпрд╛ рд╕рддреНрд░ рдХреБрдВрдЬреА рдХрд╛ рдЪрдпрди рдХрд░рддрд╛ рд╣реИ K<p

    рдРрд▓рд┐рд╕ \ to \ рдмрд╛рдпрд╛рдВ \ {рдИ_рдП \ рдмрд╛рдпрд╛рдВ (рдХреЗ \ рджрд╛рдпрд╛) = рдХреЗ ^ рдП \ _ рдмрд╛рдореЛрдб рдкреА \ _ \ _ \ _ рдмреЙрдм
  2. Bob \ _ to \ left \ {E_B \ left (E_A \ left (K \ right) \ right) = K ^ {ab} \ bmod p \ right \} рдХреЛ рдРрд▓рд┐рд╕
  3. рдРрд▓рд┐рд╕, рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдлрд╝рдВрдХреНрд╢рди рдХреЗ рдХрдореНрдпреВрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП,

    DA рдмрд╛рдПрдБ(EB рдмрд╛рдПрдБ(EA рдмрд╛рдПрдБ(K рджрд╛рдПрдБ) рджрд╛рдПрдБ) рджрд╛рдПрдБ)=KabaтА▓=Kb=EB рдмрд╛рдПрдБ(K рджрд╛рдПрдБ) modpред


    рдРрд▓рд┐рд╕ \ рд╕реЗ \ рдмрд╛рдпрд╛рдВ \ {рдИ_рдирдпрд╛ рдмрд╛рдпрд╛рдВ (рдХреЗ \ рджрд╛рдпрд╛) = рдХреЗ ^ рдмреА \ _ \ _ \ _ рдмреЙрдм $ рдд
  4. рдмреЙрдм рдбрд┐рдХреНрд░рд┐рдкреНрдЯ DB рдмрд╛рдПрдБ(EB рдмрд╛рдПрдБ(K рджрд╛рдПрдБ) рджрд╛рдПрдБ)=KbbтА▓ bmod==

рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рддреНрд░ рдХреЗ рдЕрдВрдд рдореЗрдВ, рдРрд▓рд┐рд╕ рдФрд░ рдмреЙрдм рдЖрдо рд╕рддреНрд░ рдХреБрдВрдЬреА рдЬрд╛рдирддреЗ рд╣реИрдВ K ред

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдПрдХ рдХреНрд░рд┐рдкреНрдЯреЛрдХрд░рдВрд╕реАрд▓ рдЗрдВрдЯрд░рд╕реЗрдкреНрдЯреЗрдб рддреАрди рд╕рдВрджреЗрд╢ рд╣реИрдВ:

 startarrayly1=Kaabmodp,y2=Kab bmodp,y3=Kb bmodpред рдЕрдВрддрд╕рд░рдгреА


рдХреБрдВрдЬреА рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП K , рдПрдХ рдХреНрд░рд┐рдкреНрдЯреЛрдХрд░рдВрд╕реА рдХреЛ рдЗрди рддреАрди рд╕рдореАрдХрд░рдгреЛрдВ рдХреА рдПрдХ рдкреНрд░рдгрд╛рд▓реА рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдмрд╣реБрдд рдмрдбрд╝реА рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЬрдЯрд┐рд▓рддрд╛ рд╣реИ, рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдЕрд╕реНрд╡реАрдХрд╛рд░реНрдп рд╣реИ, рдпрджрд┐ рд╕рднреА рддреАрди рд╕рдВрдЦреНрдпрд╛рдПрдВ рдП,рдмреА,рдЕрдм рдХрд╛рдлреА рдмрдбрд╝рд╛ рд╣реИред рдорд╛рди рд▓рд┐рдпрд╛ рдХрд┐ рдПрдХ (рдпрд╛ рдм ) рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред рдлрд┐рд░, рдХреНрд░рдорд┐рдХ рдбрд┐рдЧреНрд░реА рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ y3 (рдпрд╛ y1 ), рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдПрдХ (рдпрд╛ рдм ), рдкрд░рд┐рдгрд╛рдо рдХреА рддреБрд▓рдирд╛ рдХреЗ рд╕рд╛рде y2 ред рдЬреНрдЮрд╛рди рдПрдХ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдЖрд╕рд╛рди рд╣реИ aтИТ1 bmod(рдкреАтИТ1) рдФрд░ K=(y1)aтИТ1 bmodp ред

рдореИрд╕реА-рдУрдореБрд░рд╛ рдХреНрд░рд┐рдкреНрдЯреЛрд╕рд┐рд╕реНрдЯрдо


1982 рдореЗрдВ, рдЬреЗрдореНрд╕ рдореИрд╕реА рдФрд░ рдЬрд┐рдо рдУрдореБрд░рд╛ рдиреЗ рдПрдХ рдкреЗрдЯреЗрдВрдЯ (рдЬреЗрдореНрд╕ рдореИрд╕реА, рдЬрд┐рдо рдХреЗред рдУрдореБрд░рд╛) рджрд╛рдпрд░ рдХрд┐рдпрд╛, (рдЙрдирдХреА рд░рд╛рдп рдореЗрдВ) рд╢рдореАрд░ рдХреЗ рдкреНрд░рдореБрдЦ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ред рдПрдХ рдЧреБрдгрдХ рд╕рдореВрд╣ рдореЗрдВ рдШрд╛рддрд╛рдВрдХ рдХреЗ рдмрдЬрд╛рдп рдПрдХ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдСрдкрд░реЗрд╢рди рдХреЗ рд░реВрдк рдореЗрдВ  mathbbZтИЧp рдЙрдиреНрд╣реЛрдВрдиреЗ рдЧреИрд▓реЛрдЬ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдШрд╛рддрд╛рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛  mathbbGF2n ред рдкреНрд░рддреНрдпреЗрдХ рдкрд╛рд░реНрдЯреА рдХреА рдЧреБрдкреНрдд рдХреБрдВрдЬреА (рдРрд▓рд┐рд╕ рдХреЗ рд▓рд┐рдП - рдПрдХ ) рд╢рд░реНрддреЛрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП:

 startarraylin mathbbGF2n,gfd left(a,xnтИТ1+xnтИТ2+...+x+1 рд╕рд╣реА)=1. рдЕрдВрддрд╕рд░рдгреА


рдЕрдиреНрдпрдерд╛, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рдорд╛рди рджрд┐рдЦрддрд╛ рд╣реИред

рдЕрдВрддрднрд╛рд╖рдг


рд▓реЗрдЦрдХ рдкрд╛рда рдкрд░ рддрдереНрдпрд╛рддреНрдордХ рдФрд░ рдЕрдиреНрдп рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрднрд╛рд░реА рд╣реЛрдЧрд╛ред

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


All Articles