Prawo autorskie, Prawo gospodarcze, Umowy

Czy dekompilacja to legalna kradzież?

Temat dekompilacji (ang. reverse engineering) był już wielokrotnie poddawany dyskusji.  W większości publikacji skupiono się jednak na samym wytłumaczeniu czym jest owa dekompilacja oraz temu, pod jakimi przesłankami jest ona dozwolona. W niniejszym artykule skupimy się przede wszystkim na samej genezie tego procesu oraz na tym czy niesie on za sobą pewne ryzyko dla autorów programów komputerowych.

Geneza

Na początek warto jednak ustalić w prostych słowach istotę dekompilacji. Jest to bowiem proces tłumaczenia kodu maszynowego na kod źródłowy. Innymi słowy za pomocą tego procesu jesteśmy w stanie przekształcić kod danego programu komputerowego z języka odczytywanego jedynie przez komputer na język, który jest już czytelny dla człowieka. Jesteśmy dzięki temu w stanie rozłożyć kod na czynniki pierwsze. Jest to dosłowne przeciwieństwo kompilacji, której celem jest uzyskanie kodu maszynowego, aby dany program mógł sprawować swoją funkcję na komputerze. Kod źródłowy ma bardziej doniosłe znaczenie od kodu maszynowego. Posiadając kod źródłowy mamy tym samym konkretny algorytm programu oraz jego zasady funkcjonowania. Już teraz możemy dostrzec czego dotyczy niniejsza problematyka. Jeżeli np. licencjobiorca programu przetłumaczy kod maszynowy na źródłowy zaistnieje realne ryzyko naruszenia ochrony prawnoautorskiej programu. Sprawa ta nie jest jednak taka oczywista.

Dyrektywa Parlamentu Europejskiego i Rady 2009/24/WE z dnia 23 kwietnia 2009 r. w sprawie ochrony prawnej programów komputerowych (dalej „dyrektywa”) dotyczy problematyki dekompilacji. Owa dyrektywa została zaimplementowana w Polsce w istniejącej już wcześniej Ustawie z dnia 4 lutego 1994 r. o prawie autorskim i prawach pokrewnych (dalej “pr.aut.”). Aktualny stan prawny dotyczący dekompilacji polega na konsensusie argumentów zwolenników oraz przeciwników dekompilacji. Dyrektywa zezwala na wykonywanie tego procesu jednak przy ściśle określonych okolicznościach (o czym nieco później). Zanim jednak taki stan rzeczy się ugruntował trwał dość długi spór, którego efektem jest dziś obowiązująca dyrektywa. Oczywistym argumentem przeciwników dekompilacji było ryzyko utraty ochrony prawnoautorskiej. Dodatkowo wnoszono, że pracochłonny oraz kosztochłonny proces tworzenia programu może poprzez dekompilację w łatwy sposób zostać skopiowany lub wykorzystywany do innych celów niż przeznaczone. Zwolennicy natomiast wskazywali na korzyść jaką ma być ułatwienie interoperacyjności programów. Dodatkowo postulowano, że dekompilacja może zwiększać konkurencję między autorami programów, co korzystnie będzie wpływać na rynek programów komputerowych, a przy tym przeciwdziałać monopolizacji rynku branży. Ciężko się nie zgodzić z tym tokiem rozumowania, ponieważ po stronie przeciwników pierwsze skrzypce odgrywali właśnie najwięksi producenci oprogramowań.  Jak wskazano wcześniej, zderzenie argumentów obu stron sporu doprowadziło do znanej nam już dyrektywy.

Zakres wykorzystania informacji z dekompilacji

Dyrektywa zaimplementowana została w przepisach ustawy o prawach autorskich i pokrewnych, a dokładniej w artykułach 74 oraz 75. Art. 75 ust. 2 pkt 3 pr. aut. wskazuje w jakich okolicznościach dekompilacja, która nie wymaga zezwolenia uprawnionego, jest legalna. Po pierwsze osobą, która może dokonać dekompilacji jest wyłącznie licencjobiorca lub inną osobę uprawnioną do korzystania z egzemplarza programu komputerowego bądź przez inną osobę działającą na ich rzecz. Wynika z tego, że wskazane wcześniej podmioty mogą zlecić przeprowadzenie dekompilacji osobie trzeciej. Ustawodawca zezwala na taki zabieg, ponieważ nie zawsze licencjobiorca będzie miał odpowiednie umiejętności lub narzędzia, aby samodzielnie przeprowadzić proces tłumaczenia kodu. Drugą przesłanką niezbędną do tego, aby dekompilacja był legalna jest to, aby informacje niezbędne do osiągnięcia współdziałania nie były uprzednio łatwo dostępne. Ciężko jednoznacznie zakwalifikować, kiedy te informacje “nie były uprzednio łatwo dostępne”. Najczęściej autorzy programów dają umożliwiają zdobycie takich informacji, jednak za opłatą, która czasami jest dość wygórowana. Można zatem przyjąć, że informacje nie są uprzednio łatwo dostępne, jeżeli cena samodzielnego dotarcia do tych informacji (poprzez dekompilację) będzie wciąż niższa od wykupienia ich od licencjodawcy. W znacznej mierze jednak, informacje te nie będą łatwo dostępne już w sytuacji, kiedy licencjobiorca nie dostanie ich w zestawie z programem. W takiej sytuacji – oprócz ewentualnego wykupienia od autora – jedyna metodą na zdobycie tych informacji jest dekompilacja. Ostatnia przesłanka wydaje się nie rodzić żadnych problemów interpretacyjnych – czynności te odnoszą się do tych części oryginalnego programu komputerowego, które są niezbędne do osiągnięcia współdziałania.

Istotniejsze dla licencjodawcy jest jednak wykazać w jakim zakresie uzyskane informacje z dekompilacji licencjobiorca może wykorzystać. Te przepisy są właśnie efektem opisanego wcześniej sporu – a konkretniej – wypracowanego konsensusu. Art. 75 ust. 3 pr. Aut. wskazuje w jakim zakresie uzyskane informacje za pomocą dekompilacji nie mogą zostać wykorzystane. Po pierwsze informacje te nie mogą służyć do innych celów niż osiągnięcie współdziałania niezależnie stworzonego programu komputerowego. Należy tutaj przypomnieć, że rzeczona interoperacyjność jest fundamentem do stosowania dekompilacji przez licencjobiorcę. Drugim ograniczaniem jest zakaz przekazywania informacji innym osobom, chyba że jest to niezbędne do osiągnięcia współdziałania niezależnie stworzonego programu komputerowego. Nie istnieje zatem ryzyko odsprzedawania uzyskanych w ten sposób informacji przez licencjobiorcę. Uzyskane dane nie mogą być również wykorzystane do rozwijania, wytwarzania lub wprowadzania do obrotu programu komputerowego o istotnie podobnej formie wyrażenia lub do innych czynności naruszających prawa autorskie. Należy przyjąć, że jest to najważniejszy element omawianego ustępu. Jeżeli na podstawie informacji uzyskanych z dekompilacji powstanie program o podobnym charakterze i zastosowaniu, nawet zapisany w innym języku programowania, to zostaną naruszone przepis art. 75 ust. 3 pkt 3 pr. aut. Należy również podkreślić, że postanowienia umów zakazujące stosowania dekompilacji przez licencjobiorcę będą nieważne. Uprawnienie licencjobiorcy do dekompilacji wynika z mocy samego prawa, azatem wszelkie zakazy w umowach nie będą wiążące, co wynika z art. 76 pr. aut.

Wnioski

Aktualny stan prawny dotyczący dekompilacji nie niesie za sobą większego ryzyka dla autora programu komputerowego. Należy wskazać, że same przesłanki zezwalające na ten proces dość znacząco ograniczają dopuszczalność jego przeprowadzania. Dodatkowymi ograniczeniami są te z art. 75 ust. 3 pr. aut., które w połączeniu z przesłankami legalizującymi tworzą niezwykle wąski zakres stosowania dekompilacji. Co więcej, sama dekompilacja nie prowadzi do “zero-jedynkowego” wykazania kodu źródłowego. Najczęściej z kodu maszynowego nie udaje się uzyskać oryginalnego kodu źródłowego. Tym bardziej, że jedyną legalną częścią programu do dekompilacji jest ta, która dotyczy interoperacyjności. Licencjobiorca zatem ma bardzo wąski zakres kodu źródłowego, a przy tym ten uzyskany może odbiegać od oryginału. Jeżeli nasz kontrahent będzie miał zamiar skopiować nasz program lub użyć go w innych celach, to zrobi to pomimo oczywistych przeciwwskazań. Taki ewentualny scenariusz nie może moim zdaniem przekreślać stosowania legalnej dekompilacji, która ma ogromne znaczenie dla rozwoju całej branży.

Michał Kolasiński

Bibliografia:

K. Sztobryn, 4.4.2.4. Dekompilacja programu [w:] Ochrona programów komputerowych w prawie własności intelektualnej w Unii Europejskiej, Warszawa 2015.

Skomentuj

Wprowadź swoje dane lub kliknij jedną z tych ikon, aby się zalogować:

Logo WordPress.com

Komentujesz korzystając z konta WordPress.com. Wyloguj /  Zmień )

Zdjęcie na Google

Komentujesz korzystając z konta Google. Wyloguj /  Zmień )

Zdjęcie z Twittera

Komentujesz korzystając z konta Twitter. Wyloguj /  Zmień )

Zdjęcie na Facebooku

Komentujesz korzystając z konta Facebook. Wyloguj /  Zmień )

Połączenie z %s