Czy smart contract jest kontraktem?

Dzięki temu, że smart contract umieszczony jest na łańcuchu bloków (blockchain), jedną z jego głównych cech jest niezmienialność. Aby w pełni wykorzystać potencjał blockchaina, warto brać tę cechę pod uwagę zastanawiając się jakiego rodzaju umowy chcemy konstruować jako smart contract.

Czego dowiesz się słuchając podcastu?

  • Jak wygląda blockchain w ujęciu prawnym i technologicznym?
  • Czym jest smart contract zapisany na blockchainie?
  • Do czego użył by smart contractu prawnik a do czego programista?

Sprawdź co sądzą na ten temat nasi eksperci.


Zapraszamy do wysłuchania podcastu

Dzień dobry, nazywam się Jakub Gołębiowski i witam was na falach podcastów PwC. Dzisiaj moimi gośćmi są Marta Gocoł z kancelarii PwC Legal. 

Marta Gocał: Witam Państwa. 

Jakub Gołębiowski: Hubert Chylik- deweloper. 

Hubert Chylik: Dzień dobry. 

JG: I Magdalena Czubaszek, która jest dyrektorem w dziale technologii dla sektora usług finansowych. 

Magdalena Czubaszek: Witam serdecznie. 

JG: W tym interdyscyplinarnym gronie pochylimy się dzisiaj nad zagadnieniami prawnymi i technologicznymi. Mowa oczywiście o blockchain i smart contract. I może przejdźmy od razu do rzeczy, czy moglibyście mi powiedzieć czym właściwie jest smart contract? To pojęcie pojawia się czasem w przestrzeni publicznej, ale rzadko ono jest definiowane.  

HCH: W dużym uproszczeniu smart contract jest programem komputerowym. Algorytmem, który wykonuje to, co strony uzgodniły między sobą. To taki egzekutor, który gdy zobaczy, że spełniły się określone wcześniej warunki, to automatycznie zrealizuje zaprogramowane działania.

MG: To jest takie zdanie, które mówi „Jeżeli coś, to coś”. Ja jako prawnik mogę sobie wyobrazić taki przykład – kluczyki uruchamia silnik samochodu, o ile została zapłacona rata leasingu. Dlatego czasem mówimy potocznie, że to jest samo wykonalny kontrakt, kontrakt, który się sam wykonuje. 

HCH: No tak, tylko akurat ten przykład, który wymieniłeś, to ja mogę sobie zaprogramować w javie i wcale nie potrzebuje do tego smart kontraktów. 

MG: Tak, tylko nie zapominajmy o tym, że cechą smart contractu ma być niezmienialność i właśnie dlatego jest umieszczony na łańcuchu bloków w blockchainie. To ważne, bo pokazuje jakiego charakteru umowy warto konstruować jako smart kontrakty, żeby skorzystać z tych zalet, a jakich po prostu nie ma sensu i wtedy rzeczywiście, tak jak powiedziałeś można je pisać, programować w javie. 

HCH: Tak, to jest bardzo trafna uwaga. Wszystkie bloki w ramach łańcucha są ze sobą powiązane, co gwarantuje jego transparentność i bezpieczeństwo danych zapisywanych przez smart contract. Pamiętajmy też, że łańcuch bloków jest zbudowany przez dużą liczbę najczęściej nie powiązanych ze sobą użytkowników. Ci użytkownicy posiadają konta, które umożliwiają im dostęp do tego łańcucha. Np. takim kontem w najbardziej popularnych blockchainach będzie portfel kryptowalutowy. 

JG: To jest bardzo ciekawe co mówicie, bo złapaliśmy taką technologiczną perspektywę na początku. To teraz zwracam się do Marty, jak to wygląda w tym ujęciu prawnym, bo to wydaje się, że nie jest takie proste? 

MG: To jest bardzo nie prosty temat pod kątem prawnym, ale nawiązując właśnie do tego portfela kryptowalut i blockchaina. Ja jako prawnik mogę np. sobie wyobrazić może nie najczęściej spotykany przykład, czy taki, o którym się nie najczęściej mówi – powiązanie właśnie z tą kryptowalutą.  Tak jak ja bym sobie to wyobrażała, taki zautomatyzowany escrow. Co to jest escrow? Może krótko, żeby wszyscy wiedzieli. Przykład z mojej pracy, jeżeli chcę sprzedać tobie spółkę i mówię, że spółka ma taki potencjał, dlatego tak ją wyceniłam, ale ty nie masz pewności, że moje obietnice i moje oszacowanie tej spółki jest na pewno wiarygodne, nie masz ochoty płacić mi o tyle więcej, opierając się na tej nadziei, że za kilka lat ta spółka będzie świetnie prosperowała. Więc najczęściej robi się tak, że mówisz dobra zapłacę ci tę podstawową cenę, ale tę górkę to ja ci zapłacę dopiero jak zobaczę za te trzy lata, że ta spółka rzeczywiście ma fajne osiągnięcia finansowe. Z kolei ja też nie muszę zaufać drugiej stronie tobie, że ty tą resztę pieniędzy będziesz mieć, że potem za trzy lata będę cię szukać po Karaibach i pytać się czy tą kwotę, którą miałeś mi zapłacić wciąż jeszcze masz w portfelu. I wtedy strony po prostu idą, zwracają się jedna i druga do banku, w banku zakładają konto takie escrow na którym lokują te pieniądze i mówią bankowi jakie są warunki ich wypłaty. Po trzech latach ja przychodzę do banku i mówię, pokazuje czarne na białym wszystkie te warunki, jeżeli one są spełnione bank nie ma wyjścia, z automatu wypłaca mi te pieniądze, które tam na mnie czekały. I teraz dla mnie to jest takie naturalne połączenie z tym co mówiliśmy o pewności blockchaina i o takiej warunkowości tego, że jeżeli coś, to coś na pewno, że możemy sobie wyobrazić, że nie musimy mieć banku, że blockchain i algorytm na tym blockchainie – ten smart contract zastąpi nam bank i będzie nam wypłacać te pieniądze. 

MC: Bardzo dobry przykład, ja myślę, że jeszcze warto zwrócić uwagę, że gdyby nie pozostałe cechy blockchaina, jak na przykład decentralizacja, to i tak pewnie nie zrezygnowalibyśmy z udziału banku, bo on jest takim najbardziej wiarygodnym finansowo podmiotem trzecim. A tymczasem tutaj nie potrzeba tego banku, dzięki temu, że blockchain jest niebywale bezpieczny i transparentny. Przychodzi mi na myśl jeszcze takie jedno taki pewny mankament ekonomiczny tego przykładu, który dyskwalifikuje jak na razie blockchaina, jako sposób zabezpieczenia wierzytelności. Po prostu nadal on jest bardzo niestabilny. Kryptowaluty w szalonym tempie tracą i zyskują na wartości. 

JG: Ok, to są bardzo cenne uwagi z tej ekonomiczno-bankowej perspektywy fachowca od sektora usług finansowych, ale wróćmy na chwilę do samego blockchaina. Tu zwracam się do Huberta, czy mógłbyś w kilku słowach powiedzieć czym właściwie jest blockchain, jakie są jego cechy, bo to jest wszystko bardzo ważne w kontekście tego o czym rozmawiamy. 

HCH: Tak, postaram się jak najprościej. Więc blockchain jest to taka rozproszona baza danych, na którą składają się chronologicznie ułożone bloki. Możemy to jeszcze bardziej uprościć i blockchain nazwać rejestrem, wtedy te pojedyncze bloki, każdy zawierający jakieś zdarzenia, będą elementami tego rejestru. Taki wspólny rejestr ma tysiące kopii, a kopie te są przechowywane na komputerach użytkowników, którzy z niego korzystają. Więc każdy wszędzie i o każdej porze ma dostęp do takiego rejestru. Zwróćcie uwagę na bezpieczeństwo takiego rozwiązania. W praktyce ciężko byłoby dokonać ataku na taką ilość komputerów jednocześnie. 

MC: Należałoby zatem szukać dla smart contractu raczej takich relacji prawnych, które mogą skorzystać na tym rejestrowaniu kolejnych zdarzeń i to jeszcze najlepiej w powiązaniu z przynoszeniem zasobów. 

MG: To ja się teraz wtrącę, bo z perspektywy prawnej, to aż trudno, żeby nie przyszło do głowy od razu porównanie z wekslem. Zresztą w ogóle jak patrzę na tę konstrukcję właśnie tego łańcuszka kolejnych zdarzeń, to najlepiej mi, żeby to sobie zobrazować tak fizycznie i sobie wyobrazić elektroniczny weksel. Weksel to tak faktycznie, normalnie, to jest papier, po prostu papier, który mówi o jakiejś pieniężnej wierzytelności. A ma zapłacić 100 zł i teraz na wekslu mogą się pojawiać potem kolejne zapisy. Zapisy, które mówią, że tą wierzytelność, którą A miało (100 zł) zapłacić do B, teraz B przekazuje weksel dalej i będzie musiało zapłacić 100 zł wobec C. A potem, jeżeli sobie przekazują dalej i zapisują to na tym wekslu…To potem będzie musiało A zapłacić do D, potem do E, F, G itd. aż wreszcie na sam koniec przyjdzie Z do A i zażąda 100 zł. I wtedy co robi A, A bierze ten papierek, ten weksel i sprawdza czy z tyłu na wekslu jest napisane nieprzerwany łańcuszek, czy wpis ten ostatni Z łączy się z poprzednim, a ten z poprzednim, a ten jeszcze z poprzednim, aż dojdzie do B i jeśli powstanie taki prawidłowy, taki nieprzerwany łańcuszek, no to wówczas A nie ma wyjścia, musi zapłacić Z 100 zł i to powinno się dziać z automatu. Czyli dokładnie tak jak działa łańcuszek na blockchainie, tak. Zresztą konstrukcja blockchaina sprawdza się bardziej, generalnie. Bo to w ogóle będzie dobrze działało wszędzie tam, gdzie mamy łańcuszek transakcji. Czyli dzięki blockchainowi np. możemy nabywać dobra, dla których będzie ważne jaki mają życiorys. To znaczy ważne będzie udowodnienie jego pochodzenia. Czy to będzie pochodzenie ekologiczne, czy to będzie chodziło o pochodzenie etyczne, czy po prostu rzut z określonego miejsca, takie geograficzne. To wskazanie tej takiej całej ścieżki od pierwotnego źródła, aż do tego ostatecznego nabywcy, będzie możliwe dzięki łańcuszkowi na blockchainie. 

JG: Hubercie, chciałbyś coś do tego dodać? Bo ten przykład jest taki bardzo plastyczny, z tym wekslem wędrującym przez cały alfabet, bo tu przeszliśmy od A, aż do Z. Mamy taką ciekawą perspektywę prawną, ale czy jeszcze byś coś dorzucił jako deweloper?

HC: Tak, dobrze, że Marta Wspomniała o łańcuchach transakcji, bo mi skojarzyło się to od razu z łańcuchem dostaw. Nie wiem, czy wiecie, ale Wallmart wprowadził obowiązek, aby dostawcy żywności rejestrowali je w systemie opartym właśnie na blockchainie. Więc każda zmiana w życiorysie dóbr czy produktów, jak np. ich transport albo obróbka zostanie odnotowana w tym systemie. Myślę, że w ogóle to mogłoby znaleźć zastosowanie również w branży motoryzacyjnej, bo wyobraźcie sobie, że kupując samochód mielibyście możliwość poznania historii produkcji i napraw każdej z jego części. No to by było wtedy coś, bo skończyłyby się problemy z cofniętymi licznikami. 

JG: No właściwie przykład jest świetny, bo takich problemów z wiarygodnością w transakcjach na rynku motoryzacyjnym jest cały szereg i to budzi spore emocje. Bardzo fajny i taki życiowy przykład. Czy to jednak oznacza, że kupując takie dobro, jak to ładnie ujęliście z życiorysem, z jakąś zakodowaną historią, zawieramy umowy na tym łańcuchu bloków. Czy to jest tak, że właśnie wtedy pojawia nam się ten smart contract?

HC: To nawet nie jest, bądź nie musi być zawieranie umów, w powszechnym znaczeniu tego sformułowania, bo tak naprawdę jest to tylko rejestracja zdarzeń. Np. rejestracja kurczaków bądź zmiana temperatury w chłodni, tylko technicznie zrealizowana, bo przez smart kontrakty. 

MG: Ale oczywiście smart contract może być umową, w sensie prawnym. Potrzeba do tego tylko świadomych oświadczeń przynajmniej dwóch podmiotów, że one chcą zawrzeć tą umowę o określonej treści. A więc oni muszą oświadczyć, te strony, że właśnie taką treść umowy chcą mieć między sobą. A treść, to może być kod zamieszczony na łańcuchu bloków. Czyli to jest to jak ten konkretny blockchain ma działać, ta umowa między nimi. Natomiast dyspozycje wtedy, czyli wywołanie funkcji na łańcuchu bloków będzie oświadczeniem woli strony umowy i ta dyspozycja będzie generować ich realizację. Czyli generować realizację umowy określony kod.

JG: Widzę, że Magda ma tu jakieś wątpliwości. 

MC: Tak, bo teraz jak Marta mówiła, to zastanawiam się zastanawiać ok, tylko jak zdobyć takie oświadczenie woli? 

JG: To może Hubert jako deweloper nas wspomoże w tej kwestii. 

HC: No to będzie najprostsze wywołanie funkcji na blockchainie w tym przypadku. 

MC: Tak, tylko, że jeżeli chcemy przyjąć, że mamy oświadczenia woli i że kod smart contractu jest rzeczywiście umową, w prawnym sensie. Czyli tym zgodnym oświadczeniem woli co najmniej dwóch podmiotów. No to zaczynają się dopiero schody i pojawiają się trudne pytania prawne. 

JG: A takie lubimy najbardziej w tej audycji. 

MG: Prawnicy też je bardzo lubią. Więc pierwsze pytanie jest takie, czy to strony pisały kod? Skoro to jest ich świadome oświadczenie? I czy strony potrafią przeczytać i zrozumieć ten kod? Ja się przyznam od razu, że nie potrafię w języku solidity, chyba tak, w którym się pisze blockchaina. No więc w konsekwencji czy kod rzeczywiście jest ich oświadczeniem woli? Czy rzeczywiście jest ich świadomie zawartą umową? No wkraczamy na trochę nieznane lądy dla prawa i zdania są bardzo podzielone co do tego co faktycznie jest treścią umowy. 

JG: Znów widzę jakieś pytanie w oczach Magdy. I znów do niej się w takim razie zwrócę. Po tym co powiedziałaś, widzę, że Magda chciałaby jeszcze o coś zapytać. 

MC: To znaczy może nawet nie zapytać, tylko przyszło mi na myśl, że jak Marta powiedziała, że wkraczamy na te nieznane lądy, no to chyba taka dyskusja, która teraz wszędzie i w Internecie, wśród nawet nas ekspertów od prawa czy technologii, zadajemy sobie takie pytanie, to jak to będzie w przyszłości? Czy my naprawdę potrzebujemy tego prawa, definiowania i regulowania np. smart kontraktów. Ponieważ to jest taka już osobna kategoria, za która prawo po prostu nie nadąża lub będzie musiała powstać, a może nawet już powstaje alternatywna rzeczywistość prawna. To tak trochę do Marty tutaj. 

JG: Marta, to jest pytanie trudne dla prawnika, przychodzi ci stanąć w obronie całego systemu prawnego. 

MG: Odpowiedzialność prawie że przytłacza, ale tak pojawiają się takie głosy, że kod smart contractu jest prawem samym w sobie, mówi się cod is law czasami. No i zawsze gdzieś padnie, to już powszechnie, że prawo tak naprawdę bardziej utrudnia funkcjonowanie innowacji, niż je ułatwia i na pewno są takie obszary i z tym muszę się zgodzić, które po prostu lepiej, żeby pozostały poza regulacją prawną, ale jako prawnik nie mogę się powstrzymać i muszę to powiedzieć, że bardzo często nie zdajemy sobie sprawy jak właśnie polegamy na tym prawie i to prawo nam pomaga egzekwować należne nam pieniądze. Pozwala nam nie przyjąć byle jak wykonanej usługi, albo pozwala nam się uchylić od wykonania umowy przez nas, gdy argumentujemy, że w ogóle nie świadomie zobowiązaliśmy się do czegoś do czego sądziliśmy, że się nie zobowiązujemy. Problem ze smart kontraktami jest taki, że nawet jeśli kod okazałby się ogromnie niesprawiedliwy, to jeżeli uznamy, że cod is law, to nie bardzo jest co z tym zrobić. 

JG: A może pomoże nam w tej sytuacji Hubert jako deweloper?

HC: Bardzo chętnie, bo akurat przypadek niesprawiedliwości już wystąpił. Jedna z platform inwestycyjnych THE DAO, która została zrealizowana w postaci właśnie smart contractu na blockchainie, została zaatakowana w cudzysłowie przez hakera, w cudzysłowie, bo haker wykorzystał błąd programistów kontraktu, a nie sieci wewnętrznie. Więc w wyniku tego ataku środki o dużej wielkości w przeciągu kilkunastu dni miały trafić do hakera. No w związku z tym uczestnicy sieci blockchain podzielili się na dwie grupy. Pierwsza z nich to ta, która postanowiła się sprzeciwić temu co dyktował kod, właśnie dlatego, że to co się wydarzyło było niesprawiedliwe, przecież doszło do kradzieży. Natomiast druga grupa kwestionowała, czy ten atak w ogóle był kradzieżą, ponieważ skoro atakujący wykorzystał furtkę wynikającą z błędu kontraktu, a kontrakt ma być niezmienny, to próba jego zmiany jest sprzeczna w ogóle z założeniem blockchaina. 

JG: No właśnie dyskusja nam się tutaj rozwija, ale ten odcinek musi się już niestety skończyć, ale właściwie te pytania, które się dzisiaj pojawiły w tej interdyscyplinarnej dyskusji powodują, że z pewnością wrócimy jeszcze w kolejnych odcinkach i do smart kontraktów i do blockchaina. Tymczasem za szereg fantastycznych uwag i przykładów bardzo dziękuję Marcie, Magdzie i Hubertowi. Wspaniale się z wami dyskutowało. No i oczywiście już możemy powiedzieć, że ta dyskusja nie zostanie w tym miejscu przerwana, tylko planujemy kolejne odcinki w ramach tego cyklu. 

MC, MG, HC: Tak jest, dziękujemy i zapraszamy bardzo.

Więcej podcastów PwC znajdziesz na stronie pwc.pl/podcasty oraz w aplikacjach
SpotifyiTunes i Google Music.

 

Nasi eksperci:

Marta Gocał, Counsel, radca prawny, PwC Legal
Marta Gocał

Counsel, radca prawny, PwC Legal

Magdalena Czubaszek, Senior Manager, CTech, PwC Polska
Magdalena Czubaszek

Senior Manager, CTech, PwC Polska

Huber Chylik Senior Consultant, CTech, PwC Polska
Huber Chylik

Senior Consultant, CTech, PwC Polska

Skontaktuj się z nami

Obserwuj nas