04.02.2021

Smart contracty – wprowadzenie

W ramach niniejszego cyklu artykułów będziemy analizować zastosowanie „inteligentnych kontraktów (ang. smart contracts) w obrocie gospodarczym. Poruszymy tematykę Lex cryptographia, DAO (Digital Autonomous Organization), Governence Methods czy Blockchain of Things. Poniższy artykuł ma na celu natomiast przedstawienie podstawowych zagadnień interpretacyjnych w kontekście funkcjonowania inteligentnych kontraktów.

Wraz z rosnącą popularnością kryptowalut i innych systemów opartych na technologii blockchain znacząco wzrosło zainteresowanie koncepcją przekształcania klasycznych umów pisanych językiem prawniczym w kod komputerowy. Nowe rozwiązania w postaci zaawansowanych protokołów blockchain, takich jak Ethereum, zapewniają niezbędne narzędzia pozwalające stronom, przynajmniej w teorii, na zwarcie wiążącego stosunku zobowiązaniowego, którego forma, całkowicie lub częściowo, byłaby zapisana za pomocą kodu komputerowego i używała stosownego oprogramowania do zarządzania samą realizacją umowy.

Trudno jest sformułować precyzyjną definicję inteligentnych kontraktów. Warto zatem zacząć od określenia, co jest w nich takiego, co mogłoby być z perspektywy prawnej nowatorskie lub wyróżniające. Za taką cechę charakterystyczną można uznać automatyzm – inteligentny kontrakt jest wykonywany, przynajmniej częściowo, automatycznie i bez potrzeby, a w niektórych przypadkach bez możliwości, interwencji człowieka. Wymaga to zapisania warunków kontraktu w formie czytelnej dla komputera, tj. w postaci kodu. Wiele inteligentnych kontraktów jest osadzonych w systemie sieciowym, który wykonuje i egzekwuje ich wykonanie przy użyciu tych samych technik (uwierzytelnianie kryptograficzne, rozproszone księgi, decentralizacja, konsensus), jak ma to miejsce w przypadku kryptowalut (więcej o tym tutaj).

Chociaż termin „inteligentny kontrakt” zachęca prawników do zadawania pytań dotyczących prawa umów, w rzeczywistości inteligentne kontrakty mogą nie być ani szczególnie inteligentne ani samoistnie przeznaczone do wykorzystania jako umowa w prawnym znaczeniu tego słowa. Inteligentny kontrakt jest w zasadzie zaawansowaną formą warunkowego stwierdzenia „jeśli – to” zapisanego w kodzie komputerowym.

Czy inteligentne kontrakty powinny być traktowane jako umowy w rozumieniu prawa?

Czasami można spotkać się ze stanowiskiem, że automatyzm inteligentnych kontraktów i mechanistyczny sposób działania kodu komputerowego oznacza, że nie ma potrzeby, aby strona zobowiązywała się do wykonania lub odwoływała się do przepisów prawa w celu wyegzekwowania zobowiązania od swojego kontrahenta. Kod po prostu zrobi to, do czego został zaprogramowany.

Nie jest jednak tak, że „inteligentne kontrakty” funkcjonują w próżni legislacyjnej i jako takie są zasadniczo różne od klasycznych umów. W ujęciu prawnym „inteligentne kontrakty” nie są aż tak rewolucyjne, na jakie są kreowane, a przy odpowiedniej wykładni mieszczą się w aktualnych ramach koncepcji prawnych i na chwilę obecną nie wymagają wdrażania nowych, rewolucyjnych koncepcji autonomicznego prawa cyberprzestrzeni. Wydaje się, natomiast że zastosowanie „inteligentnych kontraktów” może znacząco przyczynić się do zapobiegania celowemu niewykonaniu umowy przez stronę i eliminować lub ograniczać spory dotyczące stanu faktycznego czy interpretacji jej warunków.

Zawsze jednak będzie istniało ryzyko, że na wykonanie umowy wpłynie zdarzenie zewnętrzne mogące mieć wpływ na kod, tj. np. awaria systemu lub funkcjonowanie kodu w sposób nieoczekiwany lub niezamierzony. W takich przypadkach powinna istnieć jakaś możliwość rozstrzygania powstałych sporów. Strony mogą wyraźnie uzgodnić, że inteligentny kontrakt nie jest prawnie wiążący, tak jak w przypadku umowy, ale wydaje się, że byłoby to nieuzasadnione w kontekście prawnym. Co do zasady zatem i z zastrzeżeniem punktów przedstawionych poniżej, do inteligentnych umów mają zastosowanie powszechnie obowiązujące przepisy prawa.

W polskim prawie umową jest zgodne porozumienie dwóch lub więcej stron, określające ich wzajemne prawa i obowiązki. Do zawarcia umowy dochodzi przez złożenie zgodnych oświadczeń woli, skutkujących powstaniem, uchyleniem lub zmianą uprawnień i obowiązków wzajemnych. Umowy są w efekcie co najmniej dwustronnymi czynnościami prawnymi.

Nie ma więc powodu, dla którego normy prawne nie miałyby mieć zastosowania tylko dlatego, że potencjalna umowa jest inteligentnym kontraktem. Kwestia dotycząca tego, czy i w jakich okolicznościach inteligentny kontrakt może powodować powstanie wiążących zobowiązań, zależy od tego, czy i w jakich okolicznościach strony inteligentnego kontraktu (1) są w stanie odtworzyć warunki opisujące ich wzajemne prawa i obowiązki oraz (2) doszło do skutecznego złożenia oświadczenia woli. Biorąc pod uwagę, że termin „inteligentne kontrakty” obejmuje wiele różnych technologii i zastosowań, z których nie wszystkie mogą być indywidualnie rozpatrywane w niniejszym artykule, rozważamy tę kwestię poprzez odniesienie do cechy automatyczności wspomnianej powyżej.

Możliwości związane z wykorzystaniem oprogramowania w umowach

Dokładna rola odgrywana przez oprogramowanie w inteligentnym kontrakcie może być zatem różna. Filip i Basia mogą zawrzeć umowę na tej podstawie, że ich wzajemne relacje są zdefiniowane przez kod i że przestrzegają zachowania kodu niezależnie od tego, co on robi. Mogą też zawrzeć umowę na tej podstawie, że kod będzie wykorzystywany do wdrożenia ich umowy, ale nie do jej zdefiniowania. Mogą także zawrzeć umowę w hybrydowej formie, gdzie niektóre zobowiązania są zdefiniowane przez kod, inne jedynie wdrożone przez kod, a być może jeszcze inne w ogóle nie angażują kodu. Istnieje całe spektrum możliwości.

Jednak w każdym przypadku kluczowym pytaniem jest to, co Filip i Basia faktycznie zamierzali osiągnąć, a w szczególności, czy zamierzali być związani zachowaniem kodu? Jest to klasyczna metoda polegająca na analizie oświadczeń woli Filipa i Basi oraz ustaleniu w świetle dopuszczalnych dowodów, co (obiektywnie) uzgodnili. Nie ma w tym nic nowego. Jest to dokładnie to, co sędziowie robią regularnie przy ustalaniu treści zawartych przez strony umów.

Przykładowe zastosowania inteligentnego kontraktu

Typowy scenariusz zastosowania „inteligentnego kontraktu” będzie zazwyczaj zakładał, że Filip i Basia zawierają umowę w języku naturalnym, ale żądają, aby jej realizacja lub pewne aspekty jej realizacji były wykonanie za pomocą kodu. Zazwyczaj (ale niekoniecznie) będzie się to odbywać przy użyciu technologii rozproszonych rejestrów. Klasycznym przykładem tego modelu kontraktowania jest umowa ramowa, zgodnie z którą transakcje reprezentujące zakup instrumentów finansowych są realizowane na blockchainie.

Chociaż tego rodzaju umowa może zawierać „inteligentne rozwiązania” (tj. kod), sama umowa nie ma nadzwyczajnego charakteru, a jej wykonanie nie powinno stanowić problemu w kontekście prawnym. Konsekwencje niewykonania kodu zgodnie z przeznaczeniem (lub w ogóle) są kwestiami dotyczącymi umowy w języku naturalnym: albo jej warunki zostały spełnione, albo nie, co należy ustalić zgodnie ze zwykłymi i dobrze ugruntowanymi zasadami. Innymi słowy jest to klasyczny stosunek zobowiązaniowy.

Filip i Basia mogą zamiast tego zawrzeć stosunek prawny na podstawie umowy, która składa się głównie z języka naturalnego, ale zawiera pewne warunki (zazwyczaj dotyczące realizacji poszczególnych elementów), które są zdefiniowane nie w języku naturalnym, ale w kodzie. Kod ten będzie prawdopodobnie zarówno osadzony w dokumentacji umownej, jak i umieszczony na platformie wykonawczej. To również nie stwarza większych trudności. Kwestię tego, czy złożono skutecznie oświadczenie woli, jakie były warunki umowy i czy doszło do wykonania zobowiązania, można ocenić poprzez odniesienie do zwykłych zasad umownych.

Prawdziwe wątpliwości pojawiają się, gdy Basia i Filip w całości oparli swój stosunek zobowiązaniowy na kodzie, bez ustalenia jego warunków w języku naturalnym, a więc rzekoma umowa istnieje wyłącznie w kodzie. W tym przypadku nie powinno być trudności z identyfikacją warunków (będą one zawarte w kodzie źródłowym). Nie powinno być również trudności z określeniem świadczenia wzajemnego – często będzie ono łatwe do zidentyfikowania na podstawie badania kodu lub nawet samego zachowania kodu. Sam kod nie pomoże natomiast w ustaleniu, czy w ogóle doszło do zawarcia umowy (ponieważ samo istnienie kodu zdolnego do realizacji warunków umownych nie ujawnia niczego na temat tego, czy Basia i Filip rzeczywiście zgodzili się na zawarcie umowy na podstawie takiego kodu) oraz czy ich zamiarem było stworzenie stosunków prawnych, a więc czy doszło do skutecznego oświadczenia woli. Odpowiedzi na te pytania będą musiały zostać udzielone poprzez odniesienie do dowodów zewnętrznych w stosunku do samego kodu.

W hipotetycznej sytuacji, gdy Basia zaproponowała zawarcie umowy przy użyciu kodu komputerowego, a Filip zachował się w sposób, który w konwencjonalnym sensie jest równoznaczny z (obiektywną) akceptacją warunków tego kodu, analiza będzie prosta. Przykładem może być pisemne wyrażenie przez Filipa zgody na związanie się konkretną umową odzwierciedloną w treści kodu lub przyjęcie oferty związania się umową unormowaną kodem poprzez jego cyfrowe podpisanie.

Podsumowanie

W miarę jak zawieranie umów w postaci „inteligentnych kontraktów” będzie coraz bardziej odbiegać od tradycyjnych metod, konieczne będzie uwzględnienie mniej konwencjonalnego zachowania stron, ale same zasady wykładni, niezbędne dla stwierdzenia, czy doszło do zawarcia umowy i na jakich warunkach, pozostaną takie same jak dotychczas.

Zobacz także:
12.10.2022

Polecenia od serca czy z ekonomicznym interesem w tle? O rekomendacjach w mediach społecznościowych, których publikacja może dotkliwie zaboleć.

06.10.2022

Oznaczanie materiałów reklamowych przez influencerów a różne rodzaje współprac komercyjnych

16.09.2022

Umowa barterowa i informacja uchroni influencera przed zarzutem kryptoreklamy

15.09.2021

Digital Services Act, czyli nadchodząca rewolucja na rynku usług cyfrowych

15.04.2021

Czy sztuczna inteligencja zagraża prawom człowieka?

07.10.2020

Czy możliwe jest patentowanie programów komputerowych?

12.08.2020

SaaS i SLA – o czym warto pamiętać?

05.08.2020

Czy branża pośrednictwa internetowego jest u progu rewolucji?