Om du har tittat på nyheterna nyligen, kanske du har hört talas om något som kallas blockchain. Det är ett koncept som gör data extremt säkra för specifika användningar. Du har nog hört det i samband med Bitcoin , men det har applikationer långt bortom allas favoritkryptovaluta. Här är en snabb förklaring av hur det fungerar.
Allt börjar med kryptering
RELATERAD: Vad är Bitcoin och hur fungerar det?
För att förstå blockkedjor måste du förstå kryptografi. Idén med kryptografi är mycket äldre än datorer: det betyder bara att ordna information på ett sådant sätt att du behöver en specifik nyckel för att förstå den. Den enkla decoder ring toy du hittade i din låda med Kix-spannmål är en form av den mest grundläggande kryptografin - skapa en nyckel (även känd som en chiffer) som ersätter en bokstav med ett nummer, kör ditt meddelande genom nyckeln och ge sedan nyckeln till någon annan . Den som hittar meddelandet utan nyckeln kan inte läsa det, såvida det inte är "knäckt". Militären använde mer komplex kryptografi långt innan datorer ( Enigma-maskin kodade och avkodade meddelanden till exempel under andra världskriget).
Modern kryptering är dock helt digital . Dagens datorer använder krypteringsmetoder som är så komplexa och så säkra att det skulle vara omöjligt att bryta dem med enkel matematik från människor. Dator krypteringsteknik är dock inte perfekt; det kan fortfarande "knäckas" om tillräckligt smarta människor attackerar algoritmen och data är fortfarande sårbara om någon förutom ägaren hittar nyckeln. Men till och med kryptering på konsumentnivå, som AES 128-bitars kryptering som nu är standard på iPhone och Android, räcker för att hålla låsta data borta från FBI.
Blockchain är en gemensam, säker dataledger
Kryptering används normalt för att låsa filer så att de bara kan nås av specifika personer. Men vad händer om du har information som behöver ses av alla - som t.ex. redovisningsinformationen för en myndighet som måste vara offentlig enligt lag - och som fortfarande måste vara säker? Där har du ett problem: ju fler människor som kan se och redigera information, desto mindre säker är den.
Blockkedjor utvecklades för att möta säkerhetsbehoven i dessa specifika situationer. I en blockchain registreras och verifieras ändringen varje gång informationen öppnas och uppdateras och förseglas sedan med kryptering, och kan inte redigeras igen. Uppsättningen ändringar sparas och läggs till i den totala posten. Nästa gång någon gör ändringar, börjar det om från början och behåller informationen i ett nytt "block" som är krypterat och kopplat till föregående block (därmed "block chain"). Denna upprepningsprocess kopplar den allra första versionen av informationsuppsättningen med den senaste, så att alla kan se alla ändringar som någonsin gjorts, men kan bara bidra och redigera den senaste versionen.
Denna idé är slags motståndskraftig mot metaforer, men tänk dig att du är i en grupp på tio personer som monterar ett LEGO-set. Du kan bara lägga till en bit åt gången och kan aldrig ta bort några bitar alls. Varje medlem i gruppen måste komma överens om specifikt var nästa bit går. På detta sätt kan du se alla bitar när som helst - direkt tillbaka till den allra första delen i projektet - men du kan bara ändra den senaste biten.
För något lite mer relevant, tänk dig ett samarbetsdokument, som ett kalkylark på Google Docs eller Office 365. Alla som har tillgång till dokumentet kan redigera det, och varje gång de gör det sparas ändringen och registreras som ett nytt kalkylark, sedan låst i dokumenthistoriken. Så du kan gå tillbaka steg för steg genom de ändringar som gjorts, men du kan bara lägga till information till den senaste versionen, inte ändra de tidigare versionerna av kalkylarket som redan har låsts.
Som du säkert har hört tillämpas denna idé om en säker, ständigt uppdaterad "huvudbok" på finansiella data, där det är mest meningsfullt. Distribuerade digitala valutor som Bitcoin är den vanligaste användningen av blockkedjor - i själva verket gjordes den allra första för Bitcoin och idén sprids därifrån.
Den tekniska grejen: steg för steg, blockera block
Hur spelar allt detta faktiskt ut på en dator? Det är en kombination av kryptografi och peer-to-peer-nätverk.
RELATERAD: Hur fungerar BitTorrent?
Du kanske känner till peer-to-peer-fildelning: tjänster som BitTorrent som gör det möjligt för användare att ladda upp och ladda ner digitala filer från flera platser mer effektivt än från en enda anslutning. Föreställ dig "filerna" som kärndata i en blockchain och nedladdningsprocessen som kryptografi som håller den uppdaterad och säker.
Eller för att gå tillbaka till vårt Google Docs-exempel ovan: tänk dig att det samarbetsdokument du arbetar med inte lagras på en server. Istället finns det på varje individs dator, som ständigt kontrollerar och uppdaterar varandra för att se till att ingen har modifierat de tidigare posterna. Detta gör det "decentraliserat".
Det är kärnidén bakom blockchain: det är kryptografisk data som kontinuerligt nås och skyddas samtidigt, utan någon centraliserad server eller lagring, med ett register över förändringar som integrerar sig i varje ny version av data.
Så vi har tre element att tänka på i detta förhållande. En, nätverket av peer-to-peer-användare som alla lagrar kopior av blockchain-posten. Två, de data som dessa användare lägger till i det senaste "blocket" av information, så att den kan uppdateras och läggas till den totala posten. Tre, de kryptologiska sekvenserna som användarna genererar för att komma överens om det senaste blocket, låsa det på plats i den sekvens av data som bildar posten.
Det är den sista biten som är den hemliga såsen i blockchain-smörgåsen. Med hjälp av digital kryptografi bidrar varje användare med sin dators kraft för att lösa några av de superkomplexa matematiska problemen som håller rekordet säkert. Dessa extremt komplexa lösningar - så kallade "hash" - löser kärndelar av data i posten, som vilket konto som läggs till eller subtraherar pengar i en bokföringsbok, och var de pengarna gick till eller kom ifrån. Ju mer tät data, desto mer komplex kryptografi och desto mer processorkraft behövs för att lösa det. (Det är här idén om att "bryta" i Bitcoin spelar förresten in.)
Så för att sammanfatta kan vi tänka oss att en blockchain är en bit data som är:
- Ständigt uppdaterad. Blockchain-användare kan när som helst komma åt data och lägga till information i det senaste blocket.
- Distribuerad. Kopior av blockchain-data lagras och skyddas av varje användare, och alla måste komma överens om nya tillägg.
- Verifierad. Både ändringar av nya block och kopior av gamla block måste godkännas av alla användare genom kryptografisk verifiering.
- Säkra . Att manipulera med gamla data och ändra metoden för att säkra nya data förhindras av både den kryptografiska metoden och den icke-centraliserade lagringen av själva data.
Och tro det eller inte, det blir ännu mer komplicerat än detta ... men det är grundidén.
Blockchain i aktion: Visa mig de (digitala) pengarna!
Så låt oss överväga ett exempel på hur detta gäller en kryptovaluta som Bitcoin. Anta att du har en Bitcoin och att du vill spendera den på en ny bil. (Eller en cykel eller ett hus eller en liten till medelstor önation - hur mycket en Bitcoin är värt den här veckan. ) Du ansluter till den decentraliserade Bitcoin-blockkedjan med din programvara och skickar din begäran om att överföra din Bitcoin till säljaren av bilen. Din transaktion överförs sedan till systemet.
Varje person i systemet kan se det, men din identitet och säljarens identitet är bara tillfälliga signaturer, små delar av de enorma matematiska problemen som utgör hjärtat i digital kryptografi. Dessa värden är anslutna till blockchain-ekvationen, och själva problemet löses av medlemmarna i peer-to-peer-nätverket som genererar kryptografihashar.
När transaktionen har verifierats flyttas en Bitcoin från dig till säljaren och registreras på det senaste blocket i kedjan. Blocket är färdigt, förseglat och skyddat med kryptografi. Nästa serie transaktioner börjar och blockchain växer längre och innehåller en fullständig registrering av alla transaktioner varje gång den uppdateras.
När du tänker på en blockchain som "säker" är det viktigt att förstå sammanhanget. Enskilda transaktioner är säkra och den totala posten är säker, så länge de metoder som används för att säkra kryptografin förblir "okrackade". (Och kom ihåg, det här är verkligen svårt att bryta - även FBI kan inte göra det med enbart datorer .) Men den svagaste länken i blockchain är, ja, du - användaren.
Om du tillåter någon annan att använda din personliga nyckel för att komma åt kedjan, eller om de hittar den genom att helt enkelt hacka in din dator, kan de göra tillägg till blockchain med din information, och det finns inget sätt att stoppa dem. Det är så Bitcoin blir "stulen" in starkt publicerade attacker på stora marknader : det är de företag som driver marknaderna, inte själva Bitcoin blockchain, som komprometteras. Och eftersom de stulna Bitcoins överförs till anonyma användare, genom en process som verifieras av blockchain och spelas in för alltid, finns det inget sätt att hitta angriparen eller hämta Bitcoin.
Vad kan andra blockkedjor göra?
Blockchain-tekniken började med Bitcoin, men det är en så viktig idé att den inte stannade där länge. Ett system som ständigt uppdateras, tillgängligt för alla, verifierat av ett icke-centraliserat nätverk och otroligt säkert, har många olika applikationer. Finansiella institutioner som JP Morgan Chase och Australian Stock Exchange utvecklar blockchain-system för att säkra och distribuera finansiell data (för konventionella pengar, inte för kryptovaluta som Bitcoin). Bill & Melinda Gates-stiftelsen hoppas kunna använda blockchain-system för att tillhandahålla gratis, distribuerade banktjänster till miljarder människor som inte har råd med ett vanligt bankkonto.
Open source-verktyg som Hyperledger försöker göra blockchain-tekniker tillgängliga för ett större antal människor, i vissa fall utan att behöva de enorma mängder processorkraft som krävs för att säkra andra mönster. Samarbetssystem kan verifieras och registreras med blockchain-tekniker. Nästan allt som behöver ständigt spelas in, nås och uppdateras kan användas på samma sätt.
Bildkredit: posteriori / Shutterstock , Lewis Tse Pui Lung / Shutterstock , Zack Copley