2017-06-01

Dialogic Blokketting Reeks #2

'n Blockchain bestaan, soos die naam aandui, uit opeenvolgende blokke met inligting. In die vorige deel het ons gesien hoe proof of work voorkom dat enigiemand maar net inligting by 'n blockchain kan voeg. Maar hoe werk dit presies?

Hierdie teks is outomaties vertaal en kan dus verskil van die oorspronklike. Geen regte kan aan hierdie vertaling ontleen word nie.

💬 Click here to read this page in English.

Hoe werk 'n blokketting? Deel 2: blokke

'n Blokketting kan die beste verstaan word as 'n soort aanlynrekenblad wat in die wolk bêre is. Dit word gedeel deur verskeie mense, mense kan gelyktydig daarin werk en alle veranderinge is vir almal sigbaar. Dit geld ook vir die blokketting, waarby dit ook nog geld dat jy slegs inligting 'onderaan' kan byvoeg. Jy kan dus wel dinge verander, maar die verlede bly altyd behou. 'n Blokketting is dus baie deursigtig.

Maar lat ons by die begin begin: hoe lyk 'n 'blok' eintlik? 'n Blok bevat sekere nuttige inligting, soos 'n digitale transaksie of 'n ooreenkoms tussen twee partye.

Om te verseker dat die blokketting jou blok aanvaar, moet die hasj (oftewel die digitale vingerafdruk, sien die vorige artikel in hierdie reeks) van die blok begin met 'n vooraf bepaalde aantal 'nulle'. Soos in die vorige artikel verduidelik, bewys jy daarmee dat jy 'n sekere hoeveelheid rekenwerk gedoen het toe jy die blok geskep het. Dit voorkom, soos ons vorige keer gesien het, dat een persoon die beheer oor 'n blokketting heeltemal kan oorneem.

Om die vingerafdruk te laat begin met die voorgeskrewe aantal nulle, sal ons 'n groot aantal variasies van die blok moet 'toets' om te sien of die vingerafdruk aan die vereiste voldoen. Aan die inhoud van die blok voeg ons, om dit te kan doen, 'n (verder ongebruikte) getal by: die nonce. Die nonce varieer jy totdat die vingerafdruk van die blok begin met die voorgeskrewe aantal nulle.

Die 'double spend'

Die blokketting is 'n ketting van blokke - die ketting kan net met een blok op 'n slag verleng word. Dit is natuurlik moontlik dat iemand op dieselfde tyd as iemand anders 'n nuwe blok kon bereken. Daardie blokke kan mekaar teenwerk: een bevat byvoorbeeld 'n transaksie waar geld aan persoon A gegee word, en die ander blok kan 'n transaksie bevat waar geld aan persoon B gegee word. Natuurlik kan net een van die twee transaksies behou word. Hoe los die blokketting hierdie probleem op?

In 'n blokketting 'wen' uiteindelik die langste ketting. As jy dus eerste 'n blok kan skep wat volg op 'n ander blok, is die kanse groter dat daardie blok uiteindelik deel van 'die langste' ketting sal word. Die voorbeeld hieronder illustreer dit. Blokke 006406 en 006274 word gelyk skep. Omdat meer blokke volg op blok 006406, word hierdie blok uiteindelik deel van die langste ketting.

Dit beginsel help ook om veranderinge in ou blokke te voorkom. Wanneer die blokke geldtransaksies bevat, wil jy natuurlik nie hê dat geld wat reeds bestee is, weer onttrek word nie!

As ek die transaksie in blok '006406' wil verander, wat moet ek dan doen? Die verandering van die transaksie veroorsaak dat die blok verander, en dus ook die vingerafdruk van die blok (en soos voorheen gesien, is dit onmoontlik om die blok so aan te pas dat dit presies dieselfde vingerafdruk het as die ou blok). Wat wel moontlik is, is om die blok weer probeer by te voeg, en asofmal die volgende vier blokke weer te bereken, waarna 'n langer ketting as die huidige ketting ontstaan.

Om in totaal vyf blokke te myn, moet vyf keer 'n goeie vingerafdruk gevind word. Hoe langer die ketting, hoe moeiliker dit dus word. Vergelyk dit met die Russiese Matroska-poppe: as jy die binneste wil vervang, sal jy hulle almal een vir een moet losmaak en een vir een weer moet saamstel.

Intussen is die ander deelnemers natuurlik steeds besig om die langste ketting (waarin die ongewenste transaksie ingesluit is) te verleng. Om vinniger te wees as die res, het jy 'n beduidende meer rekenkrag nodig (om presies te wees, het jy 'n 'meerderheid' van >50% van die totale rekenkrag van die netwerk nodig!).

Danksy die blokketting is historiese inligting dus onveranderlik, en is geld slegs een keer uit te gee, as gevolg van die benodigde meerderheid in rekenkrag. Slim gedink!

Om te verstaan hoe iets werklik werk, gee ek die voorkeur daaraan om iets heeltemal uitmekaar te haal, en probeer ek dit dan self weer inmekaar te sit.

Wil jy meer weet oor hierdie tema?

Tommy van der Vorst, partner

Ontmoet Tommy

Vra 'n kwotasie aan?

Het jy 'n konkrete navorsingsvraag of -opdrag en wil jy 'n kwotasie van ons ontvang? Dan kan jy jou vraag per e-pos stuur aan tenderdesk@dialogic.nl. Jy kan ons ook via hierdie adres inlig oor (openbare) tenderprosesse. Ons reageer binne vyf werksdae.

Meer inligting