ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ Truffle Security ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π»Π° ΡΡΠ΅Π½Π°ΡΠΈΠΈ Π°ΡΠ°ΠΊ Π½Π° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΈΠΏΠΎΠ²ΡΡ ΠΏΡΠΈΡΠΌΠΎΠ² ΡΠ°Π±ΠΎΡΡ Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌΠΈ Π½Π° GitHub, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΈΠ·Π²Π»Π΅ΡΡ Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ΄Π°Π»ΡΠ½Π½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Ρ ΠΊΠΎΡΠΎΡΡΡ ΠΈΠΌΠ΅ΡΡΡΡ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠ΅ ΡΠΎΡΠΊΠΈ ΠΈΠ»ΠΈ ΠΊΠΎΡΠΎΡΡΠ΅ Π±ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ ΠΊΠ°ΠΊ ΡΠΎΡΠΊΠΈ.
ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌ ΠΏΠΎ Ρ ΡΡΡ Π²ΠΎ Π²ΡΠ΅Ρ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠΎΡΠΊΠ°ΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ Π²ΡΠ·Π²Π°Π½ΠΎ ΡΠ΅ΠΌ, ΡΡΠΎ GitHub Π² ΡΠ΅Π»ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΠΈ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΡΠ±Π»ΠΈΠΊΠ°ΡΠΎΠ² Ρ ΡΠ°Π½ΠΈΡ Π²ΠΌΠ΅ΡΡΠ΅ Π²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ ΠΈΠ· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΈ ΡΠΎΡΠΊΠΎΠ², Π»ΠΈΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈ ΡΠ°Π·Π΄Π΅Π»ΡΡ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ². ΠΠΎΠ΄ΠΎΠ±Π½ΠΎΠ΅ Ρ ΡΠ°Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ Π»ΡΠ±ΠΎΠΉ ΠΊΠΎΠΌΠΌΠΈΡ ΠΈΠ· Π»ΡΠ±ΠΎΠ³ΠΎ ΡΠΎΡΠΊΠ°, ΡΠ²Π½ΠΎ ΡΠΊΠ°Π·Π°Π² Π΅Π³ΠΎ Ρ ΡΡ Π² URL. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΠΌΠΎΠΆΠ΅Ρ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΡΠΊ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ «/torvalds/linux» ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ Π² Π½Π΅Π³ΠΎ Π»ΡΠ±ΠΎΠΉ ΠΊΠΎΠ΄, ΠΏΠΎΡΠ»Π΅ ΡΠ΅Π³ΠΎ ΡΡΠΎΡ ΠΊΠΎΠ΄ ΡΡΠ°Π½Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½ ΠΏΠΎ ΠΏΡΡΠΌΠΎΠΉ Ρ ΡΡ-ΡΡΡΠ»ΠΊΠ΅ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ «/torvalds/linux». Π ΡΠ»ΡΡΠ°Π΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π΅ΡΠ»ΠΈ ΠΈΠΌΠ΅Π΅ΡΡΡ Ρ ΠΎΡΡ Π±Ρ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ ΡΠΎΡΠΊ, Π΄Π°Π½Π½ΡΠ΅ ΠΈΠ· ΡΠ΄Π°Π»ΡΠ½Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΎΡΡΠ°ΡΡΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΏΠΎ Ρ ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΡΠ΅Π΄Π»Π°Π³Π°Π΅ΡΡΡ ΡΡΠΈ ΡΡΠ΅Π½Π°ΡΠΈΡ, ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΡΡΠΈΡ ΡΠ³ΡΠΎΠ·Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΠΈ:
- ΠΠ΅ΡΠ²ΡΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π΅Ρ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΠ³Π΄Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΎΡΠΊΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π², Π΄ΠΎΠ±Π°Π²Π»ΡΡΡ Π² Π½ΠΈΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ, ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠΈΡΡΡΡ, Π° Π·Π°ΡΠ΅ΠΌ ΡΠ΄Π°Π»ΡΡΡ. ΠΠΎΠΌΠΈΠΌΠΎ ΡΡΠ΅ΡΠΊΠΈ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΏΡΠ΅Π΄Π½Π°Π·Π½Π°ΡΠ΅Π½ Π΄Π»Ρ ΠΏΡΠ±Π»ΠΈΠΊΠ°ΡΠΈΠΈ, ΠΎΠΏΠ°ΡΠ½ΠΎΡΡΡ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»ΡΠ΅Ρ ΡΠΈΡΡΠ°ΡΠΈΡ, ΠΊΠΎΠ³Π΄Π° Π² ΡΠΊΡΠΏΠ΅ΡΠΈΠΌΠ΅Π½ΡΠ°Ρ Π² ΠΊΠΎΠ΄ ΡΠ°ΠΉΠ»ΠΎΠ² Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡΡΡΡ ΡΠ°Π±ΠΎΡΠΈΠ΅ ΠΊΠ»ΡΡΠΈ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ API. Π ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π°ΡΠ°ΠΊΡΡΡΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎ Ρ ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, Π°Π΄ΡΠ΅ΡΡΠ΅ΠΌΠΎΠΌΡ ΠΏΠΎΡΠ»Π΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠΎΡΠΊΠ° ΡΠ΅ΡΠ΅Π· ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΡΠΌ ΡΠΏΠΎΡΠΎΠ±ΠΎΠΌ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΠΈ ΡΠΌΠΎΠ³Π»ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΠΈΡΡ 30 ΡΠ°Π±ΠΎΡΠΈΡ ΠΊΠ»ΡΡΠ΅ΠΉ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ API, ΠΈΠ·ΡΡΠΈΠ² ΡΡΠΈ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΌΠ°ΡΠΈΠ½Π½ΡΠΌ ΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Ρ Π±ΠΎΠ»ΡΡΠΈΠΌ ΡΠΈΡΠ»ΠΎΠΌ ΡΠΎΡΠΊΠΎΠ².
- ΠΡΠΎΡΠΎΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄Π°Π½Π½ΡΠΌ ΠΏΠΎΡΠ»Π΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ, Π΅ΡΠ»ΠΈ Π΄Π»Ρ ΡΡΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π±ΡΠ»ΠΈ ΡΠΎΠ·Π΄Π°Π½Ρ ΡΠΎΡΠΊΠΈ. Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡΡ ΡΠ»ΡΡΠ°ΠΉ, ΠΊΠΎΠ³Π΄Π° Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π±ΡΠ»ΠΈ ΡΠ»ΡΡΠ°ΠΉΠ½ΠΎ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Ρ Π·Π°ΠΊΡΡΡΡΠ΅ ΠΊΠ»ΡΡΠΈ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· ΡΠΎΡΡΡΠ΄Π½ΠΈΠΊΠΎΠ², ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠ΅ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΏΠΎΠ»Π½ΡΠΉ Π΄ΠΎΡΡΡΠΏ ΠΊΠΎ Π²ΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΠΌ Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Π½Π° GitHub. ΠΠΎΠΌΠΏΠ°Π½ΠΈΡ ΡΠ΄Π°Π»ΠΈΠ»Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ ΡΠ΅ΡΠ΅Π· ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ»Π° ΡΡΠ΅ΡΠΊΠ°, Π½ΠΎ ΠΊΠ»ΡΡΠΈ ΠΏΠΎ-ΠΏΡΠ΅ΠΆΠ½Π΅ΠΌΡ ΠΎΡΡΠ°Π»ΠΈΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ Π΄Π»Ρ ΠΈΠ·Π²Π»Π΅ΡΠ΅Π½ΠΈΡ ΡΠ΅ΡΠ΅Π· ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΏΠΎ Ρ
ΡΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ° Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ
Ρ ΡΠΎΡΠΊΠ°ΠΌΠΈ.
- Π’ΡΠ΅ΡΠΈΠΉ ΡΡΠ΅Π½Π°ΡΠΈΠΉ ΡΠ²ΡΠ·Π°Π½ Ρ ΠΌΠΎΠ΄Π΅Π»ΡΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠΎΠ², ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π·Π²ΠΈΠ²Π°ΡΡ Π±Π°Π·ΠΎΠ²ΡΡ ΠΎΡΠΊΡΡΡΡΡ Π²Π΅ΡΡΠΈΡ Π² ΠΏΡΠ±Π»ΠΈΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΡΡ ΠΏΡΠΎΠΏΡΠΈΠ΅ΡΠ°ΡΠ½ΡΡ Π²Π΅ΡΡΠΈΡ Π² ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠΌ. ΠΡΠ»ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΈΠ·Π½Π°ΡΠ°Π»ΡΠ½ΠΎ ΡΠ°Π·Π²ΠΈΠ²Π°Π»Π° ΠΏΡΠΎΠ΅ΠΊΡ Π² ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΠΎΡΠ»Π΅ ΠΎΡΠΊΡΡΡΠΈΡ ΠΊΠΎΠ΄Π° ΠΏΡΠΎΠ΅ΠΊΡΠ° ΠΏΠ΅ΡΠ΅Π²Π΅Π»Π° Π΅Π³ΠΎ Π² ΡΠ°Π·ΡΡΠ΄ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ
, Π½ΠΎ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΠ»Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΡ Π·Π°ΠΊΡΡΡΠΎΠΉ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΉ ΠΈΠ»ΠΈ ΡΠ°ΡΡΠΈΡΠ΅Π½Π½ΠΎΠΉ Π²Π΅ΡΡΠΈΠΈ Π² ΠΏΡΠΈΠ²Π°ΡΠ½ΠΎΠΌ ΡΠΎΡΠΊΠ΅, ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΌ Π² ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΡΠΎΡΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ ΠΏΠΎ Ρ
ΡΡΠ°ΠΌ ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΡΠ΅ΡΠ΅Π· ΠΏΡΠ±Π»ΠΈΡΠ½ΡΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ. ΠΡΠΈ ΡΡΠΎΠΌ Π΄ΠΎΡΡΡΠΏ Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ ΡΠΎΠ»ΡΠΊΠΎ ΠΊ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡΠΌ, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½ΡΠΌ Π² ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΉ ΡΠΎΡΠΊ Π΄ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠ³ΠΎ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π² ΡΠ°Π·ΡΡΠ΄ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ
(Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΏΡΠΈΠ²Π°ΡΠ½ΡΡ
ΠΈ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ
ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π² ΡΠ°Π·Π΄Π΅Π»ΡΡΡΡΡ, Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° Π΄Π²Π° ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ Π±ΡΠ»ΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΠΌΠΈ, ΠΊΠΎΠΌΠΌΠΈΡΡ Ρ
ΡΠ°Π½ΠΈΠ»ΠΈΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎ, ΠΏΠΎΡΡΠΎΠΌΡ ΠΎΡΡΠ°Π»ΠΈΡΡ Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΏΠΎΡΠ»Π΅ Π΅Π³ΠΎ ΠΏΠ΅ΡΠ΅Π²ΠΎΠ΄Π° Π² ΡΠ°Π·ΡΡΠ΄ ΠΏΡΠ±Π»ΠΈΡΠ½ΡΡ
).
Π’ΡΡΠΊ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π΄ΠΎΡΡΡΠΏ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌ Π² ΡΠΎΡΠΊΠ°Ρ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΡΠ΅ΡΠ΅Π· ΡΡΡΠ»ΠΊΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ, ΠΈΠ·Π²Π΅ΡΡΠ΅Π½ ΡΠΆΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π»Π΅Ρ ΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΡΠΎΠΊ ΠΈ Π²Π²ΠΎΠ΄Π° Π² Π·Π°Π±Π»ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ² (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΡΠ½ΠΈΠΊΠΈ ΠΏΠ΅ΡΠΈΠΎΠ΄ΠΈΡΠ΅ΡΠΊΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ ΡΠΎΠ·Π΄Π°ΡΡ Π²ΠΈΠ΄ΠΈΠΌΠΎΡΡΡ ΠΏΠΎΠ΄ΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ Π±ΡΠΊΠ΄ΠΎΡΠΎΠ² Π² ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΉ Ρ ΡΠ΄ΡΠΎΠΌ Linux Π½Π° GitHub). Π ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΠΌΠ΅ΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΠΈΠ²ΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌ ΡΡΡΠΊΠ°ΠΌ GitHub Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΏΡΠ΅Π΄ΡΠΏΡΠ΅ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΎ ΡΠΎΠΌ, ΡΡΠΎ Π·Π°ΠΏΡΠΎΡΠ΅Π½Π½ΡΠΉ ΠΊΠΎΠΌΠΌΠΈΡ Π½Π΅ ΠΎΡΠ½ΠΎΡΠΈΡΡΡ ΠΊ Π²Π΅ΡΠΊΠ°ΠΌ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠΈ ΠΈ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ ΡΠΎΡΠΊΡ. ΠΡΠΈ ΡΡΠΎΠΌ ΡΠ°ΠΌΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π΄ΠΎΡΡΡΠΏΠ° ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌ ΠΏΠΎ Ρ ΡΡΡ Π² Π»ΡΠ±ΡΡ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ ΡΠΎΡΠΊΠ°ΠΌΠΈ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡΡ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π»Π°ΡΡ ΠΊΠ°ΠΊ Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½Π°Ρ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄Π»Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ Π΄Π°Π½Π½ΡΠΌ Π² ΡΠ΄Π°Π»ΡΠ½Π½ΡΡ ΠΈ ΠΏΡΠΈΠ²Π°ΡΠ½ΡΡ ΡΠΎΡΠΊΠ°Ρ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ Π·Π½Π°Π½ΠΈΠ΅ Ρ ΡΡΠ° ΠΊΠΎΠΌΠΌΠΈΡΠ°.
ΠΠΎΠ΄ΠΎΠ±ΡΠ°ΡΡ Ρ
ΡΡ ΠΊΠΎΠΌΠΌΠΈΡΠ°, ΡΠΎΡΠΌΠΈΡΡΠ΅ΠΌΡΠΉ Π½Π° Π±Π°Π·Π΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° SHA-1 ΠΈ Π²ΠΊΠ»ΡΡΠ°ΡΡΠΈΠΉ 32 ΡΠΈΠΌΠ²ΠΎΠ»Π°, Π½Π΅ ΡΠ΅Π°Π»ΡΠ½ΠΎ, Π½ΠΎ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ, ΡΡΠΎ ΡΡΠΎ ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅ΡΡΡ. GitHub ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ ΡΠΎΠΊΡΠ°ΡΡΠ½Π½ΡΡ ΡΠΎΡΠΌΡ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΡΡ Π°Π΄ΡΠ΅ΡΠΎΠ²Π°ΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΈΠΌ ΠΏΠ΅ΡΠ²ΡΠΌ ΡΠΈΠΌΠ²ΠΎΠ»Π°ΠΌ Ρ
ΡΡΠ°, Π΅ΡΠ»ΠΈ ΠΎΡΡΡΡΡΡΠ²ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΡ Ρ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΊΠΎΠΌΠΌΠΈΡΠ°ΠΌΠΈ. ΠΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΡΠΈΡΠ»ΠΎ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² Π΄Π»Ρ ΡΠΎΠΊΡΠ°ΡΡΠ½Π½ΠΎΠΉ Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠΈ Ρ
ΡΡΠ° — 4, ΡΡΠΎ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΡ Π²ΡΠ΅Π³ΠΎ 65 ΡΡΡΡΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°ΡΠΈΠΉ (16^4). ΠΡΠΈ ΡΡΠΎΠΌ ΠΏΠ΅ΡΠ΅Π±ΠΎΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ ΠΏΠΎΡΡΠ΅Π±ΠΎΠ²Π°ΡΡΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ API GitHub ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°ΡΡ ΠΎΠ±ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π΄Π»Ρ ΠΏΠ΅ΡΠ΅Ρ
Π²Π°ΡΠ° ΡΠΎΠ±ΡΡΠΈΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΡΡ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌΠΈ ΠΏΡΠΎΠ΅ΠΊΡΠ°ΠΌΠΈ, Π²Π΅Π΄ΡΡΠΈΠΌΠΈ Π°ΡΡ
ΠΈΠ² Ρ ΠΏΠΎΠ»Π½ΡΠΌ Π»ΠΎΠ³ΠΎΠΌ Π²ΡΠ΅Ρ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ Ρ
ΡΡΠ°Ρ
ΠΊΠΎΠΌΠΌΠΈΡΠΎΠ² ΠΎΡΡΠ°ΡΡΡΡ ΠΈ ΠΏΠΎΡΠ»Π΅ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΠ΅Π².
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru