Što je Blockchain?
Ako ste u posljednje vrijeme gledali vijesti, možda ste čuli za nešto što se zove blockchain. To je koncept koji podatke čini iznimno sigurnim za specifične namjene. Vjerojatno ste to čuli u vezi s Bitcoinom, ali ima aplikacije daleko iznad svih omiljenih kripto valuta. Evo kratkog objašnjenja kako to radi.
Sve počinje s enkripcijom
Da biste razumjeli nizove lanaca, morate razumjeti kriptografiju. Ideja kriptografije daleko je starija od računala: ona samo znači preraspodjelu informacija na takav način da vam je potreban određeni ključ da biste ga razumjeli. Jednostavna igračka dekoderskog prstena koju ste pronašli u kutiji Kix žitarica oblik je najosnovnijeg kriptografskog ključa (također poznatog kao šifra) koji zamjenjuje slovo s brojem, pokreće vašu poruku putem ključa, a zatim daje ključ nekom drugom. Svatko tko pronađe poruku bez ključa ne može je pročitati, osim ako je "napuknut". Vojska je koristila složeniju kriptografiju mnogo prije računala (Enigma stroj kodirao i dekodirao poruke tijekom Drugog svjetskog rata, na primjer).
Moderna enkripcija je ipak potpuno digitalna. Današnja računala koriste metode šifriranja koje su tako složene i tako sigurne da ih je nemoguće razbiti jednostavnom matematikom koju su napravili ljudi. Tehnologija za šifriranje računala nije savršena; još uvijek može biti "ispucan" ako dovoljno pametnih ljudi napadne algoritam, a podaci su još uvijek ranjivi ako netko osim vlasnika pronađe ključ. Ali čak i kodiranje na razini potrošača, kao što je AES 128-bitna enkripcija koja je sada standardna za iPhone i Android, dovoljno je da se zaključani podaci drže podalje od FBI-a.
Blockchain je suradnička, sigurna knjiga podataka
Šifriranje se obično koristi za zaključavanje datoteka kako bi im se moglo pristupiti samo određenim osobama. Ali što ako imate informacije koje treba da vide svi-poput, recimo, računovodstvene informacije za vladinu agenciju koja po zakonu mora biti javna - i još uvijek mora biti sigurna? Tamo imate problem: što više ljudi može vidjeti i urediti informacije, to je manje sigurna.
Blockchains su razvijeni kako bi se zadovoljile sigurnosne potrebe ovih specifičnih situacija. U blockchainu, svaki put kada se pristupi i ažurira informacija, promjena se bilježi i provjerava, a zatim se zapečati šifriranjem, ne može se ponovno urediti. Skup promjena se zatim sprema i dodaje ukupnom zapisu. Sljedeći put kada netko napravi promjene, počinje sve iznova, čuvajući informacije u novom “bloku” koji je šifriran i priključen na prethodni blok (stoga “blok lanac”). Ovaj ponavljajući proces povezuje prvu verziju skupa podataka s najnovijom, tako da svatko može vidjeti sve izmjene ikad napravljene, ali može samo doprinijeti i urediti najnoviju verziju.
Ova ideja je nekako otporna na metafore, ali zamislite da ste u skupini od deset ljudi koji skupljaju LEGO set. Možete dodati samo jedan komad u isto vrijeme i ne možete ukloniti nikakve dijelove. Svaki član skupine mora se dogovoriti o tome kamo će sljedeći dio ići. Na taj način možete vidjeti sve dijelove u bilo kojem trenutku, odmah do prvog djela u projektu - ali možete mijenjati samo najnoviji komad.
Za nešto relevantnije, zamislite dokument za suradnju, poput proračunske tablice na Google Dokumentima ili Officeu 365. Svatko tko ima pristup dokumentu može ga urediti, a svaki put kada se to dogodi, promjena se sprema i bilježi kao nova proračunska tablica, zatim zaključana u povijesti dokumenata. Tako se možete vratiti, korak po korak, kroz izvršene izmjene, ali možete dodati samo informacije najnovijoj verziji, a ne mijenjati prethodne verzije proračunske tablice koje su već zaključane.
Kao što ste vjerojatno čuli, ova zamisao sigurne, stalno ažurirane "glavne knjige" uglavnom se primjenjuje na financijske podatke, gdje ima najviše smisla. Distribuirane digitalne valute kao što su Bitcoin su najčešće korištene blockchains-u, zapravo, prvi je napravljen za Bitcoin i ideja proširila od tamo.
Tehničke stvari: korak po korak, blok po blok
Kako se sve ovo zapravo igra na računalu? To je kombinacija kriptografije i peer-to-peer umrežavanja.
Možda ste upoznati s razmjenom datoteka među korisnicima: uslugama kao što je BitTorrent koji korisnicima omogućuju učinkovitiji prijenos i preuzimanje digitalnih datoteka s više lokacija nego s jedne veze. Zamislite "datoteke" kao osnovne podatke u blockchainu, a proces preuzimanja kao kriptografiju koja je održava ažuriranom i sigurnom.
Ili, da se vratimo na gornji primjer Google dokumenata: zamislite da dokument za suradnju na kojem radite nije pohranjen na poslužitelju. Umjesto toga, nalazi se na računalu svakog pojedinca, koji se stalno provjerava i ažurira kako bi se uvjerili da nitko nije promijenio prethodne zapise. To ga čini "decentraliziranom".
To je osnovna ideja koja stoji iza blockchaina: to su kriptografski podaci koji se neprekidno pristupa i osiguravaju u isto vrijeme, bez centraliziranog poslužitelja ili pohrane, s zapisom promjena koje se uključuju u svaku novu verziju podataka.
Dakle, imamo tri elementa za razmatranje u ovom odnosu. Jedna, mreža peer-to-peer korisnika koji pohranjuju kopije blockchain zapisa. Drugo, podaci koje ti korisnici dodaju najnovijem “bloku” informacija, dopuštajući da se ažuriraju i dodaju ukupnom zapisu. Tri, kriptološke sekvence koje korisnici generiraju da bi se dogovorili o najnovijem bloku, zaključavajući ih na mjesto u nizu podataka koji formira zapis.
To je onaj zadnji dio koji je tajni umak u sendvičima od blockchaina. Koristeći digitalnu kriptografiju, svaki korisnik doprinosi moći računala kako bi pomogao u rješavanju nekih od tih složenih matematičkih problema koji čuvaju zapis. Ta iznimno složena rješenja - poznata kao "hash" - rješavaju temeljne dijelove podataka u zapisu, kao što je koji račun dodaje ili oduzima novac u knjigovodstvenoj knjizi, i gdje je taj novac otišao ili odakle je došao. Što su podaci gusti, to je složenija kriptografija i potrebna je veća procesorska snaga za njezino rješavanje. (Ovo je mjesto gdje ideja o "rudarstvu" u Bitcoinu dolazi u igru, usput.)
Dakle, da sumiramo, možemo misliti na blockchain je dio podataka koji je:
- Stalno se ažurira. Blockchain korisnici mogu pristupiti podacima u bilo kojem trenutku i dodati informacije najnovijem bloku.
- distribuiran. Kopije podataka blokirajućih podataka pohranjuju se i osiguravaju od strane svakog korisnika, a svi se moraju složiti oko novih dodataka.
- ovjeren. Izmjene novih blokova i kopije starih blokova moraju biti dogovoreni od strane svih korisnika putem kriptografske provjere.
- Siguran. Neovlałteno diranje starih podataka i mijenjanje načina osiguranja novih podataka spriječeno je i kriptografskom metodom i necentraliziranim pohranjivanjem podataka.
I vjerujte ili ne, postaje još kompliciranije od toga ... ali to je osnovna ideja.
Blockchain u akciji: Pokaži mi (digitalni) novac!
Razmotrimo primjer kako se to odnosi na kripto valutu kao što je Bitcoin. Recimo da imate jedan Bitcoin i želite ga potrošiti na novi automobil. (Ili bicikl, ili kuća, ili mala do srednje velika otočna nacija - koliko god bitcoin vrijedan ovaj tjedan.) Svojim softverom se povezujete s decentraliziranim Bitcoin blokchainom i šaljete svoj zahtjev za prijenos Bitcoin prodavatelju automobila. Vaša transakcija se zatim prenosi na sustav.
Svaka osoba u sustavu to može vidjeti, ali vaš identitet i identitet prodavatelja samo su privremeni potpisi, sićušni elementi velikih matematičkih problema koji čine srce digitalne kriptografije. Ove vrijednosti su uključene u jednadžbu blockchaina, a sam problem je "riješen" od strane članova peer-to-peer mreže koja generira kriptografske hasheve..
Nakon što je transakcija potvrđena, jedan Bitcoin se premješta od vas na prodavatelja i bilježi se na najnoviji blok u lancu. Blok je završen, zapečaćen i zaštićen kriptografijom. Počinje sljedeći niz transakcija, a blockchain raste dulje, sadrži potpuni zapis svih transakcija svaki put kad se ažurira.
Sada, kada blokchain smatrate „sigurnim“, važno je razumjeti kontekst. Pojedinačne transakcije su sigurne, a ukupni zapis je siguran, sve dok metode koje se koriste za osiguravanje kriptografije ostaju "nepokvarane". (I zapamtite, ovo je stvarno teško je probiti - čak ni FBI to ne može učiniti samo pukim računalnim resursima.) Ali najslabija karika u blockchainu je, dobro, ti - korisnik.
Ako dopustite nekom drugom da koristi vaš osobni ključ za pristup lancu, ili ako ga pronađu tako što će jednostavno provaliti u vaše računalo, oni mogu napraviti dodatke blokchainu s vašim podacima, a nema načina da ih zaustavite. Tako se Bitcoin "ukrade" u visoko objavljenim napadima na glavnim tržištima: to su tvrtke koje su djelovale na tržištima, a ne sam Bitcoin blokchain. Budući da su ukradeni Bitcoini preneseni anonimnim korisnicima, kroz proces koji je verificiran od strane blockchaina i zauvijek zabilježen, nema načina da se pronađe napadač ili dohvatiti Bitcoin.
Što još može učiniti Blockchains?
Tehnologija Blockchain započela je s Bitcoinom, ali to je tako važna ideja da tamo nije dugo ostala. Sustav koji se stalno ažurira, dostupan svima, verificiran od strane necentralizirane mreže i nevjerojatno siguran, ima mnogo različitih aplikacija. Financijske institucije poput JP Morgan Chase i australske burze razvijaju blockchain sustave za osiguranje i distribuciju financijskih podataka (za konvencionalni novac, a ne za kripto valutu kao što je Bitcoin). Zaklada Bill & Melinda Gates nada se da će koristiti sustave blockchain za pružanje besplatnih, distribuiranih bankarskih usluga milijardama ljudi koji si ne mogu priuštiti redoviti bankovni račun.
Alati otvorenog koda kao što je Hyperledger pokušavaju učiniti tehnike blockchaina dostupnim širem krugu ljudi, u nekim slučajevima bez potrebe za ogromnom količinom procesorske snage koja je potrebna za osiguranje drugih dizajna. Kolaborativni radni sustavi mogu se provjeriti i zabilježiti tehnikama blockchaina. Prilično sve što treba stalno bilježiti, pristupati i ažurirati može se koristiti na isti način.
Image kredit: posteriori / Shutterstock, Lewis Tse Pui Lung / Shutterstock, Zack Copley