Niewiele technologii miało tak szeroką przepaść między tym, co im przypisywano, a tym, w czym faktycznie okazały się dobre.
Oddzielenie osiągnięcia od marketingu
Sam wynik naukowy jest realny i warto go jasno nazwać, zanim przejdziemy do krytyki.
Rozwiązywany problem jest następujący: umożliwić grupie stron, które sobie nie ufają, bez centralnego autorytetu, uzgodnienie uporządkowanego zapisu zdarzeń w sposób odporny na próby oszustwa uczestników. To był od dawna otwarty problem w informatyce rozproszonej, a połączenie łączenia kryptograficznego, bodźca ekonomicznego i mechanizmu konsensusu, które go rozwiązało, jest realnym wkładem.
Koszt tej właściwości to część, którą się pomija.
Każdy uczestnik przechowuje i weryfikuje te same dane, co jest ogromnie mniej wydajne niż jedna baza danych wykonująca tę pracę raz.
Przepustowość jest ograniczona z założenia, bo osiągnięcie zgody między wieloma stronami zajmuje czas.
Zmiana czegokolwiek wymaga koordynacji między uczestnikami, którzy mogą się nie zgadzać – o to właśnie chodzi, i dlatego te systemy ewoluują powoli.
Płacisz bardzo wysoki koszt wydajności za jedną właściwość: brak potrzeby zaufanej strony centralnej. Jeśli ją masz, płacisz za nic.
To jedno zdanie tłumaczy większość tego, co stało się z korporacyjnym blockchainem między ogłoszeniami a cichym wygaszaniem projektów.
Co obejmuje ten kierunek
Zakres: rozproszone bazy danych, blockchainy, smart kontrakty, konsensus, aktywa cyfrowe i aplikacje zdecentralizowane.
Cztery obszary.
Podstawy systemów rozproszonych. Replikacja, spójność, zachowanie przy podziale sieci i algorytmy konsensusu – większość z nich istniała na długo przed blockchainem.
Elementy kryptograficzne. Haszowanie, podpisy, zarządzanie kluczami i to, co każdy z nich faktycznie gwarantuje.
Smart kontrakty. Modele programowania, środowiska wykonawcze i specyficzna dla nich praktyka bezpieczeństwa.
Zastosowania i regulacje. Gdzie te systemy są naprawdę używane i jak wygląda formujące się wokół nich ramy prawne.
Pytanie, które zabija większość projektów
Duża liczba korporacyjnych inicjatyw blockchain została ogłoszona między połową poprzedniej dekady a początkiem obecnej. Duża liczba została po cichu zamknięta. Powód był spójny i sprowadza się do jednego pytania diagnostycznego.
Czy istnieje strona, której ufają wszyscy uczestnicy, żeby prowadziła zapis? Jeśli tak, baza danych prowadzona przez tę stronę jest szybsza, tańsza, łatwiejsza do zmiany i łatwiejsza do odtworzenia po awarii. Niemal każde korporacyjne konsorcjum miało taką stronę albo mogło ją wyznaczyć.
Trzy kolejne pytania eliminują większość reszty.
Czy dane opisują świat fizyczny? Jeśli tak, łańcuch zapisuje to, co ktoś wprowadził. Odporny na manipulacje zapis niezweryfikowanego twierdzenia to nadal niezweryfikowane twierdzenie, tylko odporne na manipulacje. Projekty śledzenia pochodzenia w łańcuchu dostaw natknęły się dokładnie na to: trudnością nigdy nie była baza danych, tylko wiedza, czy przedmiot w pudełku odpowiada etykiecie.
Czy coś trzeba usunąć lub poprawić? Niezmienność koliduje z prawami do ochrony danych, z korektą błędów i z prawnymi obowiązkami usuwania informacji. To realna niekompatybilność, a nie szczegół implementacyjny.
Czy uczestnicy faktycznie będą obsługiwać węzły? Wiele łańcuchów konsorcjalnych kończyło działanie na infrastrukturze obsługiwanej przez jedną firmę, co jest bazą danych z dodatkowymi krokami i gorszą wydajnością.
To, co przechodzi przez ten filtr, to wąski zbiór: systemy, w których uczestnicy naprawdę sobie nie ufają, gdzie nie ma akceptowalnego operatora centralnego i gdzie dane są natywne dla systemu, a nie stanowią twierdzenia o świecie zewnętrznym. Aktywa cyfrowe, część rozliczeń i rozrachunków oraz pewne rozwiązania transgraniczne mieszczą się w tym zbiorze. Większość innych rzeczy – nie, i powiedzenie tego wprost jest bardziej przydatne niż entuzjazm.
Gdzie to się mieści w domenie
Blockchain i systemy rozproszone to ósmy z ośmiu kierunków w domenie AI, danych i informatyki Astra Trainer, celowo zbudowany wokół połowy dotyczącej systemów rozproszonych. Materiał o konsensusie, replikacji i spójności to trwała część, przekładająca się na ogromną część zwykłej inżynierii.
Łączy się z informatyką w zakresie podstaw systemów rozproszonych, z cyberbezpieczeństwem w zakresie zarządzania kluczami i bezpieczeństwa kontraktów oraz z cloud computingiem i DevOps w zakresie infrastruktury, na której działają te sieci. Zobacz osiem kierunków tutaj.
Dlaczego bezpieczeństwo smart kontraktów różni się od innych
Najbardziej technicznie wyróżniający się obszar w tym kierunku, i taki, w którym historia porażek jest pouczająca.
Smart kontrakt to kod wdrożony w łańcuchu, który wykonuje się automatycznie. Cztery właściwości łączą się, tworząc niezwykle bezlitosny problem bezpieczeństwa.
Kod jest zwykle niezmienny po wdrożeniu. Błędu nie da się załatać w sposób, w jaki łata się zwykłe oprogramowanie. Wzorce aktualizacji istnieją, ale wprowadzają własne ryzyko, w tym scentralizowaną kontrolę, której miały uniknąć.
Bezpośrednio przechowuje wartość. Wykorzystanie błędu nie jest krokiem do celu – jest celem, a zyski są natychmiast transferowalne.
Każdy może go przeczytać. Wdrożony kod jest publiczny, więc każdy może w wolnej chwili szukać w nim luk, mając bezpośredni finansowy motyw, żeby jakąś znaleźć.
Wykonanie jest domyślnie wrogie. Kolejność transakcji można manipulować, wywołania zewnętrzne mogą wejść ponownie do kontraktu, zanim skończy działanie, źródła cen można przesunąć, a założenie, że wywoływany kontrakt zachowuje się rozsądnie, jest niebezpieczne.
W efekcie bardzo duże sumy stracono na błędach, które w konwencjonalnym oprogramowaniu byłyby niezauważalnymi usterkami. Reakcja inżynierska była odpowiednio surowa: weryfikacja formalna, wielokrotne niezależne audyty, obszerne testy adwersaryjne i etapowe wdrożenia z limitami wartości. Ta dyscyplina ma realną wartość i dobrze przekłada się na dowolne oprogramowanie wysokiego ryzyka.
Gdzie wiedza o systemach rozproszonych naprawdę się opłaca
Praktyczny powód, żeby uczyć tego kierunku, całkowicie niezależny od aktywów cyfrowych.
Podstawy leżące pod blockchainem to podstawy leżące pod ogromną częścią nowoczesnej infrastruktury, a większość inżynierów zna je tylko powierzchownie.
Algorytmy konsensusu działają wewnątrz systemów koordynacji, na których opierają się bazy danych, orkiestratory i service mesh.
Modele spójności. Zrozumienie, co rozproszony magazyn danych faktycznie gwarantuje, a czego nie, zapobiega klasie uszkodzeń danych, które trudno wykryć i jeszcze trudniej wyjaśnić.
Zachowanie przy podziale sieci. Każdy system rozproszony musi wybrać, co robi, gdy jego części nie mogą się ze sobą komunikować, a ten wybór ma konsekwencje, które musi obsłużyć aplikacja.
Weryfikacja kryptograficzna. Haszowanie, podpisy i struktury odporne na manipulacje są używane daleko poza tym kierunkiem – w integralności łańcucha dostaw oprogramowania, dziennikach audytowych i weryfikacji dokumentów.
Zarządzanie kluczami. Najtrudniejszy problem operacyjny w tym obszarze, mający zastosowanie wszędzie tam, gdzie używa się kryptografii. Utracone klucze oznaczają utracony dostęp bez możliwości odzyskania, co jest problemem procesowym i governance, a nie matematycznym.
Organizacja, która szkoli tu ludzi, zyskuje inżynierów systemów rozproszonych, czyli rzadką i trwałą kompetencję, niezależnie od tego, co stanie się z rynkami aktywów.
Role, nazwane wprost
Inżynierowie systemów rozproszonych. Najszersza i najtrwalsza rola.
Deweloperzy smart kontraktów.
Audytorzy smart kontraktów i badacze bezpieczeństwa, naprawdę specjalistyczna i dobrze opłacana grupa.
Inżynierowie protokołów, pracujący nad samymi sieciami.
Inżynierowie kryptografii.
Inżynierowie infrastruktury blockchain i obsługi węzłów.
Specjaliści od przechowywania aktywów cyfrowych i zarządzania kluczami.
Specjaliści od zgodności i regulacji dla aktywów cyfrowych – obszar szybko rosnący wraz z wchodzącymi w życie regulacjami.
Analitycy blockchain, śledzący aktywność w łańcuchu, intensywnie wykorzystywani w śledztwach i egzekwowaniu prawa.
Kogo można w to przeszkolić
Inżynierowie backendu i systemów. Główna droga. Koncepcje systemów rozproszonych budują na tym, co już znają, a warstwa kryptograficzna to zdefiniowany dodatek.
Inżynierowie bezpieczeństwa. W stronę audytu smart kontraktów, gdzie myślenie adwersaryjne to kluczowa kompetencja, a specyfikę dziedziny da się nauczyć.
Inżynierowie baz danych. W stronę rozproszonych systemów danych, mając już pojęcia spójności i replikacji.
Inżynierowie systemów finansowych. W stronę zastosowań rozliczeniowych i przechowywania aktywów, gdzie połowa dziedzinowa jest tą rzadką.
Specjaliści od zgodności i przestępstw finansowych. W stronę zgodności aktywów cyfrowych i analizy on-chain, gdzie istniejąca metoda śledcza przekłada się bezpośrednio.
Absolwenci kryptografii i matematyki. W stronę inżynierii protokołów.
Audytorzy. W stronę procesu przeglądu kontraktów i governance, uzupełniając, a nie zastępując audyt techniczny.
Regulacje, przechowywanie i nieodwracalność. Aktywa cyfrowe podlegają regulacjom finansowym, opodatkowaniu, obowiązkom przeciwdziałania praniu pieniędzy i prawu papierów wartościowych, które znacznie różnią się między jurysdykcjami i szybko się zmieniają. Transakcje są zwykle nieodwracalne, a utrata lub kompromitacja kluczy zwykle oznacza trwałą stratę bez mechanizmu odzyskania. Niezmienne zapisy mogą kolidować z prawami do ochrony danych, w tym prawem do usunięcia i poprawienia. Nic w tym artykule nie jest poradą inwestycyjną, prawną ani podatkową, ani rekomendacją dotyczącą jakiegokolwiek aktywa. Organizacje powinny skorzystać z wykwalifikowanego doradztwa przed każdym wdrożeniem lub posiadaniem aktywów.
Co z tego wynieść
Rozproszony konsensus między niedufającymi sobie stronami to realne osiągnięcie i jest kosztowny z założenia, bo tyle kosztuje ta właściwość.
Test diagnostyczny, który zakończył większość korporacyjnych projektów, jest prosty: jeśli istnieje zaufana strona, baza danych jest lepsza pod każdym istotnym względem.
Zapisanie twierdzenia o świecie fizycznym na łańcuchu czyni je odpornym na manipulacje, nie prawdziwym.
Bezpieczeństwo smart kontraktów jest wyjątkowo bezlitosne, bo kod jest niezmienny, publiczny, wykonywany w środowisku wrogim i bezpośrednio przechowuje wartość, a wynikająca z tego dyscyplina inżynierska warta jest przeniesienia gdzie indziej.
A trwałym powodem, żeby tego uczyć, jest kompetencja w systemach rozproszonych, która zachowuje wartość bez względu na to, co stanie się z rynkami aktywów.
Jaki problem faktycznie rozwiązuje blockchain?
Pozwala stronom, które sobie nie ufają, uzgodnić uporządkowany zapis bez centralnego autorytetu. Ta właściwość jest realna i kosztuje bardzo dużo wydajności, bo każdy uczestnik przechowuje i weryfikuje te same dane.
Dlaczego większość korporacyjnych projektów blockchain się zatrzymała?
Bo istniała zaufana strona albo można ją było wyznaczyć, co czyni konwencjonalną bazę danych szybszą, tańszą i łatwiejszą do zmiany. Wiele łańcuchów konsorcjalnych kończyło też pod obsługą jednej firmy, co usuwa powód, żeby ich używać.
Czy blockchain może zagwarantować pochodzenie w łańcuchu dostaw?
Może uczynić zapis odpornym na manipulacje. Nie może zweryfikować, czy to, co ktoś wprowadził, odpowiada rzeczywistości fizycznej, a ta weryfikacja zawsze była tą trudną częścią.
Dlaczego bezpieczeństwo smart kontraktów jest tak trudne?
Bo wdrożony kod jest zwykle niezmienny, publicznie czytelny, bezpośrednio przechowuje wartość i wykonuje się w środowisku wrogim, gdzie kolejność transakcji, wywołania rekurencyjne i manipulowane źródła cen to rutynowe metody ataku.
Czy warto się w to szkolić?
Połowa dotycząca systemów rozproszonych – bezwarunkowo tak. Konsensus, modele spójności, zachowanie przy podziale sieci, weryfikacja kryptograficzna i zarządzanie kluczami mają zastosowanie w całej nowoczesnej infrastrukturze, niezależnie od rynków aktywów cyfrowych.
