Co to jest Blockchain?
Jeśli ostatnio oglądałeś wiadomości, być może słyszałeś o czymś, co nazywa się blockchain. Jest to koncepcja, która sprawia, że dane są wyjątkowo bezpieczne dla konkretnych zastosowań. Prawdopodobnie słyszałeś to w połączeniu z Bitcoinem, ale ma aplikacje znacznie wykraczające poza ulubione ulubione kryptowaluty. Oto szybkie wyjaśnienie, jak to działa.
Wszystko zaczyna się od szyfrowania
Aby zrozumieć blockchains, musisz zrozumieć kryptografię. Idea kryptografii jest znacznie starsza niż komputery: oznacza po prostu zmianę kolejności informacji w taki sposób, że potrzebujesz określonego klucza, aby to zrozumieć. Prosta zabawka do dekodowania, którą znalazłeś w pudełku Kixa, jest formą najbardziej podstawowej kryptografii - utwórz klucz (znany również jako szyfr), który zastąpi literę liczbą, uruchom wiadomość za pomocą klucza, a następnie daj klucz do kogoś innego. Każdy, kto znajdzie wiadomość bez klucza, nie może jej przeczytać, chyba że jest "popękany". Wojsko używało bardziej złożonej kryptografii na długo przed komputerami (na przykład maszyna Enigma kodowała i dekodowała wiadomości podczas II wojny światowej).
Nowoczesne szyfrowanie jest jednak całkowicie cyfrowe. Dzisiejsze komputery wykorzystują metody szyfrowania, które są tak złożone i tak bezpieczne, że niemożliwe byłoby ich złamanie za pomocą prostej matematyki wykonanej przez ludzi. Komputerowa technologia szyfrowania nie jest jednak idealna; nadal może być "popękany", jeśli wystarczająco inteligentni ludzie zaatakują algorytm, a dane nadal są podatne na ataki, jeśli ktoś znajdujący się poza właścicielem znajdzie klucz. Ale nawet szyfrowanie na poziomie klienta, takie jak 128-bitowe szyfrowanie AES, które jest obecnie standardem na iPhone'ach i urządzeniach z Androidem, wystarczy, aby zablokować dane z dala od FBI.
Blockchain to wspólna, bezpieczna księga danych
Szyfrowanie jest zwykle używane do blokowania plików, więc dostęp do nich mają tylko określone osoby. Ale co, jeśli masz informacje, które muszą być widoczne dla wszystkich - na przykład informacje dotyczące księgowości dla agencji rządowej, która musi być publiczna z mocy prawa - i nadal musi być bezpieczna? Masz problem: im więcej osób może wyświetlać i edytować informacje, tym mniej jest bezpieczne.
Blockchains zostały opracowane w celu zaspokojenia potrzeb bezpieczeństwa w tych konkretnych sytuacjach. W blockchain, za każdym razem, gdy informacja jest dostępna i aktualizowana, zmiana jest rejestrowana i weryfikowana, a następnie szyfrowana i nie może być edytowana ponownie. Zestaw zmian jest następnie zapisywany i dodawany do całkowitego rekordu. Następnym razem, gdy ktoś wprowadzi zmiany, rozpocznie się od nowa, zachowując informacje w nowym "bloku", który jest zaszyfrowany i dołączony do poprzedniego bloku (stąd "blok łańcucha"). Ten powtarzający się proces łączy pierwszą wersję zestawu informacji z najnowszą, dzięki czemu każdy może zobaczyć wszystkie wprowadzone zmiany, ale może tylko dodać i edytować najnowszą wersję.
Ten pomysł jest trochę odporny na metafory, ale wyobraź sobie, że jesteś w grupie dziesięciu osób, które tworzą zestaw LEGO. Możesz dodać tylko jedną sztukę na raz i nigdy nie możesz usunąć żadnych elementów. Każdy członek grupy musi uzgodnić konkretnie, dokąd zmierza następna część. W ten sposób możesz zobaczyć wszystkie elementy w dowolnym momencie - od razu do pierwszego elementu w projekcie - ale możesz modyfikować tylko najnowszy kawałek.
Aby uzyskać coś bardziej istotnego, wyobraź sobie dokument współpracy, taki jak arkusz kalkulacyjny w Dokumentach Google lub Office 365. Każdy, kto ma dostęp do dokumentu, może go edytować i za każdym razem, gdy to robi, zmiana jest zapisywana i zapisywana jako nowy arkusz kalkulacyjny, następnie zablokowane w historii dokumentu. Możesz więc krok po kroku powrócić do wprowadzonych zmian, ale możesz dodawać tylko informacje do najnowszej wersji, a nie modyfikować wcześniejszych wersji arkusza, który został już zablokowany..
Jak zapewne słyszeliście, idea bezpiecznej, stale aktualizowanej "księgi głównej" jest najczęściej stosowana do danych finansowych, gdzie ma to największy sens. Rozproszone waluty cyfrowe, takie jak Bitcoin, są najczęstszym zastosowaniem bloków kodu - w rzeczywistości pierwszy został stworzony dla Bitcoin, a idea rozprzestrzeniła się tam.
Techniczne rzeczy: krok po kroku, blok po bloku
Jak to wszystko działa na komputerze? Jest to połączenie kryptografii i sieci typu peer-to-peer.
Być może znasz współdzielenie plików peer-to-peer: usługi takie jak BitTorrent, które umożliwiają użytkownikom ładowanie i pobieranie plików cyfrowych z wielu lokalizacji wydajniej niż z jednego połączenia. Wyobraź sobie "pliki" jako podstawowe dane w łańcuchu bloków, a proces pobierania jako kryptografię, która utrzymuje go na bieżąco i zabezpiecza.
Lub, aby wrócić do powyższego przykładu Dokumentów Google: wyobraź sobie, że dokument współpracy, nad którym pracujesz, nie jest przechowywany na serwerze. Zamiast tego jest na komputerze każdego, który stale sprawdza i aktualizuje się nawzajem, aby upewnić się, że nikt nie zmodyfikował poprzednich rekordów. To sprawia, że jest "zdecentralizowany".
To podstawowa idea kryptonimu: to dane kryptograficzne, które są stale dostępne i zabezpieczone w tym samym czasie, bez scentralizowanego serwera lub pamięci masowej, z zapisem zmian, które włączają się w każdą nową wersję danych.
Mamy więc trzy elementy do rozważenia w tym związku. Po pierwsze, sieć użytkowników peer-to-peer, którzy przechowują wszystkie kopie rekordu blockchain. Dwa, dane, które ci użytkownicy dodają do najnowszego "bloku" informacji, umożliwiając ich aktualizację i dodanie do całkowitego rekordu. Trzy, sekwencje kryptologiczne, które użytkownicy generują, aby uzgodnić ostatni blok, blokując go na miejscu w sekwencji danych, które stanowią rekord.
To ten ostatni kawałek, który jest sekretnym sosem w kanapce blockchain. Korzystając z cyfrowej kryptografii, każdy użytkownik wykorzystuje moc swojego komputera, aby pomóc rozwiązać niektóre z tych bardzo złożonych problemów matematycznych, które zapewniają bezpieczeństwo danych. Te niezwykle złożone rozwiązania - znane jako "hash" - rozwiązują główne części danych w rejestrze, takie jak konto, które dodało lub odliczyło pieniądze w księdze rachunkowości, i gdzie te pieniądze trafiły lub przybyły. Im bardziej gęste dane, tym bardziej złożona jest kryptografia i tym więcej mocy obliczeniowej jest potrzebna, aby ją rozwiązać. (Tak nawiasem mówiąc, w grę wchodzi pomysł "wydobywania" w bitcoinach).
Podsumowując, możemy myśleć o blockchainie, który jest kawałkiem danych, który jest:
- Ciągle aktualizowane. Użytkownicy Blockchain mogą uzyskać dostęp do danych w dowolnym czasie i dodawać informacje do najnowszego bloku.
- Rozpowszechniane. Kopie danych blockchain są przechowywane i zabezpieczane przez każdego użytkownika, a wszystkie muszą uzgodnić nowe dodatki.
- Zweryfikowany. Obie zmiany w nowych blokach i kopiach starych bloków muszą zostać uzgodnione przez wszystkich użytkowników za pomocą weryfikacji kryptograficznej.
- Bezpieczne. Manipulowanie przy użyciu starych danych i zmiana metody zabezpieczania nowych danych zapobiega zarówno metodzie kryptograficznej, jak i niecentralizowanemu przechowywaniu samych danych.
I wierzcie lub nie, to staje się jeszcze bardziej skomplikowane ... ale to jest podstawowy pomysł.
Blockchain w akcji: pokaż mi pieniądze (cyfrowe)!
Przyjrzyjmy się więc przykładowi, w jaki sposób dotyczy to kryptowaluty takiej jak Bitcoin. Załóżmy, że masz jeden Bitcoin i chcesz wydać go na nowy samochód. (Albo rower, albo dom, albo małe do średniej wielkości państwo wyspiarskie - chociaż w tym tygodniu jest wart wiele Bitcoin.) Łącz się z zdecentralizowanym Blockchainem Bitcoin za pomocą twojego oprogramowania, a wyślesz swoją prośbę, aby przenieść Bitcoin do sprzedawcy samochodu. Twoja transakcja jest następnie przekazywana do systemu.
Każda osoba w systemie może to zobaczyć, ale twoja tożsamość i tożsamość sprzedawcy są tylko tymczasowymi podpisami, drobnymi elementami wielkich problemów matematycznych, które stanowią serce cyfrowej kryptografii. Wartości te są podłączone do równania blockchain, a sam problem jest "rozwiązywany" przez członków sieci peer-to-peer generujących skróty kryptograficzne.
Gdy transakcja zostanie zweryfikowana, jeden bitcoin zostanie przeniesiony od ciebie do sprzedawcy i zapisany na ostatnim bloku w łańcuchu. Blok jest ukończony, zapieczętowany i zabezpieczony kryptograficznie. Rozpocznie się następna seria transakcji, a łańcuch blockchain będzie się wydłużał, zawierający pełny zapis wszystkich transakcji za każdym razem, gdy zostanie zaktualizowany.
Teraz, gdy myślisz o blockchainie jako "bezpiecznym", ważne jest, aby zrozumieć kontekst. Poszczególne transakcje są bezpieczne, a całkowity rekord jest bezpieczny, o ile metody wykorzystywane do zabezpieczenia kryptografii pozostają "nieskrępowane". (I pamiętaj, te rzeczy są naprawdę trudne do złamania - nawet FBI nie może tego zrobić jedynie przy użyciu tylko zasobów obliczeniowych.) Ale najsłabszym ogniwem w blockchain jest, cóż, ty - użytkownik.
Jeśli pozwolisz komuś innemu użyć klucza osobistego, aby uzyskać dostęp do łańcucha, lub jeśli znajdziesz go po prostu włamując się do twojego komputera, mogą dodawać do blockchain twoje informacje i nie ma sposobu, aby je zatrzymać. W ten sposób Bitcoin zostaje "skradziony" w wysoce nagłośnionych atakach na główne rynki: to firmy, które operowały rynkami, a nie sam system blockchain Bitcoin, zostały skompromitowane. A ponieważ skradzione Bitcoiny są przekazywane anonimowym użytkownikom, dzięki procesowi weryfikowanemu przez blockchain i nagrywanemu na zawsze, nie ma możliwości znalezienia atakującego lub odzyskać Bitcoin.
Co jeszcze może zrobić Blockchains?
Technologia Blockchain zaczęła się od Bitcoin, ale jest to ważna myśl, że nie pozostała tam długo. System, który jest stale aktualizowany, dostępny dla każdego, zweryfikowany przez niecentralizowaną sieć i niezwykle bezpieczny, ma wiele różnych aplikacji. Instytucje finansowe, takie jak JP Morgan Chase i Australijska Giełda Papierów Wartościowych, opracowują systemy typu blockchain do zabezpieczania i dystrybucji danych finansowych (w przypadku pieniądza konwencjonalnego, a nie kryptowaluty, np. Bitcoin). Fundacja Billa i Melindy Gates ma nadzieję wykorzystać systemy blockchain do świadczenia bezpłatnych, rozproszonych usług bankowych miliardom ludzi, których nie stać na zwykłe konto bankowe.
Narzędzia Open Source, takie jak Hyperledger, starają się udostępniać techniki blockchain szerszemu gronu ludzi, w niektórych przypadkach robiąc to bez potrzeby potwornej ilości mocy obliczeniowej potrzebnej do zabezpieczenia innych projektów. Współpracujące systemy robocze można weryfikować i rejestrować za pomocą technik blockchain. Niemal wszystko, co musi być stale rejestrowane, dostępne i aktualizowane, może być używane w ten sam sposób.
Image credit: posteriori / Shutterstock, Lewis Tse Pui Lung / Shutterstock, Zack Copley