рдкреЛрд╕реНрдЯ-рд╡рд┐рд╢реНрд▓реЗрд╖рдг: рдХреНрд░рд┐рдкреНрдЯреЛ-рдХреА рд╕рд░реНрд╡реНрд╣рд░ рдПрд╕рдХреЗрдПрд╕ рдХреАрд╕рд░реНрд╡реНрд╣рд░рдЪреНрдпрд╛ рдиреЗрдЯрд╡рд░реНрдХрд╡рд░реАрд▓ рдирд╡реАрдирддрдо рд╣рд▓реНрд▓реНрдпрд╛рдмрджреНрджрд▓ рдХрд╛рдп рдорд╛рд╣рд┐рддреА рдЖрд╣реЗ

рд╣реЕрдХрд░реНрд╕рдиреА рдУрдкрдирдкреАрдЬреАрдкреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдЪреЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рд╡рд╛рдкрд░рд▓реЗ рдЬреЗ рджрд╣рд╛ рд╡рд░реНрд╖рд╛рдВрд╣реВрди рдЕрдзрд┐рдХ рдХрд╛рд│ рдЬреНрдЮрд╛рдд рдЖрд╣реЗ.

рдЖрдореНрд╣реА рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдВрдЧрддреЛ рдХреА рдореБрджреНрджрд╛ рдХрд╛рдп рдЖрд╣реЗ рдЖрдгрд┐ рддреЗ рддреЗ рдХрд╛ рдмрдВрдж рдХрд░реВ рд╢рдХрдд рдирд╛рд╣реАрдд.

рдкреЛрд╕реНрдЯ-рд╡рд┐рд╢реНрд▓реЗрд╖рдг: рдХреНрд░рд┐рдкреНрдЯреЛ-рдХреА рд╕рд░реНрд╡реНрд╣рд░ рдПрд╕рдХреЗрдПрд╕ рдХреАрд╕рд░реНрд╡реНрд╣рд░рдЪреНрдпрд╛ рдиреЗрдЯрд╡рд░реНрдХрд╡рд░реАрд▓ рдирд╡реАрдирддрдо рд╣рд▓реНрд▓реНрдпрд╛рдмрджреНрджрд▓ рдХрд╛рдп рдорд╛рд╣рд┐рддреА рдЖрд╣реЗ
/рд╕реНрдкреНрд▓реЕрд╢/ рдЪреБрдирд▓реНрдпрд╛ рдЬреБ

рдиреЗрдЯрд╡рд░реНрдХ рд╕рдорд╕реНрдпрд╛

рдЬреВрдирдЪреНрдпрд╛ рдордзреНрдпрднрд╛рдЧреА, рдЕрдЬреНрдЮрд╛рдд рд╣рд▓реНрд▓рд╛ рдХреЗрд▓рд╛ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдХреА рд╕рд░реНрд╡реНрд╣рд░рдЪреНрдпрд╛ рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ SKS рдХреАрд╕рд░реНрд╡реНрд╣рд░, OpenPGP рдкреНрд░реЛрдЯреЛрдХреЙрд▓рд╡рд░ рддрдпрд╛рд░ рдХреЗрд▓реЗрд▓реЗ. рд╣реЗ рдПрдХ IETF рдорд╛рдирдХ рдЖрд╣реЗ (рдЖрд░рдПрдлрд╕реА 4880), рдЬреНрдпрд╛рдЪрд╛ рд╡рд╛рдкрд░ рдИрдореЗрд▓ рдЖрдгрд┐ рдЗрддрд░ рд╕рдВрджреЗрд╢ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрдЪреЗ рд╡рд┐рддрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА SKS рдиреЗрдЯрд╡рд░реНрдХ рддреАрд╕ рд╡рд░реНрд╖рд╛рдВрдкреВрд░реНрд╡реА рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдд рдЖрд▓реЗ рд╣реЛрддреЗ. рдпрд╛рдВрд╕рд╛рд░рдЦреНрдпрд╛ рд╕рд╛рдзрдирд╛рдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рд╣реЛрддреЛ рдЬреАрдПрдирдпреВрдкреАрдЬреА рдбреЗрдЯрд╛ рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рдЗрд▓реЗрдХреНрдЯреНрд░реЙрдирд┐рдХ рдбрд┐рдЬрд┐рдЯрд▓ рд╕реНрд╡рд╛рдХреНрд╖рд░реА рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА.

рд╣реЕрдХрд░реНрд╕рдиреА рджреЛрди GnuPG рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВрдЯреЗрдирд░, рд░реЙрдмрд░реНрдЯ рд╣реЕрдиреНрд╕рди рдЖрдгрд┐ рдбреЕрдирд┐рдпрд▓ рдЧрд┐рд▓рдореЛрд░ рдпрд╛рдВрдЪреНрдпрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрд╢реА рддрдбрдЬреЛрдб рдХреЗрд▓реА. рд╕рд░реНрд╡реНрд╣рд░рд╡рд░реВрди рджреВрд╖рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд▓реЛрдб рдХреЗрд▓реНрдпрд╛рдиреЗ GnuPG рдЕрдпрд╢рд╕реНрд╡реА рд╣реЛрддреЗтАФрд╕рд┐рд╕реНрдЯрдо рдлрдХреНрдд рдлреНрд░реАрдЭ рд╣реЛрддреЗ. рд╣рд▓реНрд▓реЗрдЦреЛрд░ рдПрд╡рдвреНрдпрд╛рд╡рд░рдЪ рдерд╛рдВрдмрдгрд╛рд░ рдирд╛рд╣реАрдд рдЖрдгрд┐ рддрдбрдЬреЛрдб рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрдЪреА рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рдвреЗрд▓, рдЕрд╕реЗ рдорд╛рдирдгреНрдпрд╛рдЪреЗ рдХрд╛рд░рдг рдЖрд╣реЗ. рдпрд╛рдХреНрд╖рдгреА, рд╕рдорд╕реНрдпреЗрдЪреА рд╡реНрдпрд╛рдкреНрддреА рдЕрдЬреНрдЮрд╛рдд рдЖрд╣реЗ.

рдЖрдХреНрд░рдордгрд╛рдЪреЗ рд╕рд╛рд░

рд╣реЕрдХрд░реНрд╕рдиреА OpenPGP рдкреНрд░реЛрдЯреЛрдХреЙрд▓рдордзреАрд▓ рдЕрд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдЪрд╛ рдлрд╛рдпрджрд╛ рдШреЗрддрд▓рд╛. рддреА рдЕрдиреЗрдХ рджрд╢рдХрд╛рдВрдкрд╛рд╕реВрди рд╕рдорд╛рдЬрд╛рд▓рд╛ рдкрд░рд┐рдЪрд┐рдд рдЖрд╣реЗ. рдЕрдЧрджреА GitHub рд╡рд░ рд╢реЛрдзреВ рд╢рдХрддреЛ рд╕рдВрдмрдВрдзрд┐рдд рд╢реЛрд╖рдг. рдкрд░рдВрддреБ рдЖрддрд╛рдкрд░реНрдпрдВрдд рдХреЛрдгреАрд╣реА "рд╣реЛрд▓" рдмрдВрдж рдХрд░рдгреНрдпрд╛рдЪреА рдЬрдмрд╛рдмрджрд╛рд░реА рдШреЗрддрд▓реЗрд▓реА рдирд╛рд╣реА (рдЖрдореНрд╣реА рдирдВрддрд░ рдЕрдзрд┐рдХ рддрдкрд╢реАрд▓рд╡рд╛рд░ рдХрд╛рд░рдгрд╛рдВрдмрджреНрджрд▓ рдмреЛрд▓реВ).

рд╣реЕрдмреНрд░реЗрд╡рд░реАрд▓ рдЖрдордЪреНрдпрд╛ рдмреНрд▓реЙрдЧрдордзреАрд▓ рдХрд╛рд╣реА рдирд┐рд╡рдбреА:

OpenPGP рд╡рд┐рдирд┐рд░реНрджреЗрд╢рд╛рдиреБрд╕рд╛рд░, рдХреЛрдгреАрд╣реА рддреНрдпрд╛рдВрдЪреНрдпрд╛ рдорд╛рд▓рдХрд╛рдЪреА рдкрдбрддрд╛рд│рдгреА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрдордзреНрдпреЗ рдбрд┐рдЬрд┐рдЯрд▓ рд╕реНрд╡рд╛рдХреНрд╖рд░реА рдЬреЛрдбреВ рд╢рдХрддреЛ. рд╢рд┐рд╡рд╛рдп, рд╕реНрд╡рд╛рдХреНрд╖рд░реАрдВрдЪреА рдХрдорд╛рд▓ рд╕рдВрдЦреНрдпрд╛ рдХреЛрдгрддреНрдпрд╛рд╣реА рдкреНрд░рдХрд╛рд░реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХреЗрд▓реА рдЬрд╛рдд рдирд╛рд╣реА. рдЖрдгрд┐ рдпреЗрдереЗ рдПрдХ рд╕рдорд╕реНрдпрд╛ рдЙрджреНрднрд╡рддреЗ - SKS рдиреЗрдЯрд╡рд░реНрдХ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдПрдХрд╛ рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рд╡рд░ 150 рд╣рдЬрд╛рд░ рд╕реНрд╡рд╛рдХреНрд╖рд░реНрдпрд╛ рдареЗрд╡рдгреНрдпрд╛рдЪреА рдкрд░рд╡рд╛рдирдЧреА рджреЗрддреЗ, рдкрд░рдВрддреБ GnuPG рдЕрд╢рд╛ рд╕рдВрдЦреНрдпреЗрд╕ рд╕рдорд░реНрдерди рджреЗрдд рдирд╛рд╣реА. рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рдкреНрд░рдорд╛рдгрдкрддреНрд░ рд▓реЛрдб рдХрд░рддрд╛рдирд╛, GnuPG (рддрд╕реЗрдЪ рдЗрддрд░ OpenPGP рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреА) рдлреНрд░реАрдЬ рд╣реЛрддреЗ.

рд╡рд╛рдкрд░рдХрд░реНрддреНрдпрд╛рдВрдкреИрдХреА рдПрдХ рдПрдХ рдкреНрд░рдпреЛрдЧ рдХреЗрд▓рд╛ тАФ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЖрдпрд╛рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рддреНрдпрд╛рд▓рд╛ рд╕реБрдорд╛рд░реЗ 10 рдорд┐рдирд┐рдЯреЗ рд▓рд╛рдЧрд▓реА. рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рд╡рд░ 54 рд╣рдЬрд╛рд░рд╛рд╣реВрди рдЕрдзрд┐рдХ рд╕реНрд╡рд╛рдХреНрд╖рд▒реНрдпрд╛ рд╣реЛрддреНрдпрд╛ рдЖрдгрд┐ рддреНрдпрд╛рдЪреЗ рд╡рдЬрди 17 рдПрдордмреА рд╣реЛрддреЗ:

$ gpg --homedir=$PWD --recv C4BC2DDB38CCE96485EBE9C2F20691179038E5C6
gpg: key F20691179038E5C6: 4 duplicate signatures removed
gpg: key F20691179038E5C6: 54614 signatures not checked due to missing keys
gpg: key F20691179038E5C6: 4 signatures reordered
gpg: key F20691179038E5C6: public key "Daniel Kahn Gillmor <[email protected]>" imported
gpg: no ultimately trusted keys found
gpg: Total number processed: 1
gpg:               imported: 1
$ ls -lh pubring.gpg
-rw-r--r--  1 filippo  staff    17M  2 Jul 16:30 pubring.gpg

рдкреНрд░рдХрд░рдг рдЖрдгрдЦреА рд╡рд╛рдИрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, OpenPGP рдХреА рд╕рд░реНрд╡реНрд╣рд░ рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдорд╛рд╣рд┐рддреА рдХрд╛рдврдд рдирд╛рд╣реАрдд. рд╣реЗ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЬреЗрдгреЗрдХрд░реВрди рддреБрдореНрд╣реА рд╕рд░реНрд╡ рдХреНрд░рд┐рдпрд╛рдВрдЪреА рд╕рд╛рдЦрд│реА рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрд╕рд╣ рд╢реЛрдзреВ рд╢рдХрд╛рд▓ рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреА рдмрджрд▓реА рд░реЛрдЦреВ рд╢рдХрд╛рд▓. рдореНрд╣рдгреВрди, рддрдбрдЬреЛрдб рдХреЗрд▓реЗрд▓реНрдпрд╛ рдШрдЯрдХрд╛рдВрдирд╛ рджреВрд░ рдХрд░рдгреЗ рдЕрд╢рдХреНрдп рдЖрд╣реЗ.

рдореВрд▓рдд:, SKS рдиреЗрдЯрд╡рд░реНрдХ рд╣рд╛ рдПрдХ рдореЛрдард╛ тАЬрдлрд╛рдЗрд▓ рд╕рд░реНрд╡реНрд╣рд░тАЭ рдЖрд╣реЗ рдЬреНрдпрд╛рд╡рд░ рдХреЛрдгреАрд╣реА рдбреЗрдЯрд╛ рд▓рд┐рд╣реВ рд╢рдХрддреЛ. рд╕рдорд╕реНрдпрд╛ рд╕реНрдкрд╖реНрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЧреЗрд▓реНрдпрд╛ рд╡рд░реНрд╖реА GitHub рд░рд╣рд┐рд╡рд╛рд╕реА рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рддрдпрд╛рд░ рдХреЗрд▓реА, рдЬреЗ рдХреНрд░рд┐рдкреНрдЯреЛрдЧреНрд░рд╛рдлрд┐рдХ рдХреА рд╕рд░реНрд╡реНрд╣рд░рдЪреНрдпрд╛ рдиреЗрдЯрд╡рд░реНрдХрд╡рд░ рджрд╕реНрддрдРрд╡рдЬ рд╕рдВрдЧреНрд░рд╣рд┐рдд рдХрд░рддреЗ.

рдЕрд╕реБрд░рдХреНрд╖рд┐рддрддрд╛ рдХрд╛ рдмрдВрдж рдЭрд╛рд▓реА рдирд╛рд╣реА?

рдЕрдЧрддрд┐рдХрддрд╛ рдмрдВрдж рдХрд░рдгреНрдпрд╛рдЪреЗ рдХрд╛рд░рдг рдирд╡реНрд╣рддреЗ. рдкреВрд░реНрд╡реА, рд╣реЕрдХрд░ рд╣рд▓реНрд▓реНрдпрд╛рдВрд╕рд╛рдареА рдпрд╛рдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛ рдЬрд╛рдд рдирд╡реНрд╣рддрд╛. рдЬрд░реА рдЖрдпрдЯреА рд╕рдореБрджрд╛рдп рдмрд░рд╛рдЪ рд╡реЗрд│ рд╡рд┐рдЪрд╛рд░рд▓рд╛ SKS рдЖрдгрд┐ OpenPGP рд╡рд┐рдХрд╕рдХрд╛рдВрдиреА рд╕рдорд╕реНрдпреЗрдХрдбреЗ рд▓рдХреНрд╖ рджрд┐рд▓реЗ рдкрд╛рд╣рд┐рдЬреЗ.

рдкреНрд░рд╛рдорд╛рдгрд┐рдХрдкрдгреЗ, рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдШреЗрдгреНрдпрд╛рд╕рд╛рд░рдЦреЗ рдЖрд╣реЗ рдХреА рдЬреВрдирдордзреНрдпреЗ рддреЗ рдЕрдЬреВрдирд╣реА рдЖрд╣реЗрдд рд▓рд╛рдБрдЪ рдХреЗрд▓реЗ рдкреНрд░рд╛рдпреЛрдЧрд┐рдХ рдХреА рд╕рд░реНрд╡реНрд╣рд░ keys.openpgp.org. рд╣реЗ рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░рдЪреНрдпрд╛ рд╣рд▓реНрд▓реНрдпрд╛рдВрдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рдг рдкреНрд░рджрд╛рди рдХрд░рддреЗ. рддрдерд╛рдкрд┐, рддреНрдпрд╛рдЪрд╛ рдбреЗрдЯрд╛рдмреЗрд╕ рд╕реБрд░рд╡рд╛рддреАрдкрд╛рд╕реВрди рднрд░рд▓реЗрд▓рд╛ рдЖрд╣реЗ рдЖрдгрд┐ рд╕рд░реНрд╡реНрд╣рд░ рд╕реНрд╡рддрдГ SKS рдЪрд╛ рднрд╛рдЧ рдирд╛рд╣реА. рддреНрдпрд╛рдореБрд│реЗ, рддреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕ рд╡реЗрд│ рд▓рд╛рдЧреЗрд▓.

рдкреЛрд╕реНрдЯ-рд╡рд┐рд╢реНрд▓реЗрд╖рдг: рдХреНрд░рд┐рдкреНрдЯреЛ-рдХреА рд╕рд░реНрд╡реНрд╣рд░ рдПрд╕рдХреЗрдПрд╕ рдХреАрд╕рд░реНрд╡реНрд╣рд░рдЪреНрдпрд╛ рдиреЗрдЯрд╡рд░реНрдХрд╡рд░реАрд▓ рдирд╡реАрдирддрдо рд╣рд▓реНрд▓реНрдпрд╛рдмрджреНрджрд▓ рдХрд╛рдп рдорд╛рд╣рд┐рддреА рдЖрд╣реЗ
/рд╕реНрдкреНрд▓реЕрд╢/ рд░реБрдмреЗрди рдмреЕрдЧреЗрд╕

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

рдХреЛрдгрддреНрдпрд╛рд╣реА рдкрд░рд┐рд╕реНрдерд┐рддреАрдд, рдиреЗрдЯрд╡рд░реНрдХ рдХрдзреАрд╣реА рдирд┐рд╢реНрдЪрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдИрд▓ рдпрд╛рд╡рд░ GnuPG рд╡рд┐рд╢реНрд╡рд╛рд╕ рдареЗрд╡рдд рдирд╛рд╣реА. GitHub рд╡рд░ рдПрдХрд╛ рдкреЛрд╕реНрдЯрдордзреНрдпреЗ, рд╡рд┐рдХрд╕рдХрд╛рдВрдиреА рдЕрд╕реЗрд╣реА рд▓рд┐рд╣рд┐рд▓реЗ рдХреА рддреЗ SKS Keyserver рд╕рд╣ рдХрд╛рдо рдХрд░рдгреНрдпрд╛рдЪреА рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рдд рдирд╛рд╣реАрдд. рд╡рд╛рд╕реНрддрд╡рд┐рдХ, рддреНрдпрд╛рдВрдиреА рдирд╡реАрди рд╕рд░реНрд╡реНрд╣рд┐рд╕ keys.openpgp.org рд╡рд░ рд╕рдВрдХреНрд░рдордг рдХрд╛ рд╕реБрд░реВ рдХреЗрд▓реЗ рд╣реЗ рдореБрдЦреНрдп рдХрд╛рд░рдгрд╛рдВрдкреИрдХреА рдПрдХ рдЖрд╣реЗ. рдЖрдореНрд╣реА рдХреЗрд╡рд│ рдШрдЯрдирд╛рдВрдЪрд╛ рдкреБрдвреАрд▓ рд╡рд┐рдХрд╛рд╕ рдкрд╛рд╣реВ рд╢рдХрддреЛ.

рдЖрдордЪреНрдпрд╛ рдХреЙрд░реНрдкреЛрд░реЗрдЯ рдмреНрд▓реЙрдЧрд╡рд░реАрд▓ рдХрд╛рд╣реА рд╕рд╛рд╣рд┐рддреНрдп:

рд╕реНрддреНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛