Книга Β«Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ руководство»

Книга «Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ руководство»
Π‘ΠΎΠ»ΡŒΡˆΠ΅ Π³ΠΎΠ΄Π° я Ρ€Π°Π±ΠΎΡ‚Π°Π» Π½Π°Π΄ ΠΊΠ½ΠΈΠ³ΠΎΠΉ Β«Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ руководство», ΠΈ Π²ΠΎΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ эта Ρ€Π°Π±ΠΎΡ‚Π° Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π°, Π° ΠΊΠ½ΠΈΠ³Π° ΠΈΠ·Π΄Π°Π½Π° ΠΈ доступна Π² ЛитрСсС.

НадСюсь, моя ΠΊΠ½ΠΈΠ³Π° ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ быстро ΠΏΡ€ΠΈΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΊ созданию смарт-ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚ΠΎΠ² Solidity ΠΈ распрСдСлСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ DApp для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum. Она состоит ΠΈΠ· 12 ΡƒΡ€ΠΎΠΊΠΎΠ² с практичСскими заданиями. Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ² ΠΈΡ…, Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ смоТСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ собствСнныС Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ ΡƒΠ·Π»Ρ‹ Ethereum, ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ ΠΈ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΎΠ±ΠΌΠ΅Π½ΠΈΠ²Π°Ρ‚ΡŒΡΡ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠΈΡ€ΠΎΠΌ ΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°ΠΌΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΡ€Π°ΠΊΡƒΠ»ΠΎΠ², Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с тСстовой ΠΎΡ‚Π»Π°Π΄ΠΎΡ‡Π½ΠΎΠΉ ΡΠ΅Ρ‚ΡŒΡŽ Rinkeby.

Книга адрСсована всСм, ΠΊΡ‚ΠΎ интСрСсуСтся ΠΏΠ΅Ρ€Π΅Π΄ΠΎΠ²Ρ‹ΠΌΠΈ тСхнологиями Π² области Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠ² ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚ быстро ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ знания, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ Π·Π°Π½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ интСрСсной ΠΈ пСрспСктивной Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ.

НиТС Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ ΠΎΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΈ ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π³Π»Π°Π²Ρƒ ΠΊΠ½ΠΈΠ³ΠΈ (Ρ‚Π°ΠΊΠΆΠ΅ Π½Π° ЛитрСсС доступны Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠ½ΠΈΠ³ΠΈ). НадСюсь ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±Ρ€Π°Ρ‚Π½ΡƒΡŽ связь, замСчания ΠΈ прСдлоТСния. ВсС это я ΠΏΠΎΡΡ‚Π°Ρ€Π°ΡŽΡΡŒ ΡƒΡ‡Π΅ΡΡ‚ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ†ΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ.

ΠžΠ³Π»Π°Π²Π»Π΅Π½ΠΈΠ΅Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΠ°ΡˆΠ° ΠΊΠ½ΠΈΠ³Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ‚Π΅Ρ…, ΠΊΡ‚ΠΎ Ρ…ΠΎΡ‡Π΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum, Π½ΠΎ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ практичСскиС Π½Π°Π²Ρ‹ΠΊΠΈ Π² создании распрСдСлСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ DApp Π½Π° языкС программирования Solidity для этой сСти.

Π­Ρ‚Ρƒ ΠΊΠ½ΠΈΠ³Ρƒ Π»ΡƒΡ‡ΡˆΠ΅ Π½Π΅ просто Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ, Π° Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π½Π΅ΠΉ, выполняя практичСскиС задания, описанныС Π² ΡƒΡ€ΠΎΠΊΠ°Ρ…. Для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²Π°ΠΌ потрСбуСтся Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ»ΠΈ ΠΎΠ±Π»Π°Ρ‡Π½Ρ‹ΠΉ сСрвСр с установлСнной ОБ Debian ΠΈΠ»ΠΈ Ubuntu. Π’Π°ΠΊΠΆΠ΅ для выполнСния ΠΌΠ½ΠΎΠ³ΠΈΡ… Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Raspberry Pi.

На ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ ΠΌΡ‹ рассмотрим ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum ΠΈ ΠΎΡΠ½ΠΎΠ²Π½ΡƒΡŽ Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΡŽ, Π° Ρ‚Π°ΠΊΠΆΠ΅ расскаТСм ΠΎ Ρ‚ΠΎΠΌ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½.

ЦСль Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ ΡƒΡ€ΠΎΠΊΠ° β€” ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΡƒΠ·Π΅Π» ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠ³ΠΎ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum для дальнСйшСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… этого курса Π½Π° сСрвСрС Ubuntu ΠΈ Debian. ΠœΡ‹ рассмотрим особСнности установки основных ΡƒΡ‚ΠΈΠ»ΠΈΡ‚, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ geth, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΡƒΠ·Π»Π° нашСго Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅ΠΌΠΎΠ½Π° Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄Π°Π½Π½Ρ‹Ρ… swarm.

Π’Ρ€Π΅Ρ‚ΠΈΠΉ ΡƒΡ€ΠΎΠΊ Π½Π°ΡƒΡ‡ΠΈΡ‚ вас ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ экспСримСнты с Ethereum Π½Π° Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΎΠΌ ΠΌΠΈΠΊΡ€ΠΎΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Raspberry Pi. Π’Ρ‹ установитС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΡƒΡŽ систСму (ОБ) Rasberian Π½Π° Raspberry Pi, ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ Geth, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ ΡƒΠ·Π»Π° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅ΠΌΠΎΠ½ Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄Π°Π½Π½Ρ‹Ρ… Swarm.

Π§Π΅Ρ‚Π²Π΅Ρ€Ρ‚Ρ‹ΠΉ ΡƒΡ€ΠΎΠΊ посвящСн Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°ΠΌ ΠΈ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½Ρ‹ΠΌ Π΅Π΄ΠΈΠ½ΠΈΡ†Π°ΠΌ Π² сСти Ethereum, Π° Ρ‚Π°ΠΊΠΆΠ΅ способам ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° срСдств с ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΈΠ· консоли Geth. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Ρ‹, ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° срСдств, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ состояниС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΈ Π΅Π΅ ΠΊΠ²ΠΈΡ‚Π°Π½Ρ†ΠΈΡŽ.

На пятом ΡƒΡ€ΠΎΠΊΠ΅ Π²Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ со смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°ΠΌΠΈ Π² сСти Ethereum, ΡƒΠ·Π½Π°Π΅Ρ‚Π΅ ΠΎΠ± ΠΈΡ… Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ машиной Ethereum.

Π’Ρ‹ создадитС ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅Ρ‚Π΅ Π² ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠΉ сСти Ethereum свой ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ ΠΈ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Для этого Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ срСду Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Remix Solidity IDE. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ компилятор solc.
Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ расскаТСм ΠΎ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠΌ интСрфСйсС прилоТСния Application Binary Interface (ABI) ΠΈ Π½Π°ΡƒΡ‡ΠΈΠΌ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ.

ШСстой ΡƒΡ€ΠΎΠΊ посвящСн созданию скриптов JavaScript, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Node.js ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°ΠΌΠΈ Solidity.

Π’Ρ‹ установитС Node.js Π² ОБ Ubuntu, Debian ΠΈ Rasberian, Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ скрипты для ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° Π² локальной сСти Ethereum ΠΈ Π²Ρ‹Π·ΠΎΠ²Π° Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скриптов срСдства ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΌΠΈ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°ΠΌΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ ΠΈΡ… Π½Π° Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Ρ‹ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ².

На сСдьмом ΡƒΡ€ΠΎΠΊΠ΅ Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΡƒΡŽ срСди Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ срСду Truffle. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ скрипты JavaScript, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля truffle-contract, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ тСстированиС своСго смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° срСдствами Truffle.

Π’ΠΎΡΡŒΠΌΠΎΠΉ ΡƒΡ€ΠΎΠΊ посвящСн Ρ‚ΠΈΠΏΠ°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Solidity. Π’Ρ‹ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ с Ρ‚Π°ΠΊΠΈΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠ°ΠΊ Π·Π½Π°ΠΊΠΎΠ²Ρ‹Π΅ ΠΈ Π±Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹Π΅ Ρ†Π΅Π»Ρ‹Π΅ числа, числа со Π·Π½Π°ΠΊΠΎΠΌ, строки, адрСса, ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ слоТных Ρ‚ΠΈΠΏΠΎΠ², массивы, пСрСчислСния, структуры ΠΈ словари.

На дСвятом ΡƒΡ€ΠΎΠΊΠ΅ Π²Ρ‹ ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅ΡΡŒ Π΅Ρ‰Π΅ Π½Π° шаг ΠΊ созданию смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² для основной сСти Ethereum. Π’Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Truffle Π² ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠΉ сСти Geth, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π² тСстовой сСти Rinkeby. ΠžΡ‚Π»Π°Π΄ΠΊΠ° смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° Π² сСти Rinkeby ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Π° ΠΏΠ΅Ρ€Π΅Π΄ Π΅Π³ΠΎ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Π² основной сСти β€” Ρ‚Π°ΠΌ практичСски всС ΠΏΠΎ-настоящСму, Π½ΠΎ бСсплатно.

Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… ΡƒΡ€ΠΎΠΊΠ° Π²Ρ‹ создадитС ΡƒΠ·Π΅Π» тСстовой сСти Rinkeby, ΠΏΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ срСдствами, ΠΈ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΡƒΠ΅Ρ‚Π΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚.

Π£Ρ€ΠΎΠΊ 10 посвящСн распрСдСлСнным Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Ethereum Swarm. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ распрСдСлСнныС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°, Π²Ρ‹ экономитС Π½Π° Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… большого объСма Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π΅ Ethereum.

Π’ Ρ€Π°ΠΌΠΊΠ°Ρ… этого ΡƒΡ€ΠΎΠΊΠ° Π²Ρ‹ создадитС локальноС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Swarm, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ записи ΠΈ чтСния Ρ„Π°ΠΉΠ»ΠΎΠ², Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. Π”Π°Π»Π΅Π΅ Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌ шлюзом Swarm, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ скрипты для обращСния ΠΊ Swarm ΠΈΠ· Node.js, Π° Ρ‚Π°ΠΊΠΆΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ модуля Perl Net::Ethereum::Swarm.

ЦСль ΡƒΡ€ΠΎΠΊΠ° 11 β€” ΠΎΡΠ²ΠΎΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ со смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°ΠΌΠΈ Solidity c ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ популярного языка программирования Python ΠΈ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Web3.py. Π’Ρ‹ установитС этот Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ скрипты для компиляции ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ для Π²Ρ‹Π·ΠΎΠ²Π° Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. ΠŸΡ€ΠΈ этом Web3.py Π±ΡƒΠ΄Π΅Ρ‚ использован ΠΊΠ°ΠΊ сам ΠΏΠΎ сСбС, Ρ‚Π°ΠΊ ΠΈ совмСстно с ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСдой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Truffle.

На 12 ΡƒΡ€ΠΎΠΊΠ΅ Π²Ρ‹ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°ΠΌΠΈ ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠΈΡ€ΠΎΠΌ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΎΡ€Π°ΠΊΡƒΠ»ΠΎΠ². Π­Ρ‚ΠΎ пригодится Π²Π°ΠΌ для получСния Π΄Π°Π½Π½Ρ‹Ρ… с Web-сайтов, устройств ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π° Π²Π΅Ρ‰Π΅ΠΉ IoT, Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ±ΠΎΡ€ΠΎΠ² ΠΈ Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΎΠ², ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Π½Π° эти устройства. Π’ практичСской части ΡƒΡ€ΠΎΠΊΠ° Π²Ρ‹ создадитС ΠΎΡ€Π°ΠΊΡƒΠ» ΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠΉ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ курс ΠΎΠ±ΠΌΠ΅Π½Π° USD Π½Π° Ρ€ΡƒΠ±Π»ΠΈ с сайта Π¦Π‘ Π Π€.

Π£Ρ€ΠΎΠΊ 1. ΠšΡ€Π°Ρ‚ΠΊΠΎ ΠΎ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π΅ ΠΈ сСти EthereumЦСль ΡƒΡ€ΠΎΠΊΠ°: ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ°ΠΌΠΈ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum, областями Π΅Π³ΠΎ примСнСния ΠΈ основной Ρ‚Π΅Ρ€ΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ.
ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ задания: Π² этом ΡƒΡ€ΠΎΠΊΠ΅ Π½Π΅ прСдусмотрСны.

Π•Π΄Π²Π° Π»ΠΈ сСгодня Π΅ΡΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния (ПО), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΡΠ»Ρ‹ΡˆΠ°Π» ΠΎ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ (Blockchain), ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π°Ρ… (Cryptocurrency ΠΈΠ»ΠΈ Crypto Currency), Π±ΠΈΡ‚ΠΊΠΎΠΈΠ½Π°Ρ… (Bitcoin), ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½ΠΎΠΌ Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ ΠΌΠΎΠ½Π΅Ρ‚ (ICO, Initial coin offering), смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°Ρ… (Smart Contract), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… понятиях ΠΈ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ…, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΡ… ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Ρƒ.

ВСхнология Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΎΠ²Ρ‹Π΅ Ρ€Ρ‹Π½ΠΊΠΈ ΠΈ создаСт Ρ€Π°Π±ΠΎΡ‡ΠΈΠ΅ мСста для программистов. Если Π²Ρ‹ постигнСтС всС тонкости ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ ΠΈ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ², Ρ‚ΠΎ Ρƒ вас Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ с ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ этих Π·Π½Π°Π½ΠΈΠΉ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅.

Надо ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²ΠΎΠΊΡ€ΡƒΠ³ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚ ΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠ² Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ спСкуляций. ΠœΡ‹ оставим Π² сторонС рассуТдСния ΠΎΠ± измСнСниях курсов ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚, ΠΎ создании ΠΏΠΈΡ€Π°ΠΌΠΈΠ΄, ΠΎ тонкостях ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½ΠΎΠ³ΠΎ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° ΠΈ Ρ‚.ΠΏ. Π’ нашСм ΡƒΡ‡Π΅Π±Π½ΠΎΠΌ курсС ΠΌΡ‹ сосрСдоточимся Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π½Π° тСхничСских аспСктах примСнСния смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum (эфириум, эфир) ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (Distributed Application, DApp).

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ (Blockchain, Block Chain) прСдставляСт собой Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π±Π»ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, связанных Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Π’ Π½Π°Ρ‡Π°Π»Π΅ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ находится ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся ΠΏΠ΅Ρ€Π²ΠΈΡ‡Π½Ρ‹ΠΌ Π±Π»ΠΎΠΊΠΎΠΌ (genesis block) ΠΈΠ»ΠΈ Π±Π»ΠΎΠΊΠΎΠΌ гСнСзиса. Π—Π° Π½ΠΈΠΌ слСдуСт Π²Ρ‚ΠΎΡ€ΠΎΠΉ, ΠΏΠΎΡ‚ΠΎΠΌ Ρ‚Ρ€Π΅Ρ‚ΠΈΠΉ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

ВсС эти Π±Π»ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… автоматичСски Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ Π½Π° многочислСнных ΡƒΠ·Π»Π°Ρ… сСти Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ обСспСчиваСтся Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°.
Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС систСму Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° ΠΊΠ°ΠΊ большоС количСство ΡƒΠ·Π»ΠΎΠ² (физичСских ΠΈΠ»ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… сСрвСров), ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½Π½Ρ‹Ρ… Π² ΡΠ΅Ρ‚ΡŒ ΠΈ Ρ€Π΅ΠΏΠ»ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… всС измСнСния Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ Π±Π»ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Π­Ρ‚ΠΎ ΠΊΠ°ΠΊ Π±Ρ‹ гигантский ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠ΅Ρ€Π²Π΅Ρ€Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΏΡ€ΠΈΡ‡Π΅ΠΌ ΡƒΠ·Π»Ρ‹ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° (сСрвСры) ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ разбросаны ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ. И Π²Ρ‹ Ρ‚ΠΎΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ свой ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π² ΡΠ΅Ρ‚ΡŒ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°.

РаспрСдСлСнная Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС ΠΊΠ°ΠΊ Ρ€Π°ΡΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ€Π΅ΠΏΠ»ΠΈΡ†ΠΈΡ€ΡƒΠ΅ΠΌΡƒΡŽ Π½Π° всС ΡƒΠ·Π»Ρ‹ сСти Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°. Π’ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Π±ΡƒΠ΄Π΅Ρ‚ работоспособСн Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΡƒΠ·Π΅Π», хранящий всС Π±Π»ΠΎΠΊΠΈ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°.

РаспрСдСлСнный рССстр Π΄Π°Π½Π½Ρ‹Ρ…

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС ΠΊΠ°ΠΊ это распрСдСлСнный рССстр Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ (Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ). Π•Ρ‰Π΅ ΠΎΠ΄Π½ΠΎ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ рССстра β€” гроссбух.

Π’ распрСдСлСнный рССстр ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅, Π½ΠΎ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡ… ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ. Вакая Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ достигаСтся, Π² частности, ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ криптографичСских Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ², ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² добавлСния Π±Π»ΠΎΠΊΠΎΠ² Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ ΠΈ Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ΠΌ Π΄Π°Π½Π½Ρ‹Ρ….

ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ Π±Π»ΠΎΠΊΠΎΠ² ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ (Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹Π΅ ΠΈ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΊΠ»ΡŽΡ‡ΠΈ. Они ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, прСдоставляя ΠΈΠΌ доступ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ своим Π±Π»ΠΎΠΊΠ°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ….

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

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± опСрациях (транзакциях) Π² Π±Π»ΠΎΠΊΠ°Ρ…. ΠŸΡ€ΠΈ этом старыС, ΡƒΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½Ρ‹Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΠ°Ρ‚ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. НовыС Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ хранятся Π² Π½ΠΎΠ²Ρ‹Ρ…, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΠ°Ρ….

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ записана Π² Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ вся история Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ хранСния банковских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, свСдСний ΠΎΠ± авторском ΠΏΡ€Π°Π²Π΅, ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² нСдвиТимости ΠΈ Ρ‚.ΠΏ.

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ethereum содСрТит Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ состояния систСмы. По ΠΌΠ΅Ρ€Π΅ выполнСния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ состояниС измСняСтся ΠΎΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π΄ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ. Π’Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π±Π»ΠΎΠΊΠΈ.

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

Π’ΡƒΡ‚ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ всС сказанноС Π²Π΅Ρ€Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹Ρ… сСтСй Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ физичСскими ΠΈΠ»ΠΈ ΡŽΡ€ΠΈΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈΠΌΠΈ Π»ΠΈΡ†Π°ΠΌΠΈ, государствСнными ΠΎΡ€Π³Π°Π½Π°ΠΌΠΈ ΠΈΠ»ΠΈ ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒΡΡ‚Π²Π°ΠΌΠΈ.
Π’Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹Π΅ сСти Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ находятся ΠΏΠΎΠ΄ ΠΏΠΎΠ»Π½Ρ‹ΠΌ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅ΠΌ ΠΈΡ… создатСлСй, ΠΈ Ρ‚Π°ΠΌ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ всС, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, полная Π·Π°ΠΌΠ΅Π½Π° всСх Π±Π»ΠΎΠΊΠΎΠ² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ примСнСния Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°

Для Ρ‡Π΅Π³ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ пригодится Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½?

Если ΠΊΡ€Π°Ρ‚ΠΊΠΎ, Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ позволяСт бСзопасным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ (сдСлки) ΠΌΠ΅ΠΆΠ΄Ρƒ Π½Π΅ Π΄ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΠΌΠΈ Π΄Ρ€ΡƒΠ³ Π΄Ρ€ΡƒΠ³Ρƒ пСрсонами ΠΈΠ»ΠΈ компаниями. ЗаписанныС Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Π΄Π°Π½Π½Ρ‹Π΅ (Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ, ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°, Π΄ΠΎΠ³ΠΎΠ²ΠΎΡ€Ρ‹, Π½Π°ΠΊΠ»Π°Π΄Π½Ρ‹Π΅ ΠΈ Ρ‚.ΠΏ.) Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄Π΄Π΅Π»Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ послС записи. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π½Π° Π±Π°Π·Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹Π΅ распрСдСлСнныС рССстры Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ².

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ Π½Π° Π±Π°Π·Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠ² ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½Ρ‹Π΅ систСмы, ΠΏΡ€ΠΈΠ·Π²Π°Π½Π½Ρ‹Π΅ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ Π±ΡƒΠΌΠ°ΠΆΠ½Ρ‹Π΅ дСньги. Π‘ΡƒΠΌΠ°ΠΆΠ½Ρ‹Π΅ дСньги Π΅Ρ‰Π΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ„ΠΈΠ°Ρ‚Π½Ρ‹ΠΌΠΈ (ΠΎΡ‚ Fiat Money).
Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ обСспСчиваСт Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΈ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π½ΠΎΡΡ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, записанных Π² Π±Π»ΠΎΠΊΠΈ, поэтому Π΅Π³ΠΎ ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½Ρ‹Ρ… систСм. Он содСрТит всю ΠΈΡΡ‚ΠΎΡ€ΠΈΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΊΡ€ΠΈΠΏΡ‚ΠΎ-срСдств ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ (Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°ΠΌΠΈ), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ любая опСрация ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ отслСТСна.

Π₯отя ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½Ρ‹Ρ… систСм ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π°Π½ΠΎΠ½ΠΈΠΌΠ½Ρ‹ΠΌΠΈ, Π²Ρ‹Π²ΠΎΠ΄ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Ρ‹ ΠΈ ΠΎΠ±ΠΌΠ΅Π½ Π΅Π΅ Π½Π° Ρ„ΠΈΠ°Ρ‚Π½Ρ‹Π΅ дСньги ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Ρ€Π°ΡΠΊΡ€Ρ‹Ρ‚ΠΈΡŽ личности Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½ΠΎΠ³ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π°.

Π’Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ собой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π΅ Π² сСти Ethereum, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ процСсс Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ сдСлок ΠΈ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ ΠΈΡ… выполнСния. ОсобСнно это эффСктивно, Ссли ΠΎΠΏΠ»Π°Ρ‚Π° ΠΏΠΎ сдСлкС проводится ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚ΠΎΠΉ Ether (эфир).

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ethereum ΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ Ethereum, написанныС Π½Π° языкС программирования Solidity, ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Ρ‚Π°ΠΊΠΈΡ… областях:

  • Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π° Π½ΠΎΡ‚Π°Ρ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ Π·Π°Π²Π΅Ρ€Π΅Π½ΠΈΡŽ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²;
  • Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ рССстра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² нСдвиТимости ΠΈ свСдСний ΠΎΠ± опСрациях с ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ нСдвиТимости;
  • Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ свСдСний ΠΎΠ± авторских ΠΏΡ€Π°Π²Π°Ρ… Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ собствСнности (ΠΊΠ½ΠΈΠ³ΠΈ, изобраТСния, ΠΌΡƒΠ·Ρ‹ΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ произвСдСния ΠΈ Ρ‚.ΠΏ.);
  • созданиС систСм нСзависимого голосования;
  • сфСра финансов ΠΈ банковская Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ;
  • логистика Π² ΠΌΠ΅ΠΆΠ΄ΡƒΠ½Π°Ρ€ΠΎΠ΄Π½Ρ‹Ρ… ΠΌΠ°ΡΡˆΡ‚Π°Π±Π°Ρ…, отслСТиваниС пСрСмСщСния Π³Ρ€ΡƒΠ·ΠΎΠ²;
  • Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠ°ΠΊ Π°Π½Π°Π»ΠΎΠ³ систСмС удостовСрСний личности;
  • бСзопасныС сдСлки Π² коммСрчСской области;
  • Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² мСдицинских обслСдований, Π° Ρ‚Π°ΠΊΠΆΠ΅ истории Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠΌ

Но, разумССтся, Π½Π΅ всС Ρ‚Π°ΠΊ просто, ΠΊΠ°ΠΊ ΠΌΠΎΠ³Π»ΠΎ Π±Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ!

Π•ΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΡ… Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π»ΠΈ ΠΎΠ½ΠΈ?), ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² бСзопасности систСмного ΠΈ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ ПО, примСняСмого для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠΌ, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ использования ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΈ для похищСния доступа ΠΊ кошСлькам с ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚ΠΎΠΉ ΠΈ Ρ‚.ΠΏ.

ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅, Ссли Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Π΅Ρ‚ Π½Π΅ ΠΎ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠΌ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π΅, ΡƒΠ·Π»Ρ‹ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ разбросаны ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ, Π° ΠΎ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠΌ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π΅, ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΌ пСрсонС ΠΈΠ»ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚ΠΎ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ довСрия здСсь Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ Π²Ρ‹ΡˆΠ΅ Ρ‡Π΅ΠΌ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ довСрия ΠΊ этой пСрсонС ΠΈΠ»ΠΈ этой ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π’Π°ΠΊΠΆΠ΅ слСдуСт ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅, записанныС Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, становятся доступны для всСх. Π’ этом смыслС Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ (особСнно ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΉ) Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для хранСния ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ. Однако Ρ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π΅ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΈΠ»ΠΈ Ρ€Π°ΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ дСйствия.

Π”Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ прилоТСния Ethereum Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΠ΄ΠΎΠ±Π½Ρ‹, Ссли ΠΏΠ»Π°Ρ‚ΠΈΡ‚ΡŒ Π·Π° ΠΈΡ… использованиС ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚ΠΎΠΉ. Π§Π΅ΠΌ большС людСй, Π²Π»Π°Π΄Π΅ΡŽΡ‰ΠΈΡ… ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚ΠΎΠΉ ΠΈΠ»ΠΈ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… Π΅Π΅ приобрСсти, Ρ‚Π΅ΠΌ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ прилоТСния DApp ΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹.

Π‘Ρ€Π΅Π΄ΠΈ ΠΎΠ±Ρ‰ΠΈΡ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½ΡΡŽΡ‰ΠΈΡ… Π΅Π³ΠΎ практичСскоС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΡƒΡŽ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ добавлСния Π½ΠΎΠ²Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² ΠΈ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π²Ρ‹ΡΠΎΠΊΡƒΡŽ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ. Но Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π² этой области Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ Ρ€Π°Π·Π²ΠΈΠ²Π°ΡŽΡ‚ΡΡ, ΠΈ Π΅ΡΡ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ΄Ρ‹, Ρ‡Ρ‚ΠΎ тСхничСскиС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ Ρ€Π΅ΡˆΠ΅Π½Ρ‹.

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² ΠΈΠ·ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ срСдС Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин, ΠΈ Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ доступа ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΈΡ€Π°. Π’ частности, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ сама ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ с сайтов ΠΈΠ»ΠΈ ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ физичСских устройств (Π΄Π°Ρ‚Ρ‡ΠΈΠΊΠΈ, ΠΊΠΎΠ½Ρ‚Π°ΠΊΡ‚Ρ‹ ΠΈ Ρ‚.ΠΏ.), Π° Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ вывСсти Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ внСшниС устройства. Π­Ρ‚Ρƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ ΠΈ способы Π΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠ±ΡΡƒΠΆΠ΄Π°Ρ‚ΡŒ Π½Π° ΡƒΡ€ΠΎΠΊΠ΅, посвящСнным Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΌ ΠžΡ€Π°ΠΊΡƒΠ»Π°ΠΌ β€” ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ посрСдникам смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ².

Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ограничСния Π² области Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… странах, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, запрСщаСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Ρƒ ΠΊΠ°ΠΊ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½ΠΎΠ΅ срСдство, Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π²Π»Π°Π΄Π΅Ρ‚ΡŒ Π΅ΠΉ ΠΊΠ°ΠΊ Π½Π΅ΠΊΠΈΠΌ Ρ†ΠΈΡ„Ρ€ΠΎΠ²Ρ‹ΠΌ Π°ΠΊΡ‚ΠΈΠ²ΠΎΠΌ, Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ Ρ†Π΅Π½Π½Ρ‹Ρ… Π±ΡƒΠΌΠ°Π³. Π’Π°ΠΊΠΈΠ΅ Π°ΠΊΡ‚ΠΈΠ²Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚ΡŒ ΠΈ ΠΏΡ€ΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ Π½Π° Π±ΠΈΡ€ΠΆΠ΅. Π’ любом случаС, ΠΏΡ€ΠΈ создании ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π³ΠΎ с ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π°ΠΌΠΈ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚ΡŒΡΡ с Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎΠΌ Ρ‚ΠΎΠΉ страны, ΠΏΠΎΠ΄ ΡŽΡ€ΠΈΡΠ΄ΠΈΠΊΡ†ΠΈΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ ваш ΠΏΡ€ΠΎΠ΅ΠΊΡ‚.

Как формируСтся Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ° Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°

Как ΠΌΡ‹ ΡƒΠΆΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΠ»ΠΈ, Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ прСдставляСт собой ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π±Π»ΠΎΠΊΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…. Π‘Π½Π°Ρ‡Π°Π»Π° формируСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ этой Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ, ΠΏΠΎΡ‚ΠΎΠΌ ΠΊ Π½Π΅ΠΌΡƒ добавляСтся Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ΡΡ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ хранятся Π² Π±Π»ΠΎΠΊΠ°Ρ…, ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² самый послСдний Π±Π»ΠΎΠΊ.

На рис. 1.1 ΠΌΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π»ΠΈ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±Π»ΠΎΠΊΠΎΠ², Π³Π΄Π΅ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Π»ΠΎΠΊ ссылаСтся Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ.

Книга «Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ руководство»
Рис. 1.1. ΠŸΡ€ΠΎΡΡ‚Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π±Π»ΠΎΠΊΠΎΠ²

Π’ Ρ‚Π°ΠΊΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Π»Π°Ρ‚ΡŒ содСрТимоС любого Π±Π»ΠΎΠΊΠ° Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠΈ Π½Π΅ содСрТат Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. Учитывая, Ρ‡Ρ‚ΠΎ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для использований людСй ΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π½Π΅Ρ‚ довСрия, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ способ хранСния Π΄Π°Π½Π½Ρ‹Ρ… для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚.

Π”Π°Π²Π°ΠΉΡ‚Π΅ займСмся Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ Π±Π»ΠΎΠΊΠΎΠ² ΠΎΡ‚ ΠΏΠΎΠ΄Π΄Π΅Π»ΠΊΠΈ. На ΠΏΠ΅Ρ€Π²ΠΎΠΌ этапС ΠΌΡ‹ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Π±Π»ΠΎΠΊ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ суммой (рис. 1.2).

Книга «Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ руководство»
Рис. 1.2. ДобавляСм Π·Π°Ρ‰ΠΈΡ‚Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ суммой

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ просто Ρ‚Π°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² Π½Π΅ΠΌ находится ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ сумма Π΄Π°Π½Π½Ρ‹Ρ… Π±Π»ΠΎΠΊΠ°. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ суммы ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π±Ρ‹Π»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Ρ‹.

Для вычислСния ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½ΠΎΠΉ суммы ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄Π½Ρƒ ΠΈΠ· Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°ΠΊ MD-5, SHA-1, SHA-256 ΠΈ Ρ‚.ΠΏ. Π₯Сш-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π²ΠΈΠ΄Π΅ тСкстовой строки постоянной Π΄Π»ΠΈΠ½Ρ‹) Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ выполнСния Π½Π΅ΠΎΠ±Ρ€Π°Ρ‚ΠΈΠΌΡ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π½Π°Π΄ Π±Π»ΠΎΠΊΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ зависят ΠΎΡ‚ Π²ΠΈΠ΄Π° Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π”Π°ΠΆΠ΅ ΠΏΡ€ΠΈ нСбольшом ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΈ содСрТимого Π±Π»ΠΎΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ измСнится. Анализируя Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ…, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½Π° Π±Ρ‹Π»Π° вычислСна.

Π‘ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ достаточна такая Π·Π°Ρ‰ΠΈΡ‚Π°? К соТалСнию, Π½Π΅Ρ‚.

Π’ этой схСмС ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ сумма (Ρ…Π΅Ρˆ-функция) Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ Π±Π»ΠΎΠΊΠΈ, Π½ΠΎ Π½Π΅ всю Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π±Π»ΠΎΠΊΠΎΠ². Зная Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ вычислСния Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π»Π΅Π³ΠΊΠΎ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ содСрТимоС Π±Π»ΠΎΠΊΠ°. Π’Π°ΠΊΠΆΠ΅ Π½ΠΈΡ‡Ρ‚ΠΎ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡˆΠ°Π΅Ρ‚ Π΅ΠΌΡƒ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π±Π»ΠΎΠΊΠΈ ΠΈΠ· Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ ΠΈΠ»ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅.

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ всю Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π² Ρ†Π΅Π»ΠΎΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π±Π»ΠΎΠΊΠ΅ вмСстС с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ Π΅Ρ‰Π΅ ΠΈ Ρ…Π΅Ρˆ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ Π±Π»ΠΎΠΊΠ° (рис. 1.3).

Книга «Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity для Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° Ethereum. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ руководство»
Рис. 1.3. ДобавляСм Π² Π±Π»ΠΎΠΊ Π΄Π°Π½Π½Ρ‹Ρ… Ρ…Π΅Ρˆ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ Π±Π»ΠΎΠΊΠ°

Π’ этой схСмС Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π±Π»ΠΎΠΊ, Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ всСх ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π±Π»ΠΎΠΊΠΎΠ². Казалось Π±Ρ‹, Π² Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°?

Π’ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°Ρ… Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ созданы искусствСнныС трудности для добавлСния Π½ΠΎΠ²Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² β€”ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹, Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… рСсурсов. Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ для внСсСния ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π±Π»ΠΎΠΊ ΠΏΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎ Π½Π΅ ΠΎΠ΄ΠΈΠ½ этот Π±Π»ΠΎΠΊ, Π° всС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅, ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это Π±ΡƒΠ΄Π΅Ρ‚ ΠΊΡ€Π°ΠΉΠ½Π΅ слоТно.

Вспомним Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° хранятся (Π΄ΡƒΠ±Π»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ) Π½Π° многочислСнных ΡƒΠ·Π»Π°Ρ… сСти, Ρ‚.Π΅. ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅. А это ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ услоТняСт ΠΏΠΎΠ΄Π΄Π΅Π»ΠΊΡƒ Π±Π»ΠΎΠΊΠ°, Ρ‚.ΠΊ. измСнСния трСбуСтся внСсти Π½Π° всС ΡƒΠ·Π»Ρ‹ сСти.

Π’Π°ΠΊ ΠΊΠ°ΠΊ Π±Π»ΠΎΠΊΠΈ хранят ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌ Π±Π»ΠΎΠΊΠ΅, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ содСрТимоС всСх Π±Π»ΠΎΠΊΠΎΠ² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ.

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ethereum

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ethereum прСдставляСт собой ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΡƒ, Π½Π° Π±Π°Π·Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ распрСдСлСнныС прилоТСния DApp. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Ethereum позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ ΡƒΠΌΠ½Ρ‹Π΅ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ (смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹, smart contracts), написанныС Π½Π° языкС программирования Solidity.

Π­Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π±Ρ‹Π»Π° создана Π² 2013 Π³ΠΎΠ΄Ρƒ Π’ΠΈΡ‚Π°Π»ΠΈΠΊΠΎΠΌ Π‘ΡƒΡ‚Π΅Ρ€ΠΈΠ½Ρ‹ΠΌ, основатСлСм ΠΆΡƒΡ€Π½Π°Π»Π° Bitcoin Magazine, ΠΈ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° Π² 2015 Π³ΠΎΠ΄Ρƒ. ВсС, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ Π΄Π΅Π»Π°Ρ‚ΡŒ Π² нашСм ΡƒΡ‡Π΅Π±Π½ΠΎΠΌ курсС, ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΊ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Ρƒ Ethereum ΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°ΠΌ Solidity.

Майнинг ΠΈΠ»ΠΈ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ Π±Π»ΠΎΠΊΠΈ

Майнинг (mining) прСдставляСт собой довольно слоТный ΠΈ рСсурсоСмкий процСсс добавлСния Π½ΠΎΠ²Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, Π° вовсС Π½Π΅ Β«Π΄ΠΎΠ±Ρ‹Ρ‡Ρƒ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Β». Майнинг обСспСчиваСт Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, Ρ‚.ΠΊ. ΠΈΠΌΠ΅Π½Π½ΠΎ этот процСсс ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π·Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ethereum.

Π›ΡŽΠ΄ΠΈ ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Π±Π»ΠΎΠΊΠΎΠ², Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΌΠ°ΠΉΠ½Π΅Ρ€Π°ΠΌΠΈ (miner).
ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС (ПО), Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰Π΅Π΅ Π½Π° ΡƒΠ·Π»Π°Ρ… ΠΌΠ°ΠΉΠ½Π΅Ρ€ΠΎΠ², пытаСтся ΠΏΠΎΠ΄ΠΎΠ±Ρ€Π°Ρ‚ΡŒ для послСднСго Π±Π»ΠΎΠΊΠ° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ Nonce, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Π·Π°Π΄Π°Π½Π½ΠΎΠΉ ΡΠ΅Ρ‚ΡŒΡŽ. Алгоритм Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ Ethash, примСняСмый Π² Ethereum, позволяСт ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Nonce Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡƒΡ‚Π΅ΠΌ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€Π°.

Если ΡƒΠ·Π΅Π» ΠΌΠ°ΠΉΠ½Π΅Ρ€Π° нашСл ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Nonce, Ρ‚ΠΎ это являСтся Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΌ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ (PoW, Proof-of-work). Π’ этом случаС, Ссли Π±Π»ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ Π² ΡΠ΅Ρ‚ΡŒ Ethereum, ΠΌΠ°ΠΉΠ½Π΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ Π²ΠΎΠ·Π½Π°Π³Ρ€Π°ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² Π²Π°Π»ΡŽΡ‚Π΅ сСти β€” Ether. На ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ нашСй ΠΊΠ½ΠΈΠ³ΠΈ Π²ΠΎΠ·Π½Π°Π³Ρ€Π°ΠΆΠ΄Π΅Π½ΠΈΠ΅ составляСт 5 Ether, ΠΎΠ΄Π½Π°ΠΊΠΎ со Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ ΠΎΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ сниТСно.

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΠ°ΠΉΠ½Π΅Ρ€Ρ‹ Ethereum ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ сСти, добавляя Π±Π»ΠΎΠΊΠΈ, ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ Π·Π° это ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½Ρ‹Π΅ дСньги. Π’ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ массу ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΌΠ°ΠΉΠ½Π΅Ρ€Π°Ρ… ΠΈ ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³Π΅, Π° ΠΌΡ‹ сосрСдоточимся Π½Π° создании ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Solidity ΠΈ Π΄Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ DApp Π² сСти Ethereum.

Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

На ΠΏΠ΅Ρ€Π²ΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ Π²Ρ‹ познакомились с Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ΠΎΠΌ ΠΈ ΡƒΠ·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ прСдставляСт собой особым ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ ΡΠΎΡΡ‚Π°Π²Π»Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒΡŽ Π±Π»ΠΎΠΊΠΎΠ². Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Ρ€Π°Π½Π΅Π΅ записанных Π±Π»ΠΎΠΊΠΎΠ² Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ для этого придСтся ΠΏΠ΅Ρ€Π΅ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ всС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π±Π»ΠΎΠΊΠΈ Π½Π° ΠΌΠ½ΠΎΠ³ΠΈΡ… ΡƒΠ·Π»Π°Ρ… сСти, Π½Π° Ρ‡Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ рСсурсов ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Π‘Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ для сохранСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² выполнСния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ. Π•Π³ΠΎ Π³Π»Π°Π²Π½ΠΎΠ΅ Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” организация бСзопасного выполнСния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ ΠΌΠ΅ΠΆΠ΄Ρƒ сторонами (пСрсонами ΠΈ организациями), ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π½Π΅Ρ‚ довСрия. Π’Ρ‹ ΡƒΠ·Π½Π°Π»ΠΈ, Π² ΠΊΠ°ΠΊΠΈΡ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ областях бизнСса ΠΈ Π² ΠΊΠ°ΠΊΠΈΡ… сфСрах ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½ Ethereum ΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ Solidity. Π­Ρ‚ΠΎ банковская сфСра, рСгистрация ΠΏΡ€Π°Π² собствСнности, Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΈ Ρ‚.ΠΏ.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΡƒΠ·Π½Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ использовании Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, добавляСмой Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½, ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°, ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ, ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΎΠ±ΠΌΠ΅Π½Π° Π΄Π°Π½Π½Ρ‹ΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρƒ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°ΠΌΠΈ ΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹ΠΌ ΠΌΠΈΡ€ΠΎΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Π°Ρ‚Π°ΠΊΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ², Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ Π½Π° ΠΏΠΎΡ…ΠΈΡ‰Π΅Π½ΠΈΠ΅ ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π½Ρ‹Ρ… срСдств с Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

Π’Π°ΠΊΠΆΠ΅ ΠΌΡ‹ ΠΊΡ€Π°Ρ‚ΠΊΠΎ рассказали ΠΎ ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³Π΅ ΠΊΠ°ΠΊ ΠΎ процСссС добавлСния Π½ΠΎΠ²Ρ‹Ρ… Π±Π»ΠΎΠΊΠΎΠ² Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½. Майнинг Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌ для выполнСния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΉ. Π’Π΅, ΠΊΡ‚ΠΎ занимаСтся ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³ΠΎΠΌ, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π° ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‚ Π·Π° это Π²ΠΎΠ·Π½Π°Π³Ρ€Π°ΠΆΠ΄Π΅Π½ΠΈΠ΅ Π² ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π΅.

Π£Ρ€ΠΎΠΊ 2. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ срСды Π² ОБ Ubuntu ΠΈ DebianΠ’Ρ‹Π±ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы
Установка Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚
Установка Geth ΠΈ Swarm Π² Ubuntu
Установка Geth ΠΈ Swarm Π² Debian
ΠŸΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ°
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° дистрибутива Go
Установка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° вСрсии Go
Установка Geth ΠΈ Swarm
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½
Π“ΠΎΡ‚ΠΎΠ²ΠΈΠΌ Ρ„Π°ΠΉΠ» genesis.json
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ для Ρ€Π°Π±ΠΎΡ‚Ρ‹
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚
ЗапускаСм ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΡƒΠ·Π»Π°
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ запуска ΡƒΠ·Π»Π°
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅ΠΌΡΡ ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ ΡƒΠ·Π»Ρƒ
Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ°ΠΉΠ½ΠΈΠ½Π³ΠΎΠΌ ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° баланса
Π—Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ консоли Geth
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 3. ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΉ срСды Π½Π° Raspberry Pi 3ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° Raspberry Pi 3 ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅
Установка Rasberian
Установка ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠΉ
Π’ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ доступа SSH
Установка статичСского адрСса IP
Установка Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΡƒΡ‚ΠΈΠ»ΠΈΡ‚
Установка Go
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° дистрибутива Go
Установка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° вСрсии Go
Установка Geth ΠΈ Swarm
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи ΠΈ баланса
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 4. Π£Ρ‡Π΅Ρ‚Π½Ρ‹Π΅ записи ΠΈ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ срСдств ΠΌΠ΅ΠΆΠ΄Ρƒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°ΠΌΠΈΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²
ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ списка Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°
ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ geth account
ΠŸΠ°Ρ€ΠΎΠ»ΠΈ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²
ΠšΡ€ΠΈΠΏΡ‚ΠΎΠ²Π°Π»ΡŽΡ‚Π° Π² Ethereum
Π”Π΅Π½Π΅ΠΆΠ½Ρ‹Π΅ Π΅Π΄ΠΈΠ½ΠΈΡ†Ρ‹ Ethereum
ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ баланс Π½Π°ΡˆΠΈΡ… Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²
ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ срСдств с ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ
ΠœΠ΅Ρ‚ΠΎΠ΄ eth.sendTransaction
ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ состояния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ
ΠšΠ²ΠΈΡ‚Π°Π½Ρ†ΠΈΡ Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 5. ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°Π‘ΠΌΠ°Ρ€Ρ‚-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ Π² Ethereum
Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Π°Ρ машина Ethereum
Π˜Π½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΠΎΠ²Π°Π½Π½Π°Ρ срСда Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Remix Solidity IDE
Запуск компиляции
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° Π² ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠΉ сСти
ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ABI ΠΈ Π΄Π²ΠΎΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° состояния Ρ‚Ρ€Π°Π½Π·Π°ΠΊΡ†ΠΈΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ΠŸΠ°ΠΊΠ΅Ρ‚Π½Ρ‹ΠΉ компилятор solc
Установка solc Π² Ubuntu
Установка solc Π² Debian
ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° HelloSol
ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Установка solc Π½Π° Rasberian
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 6. Π‘ΠΌΠ°Ρ€Ρ‚-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Ρ‹ ΠΈ Node.jsУстановка Node.js
Установка Π² Ubuntu
Установка Π² Debian
Установка ΠΈ запуск Ganache-cli
Установка Web3
Установка solc
Установка Node.js Π½Π° Rasberian
Π‘ΠΊΡ€ΠΈΠΏΡ‚ для получСния списка Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ² Π² консоли
Π‘ΠΊΡ€ΠΈΠΏΡ‚ для ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Запуск ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²
ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² запуска
ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π Π°Π·Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ABI ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ΠžΡ†Π΅Π½ΠΊΠ° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ количСства Π³Π°Π·Π°
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ запуск ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Запуск скрипта ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π»ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π Π°Π±ΠΎΡ‚Π° с Web3 вСрсии 1.0.x
ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ список Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²
ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ срСдств с ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ
ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ срСдств Π½Π° Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ОбновляСм смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ HelloSol
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ скрипт для просмотра баланса Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°
ДобавляСм Π²Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ getBalance Π² скрипт call_contract_get_promise.js
ПополняСм счСт смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 7. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ Π² TruffleУстановка Truffle
Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ HelloSol
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°
ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ contracts
ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ migrations
ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ test
Π€Π°ΠΉΠ» truffle-config.js
ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° HelloSol
Запуск ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° HelloSol Π² ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠΈ Truffle
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° HelloSol ΠΈΠ· скрипта JavaScript ΠΏΠΎΠ΄ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ Node.js
Установка модуля truffle-contract
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° getValue ΠΈ getString
Π’Ρ‹Π·ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° setValue ΠΈ setString
ИзмСнСниС ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° ΠΈ повторная публикация
Π Π°Π±ΠΎΡ‚Π° с Web3 вСрсии 1.0.x
Вносим измСнСния Π² смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ HelloSol
Π‘ΠΊΡ€ΠΈΠΏΡ‚Ρ‹ для Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ВСстированиС Π² Truffle
ВСст Π½Π° Solidity
ВСст Π½Π° JavaScript
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 8. Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… SolidityΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ для изучСния Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…
ЛогичСскиС Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…
Π‘Π΅Π·Π·Π½Π°ΠΊΠΎΠ²Ρ‹Π΅ Ρ†Π΅Π»Ρ‹Π΅ числа ΠΈ Ρ†Π΅Π»Ρ‹Π΅ числа со Π·Π½Π°ΠΊΠΎΠΌ
Числа с фиксированной запятой
АдрСс
ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ слоТных Ρ‚ΠΈΠΏΠΎΠ²
ΠœΠ°ΡΡΠΈΠ²Ρ‹ фиксированного Ρ€Π°Π·ΠΌΠ΅Ρ€Π°
ДинамичСскиС массивы
ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅
Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹
Π‘Π»ΠΎΠ²Π°Ρ€ΠΈ mapping
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 9. ΠœΠΈΠ³Ρ€Π°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ΠΎΠ² Π² ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΡƒΡŽ ΡΠ΅Ρ‚ΡŒ ΠΈ Π² ΡΠ΅Ρ‚ΡŒ RinkebyΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° ΠΈΠ· Truffle Π² ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΡƒΡŽ ΡΠ΅Ρ‚ΡŒ Geth
ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΡƒΠ·Π»Π° ΠΏΡ€ΠΈΠ²Π°Ρ‚Π½ΠΎΠΉ сСти
ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° для Ρ€Π°Π±ΠΎΡ‚Ρ‹
ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΈ миграция ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° Π² ΡΠ΅Ρ‚ΡŒ Truffle
Запуск ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ Π² Π»ΠΎΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ ΡΠ΅Ρ‚ΡŒ geth
Π”ΠΎΠ±Ρ‹Π²Π°Π΅ΠΌ Π°Ρ€Ρ‚Π΅Ρ„Π°ΠΊΡ‚Ρ‹ Truffle
ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° ΠΈΠ· Truffle Π² тСстовой сСти Rinkeby
ΠŸΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ° ΡƒΠ·Π»Π° Geth для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Rinkeby
Бинхронизация ΡƒΠ·Π»Π°
Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚ΠΎΠ²
ПополнСниС Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π° Rinkeby эфиром
Запуск ΠΌΠΈΠ³Ρ€Π°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° Π² ΡΠ΅Ρ‚ΡŒ Rinkeby
ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π΅ Π² сСти Rinkeby
Консоль Truffle для сСти Rinkeby
Π‘ΠΎΠ»Π΅Π΅ простой способ Π²Ρ‹Π·ΠΎΠ²Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Node.js
ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ срСдств ΠΌΠ΅ΠΆΠ΄Ρƒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°ΠΌΠΈ Π² консоли Truffle для Rinkby
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 10. Π”Π΅Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Ethereum SwarmКак Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ethereum Swarm
Установка ΠΈ запуск Swarm
ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌΠΈ
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ„Π°ΠΉΠ»Π° Π² Ethereum Swarm
Π§Ρ‚Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠΈΠ· Ethereum Swarm
ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ манифСста Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π°
Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² с ΠΏΠΎΠ΄ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°ΠΌΠΈ
Π§Ρ‚Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° ΠΈΠ· Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°
ИспользованиС ΠΏΡƒΠ±Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ шлюза Swarm
ΠžΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊ Swarm ΠΈΠ· скриптов Node.js
ΠœΠΎΠ΄ΡƒΠ»ΡŒ Perl Net::Ethereum::Swarm
Установка модуля Net::Ethereum::Swarm
Π—Π°ΠΏΠΈΡΡŒ ΠΈ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ…
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 11. Π€Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ Web3.py для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с Ethereum Π½Π° PythonУстановка Web3.py
ОбновлСниС ΠΈ установка Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΏΠ°ΠΊΠ΅Ρ‚ΠΎΠ²
Установка модуля easysolc
ΠŸΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Web3.py
ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρƒ
Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ адрСса ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° ΠΈ abi Π² Ρ„Π°ΠΉΠ»Π΅
Запуск скрипта ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π§Ρ‚Π΅Π½ΠΈΠ΅ адрСса ΠΈ abi ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π° ΠΈΠ· Ρ„Π°ΠΉΠ»Π° JSON
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΊ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Ρƒ
Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Π’Ρ‹Π·ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π°
Truffle ΠΈ Web3.py
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

Π£Ρ€ΠΎΠΊ 12. ΠžΡ€Π°ΠΊΡƒΠ»Ρ‹ΠœΠΎΠΆΠ΅Ρ‚ Π»ΠΈ смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΈΠ· внСшнСго ΠΌΠΈΡ€Π°
ΠžΡ€Π°ΠΊΡƒΠ»Ρ‹ ΠΊΠ°ΠΊ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ посрСдники Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½Π°
Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ Π΄Π°Π½Π½Ρ‹Ρ…
Код для прСдставлСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· источника
ΠžΡ€Π°ΠΊΡƒΠ» для записи ΠΎΠ±ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ курса Π² Π±Π»ΠΎΠΊΡ‡Π΅ΠΉΠ½
ΠšΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚ USDRateOracle
ОбновлСниС ΠΎΠ±ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ курса Π² смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π΅
ИспользованиС ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° Web Socket
ОТиданиС события RateUpdate
ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° события RateUpdate
Π˜Π½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ обновлСния Π΄Π°Π½Π½Ρ‹Ρ… Π² смарт-ΠΊΠΎΠ½Ρ‚Ρ€Π°ΠΊΡ‚Π΅
Π˜Ρ‚ΠΎΠ³ΠΈ ΡƒΡ€ΠΎΠΊΠ°

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

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ