ΠΡΠ΅Π΄ΡΡΠ°Π²Π΅Π½ Π΅ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ OpenZiti 1.0, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΈΠ½ΡΠ΅Π³ΡΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΠ΅Π΄ΡΡΠ²Π° Π·Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΠ΅ ΠΈ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΡΠ»ΡΠ³ΠΈ Π² ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²Π° ΡΡΠ΅Π΄Π° Π² ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. OpenZiti ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Ρ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΡΠ°Π·Π³ΡΡΡΠ°Π½Π΅ Π½Π° ΡΠΏΠ΅ΡΠΈΡΠΈΡΠ½Π° Π·Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠ²Π°Π½ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΎΠ²Π΅ΡΠ»Π΅ΠΉΠ½Π° ΠΌΡΠ΅ΠΆΠ°, ΡΠ°Π±ΠΎΡΠ΅ΡΠ° Π²ΡΡΡ Ρ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ ΠΈΠ½ΡΠ΅ΡΠ½Π΅Ρ ΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠ° mesh ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΡΡΠΎ Π²ΡΡΠΊΠ° ΡΠΎΡΠΊΠ° Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΡΠ΅ ΡΠ²ΡΡΠ·Π²Π° ΡΡΠ΅Π· ΡΡΡΠ΅Π΄Π½ΠΈ ΡΠΎΡΠΊΠΈ. ΠΠΎΠ΄ΡΡ Π½Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° Go ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ Π»ΠΈΡΠ΅Π½Π·ΠΈΡ Apache 2.0. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΡΠ΅ ΠΎΠ±Π²ΠΈΠ²ΠΊΠΈ Π·Π° Π΅Π·ΠΈΡΠΈ C, Go, Python, Swift, Java, Node.js ΠΈ C# (.NET), ΠΊΠ°ΠΊΡΠΎ ΠΈ ΠΈΠ½ΡΡΡΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡΠΌ Π·Π° ΠΈΠ½ΡΠ΅Π³ΡΠ°ΡΠΈΡ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π·Π° ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Android.
Π‘ΠΈΡΡΠ΅ΠΌΠ°ΡΠ° OpenZiti Π΅ Π·Π°ΠΌΠΈΡΠ»Π΅Π½Π° Π΄Π° ΠΏΠΎΡΡΡΠΎΠΈ ΠΌΡΠ΅ΠΆΠΈ, ΠΊΠΎΠΈΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Ρ Π·Π°ΡΠΈΡΠ° ΠΈ ΠΈΠ·ΠΎΠ»Π°ΡΠΈΡ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ° Π² Π½Π΅Π·Π°ΡΠΈΡΠ΅Π½ΠΈ ΡΡΠ΅Π΄ΠΈ, Π² ΠΊΠΎΠΈΡΠΎ Π²ΡΠ·Π»ΠΈΡΠ΅ ΠΌΠΎΠ³Π°Ρ Π΄Π° Π±ΡΠ΄Π°Ρ ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠΈΡΠ°Π½ΠΈ (Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ° Ρ Π½ΡΠ»Π΅Π²ΠΎ Π΄ΠΎΠ²Π΅ΡΠΈΠ΅ β Zero Trust). Π’Π΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΡΡΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠ²ΡΡΠ·Π°Π½ΠΎΡΡ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π²ΠΌΠ΅ΡΡΠΎ VPN. Π Π°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΡΠ΅ ΠΎΡΠΈΠ³ΡΡΡΠ²Π° ΡΡΠ΅Π· ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅Π½ ΠΏΡΠΎΡΠ΅Ρ, ΡΠΏΡΠ°Π²Π»ΡΠ²Π°Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΡΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ°, Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΡΡΠ° ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΡΠ° Π½Π° ΡΡΠ»ΡΠ³ΠΈΡΠ΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅, ΠΊΠΎΠΈΡΠΎ ΡΠ° ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈ Π΄Π° Π΄Π΅ΠΉΡΡΠ²Π°Ρ ΠΊΠ°ΡΠΎ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΎΡΠΈ, ΠΎΠ±ΡΠ°Π·ΡΠ²Π°ΡΠΈ mash ΠΌΡΠ΅ΠΆΠ° ΠΈ ΠΈΠ·Π²ΡΡΡΠ²Π°ΡΠΈ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΡΠ°Π½Π·ΠΈΡΠ΅Π½ ΡΡΠ°ΡΠΈΠΊ ΠΏΡΠ΅Π· ΡΠ΅Π±Π΅ ΡΠΈ. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ Π½Π° ΡΡΠ»ΡΠ³ΠΈ Π·Π° Π±Π°Π»Π°Π½ΡΠΈΡΠ°Π½Π΅ Π½Π° Π½Π°ΡΠΎΠ²Π°ΡΠ²Π°Π½Π΅ΡΠΎ ΠΈ ΠΎΡΠΈΠ³ΡΡΡΠ²Π°Π½Π΅ Π½Π° ΠΎΡΠΊΠ°Π·ΠΎΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡ.

ΠΠΎΡΡΡΠΏΡΡ Π΄ΠΎ ΠΎΠ²Π΅ΡΠ»Π΅ΠΉΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ° ΡΠ΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ° ΡΡΠ΅Π· ΡΠΏΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ edge ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ Π΄ΠΎΡΡΡΠΏ ΠΎΡ Π²ΡΠ½ΡΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ° Π΄ΠΎ ΠΎΠ²Π΅ΡΠ»Π΅ΠΉΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°, ΠΏΠΎΡΡΡΠΎΠ΅Π½Π° Ρ OpenZiti. ΠΡΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΅ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΡΠ½Π΅Π»ΠΈ ΠΈ ΠΏΡΠΎΠΊΡΠΈ, ΠΊΠΎΠΈΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π°Ρ ΠΏΡΠΎΠ±ΠΈΡΠΈΠ΅ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° ΠΎΡ ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ° Π² ΠΎΠ²Π΅ΡΠ»Π΅ΠΉΠ½Π°ΡΠ° ΠΈ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ, Π·Π° Π΄Π° ΡΠ΅ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²Π°ΡΠ΅ Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΡΠ°Π±ΠΎΡΠ΅ΡΠΈ Π² ΠΎΠ²Π΅ΡΠ»Π΅ΠΉΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ° ΠΈ Π΄Π° ΡΠ΅ ΠΎΡΡΡΠ΅ΡΡΠ²ΠΈ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ ΡΡΡΠ΅ΡΡΠ²ΡΠ²Π°ΡΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, Π² ΠΊΠΎΠΈΡΠΎ Π½Π΅ Π΅ Π²Π³ΡΠ°Π΄Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΎΠ²Π΅ΡΠ»Π΅ΠΉΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°.
ΠΠΎΡΡΡΠΏ Π΄ΠΎ ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΈ ΠΏΠΎΠ»ΡΡΠ°Π²Π°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈ Ρ ΡΡΡΠ²ΡΡΠΈ DNS Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ΅Π½ ΡΠ°ΠΌΠΎ ΡΠ»Π΅Π΄ ΠΏΡΠ΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅ Π½Π° Π·Π°Π΄ΡΠ»ΠΆΠΈΡΠ΅Π»Π½Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΈ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Π½Π΅ β Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΈΡΠ΅ ΠΏΡΠ°Π²ΠΎΠΌΠΎΡΠΈΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡΡ Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈ Π½Π°Π»ΠΈΡΠΈΠ΅ΡΠΎ Π½Π° ΡΡΠ»ΡΠ³Π°ΡΠ° ΠΈ Π΄Π° ΡΠ΅ ΡΠ²ΡΡΠΆΠ΅ Ρ Π½Π΅Ρ. Π¦Π΅Π»ΠΈΡΡ ΡΡΠ°ΡΠΈΠΊ ΡΠ΅ Π·Π°ΡΠΈΡΠ°Π²Π° ΡΡΠ΅Π· mTLS (Π²Π·Π°ΠΈΠΌΠ½Π° Π°Π²ΡΠ΅Π½ΡΠΈΠΊΠ°ΡΠΈΡ, ΠΏΡΠΈ ΠΊΠΎΡΡΠΎ ΠΊΠ»ΠΈΠ΅Π½ΡΡΡ ΠΈ ΡΡΡΠ²ΡΡΡΡ ΡΠ΄ΠΎΡΡΠΎΠ²Π΅ΡΡΠ²Π°Ρ Π΅Π΄ΠΈΠ½ Π΄ΡΡΠ³) ΠΈ ΠΊΡΠ°ΠΉΠ½ΠΎ ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ (ChaCha20-Poly1305), Ρ.Π΅. ΠΊΠΎΠΌΠΏΡΠΎΠΌΠ΅ΡΠ°ΡΠΈΡΡΠ° Π½Π° Π²ΡΠ·Π»ΠΈΡΠ΅ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΡΡΠ°ΡΠΈΠΊΠ° Π½Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡΡΠ°. ΠΠ° ΠΊΡΠΈΠΏΡΠΈΡΠ°Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΎΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libsodium.
ΠΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΠΈΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ OpenZiti, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΡΠ±Π΅Π»Π΅ΠΆΠΈΠΌ ΠΏΠ»Π°ΡΡΠΎΡΠΌΠ°ΡΠ° Π·Π° ΡΡΠ²ΠΌΠ΅ΡΡΠ΅Π½ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π΄Π°Π½Π½ΠΈ Zrok ΠΈ Π΅ΠΊΠΎΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° browZer Π·Π° ΡΠ°Π·Π³ΡΡΡΠ°Π½Π΅ Π½Π° ΡΠ°ΠΉΡΠΎΠ²Π΅ Π² ΠΌΡΠ΅ΠΆΠ°ΡΠ° Ρ ΠΎΠ²ΡΡΠ»Π΅ΠΉ. ΠΡΠ²Π΅Π½ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ°Π·ΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈ ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, OpenZiti Π΅ ΠΏΠΎΠ΄Ρ ΠΎΠ΄ΡΡ ΠΈ Π·Π° ΠΈΠ·Π³ΡΠ°ΠΆΠ΄Π°Π½Π΅ Π½Π° ΡΠ°ΡΡΠ½ΠΈ ΠΌΡΠ΅ΠΆΠΈ Π·Π° ΠΎΡΠ³Π°Π½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π·Π°ΡΠ²ΠΎΡΠ΅Π½ΠΈ API, ΡΠ°ΠΉΡΠΎΠ²Π΅ ΠΈΠ»ΠΈ Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΡΠΊΡΠΈΠ²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΠΈ, Π±Π°Π·ΠΈΡΠ°Π½ΠΈ Π½Π° Kubernetes, Π² ΠΎΠ²ΡΡΠ»Π΅ΠΉΠ½Π°ΡΠ° ΠΌΡΠ΅ΠΆΠ°, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π΄ΠΈΡΡΠ°Π½ΡΠΈΠΎΠ½Π½ΠΎ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π²ΡΠ½ΡΠ½ΠΈ ΡΠΈΡΡΠ΅ΠΌΠΈ ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡ ΠΎΡ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠΈΡΠ°Π½Π΅ Π½Π° Π·Π°ΡΠΈΡΠ½ΠΈ ΡΡΠ΅Π½ΠΈ ΠΈ Π°Π½Π³Π°ΠΆΠΈΡΠ°Π½Π΅ Π½Π° VPN.
Π ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ΡΠΎ Π½Π° OpenZiti 1.0 Π΅ ΠΎΡΠΈΠ³ΡΡΠ΅Π½Π° ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡ Π½Π° API Π·Π° ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΎΡΠΈ ΠΈ ΠΊΠΎΠ½ΡΡΠΎΠ»Π΅ΡΠΈ (Π·Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ ΡΡΠ°Π±ΠΈΠ»Π½ΠΎΡΡΡΠ° Π½Π° API Π΅ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Π½Π° ΠΈ ΠΏΠΎ-ΡΠ°Π½ΠΎ). ΠΡ ΡΠΎΠ²Π° ΠΈΠ·Π΄Π°Π½ΠΈΠ΅ Π½Π°ΡΠ°ΡΡΠΊ API ΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΡΡ Π½Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΈΡ ΡΠ΅Π΄ ΡΠ΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Ρ ΠΎΠ±ΡΠ°ΡΠ½ΠΎ ΡΡΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡ, Π° ΠΏΡΠΈ Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎΡΡ ΠΎΡ ΠΏΡΠ΅ΠΌΠ°Ρ
Π²Π°Π½Π΅ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈ ΡΠ΅ Π±ΡΠ΄Π΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ ΠΏΡΠΎΡΠ΅Ρ Π½Π° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»Π½ΠΎ ΠΏΡΠ΅Π²ΡΡΡΠ°Π½Π΅ Π½Π° ΡΠ΅Π·ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π² ΠΎΡΡΠ°ΡΠ΅Π»ΠΈ ΠΈ ΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΎΡΠΎ ΠΈΠΌ ΠΏΡΠ΅ΠΌΠ°Ρ
Π²Π°Π½Π΅ ΡΠ°ΠΌΠΎ ΠΏΡΠΈ Π·Π½Π°ΡΠΈΡΠ΅Π»Π½Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° Π²Π΅ΡΡΠΈΡΡΠ°. Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ Π΅ ΠΏΡΠΎΠ²Π΅Π΄Π΅Π½ΠΎ ΠΈ Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΎ ΡΠ΅ΡΡΠ²Π°Π½Π΅ Ρ ΡΠΈΠΌΡΠ»Π°ΡΠΈΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΠΈ ΡΡΠΈΠ²ΠΎΠ²Π΅ Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ (chaos testing), ΠΊΠΎΠ΅ΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° Π΄Π° ΡΠ΅ ΡΠ²Π΅ΡΠΈΠΌ Π² ΡΡΡΠΎΠΉΡΠΈΠ²ΠΎΡΡΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠ°ΡΠ° ΠΏΡΠΈ Π²ΡΠ·Π½ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° ΠΈΠ·Π²ΡΠ½ΡΠ΅Π΄Π½ΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ ΠΈ ΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡΠ° Π΄Π° ΡΠ΅ Π²ΡΡΠ½Π΅ΠΌ ΠΊΡΠΌ Π½ΠΎΡΠΌΠ°Π»Π½Π°ΡΠ° ΡΠ°Π±ΠΎΡΠ° ΡΠ»Π΅Π΄ Π²ΡΠ·ΡΡΠ°Π½ΠΎΠ²ΡΠ²Π°Π½Π΅ Π½Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° Π½Π° ΠΏΠΎΠ²ΡΠ΅Π΄Π΅Π½ΠΈΡΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
