Zadanie 1: Opisując Własność
Zanim będzie można zacząć rozwijanie blockchain, trzeba zadać sobie pytanie, co chcesz z nim zrobić. Ponieważ będziemy chcieli zaprojektować system oprogramowania, który zarządza własność, trzeba najpierw zdecydować, w jaki sposób opisać własności. Okazuje się, że transakcje są dobrym sposobem na opisanie każdego przeniesienia prawa własności, a całą historię transakcji jest kluczem do identyfikacji obecnych właścicieli. Stąd Krok 9 Transakcje wyjaśni czym są, jak można je opisać i jak można z nich korzystać w celu wyjaśnienia własności.
Zadanie 2: Ochrona własności
Opisanie własności za pomocą transakcji jest tylko punktem wyjścia. Ponadto potrzebny jest sposób, aby odwieść ludzi od dostępu do właściwości innych. W prawdziwym życiu, można łatwo odwieść ludzi od korzystania z samochodu lub z wejściem do nie swojego dom ,za pomocą drzwi z zamkami. Okazuje się, że kryptografia dostarcza sposób ochrony transakcji na poziomie indywidualnym, podobnie jak sposób poszczególne drzwi z zamkami chronić swój samochód lub dom. Ochrona własności ma trzy główne elementy: identyfikacja i uwierzytelnianie właściciela, a także ograniczanie dostępu do usługi, do ich właścicieli. Etapy 12 i 13 wyjaśnią te pojęcia w sposób bardziej szczegółowy. Jednak te kroki polegać na koncepcji wartości hash. Jeśli nigdy nie słyszałeś o wartości hash, nie trzeba się martwić., Etap 10 i 11 wyjaśni wartości hash w szczegółach. Te dwa etapy będą również ciekawymi spostrzeżeniami dla tych, którzy już mają wykształcenie techniczne lub wiedzą o wartości hash.
Zadanie 3: Zapisywanie danych transakcji
Opisując własności za pomocą transakcji i posiadając środki ochrony, chroni własność na poziomie poszczególnych transakcji są ważne kroki w kierunku bramki projektowania systemu oprogramowania, który zarządza własności. Jednak trzeba znaleźć sposób dla przechowywania całej historii transakcji, jak ta historia jest używana do wyjaśnienia własności. Ponieważ historia transakcji jest kluczowym elementem w wyjaśnianiu własności, musi być przechowywane w bezpieczny sposób. Okazuje się, że blockchain-data-structure jest cyfrowym odpowiednikiem do księgi głównej. Etapy 14 i 15 wyjaśnią, że wymóg blockchain-structure-data musi być spełnione, aby służyć jako księgi cyfrowej i jak jest realizowany.
Zadanie 4: Przygotowanie ksiąg dla dystrybuowania w nierzetelnym środowisku
Posiadanie jednej wyizolowanej księgi lub blockchain-structure-data, która zawiera dane transakcji jest dobre,, ale celem jest zaprojektowanie systemu rozproszonego peer-to-peer z księgami, która działają w środowisku nierzetelnym. Stąd, będziesz miał kopie księgi uruchomiony na nierzetelnym węźle w sieci nierzetelnej. Ponadto, można oddać kontrolę nad księgami dla całej sieci, bez żadnego centralnego punktu sterowania lub koordynacji. Jak można zapobiec manipulacjom w księgach (na przykład poprzez usunięcie transakcji z historii transakcji nielegalnych lub dodanie do niego)? Okazuje się, że najlepszym sposobem, aby zapobiec zmianie w historii transakcji jest stworzenie jej niezmiennej. Oznacza to, że księgi, a zatem historia transakcji nie może być zmieniana kiedy jest raz zapisana . W rezultacie, nie trzeba się obawiać, że księgi zostaną naruszone lub nadpisane, ponieważ nie mogą być zmienione w pierwszej kolejności. Jednakże mając rozproszony system peer-to-peer z księgami, które nigdy nie mogą być zmienione , brzmią jak bardzo bezpieczne, ale całkiem bezużyteczne rzeczy, ponieważ nie będzie można dodawać nowych transakcji. Stąd wyzwaniem blockchain-structure-data ma być niezmienność, z jednej strony, akceptując nowe transakcje które są dodawane do niej, z drugiej strony. To brzmi jak sprzeczność w słowach, ale okazuje się, że jest to osiągalne z technicznego punktu widzenia, który jest wyjaśnione w punkcie 16. W rezultacie powstaje struktura, która jest blockchain-data-append-only: możliwe jest dodawanie nowych transakcji; ale jest prawie niemożliwe, aby zmienić dane, które zostały dodane w przeszłości.
Zadanie 5: Dystrybucja w księgach
Kiedy księga główna jest append-only, można utworzyć rozproszony system peer-to-peer z ksiąg poprzez jej dostępne kopie dla każdego, kto o to poprosi. Jednak poświadczone kopie ksiąg append-only nie spełnia swoich celów. Rozproszony system, który zarządza własności polega na interakcji między peerami lub węzłów, odpowiednio. Stąd Krok 17 wyjaśnia, jak węzły w systemie współdziałają ze sobą i jakie informacje są wymieniane między nimi.
Zadanie 6: Dodawanie nowych transakcji do ksiąg
Rozproszony system peer-to-peer będzie składać się z członków, których komputery utrzymują poszczególne kopie append-only blockchain-data-struktury. Ponieważ struktura danych pozwala na dodawanie nowych danych transakcyjnych, będziesz musiał upewnić się, że tylko poprawne i autoryzowane transakcje są dodawane. Okazuje się, że jest to możliwe poprzez umożliwienie wszystkim członkom systemu peer-to-peer, aby dodać nowe dane i obracając Dodatkowo każdy członek systemu peer-to-peer do przełożonych z peerami. W rezultacie, wszyscy członkowie będą nadzorować nawzajem i zwrócić uwagę na wszelkie błędy popełnione przez swoich rówieśników. Krok podejście 18 wyjaśnia to bardziej szczegółowo, jak również zachęt udzielonych rówieśników do spełnienia swoją rolę.
Zadanie 7: podejmowaniu decyzji, które Ledgers Reprezentujesz Prawdę
Nowe transakcje mogą być dodawane do poszczególnych ksiąg w systemie peer-to-peer, jedna prowadzi do problemu, który jest typowy dla każdej rozproszonym systemie peer-to-peer, różni peers mogą otrzymali różne transakcje i wkrótce historii transakcji utrzymywane przez nich różni się. Stąd różne wersje historii transakcji mogą istnieć w systemie peer-to-peer. Ponieważ historia transakcji jest podstawą do identyfikacji legalnych właścicieli, posiadanie różnych sprzecznych historii transakcji jest poważnym zagrożeniem dla integralności systemu. Stąd ważne jest, aby znaleźć sposób, albo aby zapobiec pojawianiu się różnych historii transakcji w pierwszej kolejności lub znaleźć sposób, aby zdecydować, które transakcja historia przedstawia prawdę. Ze względu na charakter w czysto rozproszonym systemie peer-to-peer, ostatnie podejście nie jest możliwe. W rezultacie trzeba kryterium, jak znaleźć i wybrać jedną historię transakcji, która reprezentuje prawdę. Ale jest inny problem: nie istnieje centralny organ w czysto rozproszonym systemie peer-to-peer, który może zadeklarować, która historia transakcji musi zostać wybrana. Okazuje się, że można rozwiązać ten problem poprzez każdy węzeł w systemie peer-to-peer decydujący o własnej historii transakcji, która reprezentuje prawdę w taki sposób, że większość peerów zgadza się na tę decyzję samodzielnie. Okazuje się też, że sposób, w jaki blockchain pozwala dodawać nowe transakcje append-only blockchain-structure-data zawiera już rozwiązanie tego problemu. 19 krok wyjaśnia te kryteria w szczegółach i jak są one wykorzystywane.
W tym kroku zidentyfikowano siedem zadań, które stanowią wymagającą intelektualną podróż po koncepcjach stanowiących blockchain. Po wykonaniu tych zadań dotrzesz na szczyt: zrozumiesz blockchain. Krok 21 to punkt, w którym połączysz wszystkie te koncepcje i rozkoszujesz się rezultatami tego wysiłku uczenia się. Krok 21 będzie przeglądową częścią podobnym do tego, ale będzie czerpał z wiedzy technicznej, którą zdobędziesz w międzyczasie.