Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Цялата история Π½Π° човСчСството Π΅ Π½Π΅ΠΏΡ€Π΅ΠΊΡŠΡΠ½Π°Ρ‚ΠΎ освобоТдаванС ΠΎΡ‚ Π²Π΅Ρ€ΠΈΠ³ΠΈΡ‚Π΅ ΠΈ създаванС Π½Π° Π½ΠΎΠ²ΠΈ, ΠΎΡ‰Π΅ ΠΏΠΎ-Π·Π΄Ρ€Π°Π²ΠΈ. (АнонимСн Π°Π²Ρ‚ΠΎΡ€)

Анализирайки ΠΌΠ½ΠΎΠ³ΠΎΠ±Ρ€ΠΎΠΉΠ½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈ (Bitshares, Hyperledger, Exonum, Ethereum, Bitcoin ΠΈ Π΄Ρ€.), Ρ€Π°Π·Π±ΠΈΡ€Π°ΠΌ, Ρ‡Π΅ ΠΎΡ‚ тСхничСска Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ° всички Ρ‚Π΅ са ΠΈΠ·Π³Ρ€Π°Π΄Π΅Π½ΠΈ Π½Π° Π΅Π΄Π½ΠΈ ΠΈ ΡΡŠΡ‰ΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ. Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΌΡ€Π΅ΠΆΠΈΡ‚Π΅ напомнят Π½Π° ΠΊΡŠΡ‰ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ, Π²ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅Ρ‚ΠΎ ΠΎΡ‚ конструкции, Π΄Π΅ΠΊΠΎΡ€ ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΠΌΠ°Ρ‚ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚, стСни, ΠΏΠΎΠΊΡ€ΠΈΠ², ΠΏΡ€ΠΎΠ·ΠΎΡ€Ρ†ΠΈ ΠΈ Π²Ρ€Π°Ρ‚ΠΈ, ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си ΠΏΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ Π½Π°Ρ‡ΠΈΠ½ΠΈ. И Π°ΠΊΠΎ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ основнитС ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° сгради ΠΈ Π·Π½Π°Π΅ΠΌ свойствата Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈΡ‚Π΅ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΈ, ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌ Ρ†Π΅Π»Π΅Π²ΠΎΡ‚ΠΎ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Π°Ρ‚Π° ΠΊΡŠΡ‰Π°. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, ситуацията Π΅ Ρ‚Π°ΠΊΠ°Π²Π°, Ρ‡Π΅ всички Π²Π΅Ρ‡Π΅ знаят Π·Π° Π½Π΅Π³ΠΎ, Π½ΠΎ ΠΌΠ°Π»ΠΊΠΎ Ρ…ΠΎΡ€Π° Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° ΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΡ‚Π΅ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°. ΠŸΠΎΡ€Π°Π΄ΠΈ Ρ‚ΠΎΠ²Π° възниква Π½Π΅Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ относно Ρ‚ΠΎΠ²Π° Π·Π°Ρ‰ΠΎ ΠΈ ΠΊΠ°ΠΊ ΠΈΠΌΠ° смисъл Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.

Π’ Ρ‚Π°Π·ΠΈ статия Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΎΠ±Ρ‰ΠΈΡ‚Π΅ Π·Π° всички Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΌΡ€Π΅ΠΆΠΈ свойства ΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈ. Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° Ρ‰Π΅ Π²ΠΈΠ΄ΠΈΠΌ Π·Π°Π΄Π°Ρ‡ΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΈ Π·Π° Π·Π°ΠΊΡ€Π΅ΠΏΠ²Π°Π½Π΅ Π½Π° ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Ρ‰Π΅ построим малък, Π½ΠΎ истински Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Π½Π° нашия Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»Π΅Π½ ΡƒΡ‡Π°ΡΡ‚ΡŠΠΊ!

И Ρ‚Π°ΠΊΠ°, Π½Π΅ΠΊΠ° си ΠΏΡ€ΠΈΠΏΠΎΠΌΠ½ΠΈΠΌ ΠΊΠ°ΠΊΠ²ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ ΠΏΡŠΡ€Π²ΠΎΠ½Π°Ρ‡Π°Π»Π½ΠΎ Ρ€Π΅ΡˆΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½.

Π‘ΠΈΠ³ΡƒΡ€Π΅Π½ съм, Ρ‡Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‚ вас Ρ‰Π΅ спомСнат дистрибутирана, Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π°, ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Π° ΠΈ нСизмСняСма Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Но Π·Π°Ρ‰ΠΎ всичко Ρ‚ΠΎΠ²Π° бСшС Π½ΡƒΠΆΠ½ΠΎ?

ΠŸΡ€Π΅Π΄ΠΏΠΎΡ‡ΠΈΡ‚Π°ΠΌ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π²Π°ΠΌ ΠΈΠ·ΡƒΡ‡Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° всяка тСхнология с Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π½Π° стандартитС, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π½Π° тях сС основават всички статии ΠΈ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Ρ€Π°Π·Π³Π»Π΅ΠΆΠ΄Π°Π½Π°Ρ‚Π° Ρ‚Π΅ΠΌΠ°. Но Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° стандартитС Π·Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Π½Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚, Π² ISO са създадСни само ΠΊΠΎΠΌΠΈΡ‚Π΅Ρ‚ΠΈ Π·Π° тяхното Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅. Π’ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π² всСки ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈΠΌΠ° свой Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ White paper, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΠΎ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΠΎ Π΅ тСхничСско Π·Π°Π΄Π°Π½ΠΈΠ΅. ΠŸΡŠΡ€Π²ΠΈΡΡ‚ извСстСн Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π΅ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Bitcoin. НСка ΠΎΡ‚ΠΈΠ΄Π΅ΠΌ Π½Π° официалния сайт Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΈ Π΄Π° Π²ΠΈΠ΄ΠΈΠΌ ΠΎΡ‚ΠΊΡŠΠ΄Π΅ Π·Π°ΠΏΠΎΡ‡Π½Π° всичко.

Π—Π°Π΄Π°Ρ‡Π° Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°

И Ρ‚Π°ΠΊΠ°, Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π°, която Ρ€Π΅ΡˆΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΡŠΡ‚ Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°-ΠΏΠΈΠΎΠ½Π΅Ρ€ Bitcoin, Π΅ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° Π΄ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΠ½Π΅ Π½Π° собствСност Π²ΡŠΡ€Ρ…Ρƒ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈ Π² срСда Π±Π΅Π· Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅, Π±Π΅Π· посрСдници. НапримСр, Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Bitcoin цифровият Π°ΠΊΡ‚ΠΈΠ² Π΅ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚Π° ΠΌΠΎΠ½Π΅Ρ‚Π° bitcoin. И всички тСхничСски Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π½Π° Bitcoin ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ водят Π΄ΠΎ Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚Π°Π·ΠΈ Π·Π°Π΄Π°Ρ‡Π°.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅, ΠΊΠΎΠΈΡ‚ΠΎ Ρ€Π΅ΡˆΠ°Π²Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΡŠΡ‚

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Ρ‚Π΅ Π»ΠΈ си Π΅Π΄Π½Π° финансова организация, която Ρ‚Π²ΡŠΡ€Π΄ΠΈ, Ρ‡Π΅ Π΅ построила ΠΌΡ€Π΅ΠΆΠ° ΠΏΠΎ цСлия свят, Ρ‡Ρ€Π΅Π· която ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‚Π΅ ΠΏΠ°Ρ€ΠΈ Π½Π° всСки Ρ‡ΠΎΠ²Π΅ΠΊ? Π©Π΅ ΠΈ сС Π΄ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅ Π»ΠΈ? Ако Ρ‚ΠΎΠ²Π° Π΅ организация ΠΊΠ°Ρ‚ΠΎ Visa ΠΈΠ»ΠΈ MasterCard, вСроятно Ρ‰Π΅ сС Π΄ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅, Π½ΠΎ Π°ΠΊΠΎ, Π΄Π° Ρ€Π΅Ρ‡Π΅ΠΌ, Π΅ AnonymousWorldMoney, вСроятно Π½Π΅. Π—Π°Ρ‰ΠΎ? Π—Π°Ρ‰ΠΎΡ‚ΠΎ Π·Π½Π°Π΅ΠΌ ΠΊΠ°ΠΊ частнитС ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚ Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ систСми, с ΠΊΠ°ΠΊΠ²ΠΈ Ρ†Π΅Π»ΠΈ ΠΈ Π΄ΠΎ ΠΊΠ°ΠΊΠ²ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° Π΄ΠΎΠ²Π΅Π΄Π΅ Ρ‚ΠΎΠ²Π°. НСка Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ Π½Π° Ρ‚Π°ΠΊΠΈΠ²Π° систСми ΠΈ ΠΊΠ°ΠΊ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ.

Π”Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Π΅ Π² условната AnonymousWorldMoney ΠΈΠΌΠ° ΡΡŠΡ€Π²ΡŠΡ€ΠΈ с Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΈ Π±ΠΈ Π±ΠΈΠ»ΠΎ Π΄ΠΎΠ±Ρ€Π΅ Π΄Π° ΠΈΠΌΠ° няколко Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΄Π°Ρ‚Π° Ρ†Π΅Π½Ρ‚Ρ€ΠΎΠ²Π΅. ΠšΠΎΠ³Π°Ρ‚ΠΎ податСлят ΠΈΠ·ΠΏΡ€Π°Ρ‚ΠΈ ΠΏΠ°Ρ€ΠΈ, транзакцията сС рСгистрира ΠΈ Ρ€Π΅ΠΏΠ»ΠΈΠΊΠΈΡ€Π° Π½Π° всички ΡΡŠΡ€Π²ΡŠΡ€ΠΈ, Π° ΠΏΠ°Ρ€ΠΈΡ‚Π΅ достигат Π΄ΠΎ получатСля.

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Π’ идСалния свят Ρ‚Π°Π·ΠΈ схСма Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ, Π½ΠΎ Π½Π°ΡˆΠΈΡΡ‚ свят срСща слСднитС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ:

  1. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ с идСнтификацията Π½Π° участницитС ΠΎΡ‚ Π΅Π΄Π½Π° страна ΠΈ нСобходимостта ΠΎΡ‚ анонимност Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°. Π’.Π΅. трябва Π΄Π° сС изпратят ΠΏΠ°Ρ€ΠΈ Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π΅Π½ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚Π΅Π», Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π½ΠΈΠΊΠΎΠΉ Π΄Π° Π½Π΅ Π·Π½Π°Π΅ Π·Π° Ρ‚Π°Π·ΠΈ транзакция, освСн участницитС Π² сдСлката. Π‘Π°Π½ΠΊΠΈΡ‚Π΅ ΠΈΠΌΠ°Ρ‚ Π½ΠΎΠΌΠ΅Ρ€Π° Π½Π° смСтки ΠΈ Π±Π°Π½ΠΊΠΎΠ²ΠΈ ΠΊΠ°Ρ€Ρ‚ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ физичСско ΠΈΠ»ΠΈ ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΎ Π»ΠΈΡ†Π΅, Π° Π±Π°Π½ΠΊΠΎΠ²Π°Ρ‚Π° Ρ‚Π°ΠΉΠ½Π° Π·Π°Ρ‰ΠΈΡ‚Π°Π²Π° информацията Π·Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅. Но ΠΊΠΎΠΉ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π°, Ρ‡Π΅ условната AnonymousWorldMoney Π½Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π»ΠΈΡ‡Π½ΠΈ Π΄Π°Π½Π½ΠΈ ΠΈ информация Π·Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π·Π° свои Ρ†Π΅Π»ΠΈ?
  2. Как Π΄Π° Π±ΡŠΠ΄Π΅Ρ‚Π΅ сигурни, Ρ‡Π΅ получатСлят Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°Π·ΠΈ сума, която ΠΌΡƒ Π΅ ΠΈΠ·ΠΏΡ€Π°Ρ‚Π΅Π½Π°? Π”Π° Ρ€Π΅Ρ‡Π΅ΠΌ, податСлят Π΅ ΠΈΠ·ΠΏΡ€Π°Ρ‚ΠΈΠ» $100, Π° получатСлят Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» $10. ΠŸΠΎΠ΄Π°Ρ‚Π΅Π»ΡΡ‚ ΠΎΡ‚ΠΈΠ²Π° Π² офиса Π½Π° AnonymousWorldMoney със своята разписка, Π° слуТитСлят ΠΏΠΎΠΊΠ°Π·Π²Π° своята вСрсия, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π΅ записано, Ρ‡Π΅ податСлят Π΅ ΠΈΠ·ΠΏΡ€Π°Ρ‚ΠΈΠ» само $10.
  3. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ с Π½Π΅Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅Ρ‚ΠΎ Π² срСдата, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΈΠ·ΠΌΠ°ΠΌΠ°, Π½Π°Ρ€Π΅Ρ‡Π΅Π½Π° Π΄Π²ΡƒΠ΄ΡƒΠΏΠ΅Π½ΠΈΠ΅. НСкорСктСн участник ΠΌΠΎΠΆΠ΅ Π΄Π° Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π° своя баланс няколко ΠΏΡŠΡ‚ΠΈ, ΠΏΡ€Π΅Π΄ΠΈ ΠΏΠ»Π°Ρ‰Π°Π½Π΅Ρ‚ΠΎ Π΄Π° бъдС Ρ€Π΅ΠΏΠ»ΠΈΠΊΠΈΡ€Π°Π½ΠΎ Π½Π° всички ΡΡŠΡ€Π²ΡŠΡ€ΠΈ. Π’Π΅ΠΎΡ€Π΅ΠΌΠ°Ρ‚Π° CAP, Ρ€Π°Π·Π±ΠΈΡ€Π° сС, Π½Π΅ Π΅ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½Π° ΠΈ консСнсус Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка Ρ‰Π΅ бъдС постигнат, Π½ΠΎ някой няма Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ΠΏΠ°Ρ€ΠΈΡ‚Π΅ Π·Π° прСдоставСнитС услуги ΠΈΠ»ΠΈ стоки. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ, Π°ΠΊΠΎ няма пълно Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅ Π² ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Π°Ρ‚Π° организация ΠΈΠ»ΠΈ участницитС Π² сдСлкитС, трябва Π΄Π° ΠΈΠ·Π³Ρ€Π°Π΄ΠΈΠΌ ΠΌΡ€Π΅ΠΆΠ°, основаваща сС Π½Π΅ Π½Π° Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅, Π° Π½Π° криптография.
  4. Условната AnonymousWorldMoney ΠΈΠΌΠ° ΠΊΡ€Π°ΠΉΠ½ΠΎ число ΡΡŠΡ€Π²ΡŠΡ€ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° станат Π½Π΅Π΄ΠΎΡΡ‚ΡŠΠΏΠ½ΠΈ ΠΏΠΎ Π½Π΅Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ ΠΈΠ»ΠΈ Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΎ.
  5. AnonymousWorldMoney Ρ‰Π΅ Π²Π·Π΅ΠΌΠ΅ своя осСзаСма такса.
  6. Π’ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅. ΠŸΡ€ΠΈ Сксплоатацията Π½Π° Π‘ΠΈΡ‚ΠΊΠΎΠΉΠ½ стана ясно, Ρ‡Π΅ Ρ…ΠΎΡ€Π°Ρ‚Π° искат Π½Π΅ само Π΄Π° ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΡΡ‚ ΠΌΠΎΠ½Π΅Ρ‚ΠΈ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си, Π½ΠΎ ΠΈ Π΄Π° провСряват Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ условия Π½Π° транзакцията, Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Ρ‚ сцСнарии Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°, Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ Π΄Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ дСйствия Π² зависимост ΠΎΡ‚ условията ΠΈ Ρ‚.Π½.

Как Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ€Π΅ΡˆΠ°Π²Π° Ρ‚Π΅Π·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ

  1. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡΡ‚Π° Π½Π° участницитС сС ΠΎΡΡŠΡ‰Π΅ΡΡ‚Π²ΡΠ²Π° Ρ‡Ρ€Π΅Π· Π΄Π²ΠΎΠΉΠΊΠ° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅: частСн ΠΈ ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½, Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΡŠΡ‚ Π·Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ² подпис нСдвусмислСно ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€Π° ΠΈΠ·ΠΏΡ€Π°Ρ‰Π°Ρ‡Π° ΠΈ получатСля, оставяйки Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ самоличности Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΈ.
  2. Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ сС ΡΡŠΠ±ΠΈΡ€Π°Ρ‚ Π² Π±Π»ΠΎΠΊΠΎΠ²Π΅, изчислява сС Ρ…Π΅Ρˆ Π½Π° Π±Π»ΠΎΠΊΠ°, ΠΊΠΎΠΉΡ‚ΠΎ сС записва Π² слСдващия Π±Π»ΠΎΠΊ. Π’Π°Π·ΠΈ послСдоватСлност ΠΎΡ‚ записванС Π½Π° Ρ…Π΅ΡˆΠΎΠ²Π΅ Π² Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Π΄Π°Π΄Π΅ ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° тСхнологията Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, ΠΈ ΠΈΠΌΠ΅Π½Π½ΠΎ тя ΠΏΡ€Π°Π²ΠΈ нСвъзмоТно Π½Π΅Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠΎΡ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ / ΠΈΠ·Ρ‚Ρ€ΠΈΠ²Π°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΈΠ»ΠΈ ΠΎΡ‚Π΄Π΅Π»Π½ΠΈ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅. Π’Π°ΠΊΠ°, Π°ΠΊΠΎ транзакцията Π΅ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, ΠΌΠΎΠΆΠ΅ Π΄Π° сС бъдС сигурСн, Ρ‡Π΅ Π½Π΅ΠΉΠ½ΠΈΡ‚Π΅ Π΄Π°Π½Π½ΠΈ Ρ‰Π΅ останат Π½Π΅ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½ΠΈ.
  3. Π˜Π·ΠΌΠ°ΠΌΠ°Ρ‚Π° с Π΄Π²ΠΎΠΉΠ½ΠΎ ΠΈΠ·Ρ€Π°Π·Ρ…ΠΎΠ΄Π²Π°Π½Π΅ сС прСдотвратява Ρ‡Ρ€Π΅Π· постиганС Π½Π° консСнсус Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, ΠΊΠ°ΠΊΠ²ΠΈ Π΄Π°Π½Π½ΠΈ Π΄Π° сС смятат Π·Π° Π²Π΅Ρ€Π½ΠΈ, Π° ΠΊΠ°ΠΊΠ²ΠΈ Π΄Π° сС ΠΎΡ‚Ρ…Π²ΡŠΡ€Π»ΡΡ‚. Π’ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π‘ΠΈΡ‚ΠΊΠΎΠΉΠ½ ΠΊΠΎΠ½ΡΠ΅Π½ΡΡƒΡΡŠΡ‚ сС постига Ρ‡Ρ€Π΅Π· доказатСлство Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° PoW (Proof-of-Work).
  4. НадСТдността Π½Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° сС постига Ρ‡Ρ€Π΅Π· Ρ‚ΠΎΠ²Π°, Ρ‡Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΡŠΡ‚ Π΅ ΠΏΡƒΠ±Π»ΠΈΡ‡Π΅Π½, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ всСки участник ΠΌΠΎΠΆΠ΅ Π΄Π° стартира своя Π½ΠΎΠ΄Π°, Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈ пълна копия Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° ΠΈ, освСн Ρ‚ΠΎΠ²Π°, самостоятСлно Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ Π΄Π° провСрява Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π·Π° корСктност. Врябва Π΄Π° сС ΠΎΡ‚Π±Π΅Π»Π΅ΠΆΠΈ, Ρ‡Π΅ ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ позволяват ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π΅ само Π½Π° ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΈ (ΠΎΡ‚ΠΊΡ€ΠΈΡ‚ΠΈ), Π½ΠΎ ΠΈ частни (Π·Π°Ρ‚Π²ΠΎΡ€Π΅Π½ΠΈ) Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ, ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈ ΡƒΠ΄Π²ΠΎΠ΅Π½ΠΈ схСми.
  5. Напълно Π΄Π° сС освободи ΠΎΡ‚ такса Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π½Π΅ Π΅ възмоТно, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ трябва Π΄Π° сС ΠΏΠ»Π°Ρ‰Π° Π½Π° Ρ…ΠΎΡ€Π°Ρ‚Π°, ΠΊΠΎΠΈΡ‚ΠΎ ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ°Ρ‚ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, Π½ΠΎ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° нСобходимостта ΠΎΡ‚ такса сС Π΄ΠΎΠΊΠ°Π·Π²Π° Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅Π»Π½ΠΎ, Ρ‡Π΅ Π½Π΅ остава съмнСниС Π² Π½Π΅ΠΉΠ½Π°Ρ‚Π° нСобходимост.
  6. Π‘ΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ ΠΈΠΌΠ°Ρ‚ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π΄Π° Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ‚ бизнСс Π»ΠΎΠ³ΠΈΠΊΠ°, която Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° сС Π½Π°Ρ€ΠΈΡ‡Π° Π‘ΠΌΠ°Ρ€Ρ‚ ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΈ. Π›ΠΎΠ³ΠΈΠΊΠ°Ρ‚Π° Π½Π° смарт ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΈΡ‚Π΅ сС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° Π½Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΅Π·ΠΈΡ†ΠΈ ΠΎΡ‚ висок ΠΏΠΎΡ€ΡΠ΄ΡŠΠΊ.

НСка Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ Ρ‚Π΅Π·ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ.

АрхитСктура Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°

Π‘ΡŠΡΡ‚Π°Π²Π½ΠΈ части Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°

ВсС участници ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° стартират собствСн възСл с пълна копия Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° (full node). ΠŸΡŠΠ»Π½ΠΈΡ‚Π΅ възли, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° записват Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ възли Π½Π° консСнсуса (witness) ΠΈΠ»ΠΈ ΠΌΠΈΠ½ΡŒΠΎΡ€ΠΈ (miner). ΠŸΡŠΠ»Π½ΠΈΡ‚Π΅ възли, ΠΊΠΎΠΈΡ‚ΠΎ само провСряват правилността Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅, сС Π½Π°Ρ€ΠΈΡ‡Π°Ρ‚ възли Π½Π° ΠΎΠ΄ΠΈΡ‚ (audit). Π›Π΅ΠΊΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ (light clients) Π½Π΅ ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π°Ρ‚ пълни копия Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, Π° взаимодСйстват с ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ пълни възли.
ΠŸΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ ΠΈΠΌΠ΅Π½Π½ΠΎ Π»Π΅ΠΊΠΈΡ‚Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ ΠΈΠ»ΠΈ ΡƒΠ΅Π± ΠΏΠΎΡ€Ρ‚Ρ„Π΅ΠΉΠ»ΠΈ. Всички възли са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си. ΠŸΡ€ΠΈ Ρ‚Π°ΠΊΡŠΠ² Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π΅Π»Π΅ΠΌΠ΅Π½Ρ‚ΠΈ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° става ΠΏΠΎ-устойчива:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Π–ΠΈΠ²ΠΎΡ‚Π΅Π½ Ρ†ΠΈΠΊΡŠΠ» Π½Π° транзакцията

НСка Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ТизнСния Ρ†ΠΈΠΊΡŠΠ» Π½Π° транзакцията ΠΈ Π΄Π° Π³ΠΎ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€Π°ΠΌΠ΅ Π½Π° части:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Π’Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°

НСка сС спрСм ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π½Π° тСхничСскитС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ Π²Ρ€ΡŠΠ·ΠΊΠΈ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си.

Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ

Всяка транзакция Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° трябва Π΄Π° бъдС подписана с Ρ†ΠΈΡ„Ρ€ΠΎΠ² подпис. Π—Π°Ρ‚ΠΎΠ²Π°, Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Π½Π΅ Π½Π° транзакция, всСки участник трябва Π΄Π° ΠΈΠΌΠ° Π΄Π²ΠΎΠΉΠΊΠ° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅: private / public. Понякога Π΄Π²ΠΎΠΉΠΊΠ°Ρ‚Π° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ сС Π½Π°Ρ€ΠΈΡ‡Π° ΠΏΠΎΡ€Ρ‚Ρ„Π΅ΠΉΠ» (wallet), Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅Ρ‚Π΅ са нСдвусмислСно ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½ Ρ†ΠΈΡ„Ρ€ΠΎΠ² адрСс ΠΈ баланс Π½Π° участника. Π’ дСйствитСлност ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅Ρ‚Π΅ ΠΈ адрСситС са просто стринговС ΠΎΡ‚ Ρ†ΠΈΡ„Ρ€ΠΈ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ систСми Π½Π° числСност. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΈ Π·Π° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ ΠΈ адрСс Π½Π° ΠΏΠΎΡ€Ρ‚Ρ„Π΅ΠΉΠ»:

ЧастСн ΠΊΠ»ΡŽΡ‡: 0a78194a8a893b8baac7c09b6a4a4b4b161b2f80a126cbb79bde231a4567420f
ΠŸΡƒΠ±Π»ΠΈΡ‡Π΅Π½ ΠΊΠ»ΡŽΡ‡: 0579b478952214d7cddac32ac9dc522c821a4489bc10aac3a81b9d1cd7a92e57ba
АдрСс: 0x3814JnJpGnt5tB2GD1qfKP709W3KbRdfb27V

Π—Π° създаванС Π½Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ² подпис Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈΡ‚Π΅ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ, основан Π½Π° Π΅Π»ΠΈΠΏΡ‚ΠΈΡ‡Π½ΠΈ ΠΊΡ€ΠΈΠ²ΠΈ: Elliptic Curve Digital Signature Algorithm (ECDSA). Π—Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° ΠΌΡƒ частният ΠΊΠ»ΡŽΡ‡ (256-Π±ΠΈΡ‚ΠΎΠ²ΠΎ число) ΠΎΠ±ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΎ сС Π²Π·ΠΈΠΌΠ° Π½Π° случаСн ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ. Броят Π½Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈΡ‚Π΅ Π½Π° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅Ρ‚Π΅ прСдставлява 2 Π½Π° стСпСн 256, Π·Π°Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π·Π° практичСска Π½Π΅Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ Π·Π° съвпадСниС Π½Π° стойноститС Π½Π° частнитС ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅.

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π°, публичният ΠΊΠ»ΡŽΡ‡ сС ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° ΠΎΡ‚ частния Ρ‡Ρ€Π΅Π· ΡƒΠΌΠ½ΠΎΠΆΠ°Π²Π°Π½Π΅ Π½Π° стойността ΠΌΡƒ ΠΏΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°, находяща сС Π½Π° Π΅Π»ΠΈΠΏΡ‚ΠΈΡ‡Π½Π°Ρ‚Π° ΠΊΡ€ΠΈΠ²Π°, Π² Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ Π½Π° ΠΊΠΎΠ΅Ρ‚ΠΎ сС ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ΠΈΡ‚Π΅ Π½Π° Π½ΠΎΠ²Π° Ρ‚ΠΎΡ‡ΠΊΠ° ΠΎΡ‚ Ρ‚Π°Π·ΠΈ ΡΡŠΡ‰Π° ΠΊΡ€ΠΈΠ²Π°. Π’ΠΎΠ²Π° дСйствиС Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° Π΄Π²ΠΎΠΉΠΊΠ° ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅, подходящи Π·Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ подписи Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. И накрая, Π°Π΄Ρ€Π΅ΡΡŠΡ‚ Π½Π° ΠΏΠΎΡ€Ρ‚Ρ„Π΅ΠΉΠ»Π° сС изчислява нСдвусмислСно ΠΎΡ‚ публичния ΠΊΠ»ΡŽΡ‡.

Има ΠΌΠ½ΠΎΠ³ΠΎ статии с подробности ΠΏΠΎ криптографията, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: Bitcoin in a nutshell β€” Cryptography

ΠŸΡ€ΠΈΠ²Π°Ρ‚Π½ΠΈΡΡ‚ ΠΊΠ»ΡŽΡ‡ трябва Π΄Π° бъдС строго сСкрСтСн ΠΈ Π΄Π° сС ΡΡŠΡ…Ρ€Π°Π½ΡΠ²Π° Π² бСзопасност. ΠŸΡƒΠ±Π»ΠΈΡ‡Π½ΠΈΡΡ‚ ΠΊΠ»ΡŽΡ‡ Π΅ извСстСн Π½Π° всички. ΠŸΡ€ΠΈ Π·Π°Π³ΡƒΠ±Π° Π½Π° приватния ΠΊΠ»ΡŽΡ‡ Π΄ΠΎΡΡ‚ΡŠΠΏΡŠΡ‚ Π΄ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π° (ΠΌΠΎΠ½Π΅Ρ‚ΠΈΡ‚Π΅) Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²Π΅Π½ ΠΈ ΠΏΠ°Ρ€ΠΈΡ‚Π΅ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π·Π°Π³ΡƒΠ±Π΅Π½ΠΈ Π·Π°Π²ΠΈΠ½Π°Π³ΠΈ. Π—Π°Ρ‚ΠΎΠ²Π° Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π° Π·Π° Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΎΡ‚ΠΎ ΡΡŠΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π½Π° ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΈΡ‚Π΅ ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅ Π΅ ΠΈΠ·ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»Π½Π°, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΎΠ²Π° Π½Π΅ Π΅ Π±Π°Π½ΠΊΠ°, ΠΊΡŠΠ΄Π΅Ρ‚ΠΎ Π²ΠΈΠ½Π°Π³ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ с паспорт ΠΈ Π΄Π° Π²ΡŠΠ·ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ смСтката. Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π° цяла индустрия Π·Π° производство Π½Π° Ρ‚Π°ΠΊΠ° Π½Π°Ρ€Π΅Ρ‡Π΅Π½ΠΈΡ‚Π΅ студСни ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠΊΠΎΡˆΠ΅Π»ΠΊΠΈ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ Π½Π° Ρ„Π»Π°ΡˆΠΊΠ°:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

ΠΈΠ»ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅ ΠΏΠΎ-Π½Π°Π΄Π΅ΠΆΠ΄Π½ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Π° Π³Ρ€Π°Π²ΠΈΡ€Π°Ρ‚Π΅ стойността Π½Π° приватния ΠΊΠ»ΡŽΡ‡ Π²ΡŠΡ€Ρ…Ρƒ ΠΆΠ΅Ρ‚ΠΎΠ½ΠΈ:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ

По-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ Π·Π° структурата Π½Π° транзакцията ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ Π² статията Bitcoin Π² ΠΎΠ±Ρ‰ΠΈ Π»ΠΈΠ½ΠΈΠΈ β€” Вранзакция. Π—Π° нас Π΅ Π²Π°ΠΆΠ½ΠΎ Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, Ρ‡Π΅ всяка транзакция ΡΡŠΠ΄ΡŠΡ€ΠΆΠ° ΠΏΠΎΠ½Π΅ слСднитС Π΄Π°Π½Π½ΠΈ:

ΠžΡ‚: 0x48C89c341C5960Ca2Bf3732D6D8a0F4f89Cc4368 - Ρ†ΠΈΡ„Ρ€ΠΎΠ² адрСс Π½Π° податСля
Π”ΠΎ: 0x367adb7894334678b90Π°fe7882a5b06f7fbc783a - Ρ†ΠΈΡ„Ρ€ΠΎΠ² адрСс Π½Π° получатСля
Бтойност: 0.0001 - сума Π½Π° транзакцията
Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΎΠ½Π΅Π½ Ρ…Π°Ρˆ: 0x617ede331e8a99f46a363b32b239542bb4006e4fa9a2727a6636ffe3eb095cef - Ρ…Π°Ρˆ Π½Π° транзакцията

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° транзакцията сС подписва с приватния ΠΊΠ»ΡŽΡ‡ ΠΈ сС разпространява (Π²ΠΈΠΆΡ‚Π΅ подробности Π·Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° Π½Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° Bitcoin Π² ΠΎΠ±Ρ‰ΠΈ Π»ΠΈΠ½ΠΈΠΈ - ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ») Π΄ΠΎ всички Π½ΠΎΠ΄ΠΎΠ²Π΅ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, ΠΊΠΎΠΈΡ‚ΠΎ провСряват Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ Π·Π° валидност. ΠΠ»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΡŠΡ‚ Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° транзакцията Π½Π΅ Π΅ Ρ‚Ρ€ΠΈΠ²ΠΈΠ°Π»Π΅Π½ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π²Π° Π΄Π²Π° дСсСтки ΡΡ‚ΡŠΠΏΠΊΠΈ.

Π‘Π»ΠΎΠΊΠΎΠ²Π΅ Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ провСрят валидността Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅, Π½ΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π³ΠΈ Ρ„ΠΎΡ€ΠΌΠΈΡ€Π°Ρ‚ Π² Π±Π»ΠΎΠΊΠΎΠ²Π΅. ОсвСн Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅, Π² Π±Π»ΠΎΠΊΠ° сС записва Ρ…Π΅ΡˆΡŠΡ‚ Π½Π° ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ Π±Π»ΠΎΠΊ, числото (Π±Ρ€ΠΎΡΡ‡ΡŠΡ‚ Nonce), ΠΈ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° изчислСниСто Π½Π° Ρ…Π΅ΡˆΠ° Π½Π° тСкущия Π±Π»ΠΎΠΊ ΠΏΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌΠ° SHA-256. Π₯Π΅ΡˆΡŠΡ‚ трябва Π΄Π° отговаря Π½Π° установСнитС условия Π·Π° трудност. НапримСр, Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Bitcoin трудността Π½Π° Ρ…Π΅ΡˆΠ° Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΡ‡Π½ΠΎ сС промСня Π½Π° всСки 2 сСдмици Π² зависимост ΠΎΡ‚ мощността Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π±Π»ΠΎΠΊΡŠΡ‚ Π΄Π° сС Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π° всСки 10 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ. Врудността сС опрСдСля ΠΎΡ‚ слСдното условиС: намСрСният Ρ…Π΅Ρˆ трябва Π΄Π° бъдС ΠΏΠΎ-малък ΠΎΡ‚ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ Π·Π°Π΄Π°Π΄Π΅Π½ΠΎ число. Ако Ρ‚ΠΎΠ²Π° условиС Π½Π΅ Π΅ изпълнСно, Nonce сС ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π° с 1, ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚Π° ΠΏΠΎ изчисляванСто Π½Π° Ρ…Π΅ΡˆΠ° сС повтаря. Π—Π° ΠΏΠΎΠ΄Π±ΠΎΡ€Π° Π½Π° Ρ…Π΅ΡˆΠ° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° ΠΏΠΎΠ»Π΅Ρ‚ΠΎ Nonce, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΎΠ²Π° Π΅ СдинствСната информация Π² Π±Π»ΠΎΠΊΠ°, която ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС ΠΏΡ€ΠΎΠΌΠ΅Π½Π΅Π½Π°, останалитС трябва Π΄Π° останат Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΈ. ΠŸΡ€Π°Π²ΠΈΠ»Π½ΠΈΡΡ‚ Ρ…Π΅Ρˆ трябва Π΄Π° ΠΈΠΌΠ° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ количСство Π½ΡƒΠ»ΠΈ Π² Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Ρ€Π΅Π°Π»Π½ΠΈΡ‚Π΅ Ρ…Π΅ΡˆΠΎΠ²Π΅:

000000000000000000000bf03212e7dd1176f52f816fa395fc9b93c44bc11f91

Π£ΡΠΏΠ΅ΡˆΠ½ΠΎΡ‚ΠΎ Π½Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° Ρ…Π΅Ρˆ Π΅ доказатСлство Π·Π° ΠΈΠ·Π²ΡŠΡ€ΡˆΠ΅Π½Π°Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Π° (Proof-of-Work, PoW) Π·Π° ΠΌΡ€Π΅ΠΆΠΈΡ‚Π΅ Bitcoin ΠΈΠ»ΠΈ Ethereum. ΠŸΡ€ΠΎΡ†Π΅ΡΡŠΡ‚ Π½Π° Π½Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° Ρ…Π΅ΡˆΠΎΠ²Π΅ сС Π½Π°Ρ€ΠΈΡ‡Π° ΠΌΠΈΠ½Π½ΠΎ Π΄Π΅Π»ΠΎ (mining), ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° ΠΈΠ·Π²Π»ΠΈΡ‡Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π·Π»Π°Ρ‚ΠΎ. Π˜ΠΌΠ΅Ρ‚ΠΎ доста Ρ‚ΠΎΡ‡Π½ΠΎ опрСдСля ΡΡŠΡ‰Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° процСса, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π° просто ΠΈΠ·Π±ΠΈΡ€Π°Π½Π΅ Π½Π° Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ, ΠΈ Π°ΠΊΠΎ някой Π΅ Π½Π°ΠΌΠ΅Ρ€ΠΈΠ» подходящ Ρ…Π΅Ρˆ, Ρ‚ΠΎ наистина Π΅ ΠΊΡŠΡΠΌΠ΅Ρ‚. Π’ΠΎΠ²Π° Π΅ ΠΊΠ°Ρ‚ΠΎ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡˆ истински самородно Π·Π»Π°Ρ‚ΠΎ Π² Ρ‚ΠΎΠ½ΠΎΠ²Π΅ Π±Π΅Π·ΠΏΠΎΠ»Π΅Π·Π½Π° Ρ€ΡƒΠ΄Π°. Наградата Π·Π° Π±Π»ΠΎΠΊ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅ 12.5 BTC ΠΈ Π°ΠΊΠΎ я ΡƒΠΌΠ½ΠΎΠΆΠΈΠΌ ΠΏΠΎ Π°ΠΊΡ‚ΡƒΠ°Π»Π½Π°Ρ‚Π° Ρ†Π΅Π½Π° Π½Π° Π±ΠΈΡ‚ΠΊΠΎΠΉΠ½Π° $3900, Ρ‚ΠΎ сС ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ ΠΊΠΈΠ»ΠΎΠ³Ρ€Π°ΠΌ чисто Π·Π»Π°Ρ‚ΠΎ. Има Π·Π° ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° сС Π±ΠΎΡ€ΠΈΠΌ!

Π‘Π»Π΅Π΄ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡ‚ΠΎ Π½Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° Ρ…Π΅Ρˆ, Π±Π»ΠΎΠΊΡŠΡ‚ ΠΈ самият Π½Π°ΠΌΠ΅Ρ€Π΅Π½ Ρ…Π΅Ρˆ сС записват Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π² слСдващия Π±Π»ΠΎΠΊ. ΠŸΠΎΠ²Π΅Ρ‡Π΅ Π·Π° структурата Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π² статията Bitcoin Π² Ρ€Π΅Π·ΡŽΠΌΠ΅ - Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, Π° ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ Ρ‰Π΅ прСдставя опростСна схСма:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΡŠΡ‚ Π·Π°ΠΏΠΎΡ‡Π²Π° с Π±Π»ΠΎΠΊ, ΠΊΠΎΠΉΡ‚ΠΎ всС ΠΎΡ‰Π΅ няма Ρ…Π΅Ρˆ Π½Π° ΠΏΡ€Π΅Π΄ΠΈΡˆΠ½ΠΈΡ Π±Π»ΠΎΠΊ. Π’ΠΎΠ·ΠΈ Π±Π»ΠΎΠΊ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π΅ СдинствСн ΠΈ ΠΈΠΌΠ° собствСно имя - Genesis block. ΠžΡΡ‚Π°Π½Π°Π»ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΠΎΠ²Π΅ ΠΈΠΌΠ°Ρ‚ Π΅Π΄Π½Π°ΠΊΠ²Π° структура, Π½ΠΎ сС Ρ€Π°Π·Π»ΠΈΡ‡Π°Π²Π°Ρ‚ само ΠΏΠΎ броя Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅. Π Π΅Π°Π»Π½ΠΈΡ‚Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ сС ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π² Bitcoin ΠΈΠ»ΠΈ Ethereum, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π² Block Explorer.

Π Π°Π·ΠΌΠ΅Ρ€ΡŠΡ‚ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Π² Bitcoin Π΅ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ Π΄ΠΎ 1MB ΠΈ ΠΏΡ€ΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π΅Π½ ΠΎΠ±Π΅ΠΌ информация Π² транзакция ΠΎΡ‚ ΠΎΠΊΠΎΠ»ΠΎ 200 Π±Π°ΠΉΡ‚Π°, Π² Π±Π»ΠΎΠΊΠ° ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ ΠΎΠΊΠΎΠ»ΠΎ 6000 Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. ΠžΡ‚Ρ‚ΡƒΠΊ ΠΈ производитСлността Π½Π° Bitcoin, Π½Π°Π΄ която всички сС присмиват: Π±Π»ΠΎΠΊΡŠΡ‚ сС Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ Π½Π° всСки 10 ΠΌΠΈΠ½ΡƒΡ‚ΠΈ * 60 сСкунди = 600 сСкунди, ΠΊΠΎΠ΅Ρ‚ΠΎ Π΄Π°Π²Π° Ρ„ΠΎΡ€ΠΌΠ°Π»Π½Π° производитСлност ΠΎΡ‚ ΠΎΠΊΠΎΠ»ΠΎ 10 TPS. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π°, Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ – Ρ‚ΠΎΠ²Π° Π½Π΅ Π΅ производитСлност, Π° ΡΡŠΠ·Π½Π°Ρ‚Π΅Π»Π½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΡŠΠΌ Π½Π° Ρ€Π°Π±ΠΎΡ‚Π°. Π’ Ethereum Π·Π° конкурСнция просто ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΡ…Π° Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠ° Π΄ΠΎ 15 сСкунди ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Π»Π½Π°Ρ‚Π° производитСлност рязко скочи. Π—Π°Ρ‚ΠΎΠ²Π° Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈΡ‚Π΅, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ΠΈ PoW ΠΊΠ°Ρ‚ΠΎ консСнсус, Π΅ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ бСзсмислСно Π΄Π° сС сравнява производитСлността, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ тя пряко зависи ΠΎΡ‚ слоТността Π½Π° изчислСниСто Π½Π° кСша, ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π·Π°Π΄Π°Π΄Π΅Π½ΠΎ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»Π½ΠΎ.

Π€ΠΎΡ€ΠΊΠΎΠ²Π΅

Какво сС случва, Π°ΠΊΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, няколко възли намСрят Ρ…Π΅ΡˆΠΎΠ²Π΅, ΠΊΠΎΠΈΡ‚ΠΎ отговарят Π½Π° условията Π·Π° слоТност, Π½ΠΎ са Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΠΎ стойност (с Π΄Ρ€ΡƒΠ³ΠΈ Π΄ΡƒΠΌΠΈ, достигнали са Π΄ΠΎ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ консСнсуси) ΠΈ Π·Π°ΠΏΠΈΡˆΠ°Ρ‚ Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½? НСка Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΡŠΡ‚ сС Π·Π°Ρ‰ΠΈΡ‚Π°Π²Π° ΠΎΡ‚ Ρ‚Π°Π·ΠΈ ситуация. Π’ Ρ‚Π°ΠΊΡŠΠ² случай Π½Π°ΡΡ‚ΡŠΠΏΠ²Π° Ρ‚. Π½Π°Ρ€. Ρ„ΠΎΡ€ΠΊ (β€˜Π²ΠΈΠ»ΠΊΠ°β€™), ΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΡŠΡ‚ ΠΈΠΌΠ° Π΄Π²Π΅ вСрсии Π½Π° Π²Π΅Ρ€ΠΈΠ³Π°Ρ‚Π°:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Какво сС случва ΠΏΠΎ-Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ? Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° част ΠΎΡ‚ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π·Π°ΠΏΠΎΡ‡Π²Π° Π΄Π° Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΠΎ Π±Π»ΠΎΠΊ N+2 ΠΎΡ‚ Π΅Π΄Π½Π° Π²Π΅Ρ€ΠΈΠ³Π°, Π° част ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π°:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Някой ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ Π±Π»ΠΎΠΊΠΎΠ²Π΅ Ρ‰Π΅ бъдС Π½Π°ΠΌΠ΅Ρ€Π΅Π½ ΠΏΠΎ-Ρ€Π°Π½ΠΎ ΠΈ ΠΈΠ·ΠΏΡ€Π°Ρ‚Π΅Π½ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, Π° слСд Ρ‚ΠΎΠ²Π° ΠΏΠΎ ΠΏΡ€Π°Π²ΠΈΠ»Π°Ρ‚Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΡŠΡ‚ трябва Π΄Π° ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡ΠΈ Π½Π° ΠΏΠΎ-Π΄ΡŠΠ»Π³Π°Ρ‚Π° Π²Π΅Ρ€ΠΈΠ³Π° ΠΈ Π΄Π° Π°Π½ΡƒΠ»ΠΈΡ€Π° всички Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΎΡ‚ алтСрнативния Π±Π»ΠΎΠΊ:

Какво Π½ΠΈ струва Π΄Π° построим Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

ΠŸΡ€ΠΈ Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΠΏΠΎΠ»ΡƒΡ‡ΠΈ ситуация, Π² която транзакцията Π½Π° участника Π΅ Π±ΠΈΠ»Π° само Π² Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Π½Π° Ρ„ΠΎΡ€ΠΊΠ°, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ Π±ΠΈΠ» Π°Π½ΡƒΠ»ΠΈΡ€Π°Π½. Π—Π°Ρ‚ΠΎΠ²Π°, Π·Π° Π΄Π° си сигурСн, Ρ‡Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ°Ρ‚Π° транзакция Π΅ записана Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, ΠΈΠΌΠ° ΠΎΠ±Ρ‰ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ β€” ΠΏΡ€Π΅Π΄ΠΈ Π΄Π° сС Π΄ΠΎΠ²Π΅Ρ€ΠΈΡˆ Π½Π° транзакция, трябва Π΄Π° ΠΈΠ·Ρ‡Π°ΠΊΠ°Ρˆ, Π΄ΠΎΠΊΠ°Ρ‚ΠΎ слСдващитС няколко Π±Π»ΠΎΠΊΠ° Π½Π΅ Π±ΡŠΠ΄Π°Ρ‚ Π΄ΠΎΠ±Π°Π²Π΅Π½ΠΈ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½. ΠŸΡ€Π΅ΠΏΠΎΡ€ΡŠΠΊΠΈΡ‚Π΅ ΠΊΠΎΠ»ΠΊΠΎ Π±Π»ΠΎΠΊΠ° Π΄Π° сС Ρ‡Π°ΠΊΠ°Ρ‚ Π·Π° Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ Π²Π°Ρ€ΠΈΡ€Π°Ρ‚. НапримСр, Π·Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Bitcoin ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌΡŠΡ‚ Π΅ 2 Π±Π»ΠΎΠΊΠ°, максимум 6.

Π‘ΡŠΡ‰Π°Ρ‚Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Π° с Ρ„ΠΎΡ€ΠΊΠ° Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅Ρ‚Π΅ Ρ‰Π΅ сС наблюдава ΠΈ ΠΏΡ€ΠΈ Ρ‚. Π½Π°Ρ€. Π°Ρ‚Π°ΠΊΠ° ΠΎΡ‚ 51% β€” Ρ‚ΠΎΠ²Π° Π΅, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π³Ρ€ΡƒΠΏΠ° ΠΌΠΈΠ½ΡŒΠΎΡ€ΠΈ сС ΠΎΠΏΠΈΡ‚Π²Π° Π΄Π° създадС Π°Π»Ρ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Π° Π²Π΅Ρ€ΠΈΠ³Π° ΠΎΡ‚ Π±Π»ΠΎΠΊΠΎΠ²Π΅, стрСмСйки сС Π΄Π° Π°Π½ΡƒΠ»ΠΈΡ€Π°Ρ‚ Π²Π΅Ρ€ΠΈΠ³Π°Ρ‚Π° с ΠΌΠΎΡˆΠ΅Π½ΠΈΡ‡Π΅ΡΠΊΠΈΡ‚Π΅ си Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ. Π’ΡŠΠΏΡ€Π΅ΠΊΠΈ Ρ‚ΠΎΠ²Π° Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, вмСсто ΠΌΠΎΡˆΠ΅Π½ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ, Π΅ ΠΏΠΎ-ΠΈΠ·Π³ΠΎΠ΄Π½ΠΎ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ мощноститС Π·Π° чСстСн ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³.

ΠšΠΎΠ½ΡΠ΅Π½ΡΡƒΡ

Π—Π° Π΄Π° бъдС записан Π±Π»ΠΎΠΊ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° трябва Π΄Π° достигнС Π΄ΠΎ консСнсус. НСка си ΠΏΡ€ΠΈΠΏΠΎΠΌΠ½ΠΈΠΌ Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π° Π·Π° достиганС Π½Π° консСнсус Π² ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π½ΠΈΡ‚Π΅ ΠΌΡ€Π΅ΠΆΠΈ Π·Π° Π²Ρ€ΡŠΠ·ΠΊΠ°. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ сС Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€Π° ΠΊΠ°Ρ‚ΠΎ Π·Π°Π΄Π°Ρ‡Π° Π½Π° византийскитС Π³Π΅Π½Π΅Ρ€Π°Π»ΠΈ BFT (Византийска устойчивост Π½Π° Π³Ρ€Π΅ΡˆΠΊΠΈ). ΠŸΡ€ΠΎΠΏΡƒΡΠΊΠ°ΠΉΠΊΠΈ Тивописното описаниС Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅ Π½Π° византийската армия, Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π° ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€Π°Π½Π° Ρ‚Π°ΠΊΠ°: ΠΊΠ°ΠΊ Π²ΡŠΠ·Π»ΠΈΡ‚Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π΄Π° достигнат Π΄ΠΎ ΠΎΠ±Ρ‰ Ρ€Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚, Π°ΠΊΠΎ част ΠΎΡ‚ Π²ΡŠΠ·Π»ΠΈΡ‚Π΅ Π½Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΌΠΎΠ³Π°Ρ‚ ΡΡŠΠ·Π½Π°Ρ‚Π΅Π»Π½ΠΎ Π΄Π° Π³ΠΈ изкривяват. Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° Π·Π°Π΄Π°Ρ‡Π°Ρ‚Π° BFT ΠΏΠΎΠΊΠ°Π·Π²Π°Ρ‚, Ρ‡Π΅ ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° ΠΌΠΎΠΆΠ΅ Π΄Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€Π° ΠΏΡ€Π°Π²ΠΈΠ»Π½ΠΎ, Π°ΠΊΠΎ ΠΌΠΎΡˆΠ΅Π½ΠΈΡ†ΠΈΡ‚Π΅ са ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ ΠΎΡ‚ 1/3. Π—Π°Ρ‰ΠΎ Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Bitcoin Π½Π΅ Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ консСнсус BFT? Π—Π°Ρ‰ΠΎ Π΅ Π½ΡƒΠΆΠ½ΠΎ Π΄Π° сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° PoW? Има няколко ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΈ:

  • BFT Ρ€Π°Π±ΠΎΡ‚ΠΈ Π΄ΠΎΠ±Ρ€Π΅ с малък фиксиран Π½Π°Π±ΠΎΡ€ ΠΎΡ‚ Π½ΠΎΠ΄ΠΎΠ²Π΅, Π° Π² ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Π°Ρ‚Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ броят Π½Π° Π½ΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ Π΅ нСпрСдсказуСм ΠΈ освСн Ρ‚ΠΎΠ²Π°, Π½ΠΎΠ΄ΠΎΠ²Π΅Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ Π΄Π° сС Π²ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚ ΠΈ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π²Π°Ρ‚.
  • НСобходимо Π΅ Π΄Π° сС ΠΌΠΎΡ‚ΠΈΠ²ΠΈΡ€Π°Ρ‚ Ρ…ΠΎΡ€Π°Ρ‚Π° Π΄Π° стартират Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Π½ΠΎΠ΄ΠΎΠ²Π΅. Π—Π° Ρ‚ΠΎΠ²Π° Ρ…ΠΎΡ€Π°Ρ‚Π° трябва Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ Π½Π°Π³Ρ€Π°Π΄Π°. Π’ BFT Ρ„ΠΎΡ€ΠΌΠ°Π»Π½ΠΎ няма Π·Π° ΠΊΠ°ΠΊΠ²ΠΎ Π΄Π° сС ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ Π½Π°Π³Ρ€Π°Π΄ΠΈ, Π° Π½Π°Π³Ρ€Π°Π΄Π°Ρ‚Π° Π² PoW Π΅ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌΠ°: Π·Π° СлСктричСството, консумирано ΠΎΡ‚ процСсора ΠΏΡ€ΠΈ Π½Π°ΠΌΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ…Π΅Ρˆ Π½Π° Π±Π»ΠΎΠΊΠ°.

ОсвСн PoW ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ ΠΈ няколко Π΄Ρ€ΡƒΠ³ΠΈ консСнсуса, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

  • PoS (Proof-of-Stake) β€” Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Hyperledger
  • DPoS (Delegated Proof-of-Stake) β€” Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° BitShares
  • ΠœΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π½Π° BFT: SBFT (Simplified BFT) ΠΈ PBFT (Practical BFT), Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Exonum

НСка сС спрСм ΠΌΠ°Π»ΠΊΠΎ Π½Π° консСнсуса PoS, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ PoS ΠΈ Π½Π΅Π³ΠΎΠ²ΠΈΡ‚Π΅ разновидности ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ…Π° Π½Π°ΠΉ-голямо разпространСниС Π² частнитС Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ. Π—Π°Ρ‰ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ Π² частнитС? ΠžΡ‚ Π΅Π΄Π½Π° страна, характСристикитС Π½Π° PoS са ΠΏΠΎ-Π΄ΠΎΠ±Ρ€ΠΈ Π² сравнСниС с PoW, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Π·Π° постиганС Π½Π° консСнсус са Π½ΡƒΠΆΠ½ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ изчислитСлни рСсурси ΠΈ слСдоватСлно сС ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π° скоростта Π½Π° записванС Π½Π° Π΄Π°Π½Π½ΠΈ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°. Но ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° страна, Π² PoS ΠΈΠΌΠ° ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ Π·Π° ΠΈΠ·ΠΌΠ°ΠΌΠ°, ΠΏΠΎΡ€Π°Π΄ΠΈ ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π° Π½Π΅ΡƒΡ‚Ρ€Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° Ρ‚ΠΎΠ²Π° всички участници Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° трябва Π΄Π° са извСстни.

ΠšΠΎΠ½ΡΠ΅Π½ΡΡƒΡΡŠΡ‚ PoS сС основава Π½Π° ΠΈΠ·Π±ΠΎΡ€Π° Π½Π° ΡƒΠ·Π΅Π», ΠΊΠΎΠΉΡ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° запишС Π±Π»ΠΎΠΊ с Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π² зависимост ΠΎΡ‚ количСството срСдства Π² смСтката, Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚, Π½Π΅ Π² смСтката, Π° Π² Π·Π°Π»ΠΎΠ³Π°. ВоСст, ΠΊΠΎΠ»ΠΊΠΎΡ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅ срСдства имаш Π² Π·Π°Π»ΠΎΠ³Π°, Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΏΠΎ-голяма вСроятност ΠΈΠΌΠ° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Π΄Π° ΠΈΠ·Π±Π΅Ρ€Π΅ твоя ΡƒΠ·Π΅Π» Π·Π° запис Π½Π° Π±Π»ΠΎΠΊΠ°. Π—Π°Π»ΠΎΠ³ΡŠΡ‚ Π½Π΅ сС Π²Ρ€ΡŠΡ‰Π°, Π°ΠΊΠΎ Π±Π»ΠΎΠΊΡŠΡ‚ сС ΠΎΠΊΠ°ΠΆΠ΅ Π½Π΅Π²Π°Π»ΠΈΠ΄Π΅Π½. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ Π΅ Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π° Π·Π°Ρ‰ΠΈΡ‚Π° срСщу ΠΈΠ·ΠΌΠ°ΠΌΠ°. Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ слСднитС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈ Π½Π° PoS:

  • ΠšΠΎΠ½ΡΠ΅Π½ΡΡƒΡΡŠΡ‚ Delegated PoS (DPoS) раздСля участницитС Π½Π° 'гласуващи' ΠΈ 'Π²Π°Π»ΠΈΠ΄ΠΈΡ€Π°Ρ‰ΠΈ'. Π”ΡŠΡ€ΠΆΠ°Ρ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° ΠΌΠΎΠ½Π΅Ρ‚ΠΈ (гласуващи участници) Π΄Π΅Π»Π΅Π³ΠΈΡ€Π°Ρ‚ ΠΏΡ€Π°Π²ΠΎΡ‚ΠΎ си Π΄Π° провСряват ΠΈ записват Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ участници. Π’Π°ΠΊΠ° Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ цялата изчислитСлна Ρ€Π°Π±ΠΎΡ‚Π° ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ Π½Π°Π³Ρ€Π°Π΄Π° Π·Π° Ρ‚ΠΎΠ²Π°, Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅Ρ‚ΠΎ Π½Π° гласуващи участници Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€Π° Π΄ΠΎΠ±Ρ€ΠΎΡΡŠΠ²Π΅ΡΡ‚Π½ΠΎΡΡ‚Ρ‚Π° Π½Π° Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ смСнСни ΠΏΠΎ всяко Π²Ρ€Π΅ΠΌΠ΅.
  • ΠšΠΎΠ½ΡΠ΅Π½ΡΡƒΡ LPoS (Leased Proof-of-Stake) позволява Π΄Π° ΠΎΡ‚Π΄Π°Π²Π°Ρ‚Π΅ срСдствата си ΠΏΠΎΠ΄ Π½Π°Π΅ΠΌ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ възли, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Ρ‚Π΅ Π΄Π° ΠΈΠΌΠ°Ρ‚ ΠΏΠΎΠ²Π΅Ρ‡Π΅ шансовС Π·Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅. По Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚Π΅ такса Π·Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Π±Π΅Π· Π΄Π° участватС Π² самата ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ ΠΈ Π² ΠΌΠΈΠ½ΡŒΠΎΡ€ΡΡ‚Π²ΠΎΡ‚ΠΎ Π½Π° Π±Π»ΠΎΠΊΠΎΠ²Π΅.

Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ ΠΎΡ‰Π΅ Ρ€Π΅Π΄ΠΈΡ†Π° консСнсуси, ΠΊΠΎΠΈΡ‚ΠΎ всС ΠΎΡ‰Π΅ Π½Π΅ са ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ разпространСниС, Ρ‚ΡƒΠΊ просто Ρ‰Π΅ изброя Π·Π° информация, Π° ΠΏΡ€Π΅Π³Π»Π΅Π΄ Π½Π° самитС Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ Π½Π° консСнсуса ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π²ΠΈΠ΄ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² статията: Алгоритми Π½Π° ΠšΠΎΠ½ΡΠ΅Π½ΡΡƒΡΠ° Π² Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°.

  • PoET (Proof-of-Elapsed Time)
  • PoC (Proof-of-Capacity)
  • PoB (Proof-of-Burn)
  • PoWeight (Proof-of-Weight)
  • PoA (Proof-of-Activity) β€” PoW + PoS
  • PoI (Proof-of-Importance)

НадСТдност ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π½Π° Ρ€Π°Π·Π³Ρ€ΡŠΡ‰Π°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ

ΠŸΡƒΠ±Π»ΠΈΡ‡Π΅Π½ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½

Устойчивост Public ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎ Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ Permissionless blockchain сС постига с Ρ‚ΠΎΠ²Π°, Ρ‡Π΅ всСки ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΡΠ²ΡŠΡ€ΠΆΠ΅ ΠΈ ΠΏΡ€Π΅Π³Π»Π΅ΠΆΠ΄Π° информация ΠΈΠ»ΠΈ Π΄ΠΎΡ€ΠΈ Π΄Π° ΡΠ²ΡŠΡ€ΠΆΠ΅ собствСн възСл, Π° Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅Ρ‚ΠΎ сС ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π½Π° консСнсуса PoW.

ΠŸΡ€ΠΈΠ²Π°Ρ‚Π΅Π½ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½

Private ΠΈΠ»ΠΈ Private Permissioned blockchain. Π’ Ρ‚Π΅Π·ΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ само ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π³Ρ€ΡƒΠΏΠ° участници (ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ Ρ…ΠΎΡ€Π°) ΠΈΠΌΠ° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ информацията. Π’Π°ΠΊΠΈΠ²Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ с Ρ†Π΅Π» ΡƒΠ²Π΅Π»ΠΈΡ‡Π°Π²Π°Π½Π΅ Π½Π° ΠΎΠ±Ρ‰Π°Ρ‚Π° ΠΏΠ΅Ρ‡Π°Π»Π±Π° ΠΈΠ»ΠΈ СфСктивността. Вяхната надСТдност сС осигурява ΠΎΡ‚ ΠΎΠ±Ρ‰ΠΈΡ‚Π΅ Ρ†Π΅Π»ΠΈ Π½Π° участницитС ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈΡ‚Π΅ Π½Π° консСнсуса PoS ΠΈ BFT.

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½-консорциум

Π‘ΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ Consortium ΠΈΠ»ΠΈ Public Permissioned blockchain. Π’ΠΎΠ²Π° са Ρ‚Π°ΠΊΠΈΠ²Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ, към ΠΊΠΎΠΈΡ‚ΠΎ всСки ΠΌΠΎΠΆΠ΅ Π΄Π° сС ΡΠ²ΡŠΡ€ΠΆΠ΅ Π·Π° ΠΏΡ€Π΅Π³Π»Π΅Π΄, Π½ΠΎ добавянСто Π½Π° информация ΠΈΠ»ΠΈ ΡΠ²ΡŠΡ€Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° собствСн възСл Π΅ възмоТно само с Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈ участници. Π’Π°ΠΊΠΈΠ²Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Ρ‚ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ с Ρ†Π΅Π» повишаванС Π½Π° Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅Ρ‚ΠΎ ΠΎΡ‚ страна Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈΡ‚Π΅ ΠΈΠ»ΠΈ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΈΠ»ΠΈ общСството ΠΊΠ°Ρ‚ΠΎ цяло. Π’ΡƒΠΊ надСТдността ΡΡŠΡ‰ΠΎ сС постига с ΠΏΡ€ΠΈΡΡŠΡΡ‚Π²ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ участницитС ΠΈ ΡΡŠΡ‰ΠΈΡ‚Π΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ Π½Π° консСнсуса PoS ΠΈ BFT.

Π£ΠΌΠ½ΠΈ Π”ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈ

Π’ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ, Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Π½ΠΈ слСд Bitcoin, Π΄ΠΎ извСстна стСпСн Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° изпълнСниС Π½Π° ΡƒΠΌΠ½ΠΈ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈ. Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚, умният Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ Π΅ транзакция, Π² която Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ΅Π½ ΠΊΠΎΠ΄ Π·Π° изпълнСниС. Π£ΠΌΠ½ΠΈΡ‚Π΅ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈ Π² ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π° Ethereum сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΠ²Π°Ρ‚ Π² EVM (Ethereum Virtual Machine). Π—Π° Π΄Π° стартиратС ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° умния Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€, Ρ‚ΠΎΠΉ трябва Π΄Π° бъдС явно задСйстван с Π΄Ρ€ΡƒΠ³Π° транзакция ΠΈΠ»ΠΈ трябва Π΄Π° сС ΠΈΠ·ΠΏΡŠΠ»Π½ΡΡ‚ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΈΡ‚Π΅ условия Π·Π° изпълнСниС. Π Π΅Π·ΡƒΠ»Ρ‚Π°Ρ‚ΠΈΡ‚Π΅ ΠΎΡ‚ ΠΈΠ·ΠΏΡŠΠ»Π½Π΅Π½ΠΈΠ΅Ρ‚ΠΎ Π½Π° умния Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ ΡΡŠΡ‰ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ записани Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°. ΠŸΠΎΠ»ΡƒΡ‡Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Π°Π½Π½ΠΈ извън Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π΅ възмоТно, Π½ΠΎ Π΅ ΠΊΡ€Π°ΠΉΠ½ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ.

Каква бизнСс Π»ΠΎΠ³ΠΈΠΊΠ° ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚? Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ Π½Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° условия ΠΏΠΎ Π΄Π°Π½Π½ΠΈ ΠΎΡ‚ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, промяна Π½Π° собствСницитС Π½Π° Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈ Π² зависимост ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ условия, запис Π½Π° Π΄Π°Π½Π½ΠΈ Π² постоянно Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π²ΡŠΡ‚Ρ€Π΅ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°. Π›ΠΎΠ³ΠΈΠΊΠ°Ρ‚Π° сС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° Π½Π° спСциалСн Π΅Π·ΠΈΠΊ с високо Π½ΠΈΠ²ΠΎ Solidity.

ΠšΠ»Π°ΡΠΈΡ‡Π΅ΡΠΊΠΈΡΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° функционалност, която сС Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π° с ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΈ, Π΅ Π΅ΠΌΠΈΡ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° Ρ‚ΠΎΠΊΠ΅Π½ΠΈ Π·Π° ΠΏΡ€ΠΎΠ²Π΅ΠΆΠ΄Π°Π½Π΅ Π½Π° ICO. НапримСр, Π°Π· Ρ€Π΅Π°Π»ΠΈΠ·ΠΈΡ€Π°Ρ… смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ Π·Π° Π΅ΠΌΠΈΡ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° скромнитС 500 000 000 AlexToken. По Π²Ρ€ΡŠΠ·ΠΊΠ°Ρ‚Π° Π² Etherscan сС Π½Π°ΠΌΠΈΡ€Π°

ΠΈΠ·Ρ…ΠΎΠ΄Π΅Π½ ΠΊΠΎΠ΄ Π½Π° смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° Π½Π° Π΅Π·ΠΈΠΊΠ° Solidity

pragma solidity ^0.4.23;

library SafeMath {
    /**
     * @dev Multiplies two numbers, throws on overflow.
     **/
    function mul(uint256 a, uint256 b) internal pure returns (uint256 c) {
        if (a == 0) {
            return 0;
        }
        c = a * b;
        assert(c / a == b);
        return c;
    }
    
    /**
     * @dev Integer division of two numbers, truncating the quotient.
     **/
    function div(uint256 a, uint256 b) internal pure returns (uint256) {
        // assert(b > 0); // Solidity automatically throws when dividing by 0
/**
 * @title SafeMath
 * @dev Math operations with safety checks that throw on error
 */
        // uint256 c = a / b;
        // assert(a == b * c + a % b); // There is no case in which this doesn't hold
        return a / b;
    }
    
    /**
     * @dev Subtracts two numbers, throws on overflow (i.e. if subtrahend is greater than minuend).
     **/
    function sub(uint256 a, uint256 b) internal pure returns (uint256) {
        assert(b <= a);
        return a - b;
    }
    
    /**
     * @dev Adds two numbers, throws on overflow.
     **/
    function add(uint256 a, uint256 b) internal pure returns (uint256 c) {
        c = a + b;
        assert(c >= a);
        return c;
    }
}

/**
 * @title Ownable
 * @dev The Ownable contract has an owner address, and provides basic authorization control
 * functions, this simplifies the implementation of "user permissions".
 **/
 
contract Ownable {
    address public owner;
    event OwnershipTransferred(address indexed previousOwner, address indexed newOwner);

    /**
     * @dev The Ownable constructor sets the original `owner` of the contract to the sender account.
     **/
   constructor() public {
      owner = msg.sender;
    }
    
    /**
     * @dev Throws if called by any account other than the owner.
     **/
    modifier onlyOwner() {
      require(msg.sender == owner);
      _;
    }
    
    /**
     * @dev Allows the current owner to transfer control of the contract to a newOwner.
     * @param newOwner The address to transfer ownership to.
     **/
    function transferOwnership(address newOwner) public onlyOwner {
      require(newOwner != address(0));
      emit OwnershipTransferred(owner, newOwner);
      owner = newOwner;
    }
}

/**
 * @title ERC20Basic interface
 * @dev Basic ERC20 interface
 **/
contract ERC20Basic {
    function totalSupply() public view returns (uint256);
    function balanceOf(address who) public view returns (uint256);
    function transfer(address to, uint256 value) public returns (bool);
    event Transfer(address indexed from, address indexed to, uint256 value);
}

/**
 * @title ERC20 interface
 * @dev see https://github.com/ethereum/EIPs/issues/20
 **/
contract ERC20 is ERC20Basic {
    function allowance(address owner, address spender) public view returns (uint256);
    function transferFrom(address from, address to, uint256 value) public returns (bool);
    function approve(address spender, uint256 value) public returns (bool);
    event Approval(address indexed owner, address indexed spender, uint256 value);
}

/**
 * @title Basic token
 * @dev Basic version of StandardToken, with no allowances.
 **/
contract BasicToken is ERC20Basic {
    using SafeMath for uint256;
    mapping(address => uint256) balances;
    uint256 totalSupply_;
    
    /**
     * @dev total number of tokens in existence
     **/
    function totalSupply() public view returns (uint256) {
        return totalSupply_;
    }
    
    /**
     * @dev transfer token for a specified address
     * @param _to The address to transfer to.
     * @param _value The amount to be transferred.
     **/
    function transfer(address _to, uint256 _value) public returns (bool) {
        require(_to != address(0));
        require(_value <= balances[msg.sender]);
        
        balances[msg.sender] = balances[msg.sender].sub(_value);
        balances[_to] = balances[_to].add(_value);
        emit Transfer(msg.sender, _to, _value);
        return true;
    }
    
    /**
     * @dev Gets the balance of the specified address.
     * @param _owner The address to query the the balance of.
     * @return An uint256 representing the amount owned by the passed address.
     **/
    function balanceOf(address _owner) public view returns (uint256) {
        return balances[_owner];
    }
}

contract StandardToken is ERC20, BasicToken {
    mapping (address => mapping (address => uint256)) internal allowed;
    /**
     * @dev Transfer tokens from one address to another
     * @param _from address The address which you want to send tokens from
     * @param _to address The address which you want to transfer to
     * @param _value uint256 the amount of tokens to be transferred
     **/
    function transferFrom(address _from, address _to, uint256 _value) public returns (bool) {
        require(_to != address(0));
        require(_value <= balances[_from]);
        require(_value <= allowed[_from][msg.sender]);
    
        balances[_from] = balances[_from].sub(_value);
        balances[_to] = balances[_to].add(_value);
        allowed[_from][msg.sender] = allowed[_from][msg.sender].sub(_value);
        
        emit Transfer(_from, _to, _value);
        return true;
    }
    
    /**
     * @dev Approve the passed address to spend the specified amount of tokens on behalf of msg.sender.
     *
     * Beware that changing an allowance with this method brings the risk that someone may use both the old
     * and the new allowance by unfortunate transaction ordering. One possible solution to mitigate this
     * race condition is to first reduce the spender's allowance to 0 and set the desired value afterwards:
     * https://github.com/ethereum/EIPs/issues/20#issuecomment-263524729
     * @param _spender The address which will spend the funds.
     * @param _value The amount of tokens to be spent.
     **/
    function approve(address _spender, uint256 _value) public returns (bool) {
        allowed[msg.sender][_spender] = _value;
        emit Approval(msg.sender, _spender, _value);
        return true;
    }
    
    /**
     * @dev Function to check the amount of tokens that an owner allowed to a spender.
     * @param _owner address The address which owns the funds.
     * @param _spender address The address which will spend the funds.
     * @return A uint256 specifying the amount of tokens still available for the spender.
     **/
    function allowance(address _owner, address _spender) public view returns (uint256) {
        return allowed[_owner][_spender];
    }
    
    /**
     * @dev Increase the amount of tokens that an owner allowed to a spender.
     *
     * approve should be called when allowed[_spender] == 0. To increment
     * allowed value is better to use this function to avoid 2 calls (and wait until
     * the first transaction is mined)
     * From MonolithDAO Token.sol
     * @param _spender The address which will spend the funds.
     * @param _addedValue The amount of tokens to increase the allowance by.
     **/
    function increaseApproval(address _spender, uint _addedValue) public returns (bool) {
        allowed[msg.sender][_spender] = allowed[msg.sender][_spender].add(_addedValue);
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }
    
    /**
     * @dev Decrease the amount of tokens that an owner allowed to a spender.
     *
     * approve should be called when allowed[_spender] == 0. To decrement
     * allowed value is better to use this function to avoid 2 calls (and wait until
     * the first transaction is mined)
     * From MonolithDAO Token.sol
     * @param _spender The address which will spend the funds.
     * @param _subtractedValue The amount of tokens to decrease the allowance by.
     **/
    function decreaseApproval(address _spender, uint _subtractedValue) public returns (bool) {
        uint oldValue = allowed[msg.sender][_spender];
        if (_subtractedValue > oldValue) {
            allowed[msg.sender][_spender] = 0;
        } else {
            allowed[msg.sender][_spender] = oldValue.sub(_subtractedValue);
        }
        emit Approval(msg.sender, _spender, allowed[msg.sender][_spender]);
        return true;
    }
}

/**
 * @title Configurable
 * @dev Configurable varriables of the contract
 **/
contract Configurable {
    uint256 public constant cap = 1000000000*10**18;
    uint256 public constant basePrice = 100*10**18; // tokens per 1 ether
    uint256 public tokensSold = 0;
    
    uint256 public constant tokenReserve = 500000000*10**18;
    uint256 public remainingTokens = 0;
}

/**
 * @title CrowdsaleToken 
 * @dev Contract to preform crowd sale with token
 **/
contract CrowdsaleToken is StandardToken, Configurable, Ownable {
    /**
     * @dev enum of current crowd sale state
     **/
     enum Stages {
        none,
        icoStart, 
        icoEnd
    }
    
    Stages currentStage;
    /**
     * @dev constructor of CrowdsaleToken
     **/
    constructor() public {
        currentStage = Stages.none;
        balances[owner] = balances[owner].add(tokenReserve);
        totalSupply_ = totalSupply_.add(tokenReserve);
        remainingTokens = cap;
        emit Transfer(address(this), owner, tokenReserve);
    }
    
    /**
     * @dev fallback function to send ether to for Crowd sale
     **/
    function () public payable {
        require(currentStage == Stages.icoStart);
        require(msg.value > 0);
        require(remainingTokens > 0);
        
        uint256 weiAmount = msg.value; // Calculate tokens to sell
        uint256 tokens = weiAmount.mul(basePrice).div(1 ether);
        uint256 returnWei = 0;
        
        if(tokensSold.add(tokens) > cap){
            uint256 newTokens = cap.sub(tokensSold);
            uint256 newWei = newTokens.div(basePrice).mul(1 ether);
            returnWei = weiAmount.sub(newWei);
            weiAmount = newWei;
            tokens = newTokens;
        }
        
        tokensSold = tokensSold.add(tokens); // Increment raised amount
        remainingTokens = cap.sub(tokensSold);
        if(returnWei > 0){
            msg.sender.transfer(returnWei);
            emit Transfer(address(this), msg.sender, returnWei);
        }
        
        balances[msg.sender] = balances[msg.sender].add(tokens);
        emit Transfer(address(this), msg.sender, tokens);
        totalSupply_ = totalSupply_.add(tokens);
        owner.transfer(weiAmount);// Send money to owner
    }
    

    /**
     * @dev startIco starts the public ICO
     **/
    function startIco() public onlyOwner {
        require(currentStage != Stages.icoEnd);
        currentStage = Stages.icoStart;
    }
    

    /**
     * @dev endIco closes down the ICO 
     **/
    function endIco() internal {
        currentStage = Stages.icoEnd;
        // Transfer any remaining tokens
        if(remainingTokens > 0)
            balances[owner] = balances[owner].add(remainingTokens);
        // transfer any remaining ETH balance in the contract to the owner
        owner.transfer(address(this).balance); 
    }

    /**
     * @dev finalizeIco closes down the ICO and sets needed varriables
     **/
    function finalizeIco() public onlyOwner {
        require(currentStage != Stages.icoEnd);
        endIco();
    }
    
}
 
/**
 * @title LavevelToken 
 * @dev Contract to create the Lavevel Token
 **/
contract AlexToken is CrowdsaleToken {
    string public constant name = "AlexToken";
    string public constant symbol = "ALT";
    uint32 public constant decimals = 18;
}

ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΎ прСдставянС, ΠΊΠ°ΠΊΠ²ΠΎΡ‚ΠΎ Π³ΠΎ Π²ΠΈΠΆΠ΄Π° ΠΌΡ€Π΅ΠΆΠ°Ρ‚Π°

60806040526000600355600060045533600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff1602179055506000600560146101000a81548160ff021916908360028111156200006f57fe5b0217905550620001036b019d971e4fe8401e74000000600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546200024a6401000000000262000b1d179091906401000000009004565b600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550620001986b019d971e4fe8401e740000006001546200024a6401000000000262000b1d179091906401000000009004565b6001819055506b033b2e3c9fd0803ce8000000600481905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef6b019d971e4fe8401e740000006040518082815260200191505060405180910390a362000267565b600081830190508281101515156200025e57fe5b80905092915050565b611cb880620002776000396000f300608060405260043610610112576000357c0100000000000000000000000000000000000000000000000000000000900463ffffffff16806306fdde03146104c7578063095ea7b31461055757806318160ddd146105bc57806323b872dd146105e7578063313ce5671461066c578063355274ea146106a3578063518ab2a8146106ce57806366188463146106f957806370a082311461075e57806389311e6f146107b55780638da5cb5b146107cc578063903a3ef61461082357806395d89b411461083a578063a9059cbb146108ca578063bf5839031461092f578063c7876ea41461095a578063cbcb317114610985578063d73dd623146109b0578063dd62ed3e14610a15578063f2fde38b14610a8c575b60008060008060006001600281111561012757fe5b600560149054906101000a900460ff16600281111561014257fe5b14151561014e57600080fd5b60003411151561015d57600080fd5b600060045411151561016e57600080fd5b3494506101a7670de0b6b3a764000061019968056bc75e2d6310000088610acf90919063ffffffff16565b610b0790919063ffffffff16565b9350600092506b033b2e3c9fd0803ce80000006101cf85600354610b1d90919063ffffffff16565b111561024c576101f66003546b033b2e3c9fd0803ce8000000610b3990919063ffffffff16565b915061022e670de0b6b3a764000061022068056bc75e2d6310000085610b0790919063ffffffff16565b610acf90919063ffffffff16565b90506102438186610b3990919063ffffffff16565b92508094508193505b61026184600354610b1d90919063ffffffff16565b6003819055506102886003546b033b2e3c9fd0803ce8000000610b3990919063ffffffff16565b6004819055506000831115610344573373ffffffffffffffffffffffffffffffffffffffff166108fc849081150290604051600060405180830381858888f193505050501580156102dd573d6000803e3d6000fd5b503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef856040518082815260200191505060405180910390a35b610395846000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055503373ffffffffffffffffffffffffffffffffffffffff163073ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef866040518082815260200191505060405180910390a361045184600154610b1d90919063ffffffff16565b600181905550600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc869081150290604051600060405180830381858888f193505050501580156104bf573d6000803e3d6000fd5b505050505050005b3480156104d357600080fd5b506104dc610b52565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561051c578082015181840152602081019050610501565b50505050905090810190601f1680156105495780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b34801561056357600080fd5b506105a2600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610b8b565b604051808215151515815260200191505060405180910390f35b3480156105c857600080fd5b506105d1610c7d565b6040518082815260200191505060405180910390f35b3480156105f357600080fd5b50610652600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050610c87565b604051808215151515815260200191505060405180910390f35b34801561067857600080fd5b50610681611041565b604051808263ffffffff1663ffffffff16815260200191505060405180910390f35b3480156106af57600080fd5b506106b8611046565b6040518082815260200191505060405180910390f35b3480156106da57600080fd5b506106e3611056565b6040518082815260200191505060405180910390f35b34801561070557600080fd5b50610744600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291908035906020019092919050505061105c565b604051808215151515815260200191505060405180910390f35b34801561076a57600080fd5b5061079f600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506112ed565b6040518082815260200191505060405180910390f35b3480156107c157600080fd5b506107ca611335565b005b3480156107d857600080fd5b506107e16113eb565b604051808273ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200191505060405180910390f35b34801561082f57600080fd5b50610838611411565b005b34801561084657600080fd5b5061084f6114ab565b6040518080602001828103825283818151815260200191508051906020019080838360005b8381101561088f578082015181840152602081019050610874565b50505050905090810190601f1680156108bc5780820380516001836020036101000a031916815260200191505b509250505060405180910390f35b3480156108d657600080fd5b50610915600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803590602001909291905050506114e4565b604051808215151515815260200191505060405180910390f35b34801561093b57600080fd5b50610944611703565b6040518082815260200191505060405180910390f35b34801561096657600080fd5b5061096f611709565b6040518082815260200191505060405180910390f35b34801561099157600080fd5b5061099a611716565b6040518082815260200191505060405180910390f35b3480156109bc57600080fd5b506109fb600480360381019080803573ffffffffffffffffffffffffffffffffffffffff16906020019092919080359060200190929190505050611726565b604051808215151515815260200191505060405180910390f35b348015610a2157600080fd5b50610a76600480360381019080803573ffffffffffffffffffffffffffffffffffffffff169060200190929190803573ffffffffffffffffffffffffffffffffffffffff169060200190929190505050611922565b6040518082815260200191505060405180910390f35b348015610a9857600080fd5b50610acd600480360381019080803573ffffffffffffffffffffffffffffffffffffffff1690602001909291905050506119a9565b005b600080831415610ae25760009050610b01565b8183029050818382811515610af357fe5b04141515610afd57fe5b8090505b92915050565b60008183811515610b1457fe5b04905092915050565b60008183019050828110151515610b3057fe5b80905092915050565b6000828211151515610b4757fe5b818303905092915050565b6040805190810160405280600981526020017f416c6578546f6b656e000000000000000000000000000000000000000000000081525081565b600081600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925846040518082815260200191505060405180910390a36001905092915050565b6000600154905090565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff1614151515610cc457600080fd5b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610d1157600080fd5b600260008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020548211151515610d9c57600080fd5b610ded826000808773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3990919063ffffffff16565b6000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610e80826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550610f5182600260008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3990919063ffffffff16565b600260008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff168473ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a3600190509392505050565b601281565b6b033b2e3c9fd0803ce800000081565b60035481565b600080600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1681526020019081526020016000205490508083111561116d576000600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611201565b6111808382610b3990919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b8373ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008873ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a3600191505092915050565b60008060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020549050919050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561139157600080fd5b60028081111561139d57fe5b600560149054906101000a900460ff1660028111156113b857fe5b141515156113c557600080fd5b6001600560146101000a81548160ff021916908360028111156113e457fe5b0217905550565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1681565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff1614151561146d57600080fd5b60028081111561147957fe5b600560149054906101000a900460ff16600281111561149457fe5b141515156114a157600080fd5b6114a9611b01565b565b6040805190810160405280600381526020017f414c54000000000000000000000000000000000000000000000000000000000081525081565b60008073ffffffffffffffffffffffffffffffffffffffff168373ffffffffffffffffffffffffffffffffffffffff161415151561152157600080fd5b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054821115151561156e57600080fd5b6115bf826000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b3990919063ffffffff16565b6000803373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002081905550611652826000808673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b6000808573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167fddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef846040518082815260200191505060405180910390a36001905092915050565b60045481565b68056bc75e2d6310000081565b6b019d971e4fe8401e7400000081565b60006117b782600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008573ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055508273ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff167f8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925600260003373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008773ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020546040518082815260200191505060405180910390a36001905092915050565b6000600260008473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002060008373ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054905092915050565b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff163373ffffffffffffffffffffffffffffffffffffffff16141515611a0557600080fd5b600073ffffffffffffffffffffffffffffffffffffffff168173ffffffffffffffffffffffffffffffffffffffff1614151515611a4157600080fd5b8073ffffffffffffffffffffffffffffffffffffffff16600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff167f8be0079c531659141344cd1fd0a4f28419497f9722a3daafe3b4186f6b6457e060405160405180910390a380600560006101000a81548173ffffffffffffffffffffffffffffffffffffffff021916908373ffffffffffffffffffffffffffffffffffffffff16021790555050565b6002600560146101000a81548160ff02191690836002811115611b2057fe5b021790555060006004541115611c0a57611ba5600454600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff16815260200190815260200160002054610b1d90919063ffffffff16565b600080600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff168152602001908152602001600020819055505b600560009054906101000a900473ffffffffffffffffffffffffffffffffffffffff1673ffffffffffffffffffffffffffffffffffffffff166108fc3073ffffffffffffffffffffffffffffffffffffffff16319081150290604051600060405180830381858888f19350505050158015611c89573d6000803e3d6000fd5b505600a165627a7a723058205bbef016cc7699572f944871cb6f05e69915ada3a92a1d9f03a3fb434aac0c2b0029

ΠŸΠΎΠ²Π΅Ρ‡Π΅ подробности Π·Π° смарт Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Π² статията: Какво прСдставляват смарт Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΡ‚Π΅ Π² Ethereum.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π˜Π·Π±Ρ€ΠΎΠΈΠ»ΠΈ смС Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΡ‚Π΅, Π½Π° ΠΊΠΎΠΈΡ‚ΠΎ са ΠΈΠ·Π³Ρ€Π°Π΄Π΅Π½ΠΈ ΡΡŠΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΈΡ‚Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ ΠΈ ΠΊΠ°ΠΊ Ρ‚Π΅ са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ ΠΏΠΎΠΌΠ΅ΠΆΠ΄Ρƒ си. Π‘Π΅Π³Π° Π½Π΅ΠΊΠ° Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€Π°ΠΌΠ΅ ΠΊΠ°ΠΊΠ²ΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Ρ€Π΅ΡˆΠ΅Π½ΠΈ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡΡ‚Π° Π½Π° ΠΊΠΎΠΈ Π±ΠΈΡ…Π° Π±ΠΈΠ»ΠΈ, Π² Π½Π°ΠΉ-добрия случай, Π½Π΅Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΈ. И Ρ‚Π°ΠΊΠ°, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Π½Π΅ Π΅ Π·Π°Π΄ΡŠΠ»ΠΆΠΈΡ‚Π΅Π»Π½ΠΎ, Π°ΠΊΠΎ:

  • Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈΡ‚Π΅ сС ΠΈΠ·Π²ΡŠΡ€ΡˆΠ²Π°Ρ‚ Π² Π΄ΠΎΠ²Π΅Ρ€ΠΈΡ‚Π΅Π»Π½Π° срСда;
  • НаличиСто Π½Π° такси ΠΎΡ‚ посрСдницитС Π½Π΅ влошава ΠΆΠΈΠ²ΠΎΡ‚Π° Π½Π° участницитС;
  • УчастницитС нямат собствСност, която ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС прСдставСна ΠΊΠ°Ρ‚ΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈ Π°ΠΊΡ‚ΠΈΠ²ΠΈ;
  • Няма разпрСдСлСност Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΈΡ‚Π΅ Π°ΠΊΡ‚ΠΈΠ²ΠΈ, Ρ‚.Π΅. стойността ΠΏΡ€ΠΈΡ‚Π΅ΠΆΠ°Π²Π° ΠΈΠ»ΠΈ осигурява само Π΅Π΄ΠΈΠ½ участник.

Какво Π±ΡŠΠ΄Π΅Ρ‰Π΅ ΠΎΡ‡Π°ΠΊΠ²Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½? Π‘Π΅Π³Π° ΠΌΠΎΠΆΠ΅ΠΌ само Π΄Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°ΠΌΠ΅ Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΈΡ‚Π΅ ΠΏΡŠΡ‚ΠΈΡ‰Π° Π½Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π½Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΡ‚Π΅:

  • Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ‰Π΅ станС Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° ΠΎΠ±ΠΈΡ‡Π°ΠΉΠ½Π° тСхнология Π·Π° Π±Π°Π·ΠΈ Π΄Π°Π½Π½ΠΈ, ΠΊΠ°ΠΊΡ‚ΠΎ Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ SQL ΠΈΠ»ΠΈ NoSQL Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° своя ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΡ€ΡŠΠ³ Π·Π°Π΄Π°Ρ‡ΠΈ;
  • Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ‰Π΅ станС ΡˆΠΈΡ€ΠΎΠΊΠΎ разпространСн ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Π½Π° HTTP Π·Π° Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚;
  • Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ‰Π΅ станС основа Π·Π° Π½ΠΎΠ²Π° финансова ΠΈ политичСска систСма Π½Π° ΠΏΠ»Π°Π½Π΅Ρ‚Π°Ρ‚Π°!

Π’ слСдващата част Ρ‰Π΅ Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ ΠΊΠ°ΠΊΠ²ΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΈ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‚ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° ΠΈ Π·Π° ΠΊΠ°ΠΊΠ²ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ индустрии.

Π’ΠΎΠ²Π° Π΅ само Π½Π°Ρ‡Π°Π»ΠΎΡ‚ΠΎ!

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС със Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS ΠΈ VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster