Smart Contracts

НачалоSmart Contracts

smart contracts blockchainСмарт договорите или както те се наричат — умните договори, влязоха в употреба заедно с блокчейн технологията и криптовалутите. За много хора, те все още остават мистерия и какво се крие зад това загадъчно и обещаващо явление — на кого са необходими те, как са създадени и къде се използват.

Какво е смарт договор?

Смарт-договорът идва от английската дума smart contract, което се превежда като “умен договор”. Това е самоизпълняем компютърен код, който се записва в блокчейн — децентрализирана верига от блокове, съхранявани на множество компютри. Той дава възможност за обмяна на активи — пари, акции и други видове собственост директно, без участието на трети лица.

В договора са посочени всички условия на сделката и ако участниците ги изпълнят, автоматично получават необходимото.

Ако разгледаме смарт-договорите с прости думи, то представете си, че продавате някакво жилище и имате купувач, който е готов да го закупи. В стандартната ситуация (без употреба на смарт-договор), ако взаимно си нямате доверие, трябва да привлечете посредници, като адвокат, нотариус, финансови институции, за да извършите сделката.

Трябва да се събират един куп документи, да се редите на опашки и да ги заверите пред нотариус. Всички проверки може да отнемат значителен период от време, а освен това за услугите на посредниците е необходимо още и да се плаща.

В случая със смарт-договора има само — купувач, продавач и компютърен алгоритъм. Програмата самостоятелно сверява изпълнени ли са всички условия по сделката от двете страни и ако да, автоматично разпределя активите. На купувача се прехвърлят недвижимите имоти, а на продавача парите. Това, разбира се е идеалният вариант, от който съвременния свят е още далеч.

В това се крие едно от големите предимства — смарт договорът за блокчейн изключва от процеса посредниците, и максимално оптимизира процеса. Изразходваните усилия са минимални, времето спестено, а човешкият фактор е изключен.

Умният договор проверява всичко самостоятелно и сам се изпълнява

Малко история

Не може да се каже, че умните договори са се появили заедно с криптовалутите през последните 9 години. Идеята витаела във въздуха още през 90-те години на миналия век. Първо тя е описана от известният американски учен и криптограф Ник Сабо. По-специално, по дефиниция, умният договор — това е “електронен протокол за пренос на данни, който осигурява изпълнението на условията по договора от всички страни

Обаче среда, в която умните договори биха могли да съществуват, по това време не е имало. Но описаната идея чакаше своя час. И той вече дойде — през 2008 г. с появата на блокчейн технологията и първата криптовалута биткоин.

Всичко е добре, но възможностите на блокчейн биткоина за създаване на смарт договори са много ограничени. Върху него може да се програмират най-простите алгоритми, но разработчиците продължават да експериментират по-нататък.

И така се появява платформата Ethereum, създадена от Виталиком Бутерин от нулата, в която умните договори вече са успели да се представят в целия си блясък. У разработчиците се появи възможност за създаване на приложения, без да започват собствен блокчейн. Всичко това е благодарение на факта, че един умен договор в Ethereum е написан на тюринг-пълен език, докато в мрежата на биткоин липсва пълнотата на Тюринг.

Как работят смарт-договорите?

Смарт договорът и блокчейн са неразделно свързани. В края на краищата, компютърният алгоритъм трябва да бъде записан някъде и за тази цел се използва така наречената децентрализирана верига от блокове blockchain.

Смарт договорът е:

  • ясно определени условия, при постигането на които той ще бъде изпълнен;
  • цифрови подписи на участниците по договора;
  • достъп до предмета на договора — или иначе казано, към стоки или услугите, за които става въпрос.

Смарт-договорът може да:

  • следи, изпълнени ли са всички условия, определени в него;
  • самостоятелно въз основа на по-горното той взема решения.

Вземане на решение от умния договор:

  • завършва сделката, разпределя активите между участниците;

или

  • ако условията не са изпълнени, се налагат санкции, глоби. Също така, при необходимост може автоматично да се затвори достъпа до активите.

Активира се смарт-договора и започва изпълнение на програмираните в него действия с помощта на транзакции, изпратени от портфейла на потребителя, или съобщения от друг умен договор, изпратени му директно през мрежата. За да се активират умните договори Etherium, е необходимо количество газ (Gas), който се заплаща за транзакциите в мрежата на Етериум.

Смарт договорът и външния свят — оракулите

Кодът на смарт договорите е в блокчейн и тази среда е ограничена. Въпреки това, за да могат те да вземат решения да се изплъняват или не, е необходимо да се свържат с околния външен свят и да получат от него необходимата информация. Например, данните за промените в цените, температурата, статуса на плащане. За това бяха измислени и оракулите.

Те свързват smart contract с различни източници на данни извън блокчейна. За пример, умните договори Ethereum често използват оракула Oraclize.

Предимства на умните договори

Сред основните предимства на умните договори се открояват следните:

  • Те са неизменяеми и добре защитени от неоторизирана промяна или загуба на данни, което е гарантирано с помощта на децентрализираното съхранение.
  • Прозрачност — всички заинтересовани потребители могат да наблюдават развитието на събитията. При това, самите участници в процеса запазват неприкосновеността си.
  • Те са самопроверяеми и самоизпълняеми.
  • Смарт договорите е невъзможно да бъдат подкупени — тук действат ясни математически алгоритми.
  • Намаляване на разходите, чрез премахване процеса на посредниците.
  • Висока скорост, благодарение на автоматизацията — това, което днес отнема дни и дори седмици, благодарение на договора може да бъде изпълнено буквално в рамките на няколко минути.
  • Стандартизация — колкото повече, толкова повече възможности се появяват в смарт-договорите, от които можете да изберете такива за вашите нужди.

Уязвимости в смарт договорите

Умните договори все още са в своята експериментална фаза на развитие. Но при тяхното създаване, предвиждането на всичките възможни грешки е почти нереално. Във всеки случай такива все още има. А критичните грешки, често могат да доведат до непоправими последици.

Спомнете си първият децентрализиран рисков фонд the DAO в Етериум. В резултат на атаката с помощта на откритите от хакерите уязвимости, фондът загуби повече от 60 милиона долара — те постепенно бяха прехвърлени по сметката на нападателя.

Сред другите недостатъци на умните договори, може да се отбележат следните моменти:

  • От правното регулиране на тази сфера, към момента остава да се желае много
  • Много работа предстои и по усъвършенстването на програмите-оракули.
  • Подобрение изисква и самата блокчейн технология и по-специално, както никога актуални са въпросите за скоростта на обработка на транзакциите и мащабируемостта.
  • Липсата на гъвкавост — всички условия са ясно предварително програмирани.

В отделни случаи, обявеното по-рано предимство във вид на неизменяемост може да се превърне в недостатък. Например, ако бъде допусната грешка при въвеждане на данните, тяхната поправка не е възможна.

  • Вероятна е и възможността, че данните могат да бъдат подменени от външен източник на информация.

Предотвратява широкото им разпространение и фактът, че разплащането е възможно само с криптовалута. А това по много причини за сериозния бизнес е неудобно. Най-малкото, поради това, статусът на криптовалутите в повечето страни все още виси във въздуха и съответно сделките с тях се считат за високо-рискови..

Разбира се, умните договори все още не могат да станат популярни, поради незнанието не само от страна на масите, какво представляват те, но и от хората, на които тези алгоритми могат значително да опростят процеса на правене на нещата.

Много са чували израза “умен договор” и веднага включват въображението си и си представят едва ли не всемогъща програма, решаваща наболелите им проблеми. Въпреки, че в действителност, смарт договорите предимно изпълняват доста прозаични задачи.

Как да създадем умен договор?

За начало трябва добре да се разбира езика на програмирането. Ако нямате такива познания, трябва да привличете трети лица. След това, изберете блокчейн, на който той ще започне да функционира.

Програмирането на смарт-договори в мрежата на Етериум се случва на езика Solidity. В качеството на онлайн редактор и компилатор се използва Remix. Съветваме готовият код първо да се изпробва в тестова мрежа и да се открият възможни грешки.

В простите договори действа “if-then-else”, “when-do” логиката. Често действието на смарт-договора се обяснява по примера на търговския автомат. Вие пускате един долар и след това пристъпвате към следващото действие — имате възможност да изберете продукт. Когато изборът бъде направен, се извършва следващо действие — вие получавате желаното.

Пример за смарт-договор на етериум може да се намери на etherscan.io. По-точно, тук са изложени хиляди пакети с изходен код, и във всеки може детайлно да се проучи логиката на създаване на кода. Ето извадка от един прост пример.

През есента на 2017 година стартира проект, предназначен максимално да опрости създаването на смарт-договори за хора, които нямат познания в програмирането. Платформата се нарича Etherparty. В момента тя функционира в бета-версия. Разработчиците обещават, че с помощта на този инструмент, всеки самостоятелно с нулеви познания в областта ще може да създава на всеки съвместим блокчейн умни договори.

Видове умни договори

Смарт-договорите днес могат да се разделят на няколко вида. Всичко зависи от това, колко са автоматизирани всички етапи при тяхното изпълнение. По-специално:

  • договори, в които всички стадии са напълно описани в програмния код;
  • основната част се записва на хартия и се програмира само например етапа на плащанията.

Съществуват и умни договори, които освен, че са написани в блокчейн, имат и хартиен носител за вярност. Най-голямо разпространение в момента имат договорите, в които е автоматизиран само един от етапите.

Блокчейн-мрежата и криптовалутите със смарт-договори

Възможностите на смарт-договора се различават в зависимост от блокчейна, използван за тяхното съхранение. Както бе споменато и по-горе, умните договори в най-простия им образец могат да се създадат на блокчейн биткоин. Най-популярната в момента платформа за работа с тези договори — Ethereum.

Сред другите платформи са налични следните:

  • NEO — тази платформа често е наричана китайския Етер, тъй като принципите на двете системи до голяма степен са сходни. Но основното предимство на NЕО се състои в това, че тук се поддържат такива популярни езици за програмиране, като Python, Go, Java.
  • EOS — той е с акцент върху асинхронните умни договори, които могат да се изпълняват паралелно един с друг, което на свой ред увеличава скоростта за обработка на данните.
  • NXT —платформа, където можете да изберете един от готовите договори. Броят им все още не е много голям. Създаването на собствена възможност няма.
  • Cardano – платформата не се смята за конкурент на Етериум, тъй като се позиционира от разработчиците, като блокчейн от трето поколение, докато те назовават Ethereum, като блокчейном от второ поколение.
  • Sawtooth — представен в края на януари 2018 г, от блокчейн-консорциума Hyperledger, представляващ разпределен регистър с ограничен достъп. Поддържа смарт-договори на езика Solidity.

Независимо от това, най-често срещаната криптовалута за смарт-договори в момента — това е Етериум. Ще успее ли друг да го измести от цифровия Олимп – това времето ще го покаже.

Използване на смарт договори

Ще очертаем основните области, в които може успешно да се внедрят умните договори. По-специално това са:

  • логистиката;
  • одитът;
  • застраховките;
  • кредитирането;
  • здравеопазването;
  • счетоводството;
  • идентификация на личности;
  • регистрация на права;
  • игровата индустрия;
  • избори и всякакви други гласувания;
  • краудфандинг и много други.

Избирателен процес

Провеждане на гласуване, с помощта на умни договори — днес такава възможност се обмисля от много страни, включително в Украйна, Русия, Австралия. Това изключва всякаква фалшификация и осигурява максимална честност на процеса. А също решава и въпросите с ниската избирателна активност — тъй като много хора просто нямат желание да отидат някъде, а понякога се редят на опашка, за да дадат своя глас.

Кредитиране

Човекът взема кредити за апартамент, кола или телевизор и месечно е длъжен да плаща X сума на банката. Ако кредитополучателят е просрочил плащането, с помощта на смарт-договора, вратите на автомобила или на жилището ще бъдат блокирани, а телевизора ще престане да се включва.

Хазартни игри

Да предположим, че няколко души правят залог за изхода на даден мач. Средствата се издърпват от техните сметки и се съхраняват в блокчейн. Мачът завършва, договорът сверява резултата и изпраща парите на този, който е направил правилното предположение. В случай на равенство, средствата се връщат обратно към своите собственици.

Жилища под наем

Да вземем друг пример за сферата на жилища под наем. Взаимодействието между наемодателя и наемателя могат да се уредят с помощта на смарт договор. Умният договор ще превежда на собственика на недвижимия имот парите, когато наемателят получи ключовете. Ако заплащането за някой месец бъде просрочено, входната врата на отдаденото под наем помещение ще се заключи. Естествено в случай, че “умната” ключалка е с достъп до интернет.

ICO

И ако в повечето от тези области, приложението на умните договори е само в процес на планиране или тостове, то в областта на първичното предлагане на токени (ICO), те вече се използват. С тяхна помощ хиляди проекти събират пари за своето развитие. Смарт-договорът за ICO например, може да бъде проектиран по такъв начин, че ако кампанията по набиране на средства се провали, парите ще бъдат върнати на вложителите.

Смарт договор — един пример от реалния живот

По сложност, смарт-договорите са различни. Едни представляват най-простите алгоритми, а други — сложни модели, които изискват значително повече изчисления. Като пример, на първо място може да се дадат мултиподписите — multisig. Да Предположим, че страните по договора помежду си нямат доверие. Те ги “замразяват” с помощта на умен-договор за определена сума пари. На по-късен етап, тяхното похарчване ще е възможно само в случай, ако подписите си сложат повече от половината от участниците.

Повече конкретика!

Прилагането на смарт-договор в недвижимите имоти — това вече може да се счита за сложен вариант. За първи път в света, апартамент по подобен начин е бил продаден в Украйна, на десния бряг Киев. За сделката е използван смарт-договор Етериум, както и децентрализирания американски маркетплейс Propy. Купувачът станал съветник на това жилище, както и основател на изданието TechCrunch Майкъл Арингтън. Плащането се осъществи в криптовалутата Етериум. На този етап от развитието на смарт-договорите, процесът изглежда така:

  1. Купувачът и продавачът са сключили договор, и купувача е внесъл депозит, необходим за заплащане на жилището.
  2. Тъй като участниците в сделката са в различни краища на света, локален представител на купувача е представил пълномощно от името му пред местния нотариус.
  3. Продавачът се среща с представителя на купувача при нотариус за подписване на документи.
  4. Извършва се пререгистрация на правата на собственост на купувача — данните са въведени в регистъра.
  5. След като смарт-договорът получи данните от регистъра, той отключва парите и те се прехвърлят на продавача.

Както виждаме, процесът е трудно да се нарече опростен. В бъдеще обаче се обещава максимална автоматизация.

Ето как изглежда умният-договор на сделка между Githab компании и по-точно частта от договора, където е описан процесът на подписване на участниците, а недвижимите имоти са замразени в очакване на приключване на процеса.

И така, с какво умният договор е по-добре от нотариуса ще попитате Вие. С много неща. Това упростява извършването на сделките и ги предпазва от фалшификации. По-долу в таблицата представяме сравнение на смарт-договорите с класическите договори.

Умните договори vs обичайните договори

Умни договори Традиционни договори
Самоизпълняемост Необходими посредници (нотариус, брокери, банки)
Автоматичен превод на парите Превод на пари на ръка
Минимални разходи Скъпо – заплащане на услуги от посредници
Условията в договора е невъзможно да се пренаписват — те се спазват стриктно Клаузите в договора могат да се изтълкуват в бъдеще по два начина. Несъответствията могат да доведе до необходимост от обръщение към съда.
Кодът е неподкупен закон На посредниците може да се дава подкуп

Смарт договорите – какви са перспективите?

Перспективите на смарт-договорите са наистина огромни. Те могат драстично да променят много области от живота: от недвижимите имоти до хазарта, застраховане, доставка на стоки, гласувания. Всичко това обаче е възможно само след като тяхната работа бъде многократно тествана и предвидима. Засега всичко е на етап експерименти.

Освен това, въвеждането на умни договори трябва да бъде плавно, защото масовото и рязкото им прилагане ще остави без работа огромен брой хора: регистратори, нотариуси, банкови служители.

Така както машините ще заменят работниците в производството, така в обозримо бъдеще новите технологии ще заместят живите хора в много професии. Това е само въпрос на време.

Експертите са уверени, че през 2018 г., както големите корпорации, така и цели държави ще признаят огромния потенциал, както на блокчейн технологията, така и на умните договори.