blockchain concept

Jak szukać zastosowań dla łańcucha bloków?

  • April 25th, 2024
  • Business
  • 0 Comments
  • Robert Pardela

This page is available in English

Moim zdaniem nie można szukać zastosowań danej technologii jeśli nie zna się jej kluczowych cech.

W tym wpisie starałem się zebrać i opisać najistotniejsze cechy łańcuchów bloków, jednak ze względu na długość tekstu ostatecznie opisałem dwie najważniejsze. Według mnie są one decydujące pod kątem możliwych zastosowań w różnych obszarach biznesowych oraz branżach.

W kolejnych wpisach będę opisywał pozostałe cechy, które również mają wpływ na poszukiwanie zastosowań dla łańcucha bloków. Jednak będą one miały znaczenie przede wszystkim w poszukiwaniach bardziej specyficznych zastosowań.

 

Podstawowe cechy łańcucha bloków

Nie zależnie od typu łańcucha (prywatny, publiczny) oraz rodzaju platformy (Ethereum, Quorum, Hyperledger, Bitcoin, itd), każdy z nich ma dwie podstawowe cechy:

  1. Niezmienność
  2. Rozproszenie

W dużym uproszczeniu można powiedzieć, że jeśli Wasze rozwiązanie IT nie wymaga posiadania co najmniej jednej z tych cech to nie powinniście rozważać wdrażania systemu wykorzystującego technologię blockchain.

 

Jak należy rozumieć te dwie najważniejsze cechy?

 

Niezmienność

„Wszystko co wydarzyło się w Las Vegas zostaje w Las Vegas” nieco naciągane porównanie, ale podobnie jest w łańcuchu bloków. Jeśli w łańcuchu pojawiła się transakcja to jest ona na zawsze widoczna, zawsze można do niej dotrzeć i ją zweryfikować. Nie da się jej usunąć ani zmodyfikować po dodaniu do łańcucha bloków.

 

Skąd pewność, że w łańcuchu są dostępne ZAWSZE oryginalne transakcje?

 

Jest to zapewniane przez mechanizmy kryptograficzne: cyfrowy odciska palca, drzewo Merkle’a, kryptografia asymetryczna. Mechanizmy te opisywałem szczegółowo w artykule „Jak działa łańcuch bloków? cz. 1”. Kryptografia daje nam pewność, że wszystkie transakcje pozostają niezmienne.

Bardzo często cecha ta jest błędnie rozumiana. Patrząc na nią wprost widzimy wyłącznie potężne ograniczenie uniemożliwiające modyfikowanie raz wprowadzonych do łańcucha bloków danych, a tak nie jest!

Załóżmy że nasze rozwiązanie bazujące na łańcuchu bloków wykorzystywane jest jako rejestr pracowników. Przechowujemy w nim następujące dane:

  • Imię
  • Nazwisko
  • Numer telefonu

 

Czy „niezmienność” oznacza, że raz wprowadzone dane pracownika nie mogą zostać zmodyfikowane?

 

To jest właśnie błąd w rozumieniu tej cechy. Dane mogą być zmieniane przez transakcje, natomiast same transakcje nie mogą być modyfikowane.

Rozważmy następujący przypadek:

  1. Transakcja 1 zakłada konto pracownika i wprowadzane są w niej następujące dane: Imię: Jan, Nazwisko: Kowalski, Numer telefonu: 600–200–100
  2. Aktualny stan danych pracownika jest jak wprowadzony w transakcji 1
  3. Pracownik zmienia numer telefonu na 700–400–300
  4. Transakcją 2 zmieniamy w rejestrze jego numer telefonu na 700–400–301
  5. Aktualny stan danych pracownika jest następujący: Imię: Jan, Nazwisko: Kowalski, Numer telefonu: 700–400–301
  6. Zauważyłem pomyłkę: zamiast wprowadzić numer 700–400–300, wpisałem do rejestru 700–400–301
  7. Transakcją 3 zmieniam w rejestrze numer telefonu pracownika na poprawny 700–400–300
  8. Aktualny stan danych pracownika jest następujący: Imię: Jan, Nazwisko: Kowalski, Numer telefonu: 700–400–300

 

Z opisanego wyżej scenariusza wynika, że łańcuch bloków posiada aktualny stan, który może być modyfikowany transakcjami, ale same transakcje nie mogą ulegać zmianie kiedy zostały już dołączone do łańcucha bloków. Czyli jeśli się pomyliłem podczas wprowadzania danych to nie mogę wrócić do transakcji 2 i zmodyfikować jej poprawiając tam numer telefonu. Jedyne co mogę zrobić w takiej sytuacji to dodać kolejną transakcję zmieniającą stan danych pracownika na prawidłowy.

Ta cecha powoduje, że raz wprowadzone dane (np. w transakcji 1) są ZAWSZE widoczne w historii transakcji. W systemach zgodnych z RODO (GDPR) takie rozwiązanie nie może być zastosowane, ponieważ nie da się w łańcuchu bloków wyegzekwować prawa do usunięcia danych osobowych.

Jeśli jednak planujecie rozwiązanie bazujące na macierzach typu WORM to jak najbardziej powinniście rozważyć opcję z łańcuchem bloków zamiast rozwiązania sprzętowego.

 

Rozproszenie

Jest to typowa cecha technologiczna. Jej podstawowym celem jest zapewnienie wysokiej dostępności i wyeliminowanie pojedynczego punktu awarii. Łańcuch działa w modelu Peer-to-Peer. Generalnie jeśli awarii ulegnie jeden z węzłów to pozostałe zapewniają ten sam stan danych oraz tą samą funkcjonalność.

Kiedy warto skorzystać z tej cechy?

  • Jeśli twoja organizacja posiada oddziały to warto rozważyć uruchomienie węzłów blockchain w każdym z nich
  • Jeśli twoja organizacja zależy od łańcucha dostaw uruchom węzeł u każdego podmiotu, który jest w łańcuchu
  • Jeśli ściśle współpracujesz ze stałymi kontrahentami uruchom u nich węzły blockchain

Zastanów się czy dobrym pomysłem jest uruchomienia łańcucha bloków w chmurze, czasami jest to korzystne, a czasami osłabia istotną cechę rozwiązań opartych na blockchain jaką jest rozproszenie.

Ważną kwestią jest też fakt, że łańcuch bloków nie jest systemem rozproszonym z przetwarzaniem równoległym. Nie osiągamy korzyści w postaci wykorzystania większej ilości zasobów do równoległych obliczeń. W przypadku łańcucha bloków wszystkie węzły wykonują tą samą pracę (łańcuchy bloków prywatne mogą działać bardziej efektywnie i dzielić zadania między węzły).

I na koniec to, że system jest rozproszony nie oznacza, że zarządzanie nim jest z założenia rozproszone i zdecentralizowane. Tu można sobie wyobrazić dowolny model, również scentralizowany może być poprawny.

 

Podsumowanie

Miała być zwięzła forma i chyba się udało 🙂 Mam nadzieję, że treść na tym nie ucierpiała.

W tym artykule zależało mi na szczegółowym opisie najważniejszych cech, czyli niezmienność i rozproszenie. Prawidłowe zrozumienie tych cech umożliwi nam poszukiwanie nowych zastosowań dla łańcucha bloków.

Wszystkie cechy blockchain są bardzo interesujące i zachęcam do pogłębiania wiedzy w tym zakresie. Część z nich na pewno jeszcze opiszę.

 

Jak zwykle jeśli będą jakieś pytania zachęcam do kontaktu.

 

 

Robert Pardela

Leave a Comment

Your email address will not be published.

14 − six =