$ 3 рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдХреБрдВрдЬреА - рдХреНрдпрд╛ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ?


рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо рдПрдХ USB рдлреНрд▓реИрд╢ рдбреНрд░рд╛рдЗрд╡ рдХрд╛ рдЖрдХрд╛рд░ рд╣реИред

рд╡реНрдпрд╛рдкрдХ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдФрд░, рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреА рдПрдХ рдмрд╣реБрддрд╛рдпрдд рдЖрдкрдХреЛ рдЙрдирдХреЗ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рднрдВрдбрд╛рд░рдг рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрддреА рд╣реИред рдмрд╛рд╣рд░реА рдЙрдкрдХрд░рдгреЛрдВ рдкрд░ рдХреБрдВрдЬреА рдЬрдорд╛ рдХрд░рдирд╛, рдЬрд╣рд╛рдВ рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдХреЙрдкреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓рдВрдмреЗ рд╕рдордп рд╕реЗ рдЕрдЪреНрдЫрд╛ рдЕрднреНрдпрд╛рд╕ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИред рдореИрдВ $ 3 рдФрд░ 2 рдШрдВрдЯреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рддрд░рд╣ рдХреЗ рдЙрдкрдХрд░рдг рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдВрдЧрд╛ред

рдЪрд┐рддреНрд░ рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ?
. . : ┬л тАФ , тАж , ...┬╗. , , )

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдХрд╛рдо рдХреЗ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


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

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

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



рдЖрд╡рд╢реНрдпрдХ рдШрдЯрдХ


рддреЛ рдЪрд▓реЛ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИред рд╣рдо STM32 рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЗ рдПрдХ рд╕рд╕реНрддреА рдФрд░ рдХрд╛рдлреА рд▓реЛрдХрдкреНрд░рд┐рдп рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдкрд░ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдВрдЧреЗред рдмреЗрд╢рдХ, рдЖрдк рдПрдХ рдореБрджреНрд░рд┐рдд рд╕рд░реНрдХрд┐рдЯ рдмреЛрд░реНрдб рдЦреБрдж рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо 2 рдШрдВрдЯреЗ рдореЗрдВ рдкреНрд░рдмрдВрдзрди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рддреЛ рдЪрд▓реЛ рдПрдХ рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рд▓реЗрддреЗ рд╣реИрдВ - рдПрд╕рдЯреА-рд▓рд┐рдВрдХ рд╡реА 2 рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ред рдпрд╣ рдбрд┐рд╡рд╛рдЗрд╕ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИред



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

рдХреБрд▓, рд╣рдореЗрдВ рдЪрд╛рд╣рд┐рдП:

  • рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ ST-Link v2 - 2 рдЯреБрдХрдбрд╝реЗ
  • рд╕реЛрд▓реНрдбрд░рд┐рдВрдЧ рдЖрдпрд░рди
  • рдХреБрдЫ рддрд╛рд░ - рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рддрд╛рд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрд╕рдЯреА-рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рд╢рд╛рдорд┐рд▓ рд╣реИрдВ
  • рд▓рд┐рдирдХреНрд╕, рдлрд░реНрдорд╡реЗрдпрд░ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП

рдлрд░реНрдорд╡реЗрдпрд░ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдХрд░реЗрдВ


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

$ cd src

рдлрд░реНрдорд╡реЗрдпрд░ рдХреЛ рд╕рдВрдХрд▓рд┐рдд рдФрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдХрдИ рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:

  • рд╣рд╛рде-рдирди-EABI-рдЬреАрд╕реАрд╕реА
  • рд╣рд╛рде-рдирди-EABI-newlib
  • openocd

рдореИрдВ рдкреЗрд╕рдореИрди рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпрд╣ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ


$ sudo pacman -S arm-none-eabi-gcc
$ sudo pacman -S arm-none-eabi-newlib
$ sudo pacman -S openocd

рдпрджрд┐ рдЖрдк рдЙрдмрдВрдЯреВ рдкрд░ рдмреИрдареЗ рд╣реИрдВ - рдЙрдкрдпреБрдХреНрдд рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред

рдореИрдВ рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛ рджреВрдВ рдХрд┐ рд╣рдо рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ src рдлреЛрд▓реНрдбрд░ рдореЗрдВ рд╣реИрдВред
рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд▓рд╛рдПрдБ

$ ./configure --vidpid=234b:0000

рд╣рдо рдореЗрдХ рдпреВрдЯрд┐рд▓рд┐рдЯреА рдЪрд▓рд╛рддреЗ рд╣реИрдВ рдФрд░ рдирд┐рд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рд╣рдорд╛рд░рд╛ рдлрд░реНрдорд╡реЗрдпрд░ рдХреИрд╕реЗ рд╕рдВрдХрд▓рд┐рдд рд╣реИред

$ make

рд╕рдВрдХрд▓рди рдХреЗ рдмрд╛рдж, рдмрд┐рд▓реНрдб рдлрд╝реЛрд▓реНрдбрд░ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ gnuk.elf рдлрд╝рд╛рдЗрд▓ - рд╣рдореЗрдВ рдЗрд╕рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд▓рд┐рдП рдлрд░реНрдорд╡реЗрдпрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ


рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рдлрд╝рд╛рдЗрд▓ рд╣реИ, рд╣рдореЗрдВ рдХреЗрд╡рд▓ рдЗрд╕реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдЯрд╛рдВрдХрд╛ рд▓рдЧрд╛рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрд╣реЗ рдХреЗ рд╕рд╛рде рдереЛрдбрд╝рд╛ рдХрд╛рдо рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдЪрд┐рдВрддрд╛ рди рдХрд░реЗрдВ, рдЖрдкрдХреЛ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдХреМрд╢рд▓ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдмрд╕ 4 рддрд╛рд░ рдорд┐рд▓рд╛рдПрдВред

рдЗрд╕рд▓рд┐рдП, рд╣рдо рдкреНрд░реЛрдЧреНрд░рд╛рдорд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд▓реЗрддреЗ рд╣реИрдВ рдФрд░ рдорд╛рдорд▓реЗ рдХреЛ рдЗрд╕рд╕реЗ рджреВрд░ рдХрд░рддреЗ рд╣реИрдВред рдЪрдпрдирд┐рдд рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╣рдорд╛рд░рд╛ рджрд╛рддрд╛ рд╣реЛрдЧрд╛ред рдпрд╣рд╛рдВ рд╣рдо рдЬрд╛рдирддреЗ рд╣реИрдВ рдХрд┐ рдЕрдВрджрд░ рдХреНрдпрд╛ рд╣реИред



рдмреЛрд░реНрдб рдкрд░ 4 рдкрд┐рдиреЛрдВ рдкрд░ рдзреНрдпрд╛рди рджреЗрдВред рд╣рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдорд┐рд▓рд╛рдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрд╕рдЯреА-рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдЖрдиреЗ рд╡рд╛рд▓реЗ рддрд╛рд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВред рд╣рдо рдПрдХ рдЫреЛрд░ рд╕реЗ рддрд╛рд░реЛрдВ рдХреЛ рд╕рд╛рдл рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╕рдВрдкрд░реНрдХреЛрдВ рдХреЛ рдорд┐рд▓рд╛рдк рдХрд░рддреЗ рд╣реИрдВред рдпрджрд┐ рд╣рдо рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рд╣реИрдВ, рддреЛ рдмреЛрд░реНрдб рдкрд░ рдЗрди рд╕рдВрдкрд░реНрдХреЛрдВ рдХреЗ рд╕рдВрдХреЗрдд рд╣реЛрдВрдЧреЗред

"

рдЕрдм, рд╣рдо рддрд╛рд░реЛрдВ рдХреЗ рджреВрд╕рд░реЗ рдЫреЛрд░ рдХреЛ рд╢реЗрд╖ рдкреВрд░реЗ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рд╕реЗ рдЬреЛрдбрд╝рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рд╣реИрдВ, рддреЛ рдмрд╕ рддрд╛рд░реЛрдВ рдХреЛ рд╢рд┐рд▓рд╛рд▓реЗрдЦреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдХрдиреЗрдХреНрдЯ рдХрд░реЗрдВ:

GND GND
3.3V рд╕реЗ 3.3V
SWDIO рдХреЛ SWDIO
SWCLK рдХреЛ SWCLK рдХрд░реЗрдВ

рдпрджрд┐ рдмреЛрд░реНрдб рдкрд░ рдХреЛрдИ рд▓реЗрдмрд▓ рдирд╣реАрдВ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкрд░реАрдХреНрд╖рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкрд░ рдкреНрд░рд╣рд╛рд░ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ ред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рдЖрдк рдЖрд╕рд╛рдиреА рд╕реЗ рдЬреАрдПрдирдбреА рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ (рдпрд╣ рджрд╛рддрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреЗ рдЯрд░реНрдорд┐рдирд▓реЛрдВ рдкрд░ рдЬреАрдПрдирдбреА рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реБрдЖ рд╣реИ), 3.3 рд╡реА рдХреЗ рд╕рдорд╛рдиред рд╢реЗрд╖ рджреЛ рддрд╛рд░реЛрдВ рдХреЛ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдкрд░ рдЬреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред рд╕реМрднрд╛рдЧреНрдп рд╕реЗ, рдХреЗрд╡рд▓ 2 рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ рдирддреАрдЬрддрди, рд╣рдореЗрдВ рдЗрд╕рдХреЗ рд╕рдорд╛рди рдХреБрдЫ рдорд┐рд▓рддрд╛ рд╣реИред



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

рдлрд░реНрдорд╡реЗрдпрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ


рд╣рдо рд╕рдлрд▓рддрд╛ рд╕реЗ рдПрдХ рдХрджрдо рджреВрд░ рд╣реИрдВ, рдпрд╣ рдХреЗрд╡рд▓ рдлрд░реНрдорд╡реЗрдпрд░ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛ рд╣реБрдЖ рд╣реИред рдЯрд░реНрдорд┐рдирд▓ рдЦреЛрд▓реЗрдВ, рд╣рдорд╛рд░реЗ рдлрд░реНрдорд╡реЗрдпрд░ (gnuk.elf) рдХреЗ рд╕рд╛рде рдлрд╝реЛрд▓реНрдбрд░ рдкрд░ рдЬрд╛рдПрдВред

рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:

$ openocd -f interface/stlink-v2.cfg -f target/stm32f1x.cfg -c 'program build/gnuk.elf verify reset exit'

рддреЛ, рдЕрдм рд╣рдордиреЗ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЛ рдЕрдкрдиреЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рд╣реИред рдПрдХ рдХрджрдо рдмрдЪрд╛ рдерд╛ - рдорд╛рдЗрдХреНрд░реЛрдХрдВрдЯреНрд░реЛрд▓рд░ рдХреА рдореЗрдореЛрд░реА рдкрдврд╝рдиреЗ рдкрд░ рд░реЛрдХ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдПред рдзреНрдпрд╛рди! рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд░рдг рд╣реИ, рдЬреЛ рдЙрд╕ рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЪреЛрд░реА рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреЗрдЧрд╛ рдЬреЛ рдЗрд╕рд╕реЗ рдЧреБрдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреА рдЪрд╛рдмреА рдЪреБрд░рд╛рддрд╛ рд╣реИред

рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:

openocd -f interface/stlink-v2.cfg -f target/stm32f1x.cfg -c init -c "reset halt" -c "stm32f1x lock 0" -c reset -c exit   

рдЕрдм рд╕рдм рдХреБрдЫ рддреИрдпрд╛рд░ рд╣реИред

рд╕рдм рд╡рд╛рдкрд╕ рдбрд╛рд▓ рджрд┐рдпрд╛


рдЕрдм рдХреНрдпреЛрдВрдХрд┐ рд╕рднреА рдХрджрдо рдкреАрдЫреЗ рд╣реИрдВ, рдпрд╣ рд╣рдорд╛рд░реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдХрд╛ рдзреНрдпрд╛рди рд░рдЦрдирд╛ рд╣реИред рд╣рдо рддрд╛рд░реЛрдВ рдХреЛ рдорд┐рд▓рд╛рдк рдХрд░рддреЗ рд╣реИрдВред рд╣рдореЗрдВ рдЕрдм рдореВрд▓ рд╕рдВрдкрд░реНрдХ рдмрд╛рд░ рдХреА рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЗрд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдЕрдирд╕реЛрд▓реНрдб рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред



рдорд╛рдЙрдВрдЯ рдХреЛ рддреЛрдбрд╝реЗрдВ рдФрд░ рдПрдХ рд╕рдордп рдореЗрдВ рд╕рдВрдкрд░реНрдХреЛрдВ рдХреЛ рдорд┐рд▓рд╛рдк рдХрд░реЗрдВред



рдЕрдм рд╣рдо рдорд╛рдорд▓реЗ рдХреЛ рд╡рд╛рдкрд╕ рдбрд╛рд▓рддреЗ рд╣реИрдВ рдФрд░ рдкреНрд▓рд╛рд╕реНрдЯрд┐рдХ рдХреЗ рдЙрдкрдпреБрдХреНрдд рдЯреБрдХрдбрд╝реЗ рдХреЗ рд╕рд╛рде рдкреАрдЫреЗ рдХреА рджреАрд╡рд╛рд░ рдХреЛ рд╕реАрд▓ рдХрд░рддреЗ рд╣реИрдВред

рдореИрдВ рдХреИрд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?


рд╣рдордиреЗ рдЬреЛ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рд╣реИ рд╡рд╣ рдПрдХ OpenPGP рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдб рдПрдореБрд▓реЗрдЯрд░ рд╣реИ ред рдРрд╕рд╛ рдХрд╛рд░реНрдб GPG, SSH рдХреАрдЬрд╝ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИред рдЧреБрдВрдЬрд╛рдЗрд╢ рдХрд╛рдлреА рдмрдбрд╝реА рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

  • рд╕рд╛рдЗрдирд┐рдВрдЧ рдЧреЗрдЯ рдХрдорд┐рдЯ - рдпрд╣рд╛рдВ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рд╕реБрд░рдХреНрд╖рд╛ рдореБрджреНрджрд╛ рдЙрдард╛рдпрд╛ рдЧрдпрд╛ рд╣реИ
  • SSH рдХреБрдВрдЬреА рднрдВрдбрд╛рд░рдг
  • S / MIME рдИрдореЗрд▓ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рдФрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ - рдХреА рдЬрд╛рдБрдЪ рдирд╣реАрдВ рдХреА, рд▓реЗрдХрд┐рди рд╡реЗ рд▓рд┐рдЦрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ
  • рдкрд╛рд╕рд╡рд░реНрдб рдХреЗ рдмрд┐рдирд╛ рдУрдПрд╕ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдирд╛ - рд╣рдм рдкрд░ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЧрд╛рдЗрдб рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИ

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдЖрдк рдмрд╣реБрдд рд╕рд╛рд░реА рд░реЛрдЪрдХ рдФрд░ рдЙрдкрдпреЛрдЧреА рдЪреАрдЬреЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

Ssh рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдЙрджрд╛рд╣рд░рдг


рдФрд░ рдЕрдВрдд рдореЗрдВ, рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдЖрдк рдЗрд╕ рдХреБрдВрдЬреА рдХрд╛ рдЙрдкрдпреЛрдЧ ssh рдХреАрдЬрд╝ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдиреЗ рдФрд░ рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

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

рдЪрд▓реЛ рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдк рджреЗрдЦреЗрдВред рд╣рдо рдпреВрдПрд╕рдмреА рдореЗрдВ рдЯреЛрдХрди рдбрд╛рд▓рддреЗ рд╣реИрдВред Dmesg рдореЗрдВ рдЖрдк рдХрдиреЗрдХреНрдЯреЗрдб рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдХрд╛рд░реА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред


$ dmesg
[11073.599862] usb 1-3: USB disconnect, device number 11
[11311.647551] usb 1-3: new full-speed USB device number 12 using xhci_hcd
[11311.796881] usb 1-3: New USB device found, idVendor=234b, idProduct=0000, bcdDevice= 2.00
[11311.796884] usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[11311.796885] usb 1-3: Product: Gnuk Token
[11311.796887] usb 1-3: Manufacturer: Free Software Initiative of Japan

рдирдИ ssh рдкреНрд░рдореБрдЦ рдкреАрдврд╝реА


рдпрд╣ рд╕рдордЭрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ рдХрд┐ рдХреБрдВрдЬреА рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╣реА рдЙрддреНрдкрдиреНрди рд╣реЛрддреА рд╣реИ , рдФрд░ рдЖрдкрдХреЗ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдирд╣реАрдВред рддреЛ, рдРрд╕реА рдХреБрдВрдЬреА рдХрднреА рднреА рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдирд╣реАрдВ рдЫреЛрдбрд╝рддреА рд╣реИред

Gpg рдкрд░ рдЬрд╛рдПрдВ:


$ gpg --card-edit

Gpg рдЗрдВрдЯрд░реЗрдХреНрдЯрд┐рд╡ рдореЛрдб рдЦреБрд▓рддрд╛ рд╣реИ, рдПрдбрдорд┐рди рдореЛрдб рдХреЛ рдПрдбрдорд┐рди рдХрдорд╛рдВрдб рд╕реЗ рд╕рдХреНрд╖рдо рдХрд░рддрд╛ рд╣реИ:


gpg/card> admin

рдЕрдЧрд▓рд╛, рдирдИ рдХреБрдВрдЬреА рдЬрдирд░реЗрд╢рди рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБ:


gpg/card> generate

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдирдХ gpg рдХреБрдВрдЬреА рдкреАрдврд╝реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдЬрд┐рд╕рдХреЗ рджреМрд░рд╛рди рдЖрдкрдХреЛ рдмреИрдХрдЕрдк рдХреБрдВрдЬреА рдХреЛ рдбрд┐рд╕реНрдХ рдкрд░ рд╕рд╣реЗрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рдПрдЧрд╛ред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдмреИрдХрдЕрдк рдмрдирд╛рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдк рддрдп рдХрд░рддреЗ рд╣реИрдВред
рдХреЗрд╡рд▓ рдПрдХ рдЪреАрдЬ рдпрд╣ рд╣реИ рдХрд┐ 2048 рдмрд┐рдЯреНрд╕ рддрдХ рдЖрд░рдПрд╕рдП рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреА рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкреАрдврд╝реА рд╕рдорд░реНрдерд┐рдд рд╣реИред рдпрджрд┐ рдЖрдкрдХреЛ 4096 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рдХреБрдВрдЬреА рдЙрддреНрдкрдиреНрди рдХрд░рдиреА рд╣реЛрдЧреА, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдбрд┐рд╡рд╛рдЗрд╕ рдкрд░ рд╣реА рдЖрдпрд╛рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рдЖрдЧреЗ рдЖрдкрдХреЛ рдкрд┐рди рдХреЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ, рдирд┐рдореНрди рдкрд┐рди рдХреЛрдб рдлрд░реНрдорд╡реЗрдпрд░ рдореЗрдВ рд╕рдВрд░рдХреНрд╖рд┐рдд рд╣реИрдВ:

рдХрд╛рд░реНрдб рдкрд┐рди - 123456
рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд┐рди - 12345678

рднрд╡рд┐рд╖реНрдп рдореЗрдВ, рд╡реЗ рдЪрд╛рд╣рд┐рдП рдмрджрд▓рд╛ рдЬрд╛ред

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

рдХрд┐рд╕реА рдореМрдЬреВрджрд╛ рдХреБрдВрдЬреА рдХреЛ рдЖрдпрд╛рдд рдХрд░реЗрдВ


рдЕрдм рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд░реЗрдВ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ ssh рдХреБрдВрдЬреА рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред
рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, gpg рдореЗрдВ рдХреБрдВрдЬреА рдЖрдпрд╛рдд рдХрд░реЗрдВ:


$ pem2openpgp temporary_id < id_rsa  | gpg --import

рдЕрдм рд╣рдореЗрдВ рдХреБрдВрдЬреА рдХреА рдЖрдИрдбреА рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╕рднреА рдЙрдкрд▓рдмреНрдз gpg рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рдХрд░реЗрдВ:


$ gpg -K

рдФрд░ рд╣рдо рдЖрдпрд╛рддрд┐рдд рдХреБрдВрдЬреА рдкрд╛рддреЗ рд╣реИрдВ:


sec>  rsa2048 2020-02-05 [C]
      DFEFF02E226560B7F5A5F2CAB19534F88F8FE4EC
      Card serial no. = FFFE 87144751
uid           [ unknown] temporary_id


рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдХреБрдВрдЬреА рдЖрдИрдбреА DFEFF02E226560B7F5A5F2CAB19534F88F8FE4EC

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


$ gpg --edit-key DFEFF02E226560B7F5A5F2CAB19534F88F8FE4EC

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


gpg> keytocard

рд╕рдм рдХреБрдЫ, рдХреБрдВрдЬреА рджрд░реНрдЬ рдХреА рдЧрдИ рд╣реИред

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдХреЛ ssh рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рдирд┐рд░реНрдпрд╛рдд рдХрд░реЗрдВ


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

$ pkcs15-tool --list-keys

рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдЙрдЯрдкреБрдЯ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:


Using reader with a card: Free Software Initiative of Japan Gnuk (FSIJ-1.2.15-87144751) 00 00
Private RSA Key [Signature key]
	Object Flags   : [0x03], private, modifiable
	Usage          : [0x20C], sign, signRecover, nonRepudiation
	Access Flags   : [0x1D], sensitive, alwaysSensitive, neverExtract, local
	ModLength      : 2048
	Key ref        : 0 (0x00)
	Native         : yes
	Auth ID        : 01
	ID             : 01
	MD:guid        : f3de5f55-d100-4973-d572-40d67e20f033

рдпрд╣рд╛рдБ рд╣рдо рдХреБрдВрдЬреА рдХреА рдЖрдИрдбреА-рдЖрдИрдбреА рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ 01ред рдЕрдм рд╣рдо рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдирд┐рд░реНрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ:


$ pkcs15-tool --read-public-key 01

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдХреЛ pub.key рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдкреА рдХрд░реЗрдВ:


-----BEGIN PUBLIC KEY-----
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyzHQIWEApliWYaf0T8jb
Vh2nc5+LklKXeuJFTN3BW2VqdrTw1rpKXiANWpi+qbtZhZ2nP3CJX6qoGobXyCOd
/iAiygFlyW4BwTQpnAm81IE9lPzfasOK7SBuKJ+ZbB4WpuYJRozgtt/gpWzmnWnW
84/CU9Lqbhz95v/C/DImSf6LiwVdmiEj4CUNInl5pY4trguDsSfkw1u8gGqSPEsD
ZXtlVRx8iBGi0JR02g9KTL4dDGocUtcTK8W0eY+BDbQSXfTGCy93v8sEyhdQjHs8
oDiwkvFQ86gYqwL5DJ7U/rFSO3A5X6zmkFFV8nJZjxB2qfE5aommtXxow4iPml3x
YwIDAQAB
-----END PUBLIC KEY-----

рдФрд░ рдЗрд╕реЗ ssh-rsa рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░реЗрдВ:


$ ssh-keygen -f pub.key -i -mPKCS8 

рдпрд╣ рд╡рд╛рдВрдЫрд┐рдд рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреБрдВрдЬреА рдХреЛ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ:


ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDLMdAhYQCmWJZhp/RPyNtWHadzn4uSUpd64kVM3cFbZWp2tPDWukpeIA1amL6pu1mFnac/cIlfqqgahtfII53+ICLKAWXJbgHBNCmcCbzUgT2U/N9qw4rtIG4on5lsHham5glGjOC23+ClbOadadbzj8JT0upuHP3m/8L8MiZJ/ouLBV2aISPgJQ0ieXmlji2uC4OxJ+TDW7yAapI8SwNle2VVHHyIEaLQlHTaD0pMvh0MahxS1xMrxbR5j4ENtBJd9MYLL3e/ywTKF1CMezygOLCS8VDzqBirAvkMntT+sVI7cDlfrOaQUVXyclmPEHap8Tlqiaa1fGjDiI+aXfFj

рдЕрдЧрд▓рд╛ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рд▓реЙрдЧ рдСрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ssh рдХреЛ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИ - рдЖрдкрдХреЛ рд░рд┐рдореЛрдЯ рд╕рд░реНрд╡рд░ рдкрд░ ~ / .ssh / рдЕрдзрд┐рдХреГрдд_рдХреА рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреБрдВрдЬреА рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

Ssh рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди


рдЕрдм, рд╣рдорд╛рд░реЗ рдЯреЛрдХрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рд░реНрд╡рд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ -I рд╕реНрд╡рд┐рдЪ рдХреЗ рд╕рд╛рде ssh рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдЯреЛрдХрди рдбреНрд░рд╛рдЗрд╡рд░ рдХреЛ рдкрде рдкрд╛рд╕ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╣рдорд╛рд░рд╛ рдЯреЛрдХрди рдорд╛рдирдХ рдбреНрд░рд╛рдЗрд╡рд░реЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗ

$ ssh -I /usr/lib/opensc-pkcs11.so martin@remotehost

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдлрд╝рд╛рдЗрд▓ (~ / .ssh / config) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛрдЧрд╛ред
рдЗрд╕рдореЗрдВ рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпрд╛рдБ рдЬреЛрдбрд╝реЗрдВред

Host digitalOceanServer
        HostName 192.168.0.1
        User root
        PKCS11Provider /usr/lib/opensc-pkcs11.so

Ssh рдХреЙрд▓ рдЕрдм рдФрд░ рднреА рдЖрд╕рд╛рди рд╣реИ:


$ ssh digitalOceanServer

рдорд╛рдирдХ рдкрд┐рди рдХреЛрдб рдХреИрд╕реЗ рдмрджрд▓реЗрдВ


рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдХрджрдо рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкрд┐рди рдХреЛрдб рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдкрд╣рд▓реЗ рдЖрдкрдХреЛ рдпрд╣ рд╕рдордЭрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд┐рди рдХреЛрдб рд╣реИрдВ:

  • рдкрд┐рди-рдХреЛрдб - рдЗрд╕ рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рд╕реНрдорд╛рд░реНрдЯ рдХрд╛рд░реНрдб рдХреЗ рд╕рд╛рде рдирд┐рдпрдорд┐рдд рд╕рдВрдЪрд╛рд▓рди рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ - рдХрд┐рд╕реА рдЪреАрдЬрд╝, рд╕рдВрдХреЗрдд рдЖрджрд┐ рдХреЛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред
  • рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд┐рди-рдХреЛрдб - рдХреБрдВрдЬреА рдХреЛ рдмрджрд▓рдиреЗ / рд╣рдЯрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЗрд╕ рддрд░рд╣ рдХреА "рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ" рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдХреЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
  • рдХреЛрдб рд░реАрд╕реЗрдЯ рдХрд░реЗрдВ - рдПрдХ рдХреЛрдб рдЬреЛ рдЖрдкрдХреЛ рдкрд┐рди рдХреЛрдб рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рддреАрди рдЧрд▓рдд рдкреНрд░рдпрд╛рд╕реЛрдВ рдХреЗ рдмрд╛рдж рдЯреЛрдХрди рдХреЛ рдЕрдирд▓реЙрдХ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ред рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдЖрдкрдХреЗ рдКрдкрд░ рд╣реИ

рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдб рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ 3 рдкреНрд░рдпрд╛рд╕ рд╣реИрдВред рдЬрд┐рд╕рдХреЗ рдмрд╛рдж рдЯреЛрдХрди рдмреНрд▓реЙрдХ рдХрд░ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрдм рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдлрд┐рд░ рд╕реЗ рдЗрдВрдЯрд░реИрдХреНрдЯрд┐рд╡ GPG рдореЛрдб рдореЗрдВ рдЬрд╛рддреЗ рд╣реИрдВ:


$ gpg --card-edit

рдФрд░ рдкрд╛рд╕рд╡рд╛рд░реНрдб рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░реЗрдВ:


gpg/card> passwd

рдПрдХ рд╡рд┐рдВрдбреЛ рдЦреБрд▓реЗрдЧреА рдЬрд╣рд╛рдВ рдЖрдк рдЯреЛрдХрди рд╕реЗ рдкрд┐рди рдХреЛрдб рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред

рдЕрдм рдЖрдкрдХреЛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд┐рди рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдореЛрдб рдкрд░ рдЬрд╛рдПрдВ:


gpg/card> admin

рдлрд┐рд░ рд╕реЗ рдкрд╛рд╕рд╡рд╛рд░реНрдб рдХрдорд╛рдВрдб рджрд░реНрдЬ рдХрд░реЗрдВ:


gpg/card> passwd

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЕрдм рдпрд╣ рдЙрдиреНрдирдд рдореЛрдб рдореЗрдВ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╣рдореЗрдВ рдХрдИ рд╡рд┐рдХрд▓реНрдк рджрд┐рдП рдЬрд╛рдПрдВрдЧреЗ:


1 - change PIN
2 - unblock PIN
3 - change Admin PIN
4 - set the Reset Code
Q - quit

Your selection?

рд╣рдо рдЪреЗрдВрдЬ рдПрдбрдорд┐рди рдкрд┐рди рдХрд╛ рдЪрдпрди рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдорд╛рдирдХ рдпреЛрдЬрдирд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдХ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВред рдЖрдкрдХреЛ рдпрд╛рдж рджрд┐рд▓рд╛ рджреВрдВ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдПрдбрдорд┐рди рдкрд┐рди 12345678 рд╣реИред

рдбрд┐рд╡рд╛рдЗрд╕ рд╕реБрд░рдХреНрд╖рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ


рдмреЗрд╢рдХ, $ 3 рдХреЗ рд▓рд┐рдП рдЖрдк 200+ рдбреЙрд▓рд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рдореБрдЦ рд╕реНрддрд░ рдХреА рд╕реБрд░рдХреНрд╖рд╛ рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЗрдХрдЯреНрдареЗ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рдПрдХ рдПрдВрдЯреНрд░реА-рд▓реЗрд╡рд▓ рдХреБрдВрдЬреА рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдирд╛рдЗрдЯреНрд░реЛрдХреА рд╕реНрдЯрд╛рд░реНрдЯ рдлреИрдХреНрдЯреНрд░реА рдХреА рдЪрд╛рдмрд┐рдпрд╛рдВ рдПрдХ рд╣реА рдлрд░реНрдорд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдЗрд╕ рддрд░рд╣ рдХреЗ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрдо рд╕реЗ рдХрдо рдПрдХ рд╕реНрддрд░ рд╕реЗ рд╕реБрд░рдХреНрд╖рд╛ рдмрдврд╝рд╛рдПрдЧрд╛ред рддреЛ рдпрд╣ рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╢рд╛рдирджрд╛рд░ рддрд░реАрдХрд╛ рд╣реИред

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

рдЗрд╕рд▓рд┐рдП, рдореИрдВ рдПрдХ рдмрд╛рд░ рдлрд┐рд░ рд╕реЗ рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВ, рдпрд╣ рдПрдХ рдорд╣рд╛рди рдкреНрд░рд╡реЗрд╢-рд╕реНрддрд░ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╣реИ, рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЗрд╕рдХреЗ рд╕рд╛рде, рд╕реБрд░рдХреНрд╖рд╛ рдкреВрд░реЗ рдирдП рд╕реНрддрд░ рдкрд░ рдкрд╣реБрдВрдЪ рдЬрд╛рдПрдЧреАред

рдЙрдкрдпреЛрдЧреА рд╕рд╛рдордЧреНрд░рд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдВрдХ


рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ, рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдореИрдВрдиреЗ рд╕рд╛рде рдореЗрдВ рдЕрдЪреНрдЫреЗ рд╕реНрд░реЛрддреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд░рдЦреАред

  • рдбреЗрдмрд┐рдпрди рд╡реЗрдмрд╕рд╛рдЗрдЯ рдкреЗрдЬ
  • рдЯреЛрдХрди рджрд╕реНрддрд╛рд╡реЗрдЬрд╝
  • рдирд╛рдЗрдЯреНрд░реЛрдХреА рд╕реНрдЯрд╛рд░реНрдЯ рдЯреЛрдХрди рдХреЗ рд▓рд┐рдП рдореИрдиреБрдЕрд▓ - рдпрд╣ рдПрдХ рд╣реА рдлрд░реНрдорд╡реЗрдпрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпреБрдХреНрддрд┐рдпрд╛рдВ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рднреА рдЙрдкрдпреБрдХреНрдд рд╣реЛрдВрдЧреА

рдЬрд┐рд╕ рдбрд┐рд╡рд╛рдЗрд╕ рдХреЛ рд╣рдордиреЗ рдЕрд╕реЗрдВрдмрд▓ рдХрд┐рдпрд╛ рд╣реИ, рдЙрд╕реЗ рдУрдкрди рд╕реЛрд░реНрд╕ GNUK рдкреНрд░реЛрдЬреЗрдХреНрдЯ (рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЗрд╕реЗ рдЯреЛрдХрди рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ) рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП Google рдореЗрдВ "GNUK" рдХреЗ рдЕрдиреБрд░реЛрдз рдкрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рд╛рдкреНрдд рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИред

Updред рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐ рдлрд░реНрдорд╡реЗрдпрд░ рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рджреЛ-рдХрд╛рд░рдХ рдкреНрд░рдорд╛рдгреАрдХрд░рдг рдХреЗ рд▓рд┐рдП рдбрд┐рд╡рд╛рдЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреЗ рд╣реИрдВред рдлрд░реНрдорд╡реЗрдпрд░ рдХреЛрдб рдпрд╣рд╛рдВ
рдЕрдкрдбреЗрдЯ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ ред 2 02/15/2020 рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдЪрд┐рдк рдХреЗ рд▓рд┐рдП рдПрдХ рднреЗрджреНрдпрддрд╛ рд╣реИ рдЬреЛ рдореЗрдореЛрд░реА рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╕реВрдЦрд╛ рд╕рдХрддреА рд╣реИред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдпрд╣ рдЕрднреА рддрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реБрдЖ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХреА рдШреЛрд╖рдгрд╛ рдХреА рдЧрдИ рд╣реИред рддреЛ рдЕрднреА рдХреЗ рд▓рд┐рдП, рд╕рдм рдХреБрдЫ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИред рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рднреА рд╕реБрдЭрд╛рдпрд╛ - рдбрд┐рд╡рд╛рдЗрд╕ рдХреЗ рд╢рд░реАрд░ рдореЗрдВ рдПрдкреЙрдХреНрд╕реА рдбрд╛рд▓реЗрдВрдПрд▓реНрдпреВрдореАрдирд┐рдпрдо рдкрд╛рдЙрдбрд░ рдХреЗ рд╕рд╛рде рдорд┐рд╢реНрд░рд┐рддред рдЗрд╕ рд╡рд┐рдзрд┐ рдХрд╛ рд╡рд░реНрдгрди рдХреЗрд╡рд┐рди рдорд┐рдЯрдирд┐рдХ рдХреА рдкреБрд╕реНрддрдХ "рдж рдЖрд░реНрдЯ рдСрдл рдбрд┐рд╕реЗрдкреНрд╢рди" рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЪрд┐рдк рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЧреЛрдВрдж рдХреЛ рджрд░рд╛рд░ рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛, рдЬреЛ рдпрджрд┐ рд▓рд╛рдкрд░рд╡рд╛рд╣реА рд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рдЪрд┐рдк рдХреЛ рдиреБрдХрд╕рд╛рди рдкрд╣реБрдВрдЪрд╛ рд╕рдХрддрд╛ рд╣реИред рдмреЗрд╢рдХ, рдЗрд╕ рдкрджреНрдзрддрд┐ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд╕реЗ рд╣реИрдХрд┐рдВрдЧ рдХреА рд▓рд╛рдЧрдд рдФрд░ рднреА рдЕрдзрд┐рдХ рдмрдврд╝ рдЬрд╛рддреА рд╣реИред рдмреЗрд╢рдХ, рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рдореЛрд╕рд╛рдж рдЕрдкрдиреА рдореЛрд╕рд╛рдж рдЪреАрдЬреЛрдВ рдХреЛ рдмрдирд╛ рджреЗрдЧрд╛ рдФрд░ рдпрд╣ рдЙрд╕реЗ рд░реЛрдХ рдирд╣реАрдВ рдкрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рдХреЗрд╡рд▓ рдЗрд╕реЗ рджреЗрд░реА рдХрд░реЗрдЧрд╛ред
Updред 3рдкреАрдПрдо рдХреЛ рдХрдИ рд╕рдВрджреЗрд╢ рдЖрдП рдХрд┐ рд▓реЛрдЧ рдПрд╕рдЯреА-рд▓рд┐рдВрдХ рдлрд░реНрдорд╡реЗрдпрд░ рдирд╣реАрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╣рдореЗрдВ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдЕрдм рдЪреАрдиреА рдирд┐рд░реНрдорд╛рддрд╛рдУрдВ рдиреЗ рдШрдЯрдХреЛрдВ рдкрд░ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рд╕рд╣реЗрдЬрдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдерд╛ рдФрд░ рдмреЛрд░реНрдб рдкрд░ 64Kb рдореЗрдореЛрд░реА рдХреЗ рд╕рд╛рде рдЪрд┐рдкреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛ рдерд╛ред рдФрд░ рдпрд╣ рдлрд░реНрдорд╡реЗрдпрд░ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдмреЛрд░реНрдб рдкрд░ 128Kb рдЪрд┐рдк рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдВред рдЗрд╕рд▓рд┐рдП, рдореИрдВ рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ рдХрд┐ рдЦрд░реАрджрддреЗ рд╕рдордп, рдЬрд╛рдВрдЪреЗрдВ рдХрд┐ рдХреМрди рд╕реА рдЪрд┐рдк рд╕реНрдерд╛рдкрд┐рдд рд╣реИ (рдпрджрд┐ рд╕рдВрднрд╡ рд╣реЛ), рдпрд╛ рд╡рд┐рдХреНрд░реЗрддрд╛ рдХреЗ рд╕рд╛рде / рд╕рдореАрдХреНрд╖рд╛рдУрдВ рдореЗрдВ рдЬрд╛рдВрдЪреЗрдВред
Updред 4 рдпрд╣ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЕрднреА рднреА 64 рдХреЗрдмреА рдЪрд┐рдк рдХреЗ рд╕рд╛рде рдЪреАрдиреА рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрдкрдХреЛ рдирд╡реАрдирддрдо рдлрд░реНрдорд╡реЗрдпрд░ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛) - рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд▓реЗрдЦ рд╣рдм рдкрд░ рджрд┐рдЦрд╛рдИ рджрд┐рдпрд╛ ред

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


All Articles